You changed the priority of your customer. It is as well.
The following is a Business flow to maintain "Customer Master data" collectively. "Monthly Reviewing" of regular basis and "Extraordinary Reviewing" will be performed by the Sales administrative assistant team.
By updating "Customer Master data" on this special Workflow, you can switch "List of Customers" which is shown on many of Workflows on your Workflow platform (Drop-down list of Options, list in a combo-box, etc.) all together. In other words, each Process-owner who is designing and operating respective Business Processes such as "Quote Approval flow" or "Billing Process" or "Repair Request Response" Process, will be freed from maintaining data of "Customer list".
* Please see the previous article for "Separative addition" to Customer Master data.
[Customer Master Data Maintenance]
In this monthly routine business, valuation on customers (Decile analysis) has been incorporated.
After all, classification code on some of the customers will be updated monthly. As the result, it will be possible that "the latest Customer valuation" to be associated with business records which related to customer.
It will allow you deeper consideration on various analytical duties; i.e.
- The material creation for the "Board of Directors meeting preparation work"
- Submission situation analysis in "estimate submission operations"
- Plan making in the "campaign planning operation", and so on...
By the way, Decile analysis, in the first place, is a management methods to consider the marketing strategy on dividing all customers to a group of 10, depending on the purchase amount. Whereas, it is also useful for even duties other than marketing, to analyze by separating into 10 groups. For example, in discussions such as "Policy for responding to request on product", it will allow more profound discussions, by an analysis narrowed down to the requests from users who have moved to lower decile.
(Traditionally, in most of the cases of Decile analysis, the largest purchased group is named as "Decile 1". And then "Decile 2" to the second largest, and so on until "10". However, here in this example, "0" to "9" is assigned in order from smaller purchased group to the largest, for convenience of code number.)
Maybe it doesn't matter to you, but we don't use "Decimeter" and "Centiliter" at all, to express "quantity of liquid" or "length of a thing". It does not appear even in elementary school textbooks. (Please use "Milliliter" and "centimeter" when you talk to Japanese.)
- One tenth: deciliter/dL, (decimeter/dm)
- One hundredth: (centiliter/cL), centimeter/cm
- One thousandth: milliliter/mL, millimeter/mm
▼ Sample code of [Retrieving Master data file] (Server side)
- Input: XML file that has been registered in "Common file"
- Output: Output to Table type data, output a TSV text to String type data
//// == Retrieving == // M319 Options-XML: Options XML that is referred from multiple Business Process optionsList = itemDao.findAll("Business-Connections.xml", true); // return "List<ItemView>" //// Calculating == optionsNum = optionsList.size(); var tmpTable = new com.questetra.bpms.core.model.formdata.ListArray(); // Table type data for (i=0; i < optionsNum; i++){ var tmpRow = new com.questetra.bpms.core.model.formdata.ListArray.ListRow(); // Additional lines tmpRow.addCol( optionsList.get(i).getValue().substr(0, 6) ); tmpRow.addCol( optionsList.get(i).getValue().substr(7, 13) ); // index=7 to 13 characters tmpRow.addCol( optionsList.get(i).getValue().substr(21) ); // index=21 and after tmpRow.addCol( optionsList.get(i).getDisplay() ); tmpTable.addRow( tmpRow ); // Add lines } var tsvtext = ""; // Multiple line string data for (i=0; i < optionsNum; i++){ tsvtext += optionsList.get(i).getValue().substr(0, 6) + "\t"; tsvtext += optionsList.get(i).getValue().substr(7, 13) + "\t"; tsvtext += optionsList.get(i).getValue().substr(21) + "\t"; tsvtext += optionsList.get(i).getDisplay() + "\n"; } //// == Updating == retVal.put("1", tmpTable ); retVal.put("2", tsvtext );
▼ Sample code of [List generation]
- Input: Contents of Table type data
- Output: Output text to 2 String type data
//// == Retrieving == // mytable: com.questetra.bpms.core.model.formdata.ListArray var mytable = data.get("1"); // Retrieving Table type data //// == Calculating == //{6 characters of Customer classification}#{Corporation Number}#{URL of the corporate} and {Trade name} var i=0; var n = mytable.size(); var value_id_list = ""; var display_label_list = ""; for (i=0; i < n; i++){ value_id_list += mytable.get(i, 0) + "#"; value_id_list += mytable.get(i, 1) + "#"; value_id_list += mytable.get(i, 2) + "\n"; display_label_list += mytable.get(i, 3) + "\n"; } //// == Updating == retVal.put("5", value_id_list); retVal.put("6", display_label_list);
▼ Sample code of [TSV Uptake] (Server side)
- Input: Data of String type multiple lines (4 items in each line, separated with 'Tab')
- Output: Update Table type data
- * Possible to uptake by Copy & paste from MS-Excel or Google SpreadSheet
//// == Retrieving == var tsvtext = data.get("2"); // Retrieving TSV data //// == Calculating == var tsvtextObj = new String(tsvtext); var lineArray = tsvtextObj.split("\n"); // Divide at each line break, store in Array string[] var tmpTable = new com.questetra.bpms.core.model.formdata.ListArray(); // Table type data for (var i=0; i < lineArray.length; i++){ var tmpRow = new com.questetra.bpms.core.model.formdata.ListArray.ListRow(); // Additional lines (raw) var lineObj = new String(lineArray[i]); var cellstrArray = lineObj.split("\t"); // Divide at each tab and store tmpRow.addCol( cellstrArray[0] ); tmpRow.addCol( cellstrArray[1] ); tmpRow.addCol( cellstrArray[2] ); tmpRow.addCol( cellstrArray[3] ); tmpTable.addRow( tmpRow ); // Add Lines } //// == Updating == retVal.put("1", tmpTable );
[Customer Master Data Maintenance:"1. Collective Modification" screen]
[Data Items list]
[Free Download]
- Business Template: Customer Master Data Maintenance
- Management of Customer Master Data Using Corporation Number (Updating for addition) (2015-09-14)
- Management of Client Master Using Corporation Number (2015-09-07)
- Master Management to Make All the Client to "Input Select" (2014-06-16)
- Trick for Eliminating Fluctuation from Client's Name (2014-06-02)
- "Choices .XML" to be Shared with Whole Society (Prefectural Code / Enterprise ID) (2014-06-09)
- M319 MODELING ENVIRONMENT: Register an Options-XML file to which the Process Model Definitions Refer
- M230 AUTOMATED STEP: Auto Executing Complicated Data Processing (ECMAScript)
- M217 AUTO START: Auto Starting at the Time You Fix
[Japanese Entry (εζθ¨δΊ)]