Response Parser > Populating the Response Dataset
  
Populating the Response Dataset
The result of the parser must go in the dsQdocResponseDetails dataset. This dataset contains two temp-tables, ttProcessingResult and ttProcessingException. The ultimate result of the request must go in the ttProcessingResult temp-table in the field resultStatus. The values that this field can take are defined as static properties in the com.qad.qxtend.qxo.QdocResponseHandler class.
 
Property
Value
As Code
PendingStatusCode
PEND
QdocResponseHandler:PendingStatusCode
WarningStatusCode
WRN
QdocResponseHandler:WarningStatusCode
SuccessStatusCode
DLV
QdocResponseHandler:SuccessStatusCode
SendingErrorCode
SENDERR
QdocResponseHandler:SendingErrorCode
SoapFaultErrorCode
SOAPERR
QdocResponseHandler:SoapFaultErrorCode
ApplicationErrorCode
APPERR
QdocResponseHandler:ApplicationErrorCode
For example, if the parser determines that an application error has occurred, the code required would be:
create ttProcessingResult.
assign
ttProcessingResult.resultStatus = QdocResponseHandler:ApplicationErrorCode
ttProcessingResult.resultSequence = 1.
If the parser found two errors with appropriate descriptions, the code to add these to the dataset would be:
create ttProcessingException.
assign
ttProcessingException.resultSequence = 1
ttProcessingException.exceptionSequence = 1
ttProcessingException.exceptionNumber = "999"
ttProcessingException.exceptionDescription = "Part does not exist"
ttProcessingException.exceptionSeverity = "ERROR"
ttProcessingException.exceptionContext = "part = 'ABC123'".
create ttProcessingException.
assign
ttProcessingException.resultSequence = 1
ttProcessingException.exceptionSequence = 2
ttProcessingException.exceptionNumber = "888"
ttProcessingException.exceptionDescription = "User not authorized"
ttProcessingException.exceptionSeverity = "ERROR"
ttProcessingException.exceptionContext = "user = 'lchild'".
The resultSequence value must be the same as that in ttProcessingResult, and each ttProcessingException record must have a unique exceptionSequence number. The remaining fields can be filled out with information gleaned from the response, or left blank.