A digitally organised business starts from finance

Standard
To run a small business should not take longer than running your own client’s projects, otherwise, there is a problem somewhere!

The stress of the solopreneur

I am referring here to the dreadful end fo the month that so many business owners fear and are stressed about because they have to produce their invoices. tim-gouw-68319

Why are they stressed?

  • because they often have to work for clients (“working in their business”) and at the same time they need to collate the services and products they worked on into a justifiable note to each client.
  • this task should be a piece of cake!

An accounting portal to remove that stress

It has been years that I use an online accounting portal and a mobile app where I input each time I work on a task. At the end of each month, I just have to log in to my portal and generate an invoice for each client. All the tasks for that project and client are automatically added to the invoice, regardless of how many staff is adding timesheet for that project. Done!

A platform, workflow and ecosystem to improve daily tasks are what I enjoy to bring to my clients and therefore I applied it to my personal productivity and business for years.

productivity.jpg

We use a few other Apps around to connect everything together and make reporting on work we have done while we walk in the park.

Two examples:

  • Our expenses are all recorded in Xpenditure so that very little input is entered manually (automatic OCR of receipts), an approval takes place and then send the expenses to our accounting portal.
  • Our holiday is entered via a SharePoint form and workflow approval

Not every portal is the right one for your business

Until this month I was using FreeAgent as it was included in the fees of my accountant. I really liked it for quasi 4 years, the usability is great, but after a while, I found the connexion to other  SAAS (Software as a Service) and add-ons were a bit limited, especially when the competition is providing so much extensibility and connectivity. My business activity increase also meant that we need advanced reporting and budgeting that FreeAgent doesn’t really provide.

So of I went and looked at a new portal. The world is talking about Xero so I had to check it out. I created a trial login, imported some contacts, add the first invoice and create some employees. timesheet xero

It is only when I tested the timesheet submission that I was shocked to see that there is currently no way to create a timesheet per client and project.

 

 

 

It seems that Timesheets in Xero is only a way for employees to be paid for their time (a sort of clocking system then!?) but no ability to add any notion of a project and forget about subsequent reporting on how much this project invoices as opposed to that other.

 

A bit of googling taught me that Xero has been working on a “project” extension and will roll it out in 2018, but really… if this is not the heart of your system then I am out of the picture.

Quickbook timesheet

My new accountant was advising me to go for QuickBooks and maybe because I wasn’t convinced of his technical ability to compare two packages I was doubting it, but having use QuickBooks trial for a few days, the bank feeds are easier to setup, and especially for my business: I can register all my staff and contractors to the timesheet, create projects and tasks and generate an invoice automatically again.

The timesheet input is clear and staff have to select which client for that task

As always with a lot of software package and SAAS in the market, the one that makes the most noise may not be the “best one” for your requirements since the notion “best” is relative. Xero might the best accounting portal for a business owner of a construction company because they have fix price on an end to end project, or a hairdresser shop, but not so best for a man-hour business services company like mine.

Nice to have the confirmation once again that comparing feature-to-feature and using a product in real life scenario is the “best” way to make a decision.

Note: this blog post is not endorsed by any of the portals I mentioned here and as always the views and opinions are personal.

 

Advertisements

How I automate my business

Standard

I used to have difficulties to explain to a friend or family member what I do. That “I develop sites, forms and workflows to help businesses perform better”. Sounds rather dull and evasive, right? Be honest! ;-)

Nowadays, workflows are not the privilege of only corporations, but small businesses too and certainly any individual, for their own benefit: avoid doing repetitive tasks.

And therefore, when I explain what I do, I now tend to say something like:

I make systems that help you to be more organised, with the tools you already have or didn’t know you could use.

Yes, we are talking either your computer, smartphone, activity tracker or even home light switches.
Depending on the tool used, the term ‘workflow’ is substituted with “rule“, “recipe“, “applet“, “process” or “flow“.

So, the quote “Workflow for Everyone” that Nintex used a few years back is moreover true today, and across a wider range of services. With Nintex Workflow Cloud, IFTTT, Zapier, Microsoft Flow, Fujitsu RunMyProcess and others, there are dozens of ways to automate your daily tasks, here are a few of the ones I use to automate the admin side of my work.

PRODUCTIVITY ENHANCEMENT (or “personal workflows”)

  • TIMESHEETS, EXPENSES and INVOICES

As a consultant, I may work on different projects and clients in a single week and cannot always pause to report on which I have been working on at the end of each. I use an online accounting portal that my accountant have full access to and each time I finish a work item I input the times in the mobile app, even for a 30 min task. At the end of each month, an invoice is automatically generated for each project that has hours spent, and the portal will send it to my client as a PDF, including an automatic reminder for late payment.
When a PaperBlade crew member claims an expense, they can use the mobile app to scan the receipt and enter the amount and description.  If it was related to a project it will automatically be added to the client invoice.
freeagentMobileAgent iPhone app for FreeAgent

  • BANK RECONCILIATION

