Kourier Integrator User Guide
KMK.SERVICE service_id {EXPORT-NETCHG | EXPORT-DELETES}{HEADERS "string"}
This command can be used to execute a Kourier service from the command line or from within a UniBASIC program.
service_id |
The name of a service in the KT_SERVICES file. |
EXPORT-NETCHG |
Indicates that all exports listed in the service are to run in net change mode. |
EXPORT-DELETES |
Indicates that all exports listed in the service are to run in net change with deletes mode. This keyword must be used in combination with the EXPORT-NETCHG keyword. |
HEADERS |
Creates a substitution parameter as specified in "string" where "string" is a named value pair in the format of "name=value". The substitution value can be referenced by using the %name syntax. |
KMK.SERVICE DEMO_KTLOG EXPORT-NETCHG
In this example, the service DEMO_KTLOG will be run in Net Change mode. The output from each export in the service will be saved in the target DSN as a message. Once the service completes, the messages will be de-queued automatically and delivered to the target DSN.
It is possible to call a Kourier Service from UniBASIC code. To do this you must do the following:
Here is a UniBASIC fragment that shows how you can call a Kourier service and check on its execution status.
0001: *
0002: $INCLUDE KORE-INCLUDES KT.STATUSCOM
0003: *
0004: CMD = \KMK.SERVICE DEMO_KTLOG EXPORT-NETCHG\
0005: *
0006: EXECUTE CMD CAPTURING OUTPUT
0007: *
0008: CMD.STATUS = KT.GETSTATUS(CMD.ERR,CMD.PARAMS)
0009: IF CMD.STATUS THEN; * An error was encountered
0010: PRINT 'Error=':CMD.ERR
0011: PRINT 'Params=':CMD.PARAMS
0012: CALL KT.GETMESSAGE(CMD.ERR,CMD.PARAMS,CMD.ERR.TEXT,'')
0013: PRINT 'ErrText=':CMD.ERR.TEXT
0014: END
Line 002 "includes" the common declarations used by the Kourier command status routines.
Line 008 uses the KT.GETSTATUS function to determine if the service ran successfully or if the service encountered an error. If the KT.GETSTATUS function returns a non-zero value then the service encountered an error. The details of the error are returned in the CMD.ERR and CMD.PARAMS variables.
Line 012 uses the KT.GETMESSAGE subroutine to format the error into a human readable format. This text is returned in the CMD.ERR.TEXT variable.