My client has an external system for their merit reviews and is passing a delimited file to Lawson for ProcessFlow to add the PA26 record and to kick off a Merit Personnel Action for the merit pay change.
The file looks something like this:
Record Type|Company|Employee|Scheduled Review Date|Actual Review Date|Review Score|Merit Increase Percent|Supervisor
A|100|53059|20080601|20080701|3|3.5|90006
Record Type|Company|Employee|Scheduled Review Date|Actual Review Date|Review Score|Merit Increase Percent|Supervisor
A|100|53059|20080601|20080701|3|3.5|90006
I'm using the DataIterator node to read the lines from the file and then an Assign node to parse the line to different variables.
Within the Assign node the JavaScript Expression looks like this:
ary = new Array(); ary = NewMerit_outputData.split("|"); ary[0]
so the first variable gets the value "A"
The second variable gets the value of "100" with this JavaScript Expression:
ary = new Array(); ary = NewMerit_outputData.split("|"); ary[1]
NewMerit_outputData is the value of the line being read by the DataIterator.You notice this is basically rebuilding the array for each variable.
Here are the steps this expression takes:
Define the variable 'ary' as a new array
Read the value of the input line and split it into the array
Read the value of the array at position #
The last expression in the JavaScript Expression is what is assigned to the variable. I have in the past modified the pflow.js file to perform a similar function but that's not always practical so I decided to try this first.