Return codes are generated at several steps in the process of submitting a request and consuming the response. Each return code represents the outcome of a given step in the process. For example, a return code of zero from DBCHCL for the Initiate Request function means that the client has sent the request to the database; if DBCHWAT is used, a return code of zero means that a portion of the response to some request has been received from the database, and a return code of zero from DBCHCL for the Fetch function means that the software has set a pointer to the next information in the response buffer. No one return code stands as a summary of all stages in the processing.
Similarly, a return code does not represent all repeats of a process. For example, a repeated call to DBCHCL for the Fetch function may generate many return codes of zero and later generate a nonzero return code if an application continues to ask for the next parcel in the response after consuming the final parcel.