I have a field in a ListGrid which has an EditorExit handler that makes a DMI call using DataSource.performCustomOperation. In some cases when the DSResponse has a status of VALIDATION_ERROR the field listed in the error is automatically flagged in the ListGrid record with the error icon. In other cases, with the exact same response coming back, instead of the ListGrid field being flagged with the error a pop-up warning message appears with the message "Server returned VALIDATION_ERROR with no error message performing operation 'custom'."
Here is the request/response which results in the pop-up message.
Here is the request/response which results in the normal error flagging on the field. There is no difference between the two responses, just a couple of different fields included on the request. Why would that make a difference in how the error response is handled?
Here is the request/response which results in the pop-up message.
Code:
// Request { "dataSource":"PoPackContents", "operationType":"custom", "operationId":"getDefaults", "data":{ "packCompItemNumber":"white", "packItemNumber":"0280-00280-0333-100-1001", "SizeScale":"1 2 3 4", "ValidSizes":"" }, "showPrompt":true, "prompt":"Validating component item number ...", "oldValues":{ "packCompItemNumber":"white", "packItemNumber":"0280-00280-0333-100-1001", "SizeScale":"1 2 3 4", "ValidSizes":"" }, "requestId":"PoPackContents$627152" } // Response [ { queueStatus:-1, errors:[ { packCompItemNumber:{ errorMessage:"Please enter a valid item number." } } ], isDSResponse:true, invalidateCache:false, status:-4, data:null } ]
Code:
// Request { "dataSource":"PoPackContents", "operationType":"custom", "operationId":"getDefaults", "data":{ "packCompItemNumber":"white", "packItemNumber":"0280-00280-4567-100-1001", "IsValid":"" }, "willHandleError":true, "showPrompt":true, "prompt":"Validating component item number ...", "oldValues":{ "packCompItemNumber":"white", "packItemNumber":"0280-00280-4567-100-1001", "IsValid":"" }, "requestId":"PoPackContents$627175" } // Response [ { queueStatus:-1, errors:[ { packCompItemNumber:{ errorMessage:"Please enter a valid item number." } } ], isDSResponse:true, invalidateCache:false, status:-4, data:null } ]
Comment