Unlikbank-feedse a personal bank account, having a business means that every bank transaction is accountable for. After years of uploading statements to my accounting portal, I switched to one of the banks that can automatically and securely feed the transactions into my portal. This way I can reconcile and explain the operations from my mobile phone.
Click here to find which bank provides feed in the UK.

  • PROJECTS LIFECYCLE

Although SharePoint can do great things to improve productivity, its collaboration at item-level is not yet the best for small businesses. We needed a way to write a task, i.e. “create new site” and a developer to be able to ask any questions regarding that task, have the response in the task history, and move the task to the next stage until “done”. So we went for Asana.
asanaa
I have setup these automatisms:
– “when new project created, create a new task in accounting portal”
asana_to_freeagent
– “when new item in Asana project [Support], create a new ticket in support portal”
zendesk_-_asana.png
– “when new user is added to Asana, create a new contact in Office 365”
asana_to_office365

  • STREAMLINE CONTACTS MANAGEMENT

At PaperBlade we are proud to maintain a close relationship with our clients and it is important that they are kept up to date with our news. We run an opt-in mailing list with a link to unsubscribe easily.

– Each time a new contact is being created in our CRM a new entry is also created in our marketing list, using a Zap.
insightly_to_mailchimp
– When I add a new contact to Office 365 Outlook a new entry is added to the mailing list,
contact_to_mailchimp
– Each time a contact is added to our accounting portal a new contact is added to MailChimp.
freeagent_to_mailchimp

  • HOURS SPENT IN A LOCATION

I use two workplaces around London when not at clients, and one of them is limited to a number of hours per month on an honesty principle. I did not want to not know if I was over the hours and no way that I was going to remember or write down how many hours I have each month, so I used a simple workflow to log an entry each time I enter the location and each time I exit. It is then easy to have a repeated formula to total each hours per month.
IFTTT has an iOS App that can be triggered on a Geolocation, and write to a spreadsheet the time. The battery consumption isn’t too bad and I have used it for 8 months already.
iftt_geoloc_ios

Unfortunately, IFTTT does not offer to write directly into a SharePoint list or Excel Online but it would be quite easy to extend this using CSOM.

  • SAVE EMAIL ATTACHMENTS TO ONEDRIVE

Last but not least, if only one FLOW should be used, is to automatically save all attachments received in Inbox to your OneDrive.
Save_email_attachments_from_Outlook_com_to_OneDrive_for_Business___Microsoft_Flow.png

I hope for these tips to be useful to more people to automate their year in 2017, and I will post some more “personal” ones soon, from activity tracking (without a smart watch), sleep analysis to a few home automation that I use.

Please comment below with your own automatisms.

And Happy Productive Year to everyone!

François.

[Nintex Workflow] Add user to Site Collection Administrator group with REST API

Standard

Helping people to automate their workplace is my passion and lucky for me I also get paid to do so !

This week I was finishing working with a partner to improve the (poor) automation steps required by Matter Center, which no-one can really complain because Microsoft made it open-source.
Matter Center documentation requires to create each client as a new site collection in PowerShell, but this is not quite possible if the users registering these new clients on a daily basis are regular Office 365 users and not SharePoint Administrators.Thanks to a few Nintex Workflows we managed to do all the configuration in the background.

Thanks to a few Nintex Workflows we managed to do all the configuration in the background.
Today’s post is not about the site collection creation so I will spare the details, but in summary and very high level, I developed 4 workflows, 1 CSOM Javascript to be executed on the browser, and 1 Nintex Form of course for submitting the new client on desktop or mobile.

Now this quick blog post is regarding the challenge that we had to add the user as a Site Collection Administrator of that newly created site collection.

Since there is no mention of the sort in https://community.nintex.com it may useful for someone, so here it is:

  1. Create a new Nintex workflow in an Office 365 site list.
  2. Download and Import the .NWP workflow file available here to replace the blank workflow
  3. Edit a few of the actions at the beginning of the workflow to set the variables (I never hard-code UserName and Password for instance, so you will see a few Lookup to a different list to get the value, which you can replace since they will be showing an error once imported into your list)

Note: In this workflow, the “user” I am adding to the Site Collection Administrators group is actually the “CreatedBy” of the list item, which may sound strange since the user running that workflow may be the CreatedBy. However this is NOT the case (refer to above point: we do not want all users to be SharePoint admins!), here is how you should sequence the workflow to start:
1) After the List Item is created, a first workflow (run by CreatedBy) i.e. called “Start and Call workflow 2” and in the workflow we just add a “Start Workflow”

2) then within that first workflow we just add a “Start Workflow” making sure that this action is bein executed in an “App Step” in order to use “elevated privilege”.

Nintex_Workflow_for_Office_365

3) finally all the actions are happening in Workflow2 (which you imported in step 2)

 

Hope this helps someone.

François.

Nintex workflow task not opening for some users

Standard

 

Small issue:
  Today I had an issue with some workflow task items, created by a Nintex Workflow which suddenly could not be opened by end users (by assignees that is): error below.Image

