ISERIES Function (Magic xpa 3.x)
This function lets you call any UDF function for IBM i (AS/400) in the multi-tread and single-tread environment.
The syntax used to call an IBM i (AS/400) program with more than one parameter is:
Invoke UDP('@MGEAC32.ISERIES', A,B,...)
Where:
-
A represents the argument type string.
-
B represents the valid UDF functions with their parameters, such as RMTCMD, AS400PGMCALL.
For example:
Invoke UDP ('@MGEAC32.ISERIES','AAAV','RMTCMD', '10.1.4.201',
'SNDMSG MSG(HELLO) TOUSR(QSYSOPR)')
Invoke UDP ('@MGEAC32.ISERIES','AAA4AAV', 'AS400Call','10.1.4.201',
'MAGIC400/TEST',1,'A10', 'Hello')
You can use the Invoke UDP '@MGEAC32.ISERIES' operation in a Magic xpa program.
For example, after creating a CL program from the IBM i command line, you can use the parameters, shown in the figure below, to call the IBM i program.

The parameters are:
-
String = 'AAA4AAAV', where ‘AAA4A’ is the fixed part, ‘AA’ depends on the number of parameters passed, and ‘V’ is for the Void Pointer.
-
Function = 'AS400Call'
-
IBM_i_System_Name = '10.1.4.201' (system name or IP_Address)
-
LIB/PGM = 'MYLIB/MYPGM'
-
Number_Of_Parameters = 2
-
Parameters Description = 'A10,A50'. 32,767 characters can be transferred by using an Invoke UDP operation.
-
Parm1(IBM i User) = 'QSYSOPR'
-
Parm2(Message) = 'This is test Message via Magic/400 AS400CALL UDP'
After calling the parameters, the IBM i CL program is displayed in Magic xpa.