project QadFinancials > class BCInvoice > method DefaultValuesPostingDate


Parameters


icCInvoiceRowIdinputcharacterRow ID of the supplier invoice
itCInvoicePostingDateinputdate
itCInvoiceDateinputdate
iiCInvoicePostingYearinputinteger
icJournalCodeinputcharacter
icCInvoiceTypeinputcharacter
iiCInvoiceVoucherinputinteger
icCAJournalCodeinputcharacter
iiCAVoucherinputinteger
icCurrencyCodeinputcharacter
icOwnVatCurrencyCodeinputcharacter
itCInvoiceTaxPointDateinputdate
ilCInvoiceIsInitialStatusinputlogical
oiCInvoicePostingYearoutputinteger
oiCInvoicePostingPeriodoutputinteger
oiCInvoiceVoucheroutputinteger
oiCAVoucheroutputinteger
odCInvoiceExchangeRateoutputdecimal
odCInvoiceRateScaleoutputdecimal
odCInvoiceVatExchangeRateoutputdecimal
odCInvoiceVatRateScaleoutputdecimal
odCInvoiceCCExchangeRateoutputdecimal
odCInvoiceCCRateScaleoutputdecimal
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program3/bcinvoice.p)

if itCInvoicePostingDate = ?
then return.

if itCInvoiceDate = ?
then return.

assign oiCInvoiceVoucher = iiCInvoiceVoucher
       oiCAVoucher       = iiCAVoucher
       vhFcComponent     = ?.

<M-1 run GetDefaultPeriodDate
   (input  ? (iiYearIn), 
    input  ? (iiPeriodIn), 
    input  itCInvoicePostingDate (itDateIn), 
    input  true (ilOpenForPurchase), 
    input  ? (ilOpenForSales), 
    input  ? (ilOpenForInventory), 
    output oiCInvoicePostingYear (oiYear), 
    output oiCInvoicePostingPeriod (oiPeriod), 
    output vtDummy (otPostingDate), 
    output viFcReturnSuper (oiReturnStatus)) in BPeriod>
if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)        
then assign oiReturnStatus = viFcReturnSuper.
if oiReturnStatus < 0
then return.

if oiCInvoicePostingYear <> iiCInvoicePostingYear 
then do:
    <M-2 run DefaultValuesJournal
       (input  icCInvoiceRowId (icCInvoiceRowId), 
        input-output icJournalCode (bcJournalCode), 
        input  oiCInvoicePostingYear (iiCInvoicePostingYear), 
        input  icCInvoiceType (icCInvoiceType), 
        input  iiCInvoicePostingYear (iiOldCInvoicePostingYear), 
        input  icJournalCode (icOldJournalCode), 
        input  iiCInvoiceVoucher (iiOldCInvoiceVoucher), 
        input  ilCInvoiceIsInitialStatus (ilCInvoiceIsInitialStatus), 
        output oiCInvoiceVoucher (oiCInvoiceVoucher), 
        output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
    if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)        
    then assign oiReturnStatus = viFcReturnSuper.
    if oiReturnStatus < 0
    then return.    

    <M-3 run DefaultValuesCAJournal
          (input  icCInvoiceRowId (icCInvoiceRowId), 
           input-output icCAJournalCode (bcCAJournalCode), 
           input  oiCInvoicePostingYear (iiCInvoicePostingYear), 
           input  iiCInvoicePostingYear (iiOldCInvoicePostingYear), 
           input  icCAJournalCode (icOldCAJournalCode), 
           input  iiCAVoucher (iiOldCAVoucher), 
           output oiCAVoucher (oiCAVoucher), 
           output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
    if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)        
    then assign oiReturnStatus = viFcReturnSuper.
    if oiReturnStatus < 0
    then return.
end.

find tCInvoice where 
     tCInvoice.tc_Rowid = icCInvoiceRowId
    no-lock no-error.
if not available tCInvoice
then do :
     <M-45 run SetMessage
        (input  #T-57'The specified supplier invoice is not defined in the system or is invalid.':80(999890907)T-57# (icMessage), 
         input  '':U (icArguments), 
         input  '':U (icFieldName), 
         input  '':U (icFieldValue), 
         input  'D':U (icType), 
         input  3 (iiSeverity), 
         input  '':U (icRowid), 
         input  'qadfin-276078':U (icFcMsgNumber), 
         input  '':U (icFcExplanation), 
         input  '':U (icFcIdentification), 
         input  '':U (icFcContext), 
         output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
    assign oiReturnStatus = -1.
    return.
end. /* if not available tCInvoice */

<M-4 run DefaultValuesCurrency
   (input  tCInvoice.Company_ID (iiCompanyID), 
    input  icCurrencyCode (icCurrencyCode), 
    input  ? (iiCurrencyId), 
    input  itCInvoicePostingDate (itCInvoicePostingDate), 
    input  icOwnVatCurrencyCode (icOwnVatCurrencyCode), 
    input  itCInvoiceTaxPointDate (itCInvoiceTaxPointDate), 
    input  itCInvoiceDate (itCInvoiceDate), 
    output odCInvoiceExchangeRate (odCInvoiceExchangeRate), 
    output odCInvoiceRateScale (odCInvoiceRateScale), 
    output odCInvoiceVatExchangeRate (odCInvoiceVatExchangeRate), 
    output odCInvoiceVatRateScale (odCInvoiceVatRateScale), 
    output odCInvoiceCCExchangeRate (odCInvoiceCCExchangeRate), 
    output odCInvoiceCCRateScale (odCInvoiceCCRateScale), 
    output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
if viFcReturnSuper < 0 or (viFcReturnSuper > 0 and oiReturnStatus = 0)        
then assign oiReturnStatus = viFcReturnSuper.
if oiReturnStatus < 0
then return.