This user exit is called after creating a work package (using the start process), when a work package is moved off a work node, to move to a work node, or when the overload limit is reached.
At the time the exit is called, the work package exists in the work package table, and can be retrieved using the componentID as the identifier of the row in table ICMUT00204001.
typedef struct ICMCONTAINERDATA_STRUCT
{
char szContainerName[33]; Container Data variable name
char szContainerVal[255]; Container Data variable value
}ICMCONTAINERDATA_STRUCT;
typedef struct _ICMUSERSTRUCT
int lUserEvent;
char szWPCompID[19];
char szWPItemID[27];
short sWPVersionID;
char szRouteSel[33];
short sUpdateFlag;
short sNumContainerData;
pContainerDataStructIn
pContainerDataStructOut
const ICMCONTAINERDATA_STRUCT *pContainerDataStructIn;
ICMCONTAINERDATA_STRUCT *pContainerDataStructOut;
void * mallocf;
} ICMUSERSTRUCT;
A sample code is provided in IBMCMROOT\samples/server/exit. For the sample user exit, the following files are installed under IBMCMROOT\samples\server\exit directory:
Sample name | Purpose |
---|---|
icmdruext.c | C source code for user exit |
icmdruext.def | Standard DEF file for Windows platform |
wxv2tue.h | Header file for user exit constants, prototypes |
bldexit.bat | Compile IBM® Content Manager library server user exit using Microsoft Visual Studio 2003 |
For document routine user exits, the path name of the shared library and the name of the function are specified by the users when creating the work nodes.