Using JSDOs to create mobile and web clients : Accessing standard CRUD and Submit operations : Delete operation example : An OpenEdge ABL implementation for Delete
  
An OpenEdge ABL implementation for Delete
For an OpenEdge Data Object resource, the signature of the ABL routine that implements a Delete operation must have a single INPUT-OUTPUT parameter for a DATASET, DATASET-HANDLE, TABLE or TABLE-HANDLE. If the resource supports before-image data, the parameter can only be for a DATASET or DATASET-HANDLE.
The following example shows a DeletedsCustomer( ) method that might implement the Data Object Delete operation for the ProDataSet resource, dsCustomer:
METHOD PUBLIC VOID DeletedsCustomer(INPUT-OUTPUT DATASET dsCustomer):

DEFINE VAR hDataSet AS HANDLE NO-UNDO.
hDataSet = DATASET dsCustomer:HANDLE.

SUPER:DeleteData(DATASET-HANDLE hDataSet BY-REFERENCE).

END METHOD.
This implementation simply calls an overload of the DeleteData( ) method defined in the OpenEdge.BusinessLogic.BusinessEntity super class, which OpenEdge provides as an aid for implementing Data Object resources that support before-imaging. The invoked DeleteData( ) method provides a default implementation to delete an existing record in the server database identified from the single temp-table record deleted in the ProDataSet input to DeletedsCustomer( ).