project QadFinancials > class BPosting > method GetPostingRowidBasedOnPostingID


Parameters


iiPostingIDinputinteger
ocPostingRowidoutputcharacter
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BAPMatching.AdditionalUpdatesAll
method BCInvoice.ReplaceCInvoicePosting
method BCInvoice.ReverseCInvoicePosting
method BQCrossCyPosting.ApiProcessQCrossCyPostingForReverse


program code (program6/bposting.p)

assign oiReturnStatus = -98.

/* Get the posting */
find first tPosting where
           tPosting.Posting_ID = iiPostingID
           no-error.

/* If posting is notin instance, read  it from DB */
if not available tPosting
then do:
    <M-3 run DataLoad
       (input  '':U (icRowids), 
        input  '':U (icPkeys), 
        input  iiPostingID (icObjectIds), 
        input  '':U (icFreeform), 
        input  yes (ilKeepPrevious), 
        output viFcReturnSuper (oiReturnStatus)) in BPosting>
    if viFcReturnSuper <> 0 then assign oiReturnStatus = viFcReturnSuper.
    if viFcReturnSuper < 0
    then do:
        assign vcMsg = #T-4'The system cannot read details about the details of posting ID &1.':255(69152)t-4#
               vcMsg = substitute(vcMsg, iiPostingID).
        <M-5 run SetMessage
           (input  vcMsg (icMessage), 
            input  '':U (icArguments), 
            input  '':U (icFieldName), 
            input  '':U (icFieldValue), 
            input  'E':U (icType), 
            input  3 (iiSeverity), 
            input  '':U (icRowid), 
            input  'QadFin-7920':U (icFcMsgNumber), 
            input  '':U (icFcExplanation), 
            input  '':U (icFcIdentification), 
            input  '':U (icFcContext), 
            output viFcReturnSuper (oiReturnStatus)) in BPosting>
        return.
    end.
    
    /* Get the posting */
    find first tPosting where
               tPosting.Posting_ID = iiPostingID
               no-error.
end.

if not available tPosting or
   tPosting.tc_Status = "D":U
then do:
     assign vcMsg = #T-1'The posting does not exist ($1).':255(69144)t-1#
            vcMsg = substitute(vcMsg, iiPostingID).
     <M-2 run SetMessage
        (input  vcMsg (icMessage), 
         input  '':U (icArguments), 
         input  '':U (icFieldName), 
         input  '':U (icFieldValue), 
         input  'E':U (icType), 
         input  3 (iiSeverity), 
         input  '':U (icRowid), 
         input  'QadFin-7908':U (icFcMsgNumber), 
         input  '':U (icFcExplanation), 
         input  '':U (icFcIdentification), 
         input  '':U (icFcContext), 
         output viFcReturnSuper (oiReturnStatus)) in BPosting>
     assign oiReturnStatus = -1.
     return.
end.

/* Return the RowId */
assign ocPostingRowid = tPosting.tc_Rowid.
    
if oiReturnStatus = -98 then assign oiReturnStatus = 0.