Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The program interface is as follows:

PJSCALL Parameter List

ParameterUsageType/LengthOptions
1

Parameter Type

This should always pass in the value of "*MODULE"

InputChar(30)Const
2

ModuleID

This is made up of workspace information as well as module file path.

InputVarUSC2(500)Const
3

Routine Name

If the module being called is a Low-Code Module, you can specify the exact routine to be called.

InputVarUCS2(70)Const
4

Input Parameter (optional)

Parameter to pass to the Low-Code module.
This should be a data structure which subfields matches exactly to a Low-Code module input parameters type and size.

Input

DataStructure

Const *Omit *NoPass
5

Input Parameter Size (optional)

The size of the Input Parameter data structure

InputInt(10)Const *Omit *NoPass
6Output Parameter (optional)

Parameter to be returned from the Low-Code module.
This should be a data structure which subfields matches exactly to a Low-Code module output parameters type and size.

OutputDataStructureConst *Omit *NoPass
7

Output Parameter Size (optional)

The size of the Output Parameter data structure

InputInt(10)Const *Omit *NoPass

Having the correct value for the ModuleID parameter is very important.  When creating a Low-Code module with the IDE, it has a separate tab that auto generates the exact RPG code snippet needed to call that module.  Here are the different use cases and example values:

...

  • Module - Specifies the Profound.js module name to call (the .js extension can be omitted here)
  • Directory - Specifies the subdirectory of modules containing the Profound.js module to call. You can specify *PATHLIST to use the pathlist to search for the module – all directories in the Profound.js pathlist are searched until the first match is found. The pathlist is derived from the IBM i job's library list.
  • Parameters - One or more parameters can be specified to pass to the module. Note: Unlike the CALL commandPJSCALL program, the PJSCALL command does not modify the data in CL variables that are passed as parameters.

...