project QadFinancials > class BConsolid > method AdditionalUpdatesDelete
Description
Additional Updates for records with status 'D'.
Parameters
| oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program1/bconsolid.p)
assign viLocalReturnStatus = oiReturnStatus
oiReturnStatus = -98.
for each tConsolid where
tConsolid.tc_Status = 'D':U:
/* ========================================================================== */
/* Only delete transient consolidations (or consolidations of status initial) */
/* ========================================================================== */
if tConsolid.ConsolidTargetLayerTypCode <> {&CONSOLIDTARGETLAYERTYPE-TRANSIENT} and
tConsolid.ConsolidStatus <> {&CONSOLIDSTATUS-INITIAL}
then do:
assign vcMessage = trim(#T-8'You can only delete consolidation records in the transient layer.':200(62527)t-8#)
oiReturnStatus = -1.
<M-1 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input tConsolid.tc_Status (icRowid),
input 'QadFin-6359':U (icFcMsgNumber),
input '' (icFcExplanation),
input '' (icFcIdentification),
input '' (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BConsolid>
return.
end.
if tConsolid.Posting_ID <> 0 and
tConsolid.Posting_ID <> ?
then do:
/* ============================================ */
/* start and/or open the journal entry instance */
/* ============================================ */
if viBJournalEntryConsolidID = 0 or viBJournalEntryConsolidID = ?
then do:
<I-2 {bFcStartAndOpenInstance
&ADD-TO-TRANSACTION = "true"
&CLASS = "BJournalEntry"}>
end.
else do:
<I-3 {bFcOpenInstance
&CLASS = "BJournalEntry"}>
end.
/* ================== */
/* Delete the posting */
/* ================== */
<M-4 run apiDeleteInstance
(input 'Primary=':U + trim(string(tconsolid.posting_ID)) (icKey),
output viLocalReturnStatus (oiReturnStatus)) in BJournalEntry>
if viLocalReturnStatus = 0 or
viLocalReturnStatus = ?
then do:
<M-5 run ValidateBCAndAdditionalUpdates
(output viLocalReturnStatus (oiReturnStatus)) in BJournalEntry>
end.
/* ================================ */
/* close the journal entry instance */
/* ================================ */
<I-6 {bFcCloseInstance
&CLASS = "BJournalEntry"}>
if viLocalReturnStatus < 0
then do:
<M-9 run StopExternalInstances
(output viFcReturnSuper (oiReturnStatus)) in BConsolid>
assign oiReturnStatus = viLocalReturnStatus.
return.
end.
end.
end. /* for each tConsolid where tConsolid.tc_Status = 'D':U */
assign oiReturnStatus = viLocalReturnStatus.