| icAction | input | character | SAVE SAVEDRAFT DRAFT VALIDATE |
| ilReturnDataset | input | logical | Indication whether the logic should return the official dataset of the object that has just been created/modified. |
| ilPartialUpdate | input | logical | Indication whether the input dataset is a full object or only a partial one. |
| icPartialUpdateExceptionList | input | character | Comma separated list with fields that need to be skipped in the test logic for partial update. Fields in the list are specified as t<table>.<field>. |
| opPrimaryKey | output | longchar | |
| opRowid | output | longchar | |
| oiDraftInstance | output | integer | |
| ocPrimaryKeyName | output | character | The name of the field(s) in the primary key of the object. Normally this is the name of the object ID of the main table. (like creditor_ID) |
| ozObjectRepresentation | output | dataset-handle | The dataset containing the official representation of the object dataset. It should always be passed by-reference, meaning, the dataset handle should be created before the call. |
| oiReturnStatus | output | integer | Return status of the method. |
assign oiReturnStatus = -98
vlReturnDatasetCI = ilReturnDataset
vhDatasetToReturnCI = ozObjectRepresentation
vcPrimKeyCI = "".
<M-60 run ApiStdMaintainTTV01
(input t_sCInvoice (tApiCInvoice),
input t_sCInvoiceBank (tApiCInvoiceBank),
input t_sCInvoiceBankPayCode (tApiCInvoiceBankPayCode),
input t_sCInvoiceMovement (tApiCInvoiceMovement),
input t_sCInvoicePO (tApiCInvoicePO),
input t_sCInvoicePosting (tApiCInvoicePosting),
input t_sCInvoiceVat (tApiCInvoiceVat),
input t_sCInvoiceStage (tApiCInvoiceStage),
input t_sCInvoiceWHT (tApiCInvoiceWHT),
input icAction (icAction),
output opPrimaryKey (ocLstPrimKey),
output vcDummy (ocLstReturn),
output opRowid (ocLstRowid),
output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
assign ocPrimaryKeyName = vcPrimKeyCI
vlReturnDatasetCI = false.
if viFcReturnSuper <> 0
then do:
assign oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper < 0 then return.
end. /* if viFcReturnSuper <> 0 */
if oiReturnStatus = -98
then assign oiReturnStatus = 0.