Pages

Friday, February 18, 2011

Taking on Management of IFRS Related Workflows

There are tons of workflows related to the International Financial Reporting Standards (IFRS). For instance, IAS 36: Impairment of Assets and IAS 11: Construction Contracts (percentage-of-completion method) require the collection of data from employees.

Today's workflow is for periodically checking whether the company's assets are significantly impaired (finding indications of impairment). In simple terms, conducting checkups to make sure facilities and equipment are operating properly, and this requires employee cooperation.





In general, impairment accounting involves identifying "Indications of impairment," then moving on to the next steps, "Recognition of impairment losses" and "Measurement of impairment losses." But the first step is to make sure your company efficiently identifies indications of impairment and keeps related records. (Then you can move on to detailed investigation on identified defects.)

Now, if you want to conduct a comprehensive check of all fixed assets, you probably won't want to fill out the first task (1. Input Asset Data) for every single asset. This is where you can use a script (Google Apps Script) to automatically input the data from a separate ledger. (Note the addition of a Message Start Event in the below workflow.)




Spreadsheet Settings in Questetra BPM Suite SaaS Edition

1. Test the workflow reception (optional)
After activating the workflow to be used, check the URL address found in the [Version Detail] screen.

Example)

https://s.questetra.net/XXXXXXXX/System/Event/MessageStart/start?processModelInfoId=ZZ&nodeNumber=WW&key=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

In our sample workflow, there are two necessary input fields: title (Name) and data[0] (Manager). So the system should automatically start a new process when it receives an access like:

https://s.questetra.net/XXXXXXXX/System/Event/MessageStart/start?processModelInfoId=ZZ&nodeNumber=WW&key=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY&title=Osaka+Factory&data[0].email=tsujimoto@example.com

As a test, copy & paste this long address into your browser (you should get a blank page), and make sure a new task is created in your task list.


2. Prepare a list of fixed assets in Google Docs
Log into Google Docs and create a new file from [Create new > Spreadsheet]. Give the spreadsheet a title (e.g., Fixed_Assets_Management_List) and create two questions (Question Titles: "Name" and "Manager (Email Address)."

You should get a spreadsheet with "Name" in column A and "Manager (Email Address)" in column B.

3. Get ready to send the list to Questetra BPM Suite
Open the spreadsheet, and create a new script from [Tools > Scripts >Script editor]
Replace...


function myFunction() {
}

...with...


function startWorkflow() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;
  var numRows = 10; //provisional setting: Max 10 assets
  
  var dataRange = sheet.getRange(startRow, 1, numRows, 2);
  var data = dataRange.getValues();
  for ( var i = 0; i < data.length; ++i) {
    var row = data[i];
  
    var name = row[0];
    var manager = row[1];
      
  var url = "https://s.questetra.net/XXXXXXXX/System/Event/MessageStart/start";
    var payload = 'processModelInfoId=ZZ';
    payload += '&nodeNumber=WW';
    payload += '&key=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY';
    payload += '&title=' + encodeURIComponent(name);
   payload += '&data[0].email=' + encodeURIComponent(manager);
    var params = {
      method: 'post',
      payload: payload
    };
    UrlFetchApp.fetch(url, params);
  }
}

...and save. Make sure you replace "XXXXXXXX", "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY", "ZZ" and "WW" with your own info. If you are not in Japan, you will probably want to also change "JST" to your own timezone.

4. Run the script! 
Click [ (Run sellected script)] button on the Script Editor, and you will find assets' information input from a Google Spreadsheets and see as many first tasks as the number of rows (Max. 10).

* You can select [tool] > [script] > [manager...] and run this script on Script Manager.