project QadFinancials > class BDInvoice > business logic query DInvoiceByAllocationInfo

Description

DInvoiceByAllocationInfo; query that returns all debtor-invoices that match the input parameters (= Allocation information)


Parameters


iiCompanyIdintegerCompany id
icBusinessRelationCodecharacter
iiDInvoiceIDintegerDInvoiceID
icDInvoiceDescriptioncharacterDInvoice Refererence/Description
icDebtorCodecharacter
icCurrencyCodecharacter
ilDInvoiceIsOpenlogicalCInvoice is Open
idDInvoiceAmountTCMinimumdecimalDInvoiceAmountTCMinimum (checked against the DebitBalanceTC or the CreditBalanceTC)
idDInvoiceAmountTCMaximumdecimalDInvoiceAmountTCMinimum (checked against the DebitBalanceTC or the CreditBalanceTC)
iiPeriodYearMinimumintegerPeriodYearMinimum; when filled, only invoices with a >= year will be returned.
icJournalCodecharacterDaybook Code
iiPeriodYearinteger
iiVoucherintegerVoucher
icDInvoiceTSMNumbercharacterDCInvoiceTSMNumber
icShipperCodecharacter
icCorporateGroupCodecharacter
ilCompIsOICrossCylogicalOpen Item Cross Entity Allowed or not ?
iiDebtor_IDinteger
ilDInvoiceIsSelectedlogical
iiBillNumberinteger
iiBillYearinteger


query condition


  each DInvoice where
DInvoice.Company_Id = iiCompanyId AND
DInvoice.DInvoiceDescription matches icDInvoiceDescription AND
((DInvoice.DInvoiceBalanceCreditTC >= idDInvoiceAmountTCMinimum AND
DInvoice.DInvoiceBalanceCreditTC <= idDInvoiceAmountTCMaximum ) OR
(DInvoice.DInvoiceBalanceDebitTC >= idDInvoiceAmountTCMinimum AND
DInvoice.DInvoiceBalanceDebitTC <= idDInvoiceAmountTCMaximum )) AND
DInvoice.DInvoice_ID = iiDInvoiceID AND
DInvoice.DInvoiceIsOpen = ilDInvoiceIsOpen AND
DInvoice.DInvoiceVoucher = iiVoucher AND
DInvoice.DInvoiceTSMNumber matches icDInvoiceTSMNumber AND
DInvoice.Debtor_ID = iiDebtor_ID AND
DInvoice.DInvoiceIsSelected = ilDInvoiceIsSelected AND
DInvoice.DInvoicePostingYear = iiPeriodYear

      first Bill (conditional-join) where
Bill.Company_Id = iiCompanyId AND
Bill.Bill_ID = DInvoice.Bill_ID AND
Bill.BillNumber = iiBillNumber AND
Bill.BillYear = iiBillYear

      first Company (inner-join) where
Company.Company_Id = iiCompanyId AND
Company.Company_ID = DInvoice.Company_ID AND

          each CompanyProperty (conditional-join) where
CompanyProperty.Company_Id = iiCompanyId AND
CompanyProperty.Company_ID = Company.Company_ID AND
CompanyProperty.CompanyPropertyIsOICrossCy = ilCompIsOICrossCy

      first Currency (inner-join) where
Currency.Currency_ID = DInvoice.DInvoiceCurrency_ID AND
Currency.CurrencyCode = icCurrencyCode

      first Debtor (inner-join) where
Debtor.SharedSet_Id = vi_DEBTOR_sharedset(iiCompanyId) AND
Debtor.Debtor_ID = DInvoice.Debtor_ID AND
Debtor.DebtorCode matches icDebtorCode

          first BusinessRelation (inner-join) where
BusinessRelation.BusinessRelation_ID = Debtor.BusinessRelation_ID AND
BusinessRelation.BusinessRelationCode matches icBusinessRelationCode

              first CorporateGroup (conditional-join) where
CorporateGroup.CorporateGroup_ID = BusinessRelation.CorporateGroup_ID AND
CorporateGroup.CorporateGroupCode = icCorporateGroupCode

      each DInvoiceOpInfo (conditional-join) where
DInvoiceOpInfo.DInvoice_ID = DInvoice.DInvoice_ID AND
(DInvoiceOpInfo.DInvoiceOpInfoType = {&DINVOICEOPINFOTYPE-GOLDENTAX} OR
DInvoiceOpInfo.DInvoiceOpInfoType = {&DINVOICEOPINFOTYPE-SHIPPER} ) AND
DInvoiceOpInfo.DInvoiceOpInfoCode = icShipperCode

      each DInvoicePosting (inner-join) where
