Let's Sort it Out (in JavaScript)

Issue:
We are converting payroll history into Lawson S3 via IPA and the order of the fields in each row don't line up with the sort order we need them to be in.

The first 6 fields are Record Type, Company, Employee, Process Level, Department and Check ID but they need to be sorted by Company, Employee, Check ID, Record Type, Process Level and Department.

Solution:
The quick method I used was to create the output data with the first 6 fields in the order I needed to sort them in and then used the JavaScript sort() function to sort the array.

That required me to then to read through the data output again, placing each field in it's correct import order.

Not just answers, providing solutions

Using Arrays for a Cross Reference Lookup

Issue:
You may have had to create a flow that needed to look up one value to find another value from a cross reference table. You know that performing this look up as you're looping through your records can really slow down the performance of  your flow.

For example, perhaps you need the full name of a US State and have a crosswalk of the State code and full name:

FL=Florida
GA=Georgia
TN=Tennessee
etc.

Solution:
You can query and assign your cross reference values to arrays at the beginning of your flow.

If it is a straight one to one cross reference then create two arrays, like StateCode and StateDescription can be defined on the Start node.

Variable Name = StateCode
Variable Type = Array
Variable Value = [] or new Array()

As you cycle through the cross reference values, assign StateCode[counter]=State Code and StateDescription[counter]=State Description.

StateCode[0]="FL"
StateDescription[0]="Florida"
StateCode[1]="GA"
StateDescription[1]="Georgia"
StateCode[2]="TN"
StateDescription[2]="Tennessee"

While your looping through your records and you come across the State Code, you can now find the State Description value to use.

i=StateCode.indexOf(stateCode)
if (i>=0) description=StateDescription[i]

Not just answers, providing solutions

ION Document Flow

A Document Flow moves the Business Object Document (BOD) from one application to another, like the Security User Master BOD from IFS to Landmark multi-Tenant, Landmark single-Tenant, Mongoose, Lawson LSF, etc.

Each of these applications had its own SUM BOD Document Flow created as the applications were rolled out, and after we implemented EAM we followed the same pattern and created a new Document Flow, this one with a Mapping included.

So, each application we were sending the SUM BOD to had their own separate Document Flow to process the BOD and so, we thought, the Mapping from one wouldn’t impact the others. That’s not what we discovered.

We started getting Error BODs because the Mapping we applied to the EAM Document Flow caused a problem with the other systems that couldn’t accept the change to the BOD. It was like the different Document Flows processed the BOD in a series and that’s what it looked like in One View when we reviewed the processing.

How then could we apply the Mapping for EAM without impacting the other applications? It sounds simple now, but we tried a few different things before we hit upon the answer. We needed to create one Document Flow for all of the applications together.

One Document Flow to move the BOD from IFS to all of the receiving applications, with the Mapping for EAM in a parallel stream within the Document Flow.

Not just answers, providing solutions