It was working for me and since I have higher permission on the site, after scratching my head a bit, I looked at the item permission : it was fine.
The issue laid with the actual “RelatedContent” item, ie. the item on which the workflow ran when it created the workflow task, the permission for this item were reduced to only the Author of the item and his/her manager, and it was missing some groups like Viewers.

Fix:
Adding the group to item level permission of the RelatedTo item fixed the issue and users could access the task again.

Root cause:

  • – some SharePoint groups have been renamed and the workflow which assigned the permission was trying to add the old names, resulting in none being added. The workflow permission action had to be re-done.
  • – although the workflow task item should be independent from the source item it is not because the Workflow task item also has an embedded webpart that is -sometimes- used to display columns from the RelatedContent item, therefore if that values cannot be read the whole task item errors.

Conclusion:

– be careful when renaming SharePoint group
– an item error may not be linked to the item itself

How create format HTML emails in Nintex Workflow actions

Standard

I will not repeat enough, when it comes to workflow design Nintex workflow is brilliant and save a lots of hassle.

lThis said not everything in this tool is that easy to achieve, today I am going to mention a basic workflow action that everyone will use for sure in any workflow: the “Send notification” action”

 

This action allows you to send an e-mail, a Lync message or even SMS to a user to inform them in the middle of a workflow.

The problem

“Send notification” comes with its own Rich Text editor to format the text and add reference of an item into the subject and body of the message. But very quickly you should realise that the editor has some limitations. In my experience I found it a bit buggy;  for instance : type some text, format it in blue, add field reference to se the values, then save the action and come back to the editor only to find that the 1 carriage return has expanded to 10 and the font you thought was the same in the whole email has change to another in the middle of the body content.

I actually believe that this is not really the problem with the editor itself but just a standard HTML issue: if you check the source of that rich text editor, you will see some characters and font styling that have been added which makes debugging quite hard.

How I do it

Ok, so this is my tip for dealing with HTML email:

1-     Forget about the Rich text editor

2-      Prepare your HTML body away from the workflow action

3-      When ready, paste it into the editor

 

Show me

Here is, in pictures, how I now do my email body content. My method may not be the best one and took a bit of time for the initial setup of the first email body, but the next ones can just be derived from it and then speed up the tasks. Also you will see that every time  you are requested to change a character in an email, it’s a “piece of cake”.

1-      Open NotePad (or already into an HTML editor such as a SharePoint Designer HTML file, myself I prefer to use NotePad++ as it formats HTML best)

2-      Start your email body with the labels and values you intend to display, leave the reference as a placeholder for now

3-      Capture the item values or variables that you need to need to show

In the Nintex “send notification” editor, remove all your Rich Text content and only add the single reference that you need, for instance if I want to display the “Title” field value:

4-      Copy the HTML of that reference

5-      paste it into the HTML file

6-      Start formatting some HTML around the item value

7- repeat step 3 to 6 until your HTML is complete
8- paste the HTML into the HTML editor of the Nintex Rich Text editor to obtain an email looking as:
9- Make sure you SAVE your HTML code into a file for re-usability.
Conclusion
Each time you need to edit a comma on your rich text email you do so in the HTML and paste it again in the editor. This way you won’t have strange behaviour in the editor.
Again: this is my method and may not be everyone’s choice, but since I had a workflow with around 6 different email templates this way was the only way I found to make sure that each email is similar except for a couple of fields, otherwise using the Rich Text editor in the Workflow Action (notification or Flexi-Task) didn’t prove to be formatted the same as another one.

Clever idea : Approve or reject tasks via email WITHOUT Nintex

Standard
Check out this website I found at gallery.technet.microsoft.com

I have to say when it comes to responding a workflow task while being mobile I think of advising my clients to buy Nintex Workflow for their Sharepoint farm as the design and maintenance of those workflows is much, much cost effective in the long term. But this post got me thinking, specially when you have an IT environment locked down where you cannot add third party tools.
I have not implemented it myself yet, but will do in a few weeks.

Avoid ‘&’ (Ampersand) sign in Nintex workflow variable values

Standard

Issue:

I have a main workflow that calls 16 different sub-workflow to run and wait for their completion before continuing and to my surprise only 1 of those didn’t send me an email as I expected it to be, but did not fail nor stopped.

Troubleshooting:

The sub-workflows are all running and complete, then the main workflow continues its journey to completion.

Nintex16

By adding a Log in History to extract all the variables that I pass to the sub-workflows I then realised that the only difference between all sub-workflow and the one that flies through without sending an email contains a ‘&’ character in one of the variable. That variable is just used to print the value in the body of the message, not even the subject or the recipient email but still it did fail the workflow action.

Fix: by adding a “Regular Expression” Nintex action we can easily replace any ampersand in variable before passing it to the sub-worklow. If you place it into the sub-worlfow UDA then it’s only 1 change for all 16+ sub-workflows.

Note to self: filter out & (ever)