project QadFinancials > class BCInvoice > method MaintainByDataset

Description

This method uses contents of the input class temp-tables (prefix t_s) to perform the action specified in icAction.
SAVE : validate contents and write to database if correct
SAVEDRAFT : validate contents, write to database if correct, copy the data to the class tables (prefix t_o) and create draft instance if incorrect
DRAFT : copy data to the class tables (prefix t_o) and create draft instance
VALIDATE : only validate data


Parameters


icActioninputcharacterSAVE
SAVEDRAFT
DRAFT
VALIDATE
opPrimaryKeyoutputlongchar
opRowidoutputlongchar
oiDraftInstanceoutputinteger
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program1/bcinvoice.p)

assign oiReturnStatus = -98.
    
<M-43 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>    

if viFcReturnSuper <> 0
then do: 
    assign oiReturnStatus = viFcReturnSuper.
    if oiReturnStatus < 0 
    then return.
end. /* if viFcReturnSuper <> 0 */

if oiReturnStatus = -98 
then assign oiReturnStatus = 0.