DInvoicePosting.DInvoice_ID = DInvoice.DInvoice_ID AND

      first Division (outer-join) where
Division.SharedSet_Id = vi_DIVISION_sharedset(iiCompanyId) AND
Division.Division_ID = DInvoice.Division_ID AND

      first GL (inner-join) where
GL.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL.GL_ID = DInvoice.ControlGL_ID AND

      first Journal (inner-join) where
Journal.SharedSet_Id = vi_JOURNAL_sharedset(iiCompanyId) AND
Journal.Journal_ID = DInvoice.Journal_ID AND
Journal.JournalCode = icJournalCode

      first PaymentCondition (inner-join) where
PaymentCondition.PaymentCondition_ID = DInvoice.NormalPaymentCondition_ID AND

      first Period (inner-join) where
Period.Company_Id = iiCompanyId AND
Period.Period_ID = DInvoice.Period_ID AND
Period.PeriodYear >= iiPeriodYearMinimum AND
Period.PeriodYear = iiPeriodYear

      first Reason (inner-join) where
Reason.Reason_ID = DInvoice.Reason_ID AND


query resultset tqDInvoiceByAllocationInfo


field namedata typedb fielddescription
tiBillNumberintegerBill.BillNumberBill Number
tcBillStatuscharacterBill.BillStatusStatus
tiBillYearintegerBill.BillYearBill Year
tlBusinessRelationIsCompenslogicalBusinessRelation.BusinessRelationIsCompensCustomer/Supplier Compensation Allowed. This filed indicates how open items should be managed during payment processing when a customer and supplier are both associated with this business relation.
api annotation:PartialUpdate = yes - defaults to false.
tcBusinessRelationName1characterBusinessRelation.BusinessRelationName1Name: The full name of the business relation.
This field sets the default name for linked addresses such as customers and suppliers.
api annotation:PartialUpdate = yes - defaults to the BusinessRelationCode.
tlCompanyPropertyIsCompenslogicalCompanyProperty.CompanyPropertyIsCompensCustomer/Supplier Compensation allowed
tlCompanyPropertyIsOICrossCylogicalCompanyProperty.CompanyPropertyIsOICrossCyOpen Item Cross Entity Allowed
tcCompanyPropertyOINetRestrcharacterCompanyProperty.CompanyPropertyOINetRestrOpen Item Netting Restriction
tdDInvoiceCCRatedecimalDInvoice.DInvoiceCCRateSC Rate. The statutory exchange rate used by the invoice.
The SC Invoice Amount is calculated based on the SC rate.
tdDInvoiceCCScaledecimalDInvoice.DInvoiceCCScaleScale Factor. This field indicates the scale factor applying to the SC rate in use for foreign currency payments.
tcDInvoiceDITextcharacterDInvoice.DInvoiceDITextCIDescription. A brief description for the SI posting.
api annotation:This field defaults from the DInvoiceDescription.
tcDInvoiceGoldenTaxInvoiceListcharacterDInvoice.DInvoiceGoldenTaxInvoiceListGolden Tax Invoices
tlDInvoiceIsSelectedlogicalDInvoice.DInvoiceIsSelectedSelected. This field indicates whether the invoice is included in a payment selection.
This field is read-only.
api annotation:PartialUpdate = yes - defaults to false
tcDInvoiceLegalDocumentListcharacterDInvoice.DInvoiceLegalDocumentListLegal Documents
tdDInvoiceNonDiscAmtTCdecimalDInvoice.DInvoiceNonDiscAmtTCTC Non-discount Amount. This field display the invoice amount without discount in base currency.
ttDInvoicePostingDatedateDInvoice.DInvoicePostingDatePosting Date. This field displays the date the sales-related invoice was generated by Invoice Post and Print.
This field is updated when the invoice is validated and saved.
api annotation:This field defaults from the invoice creation date.
tcDInvoiceSalesOrderListcharacterDInvoice.DInvoiceSalesOrderListSales Orders
tcDInvoiceShipperListcharacterDInvoice.DInvoiceShipperListShippers
tdPaymentConditionLateIntdecimalPaymentCondition.PaymentConditionLateIntDaily Overdue Int Percentage
tcQADC01characterDInvoice.QADC01unused QAD reserved field
tiReason_IDintegerReason.Reason_IDRecord ID
tcReasonCodecharacterReason.ReasonCodeInvoice Status Code
tcCorporateGroupCodecharacterCorporateGroup.CorporateGroupCodeGroup Name
tcDInvoiceOpInfoTypecharacterDInvoiceOpInfo.DInvoiceOpInfoTypeType. The type of the OpInfo Records.
ValuesList: SALESORDER, SHIPPER.
tcDInvoiceOpInfoCodecharacterDInvoiceOpInfo.DInvoiceOpInfoCodeIdentifier. This field identifies an opinfo record.
tcDivisionCodecharacterDivision.DivisionCodeSub-Account
tcCompanyCodecharacterCompany.CompanyCodeEntity Code
tiCompany_IDintegerDInvoice.Company_IDLink to Company
tdDInvoiceExchangeRatedecimalDInvoice.DInvoiceExchangeRateExchange Rate. The accounting exchange rate used by the invoice.
The BC Invoice Amount is calculated based on the exchange rate.
If user modify the TC Invoice Amount, the BC invoice amount is automatically adjusted.
tcPaymentConditionPaymentTypcharacterPaymentCondition.PaymentConditionPaymentTypPayment Type
tcCurrencyCodecharacterCurrency.CurrencyCodeCurrency Code
tcBusinessRelationCodecharacterBusinessRelation.BusinessRelationCodeBusiness Relation. A code to identify the business relation.
If this field does not have a input from the user, the system automatically generates a number for the record based on the sequence defined in Business Relation Autonumber Create.
tcDebtorCodecharacterDebtor.DebtorCodeA code (maximum eight characters) that identifies a customer. If the code you specify matches an existing supplier code, a warning message displays. You can choose to ignore the warning, and create the record. However, when a supplier and customer share the same code, they must reference the same business relation.
api annotation:If you leave the Customer Code field blank, the system automatically generates a number for the record based on the sequence defined in Customer Autonumber Create.
tcDInvoiceTSMNumbercharacterDInvoice.DInvoiceTSMNumberPayment Reference. This field contains a reference number to identify a customer payment for this invoice.
Normally this could be a unique transaction structured message (TSM) number. The TSM is a standard reference numbering system for electronic transfers,used by many banks.
tdDInvoiceVatBaseDebitTCdecimalDInvoice.DInvoiceVatBaseDebitTCTC Base Amount DR. This field displays the debit base amount in the transaction currency.
This field is calculated by the system using the total invoice amount (TC) and the applicable tax rate code.
tdDInvoiceRateScaledecimalDInvoice.DInvoiceRateScaleScale Factor.This field indicates the scale factor applying to the exchange rate in use for foreign currency payments.
The exchange rate is multiplied by the scale factor to determine the actual exchange rate.
api annotation:The value for the scale factor defaults from the exchange rate definition, but it can be modified.
tdDInvoiceVatCreditTCdecimalDInvoice.DInvoiceVatCreditTCTC Tax Amount CR. This field displays the credit tax amount (TC) calculated by the system using the total invoice amount (TC) and the applicable tax rate code.
tdDInvoiceVatDebitTCdecimalDInvoice.DInvoiceVatDebitTCTC Tax Amount DR. This field displays the debit tax amount (TC) calculated by the system using the total invoice amount (TC) and the applicable tax rate code.
tlDInvoiceIsOpenlogicalDInvoice.DInvoiceIsOpenOpen.This field indicates if the invoice has been completely paid.
This field is updated automatically when complete payment is confirmed.
This field is read-only.
api annotation:PartialUpdate = yes - defaults to true
tdDInvoiceVatBaseCreditTCdecimalDInvoice.DInvoiceVatBaseCreditTCTC Base Amount CR. This field displays the credit base amount in the transaction currency.
This field is calculated by the system using the total invoice amount (TC) and the applicable tax rate code.
tdPaymentConditionPercentagedecimalPaymentCondition.PaymentConditionPercentageDiscount Percentage
tiPosting_IDintegerDInvoicePosting.Posting_IDLink to Posting
tiPeriodYearintegerPeriod.PeriodYearGL Calendar Year
tiPeriodPeriodintegerPeriod.PeriodPeriodGL Period
tcJournalCodecharacterJournal.JournalCodeA daybook code (maximum eight characters).
ttDInvoiceDueDatedateDInvoice.DInvoiceDueDateDue Date. This field displays the date when payment is due, calculated by the system based on the credit terms and the invoice date. User can modify the due date without affecting the credit terms.
If the credit terms have a base date specified, this is used in the due date calculations rather than the invoice creation date.
ttDInvoiceDiscountDueDatedateDInvoice.DInvoiceDiscountDueDateDiscount Due Date. This field displays the last date a discount applies, calculated by the system based on the credit terms and the invoice date.
You can modify the due date without affecting the credit terms.
If the credit terms have a base date specified, this is used in the due date calculations rather than the invoice creation date.
ttDInvoiceDatedateDInvoice.DInvoiceDateInvoice Date. This field indicates the invoice creation date.This field is normallly prior to the posting date and within the same accounting period as the posting date. The date must be within the upper and lower date limits of an open GL period.
The system uses the invoice date with the credit terms to calculate due date and discount date.
api annotation:This field defaults to the DInvoicePostingDate.
tdDInvoiceBalanceDebitTCdecimalDInvoice.DInvoiceBalanceDebitTCTC Balance Amount DR. This field displays the sum of the debit amounts of all posting lines in transaction currency.
tdDInvoiceBalanceCreditTCdecimalDInvoice.DInvoiceBalanceCreditTCTC Balance Amount CR. This field displays the sum of the credit amounts of all posting lines in transaction currency.
tiDInvoiceCurrency_IDintegerDInvoice.DInvoiceCurrency_IDCurrency Code
tcDInvoiceDescriptioncharacterDInvoice.DInvoiceDescriptionDescription. A brief description of the invoice. This field is mandatory.
tdDInvoiceOriginalCreditTCdecimalDInvoice.DInvoiceOriginalCreditTCTC Invoice Amount CR. This field displays the credit total invoice amount in the transaction currency.
If you modify this field, the system automatically recalculates the exchange rate to ensure that the BC Invoice Amount remains the same.
tdDInvoiceOriginalDebitTCdecimalDInvoice.DInvoiceOriginalDebitTCTC AP Amount. This field displays the debit total invoice amount in the transaction currency.
If you modify this field, the system automatically recalculates the exchange rate to ensure that the TC Invoice Amount remains the same.
tdDInvoiceBalanceDebitLCdecimalDInvoice.DInvoiceBalanceDebitLCBC Balance Amount DR. This field displays the sum of the debit amounts of all posting lines in transaction currency.
This field is calculated by the system using the TC Base Amount DR and the Exchange rate.
tdDInvoiceBalanceCreditLCdecimalDInvoice.DInvoiceBalanceCreditLCBC Balance Amount CR. This field displays the sum of the credit amounts of all posting lines in transaction currency.
This field is calculated by the system using the TC Base Amount CR and the Exchange rate.
tcDInvoiceTypecharacterDInvoice.DInvoiceTypeInvoice Type. This field displays the invoice type.
Invoice Correction and Credit Note Correction display as choices only when the appropriate daybook types have already been defined.
api annotation:PartialUpdate = yes - defaults to Invoice
tcGLCodecharacterGL.GLCodeA code identifying the GL account.
tiDInvoice_IDintegerDInvoice.DInvoice_IDRecord ID
tiDInvoiceVoucherintegerDInvoice.DInvoiceVoucherVoucher.This field displays the numeric identifier assigned to the posting.
When the daybook of the journal entry is charged(after transfer), the voucher is cleared.
Voucher must be unique in one GL period.
When the user input is zero, the system automatically assign a value not used yet for this field.
tdDInvoiceOriginalDebitLCdecimalDInvoice.DInvoiceOriginalDebitLCBC Invoice Amount(DR). This field displays the debit total invoice amount in the base currency.
This field is calculated by the system using the TC Invoice Amount(DR) and the Exchange rate.
tdDInvoiceOriginalCreditLCdecimalDInvoice.DInvoiceOriginalCreditLCBC Invoice Amount(CR). This field displays the credit total invoice amount in the base currency.
This field is calculated by the system using the TC Invoice Amount(CR) and the Exchange rate.
tiDebtor_IDintegerDInvoice.Debtor_IDLink to Debtor
tiControlGL_IDintegerDInvoice.ControlGL_IDAccount
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(DInvoice),rowid(Bill),rowid(Company),rowid(CompanyProperty),rowid(Currency),rowid(Debtor),rowid(BusinessRelation),rowid(CorporateGroup),rowid(DInvoiceOpInfo),rowid(DInvoicePosting),rowid(Division),rowid(GL),rowid(Journal),rowid(PaymentCondition),rowid(Period),rowid(Reason)


Internal usage


QadFinancials
method BBankEntry.CalculateBankStateAlloc
method BBankEntry.GetPossibleAllocationsDInvoice
method BDDocument.AllocateInvoices
method BDDocument.Calculate
method BDPaymentSelection.GetDDocumentInfo
method BOpenItemAdjustment.OIAdjApplyFilterDebtor