Implement Customer Master using Options-XML (Part 1)

How to operate customer master using basic function of Questetra BPM Suite (Part 1)

Hi there!
In this article, I’d like to talk about advanced use of options-XML.
Options-XML is a kind of data which can be candidate options for “Select type Data” of process data item.

Users with System Administrator Authorization can register “Data for candidate options”, options-XML in advance (as shared files).
For more details of settings and meaning, please refer to the manual (M319)Register an Options-XML file to which the Process Model Definitions Refer to“.

I sometimes hear comments from users like
“Can we manage customer master data by Questetra BPM Suite?”
“Want to use customer master data for various business!”

It can be realized by registering the master data you want to use to options-XML.
Though I want to say, “OK, that’s all!”, it seems there are still some hidden requests.

== Content of Customer Master Data to be Used ==

The structure of options-XML file can be described as

<Example of options-XML file structure>

<items>
  <item value="00110000015LtvIAAS" display="YAMADA Corporation" />
  <item value="00110000015LtwBAAS" display="SATO Industry Corporation" />
  <item value="00110000015LtvhAAC" display="SUZUKI Metal Corporation (Okayama Branch Office)" />
  <item value="0011000000qVuKmAAK" display="SUZUKI Metal Corporation (Singapore Branch Office)" />
</items>

, and ‘option ID’ and ‘Label’ only represent the customer master data.

When I explain about that, I will receive the following indication in many cases.

The data item of customer master used in our business require
– Customer Name
– Sales Representative
– Deadline
– Billing Amount
– Customer Representative
at least. How do we set and use!

Such indication means that it requires a simple RDB.

Here, a common approach can be considered as saying, “OK, so let’s determine the relation of table by normalization!“. However, since we use Questetra BPM Suite, we would like to think of a method to realize it more easily.

== Options-XML for Handling Customer Information (Attributes) in Bulk ==

As one of scenes you may use customer master data, “Billing to the customers monthly” can be considered.
In this case, it’s better to make and use a options-XML file like the following example.

< Implementation Example of Options-XML File >

<items>
  <item value="furukubo@questetra.com;20;20000;Taro YAMADA;00110000015LtvIAAS"
 display="YAMADA Corporation" />
  <item value="SouthPole@questetra.com;20;21000;Jiro SATO;00110000015LtwBAAS"
 display="SATO Industry Corporation" />
  <item value="Hawaii@questetra.com;20;22000;Saburo SUZUKI;00110000015LtvhAAC"
 display="SUZUKI Metal Corporation (Okayama branch office)" />
  <item value="Midway@questetra.com;20;22000;Saburo SUZUKI;0011000000qVuKmAAK"
 display="SUZUKI Metal Corporation (Singapore branch office)" />
</items>

< Implementation Example of Options-XML File : Shared File Preview >
Options-XML Shared File preview

  • Option ID
    {Sales Representative Email Address};{Closing Date};{Billing Amount};{Customer Representative Name};{Customer Company ID}
    Each of data items are delimited by delimiter, “; (semicolon)”.
  • Label
    Customer Company Name

With these implementation, we can handle various customer information (attribution) in the select type data item in bulk.

== Application Example ==

For example, when we think of a business process model for monthly billing, the following process model can be considered.
<Monthly Billing : Process Model Diagram >
Monthly billing process diagram

At the “(Initial) Billing Drafting” Task, you will just select “Customer Company Name” in select type data item as described before.

<Monthly Billing : “(Initial) Billing Drafting” Task processing screen>
Billing drafting processing screen

Various information is set on Option ID of selected select type data “Customer Name”.
With the script task, “Customer Information Set”, by analyzing the contents of the option ID and set them to each data item, we can

* Confirm customer information at the tasks after the “Check” task.
* Calculate the closing date of next month because the date is specified, and can Start the process automatically before appropriate closing date of next month.

< Script Task “Customer Information Set” >

var selects = data.get("0");  // Get selected data by option "Customer Name"
var select = selects.get(0);
var datas = new String(select.getValue());  // Get value of customer master
var customerDatas = datas.split(";");  // Delimit by delimiter ";"
// Sales Representative Set (User Type)
retVal.put("1",quserDao.findByEmail(customerDatas[0])); 
// Closing Date Kind Set (Numeric Type)
retVal.put("2",new java.math.BigDecimal(customerDatas[1])); 
// Customer Representative Set (String Type)
retVal.put("3",customerDatas[3]);                           
// Billing Amount Set (Numeric Type)
retVal.put("5",new java.math.BigDecimal(customerDatas[2])); 

 

== Summary ==

How was this example? I think I have been able to roughly meet the requirementI want to set and use “Customer Master Data”“.

In the example of Options-XML, data items is set easy-to-use for billing process. Then, by setting various attributes, I think you will be able to use customer information in many kinds of business processes.

However, it is assumed to receive some opinions like

It is bothersome to change Options-XML manually. I seem to make wrong operations.
I want to check detailed information at the time of drafting.

Of course, we have a solution for responding such opinions.

I will explain such method in the next and subsequent article.

Please try to challenge by all means!
※ Please feel free to contact us if you want to use the process model of application example. 【 Inquiry form is here!

The article of en.workflow-sample.net, “‘Daily Sales Report Referring to Customer Master Data ‘(2015-10-05)”, will also be helpful for you.

About Masato Furukubo

Questetra, Inc. Sales Department
View all posts by Masato Furukubo

Recommendations
Prev article - 55. Improvement Tips How a Business Manual should be for being Easy-to-use?
Next article - 55. Improvement Tips How to Evaluate Questetra (Step 1)
Another article - Masato Furukubo How to Evaluate Questetra (Step 2)

Archive

 RSS