- Write a detailed description of what the user calculation is required to do.
A UserCalc is required to issue a message instructing the user to complete the employee's I9 information in IEPI, take the user to the employee's IEPI screen and issue an email to the employee's manager/supervisor.
- Divide the description into logical sections.
The following questions can help you do this:
Section 1 - Who must be processed?
This UserCalc is intended for all new hires.
Section 2What information is necessary for the process?
Custom Function called New Hire Three workflow actions called ADD_I9_FOR_EE, COMPLETE_IPRLU and WELCOME_NEW_EE.
Section 3What is the calculation?
This does not apply to the example above.
3. Create all the necessary 'components' needed for the UserCalc.#
Workflow Action Event | IMWA | COMPLETE_IPRLU |
---|---|---|
Workflow Action Event | IMWA | NEW_EE-MGR |
Variable | IMUC | Gender |
Custom Function | Custom functions are normally created by our Developers based on requests from the client base. Some of these are very custom specific to a clients business while others are more general and can be used by all clients. With recent changes to the system customers can now create there own custom functions provided they abide by the rules of the system. |
4. Code the UserCalc on the Maintain UserCalc FORM (IMUC)#
Only fields within the tables that are specified within the WF Product (i.e. WF_EASD) can be referenced within the UserCalc. In this example, the WF Product that is used is WF_EASD, therefore only fields from the tables supplied in IMPT for that product can be referenced in this UserCalc.Columns that are on the triggering table itself are accessed with OV/NV and the columns from the other tables are accessed through DB.
Line | CMD | Type 1 | Operand 1 | OPER | Type 2 | Operand 2 | Type 3 | Operand 3 | If GOTO | Else GOTO |
---|---|---|---|---|---|---|---|---|---|---|
00010 | IF | CF | NewHire | EQ | B | TRUE | 00020 | 99999 | ||
00020 | IF | DB | EID.GENDER | EQ | A | 01 | 00030 | 00040 | ||
00030 | LET | V | Gender | EQ | A | His | 00100 | |||
00040 | LET | V | Gender | EQ | A | Her | 00100 | |||
00100 | LET | V | Department | EQ | DB | DDP.DEPARTMENT_CODE | 00110 | |||
00110 | LET | V | Group | EQ | DB | DGR.GROUP_CODE | 00120 | |||
00120 | LET | V | Assignment_Title | EQ | NV | Assignment_Title | 00300 | |||
00300 | ACT | AC | NEW_EEMGR | LOG | $S | CURRENT-DATE | RT | Manager | 00310 | |
00310 | ACT | AC | COMPLETE_IPRLU | LOG | $S | CURRENT-DATE | RT | Current User | 99999 | |
99999 | EXIT |
5. Compile and publish the UserCalc#
6. Link the UserCalc to the Calling Program or Application.#
Workflow UserCalcs are not attached to any program or application.IMPORTANT: Checking if a column id's new value is in a lexicon list of ID numbers will not work. The new value or old value ID numbers must be stored in a variable first then the variables used to check against the lexicon list.