project QadFinancials > class BCreditorReport > method ValidateAgeingReport


Parameters


oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BCreditorReport.CreditorAgeingAnalysisCurrent


program code (program1/bcreditorreport.p)

if vlCheckHistoryFilterCR
then do:   
    <Q-1 assign vlFcQueryRecordsAvailable = QCInvoiceMovementAll (NoCache)
       (input viCompanyId, (CompanyId)
        input ?, (DaemonId)) in BQCInvoiceMovement >
    if vlFcQueryRecordsAvailable = true or
       vlFcQueryRecordsAvailable = ?
    then do:              
        <M-2 run SetMessage
           (input  #T-4'Run the Balance daemon to update the supplier balances.':70(65167)T-4# (icMessage), 
            input  '':U (icArguments), 
            input  '':U (icFieldName), 
            input  '':U (icFieldValue), 
            input  'E':U (icType), 
            input  3 (iiSeverity), 
            input  '':U (icRowid), 
            input  'QADFIN-3689':U (icFcMsgNumber), 
            input  #T-5'There are still transactions in the Balance daemon queue. Run to Balance daemon to process the queue or data inconsistencies could occur.':150(65166)T-5# (icFcExplanation), 
            input  '':U (icFcIdentification), 
            input  '':U (icFcContext), 
            output oiReturnStatus (oiReturnStatus)) in BCreditorReport>                                              
        assign oiReturnStatus = -1.
        return.
    end.
end.
/* Check If Filterfields are correct */
assign vcCErrorMessage = "":U.

if vtDateForAgeingCalcFilter1 = ? 
then assign vcCErrorMessage = #T-6'You must enter the date for aging calculation.':50(1467)T-6# + chr(10).
if vcAgeingTypeFilter1 = ?
then assign vcCErrorMessage = vcCErrorMessage + #T-7'You must enter the aging type.':50(1468)T-7# + chr(10).
if viAgeingOffsetFilter1 = ?
then assign vcCErrorMessage = vcCErrorMessage + #T-8'You must enter the aging offset.':50(1469)T-8# + chr(10).
else do:
    if vcAgeingTypeFilter1 = {&AGEINGTYPE-DAYS} and (viAgeingOffsetFilter1 < 1 or viAgeingOffsetFilter1 > 60)
    then assign vcCErrorMessage = vcCErrorMessage + #T-9'Aging offset is out of range (1-60).':50(1470)T-9# + chr(10).
    if vcAgeingTypeFilter1 = {&AGEINGTYPE-MONTHS} and (viAgeingOffsetFilter1 < 1 or viAgeingOffsetFilter1 > 12)
    then assign vcCErrorMessage = vcCErrorMessage + #T-10'Aging offset is out of range (1-12).':50(1471)T-10# + chr(10).
end.
/*
if vcReportingCurrencyFilter1 = {&CURRENCYTYPE-TC} and vcCurrencyCodeFilter1 = ?
then assign vcCErrorMessage = vcCErrorMessage + #T-11'You must enter the currency code.':50(1460)T-11# + chr(10).
*/

if vcGroupingLevelFilter1 = {&DEBTORGROUPINGLEVEL-PROJECT}
then if vcFromProjectCodeFilter1 = ? and
        vcToProjectCodeFilter1 = ? and
        vcCandoProjectCodeFilter1 = ? 
     then assign vcCErrorMessage = vcCErrorMessage + #T-12'Use the project filter (from/to) for project grouping.':100(1472)T-12# + chr(10).
     
if vlCreditorTotalsOnlyFilter1 = true and vlShowDetailLinesFilterCR = true
then assign vcCErrorMessage = vcCErrorMessage + #T-13'The Supplier Totals Only and Show Detail Lines filter fields cannot both be set to Yes.':100(16245)T-13# + chr(10).          

if vcCErrorMessage <> "":U
then do:
    <M-3 run SetMessage
       (input  vcCErrorMessage (icMessage), 
        input  '':U (icArguments), 
        input  '':U (icFieldName), 
        input  '':U (icFieldValue), 
        input  'E':U (icType), 
        input  3 (iiSeverity), 
        input  '':U (icRowid), 
        input  'QADFIN-3690':U (icFcMsgNumber), 
        input  '' (icFcExplanation), 
        input  '' (icFcIdentification), 
        input  '' (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BCreditorReport>               
    assign oiReturnStatus = -1.
    return.
end.