QXtend Inbound Pre- and Postprocessors > Creating Custom Pre- and Postprocessing Programs > Program Structure
  
Program Structure
The program structure is as follows:
DEFINE INPUT PARAMETER pQDoc AS HANDLE NO-UNDO.
DEFINE INPUT PARAMETER pMessageLogger AS HANDLE NO-UNDO.
/* Custom validation code goes here; */
/* Log any warnings or errors. */
RETURN ERROR.