project QadFinancials > class BPosting > API query SelectPostingLine (optimised)

Description

Returs Posting lines and header data


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
iiCompanyIdi
tBusinessRelation.BusinessRelationName1c=,>=,>,<>,<=,<,begins,can-do,matches
tCostCentre.CostCentreCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCostCentre.CostCentreDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tCurrency.CurrencyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tDivision.DivisionCodec=,>=,>,<>,<=,<,begins,can-do,matches
tDivision.DivisionDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tGL.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL.GLDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tGL.GLSystemTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL.GLTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tJournal.JournalCodec=,>=,>,<>,<=,<,begins,can-do,matches
tJournal.JournalDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tJournal.JournalTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tLayer.LayerCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingBatchNumberc=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingBusinessRelationTxtc=,>=,>,<>,<=,<,begins,can-do,matches
tPostingLine.PostingDatet=,>=,>,<>,<=,<
tPosting.PostingInvoiceReferenceTxtc=,>=,>,<>,<=,<,begins,can-do,matches
tPostingLine.PostingLineCCRated=,>=,>,<>,<=,<
tPostingLine.PostingLineCCScaled=,>=,>,<>,<=,<
tPostingLine.PostingLineCreditCCd=,>=,>,<>,<=,<
tPostingLine.PostingLineCreditLCd=,>=,>,<>,<=,<
tPostingLine.PostingLineCreditTCd=,>=,>,<>,<=,<
tPostingLine.PostingLineDebitCCd=,>=,>,<>,<=,<
tPostingLine.PostingLineDebitLCd=,>=,>,<>,<=,<
tPostingLine.PostingLineDebitTCd=,>=,>,<>,<=,<
tPostingLine.PostingLineExchangeRated=,>=,>,<>,<=,<
tPostingLine.PostingLineLegalDocNbrc=,>=,>,<>,<=,<,begins,can-do,matches
tPostingLine.PostingLineOriginLineNbri=,>=,>,<>,<=,<
tPostingLine.PostingLineRateScaled=,>=,>,<>,<=,<
tPostingLine.PostingLineSequencei=,>=,>,<>,<=,<
tPostingLine.PostingLineTextc=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginDaybookCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginDaybookNumberc=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginDocumentc=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginDocumentTypec=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginIsExternall=,<>
tPosting.PostingOriginReferencec=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingOriginTransTypec=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingSystemDatet=,>=,>,<>,<=,<
tPosting.PostingTextc=,>=,>,<>,<=,<,begins,can-do,matches
tPosting.PostingVoucheri=,>=,>,<>,<=,<
tPostingLine.PostingYearPeriodi=,>=,>,<>,<=,<
tProject.ProjectCodec=,>=,>,<>,<=,<,begins,can-do,matches
tProject.ProjectDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


iiCompanyIdintegerCompany id


query condition


  each PostingLine where
PostingLine.Company_Id = iiCompanyId AND

      first CostCentre (conditional-join) where
CostCentre.SharedSet_Id = vi_COSTCENTRE_sharedset(iiCompanyId) AND
CostCentre.CostCentre_ID = PostingLine.CostCentre_ID AND

      first Currency (inner-join) where
Currency.Currency_ID = PostingLine.Currency_ID AND

      first Division (conditional-join) where
Division.SharedSet_Id = vi_DIVISION_sharedset(iiCompanyId) AND
Division.Division_ID = PostingLine.Division_ID AND

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

      first Posting (inner-join) where
Posting.Company_Id = iiCompanyId AND
Posting.Posting_ID = PostingLine.Posting_ID AND

          first BusinessRelation (conditional-join) where
BusinessRelation.BusinessRelationCode = Posting.PostingBusinessRelationTxt AND

          first Journal (inner-join) where
Journal.SharedSet_Id = vi_JOURNAL_sharedset(iiCompanyId) AND
Journal.Journal_ID = Posting.Journal_ID AND

              first Layer (inner-join) where
Layer.Layer_ID = Journal.Layer_ID AND

      first Project (conditional-join) where
Project.SharedSet_Id = vi_PROJECT_sharedset(iiCompanyId) AND
Project.Project_ID = PostingLine.Project_ID AND


query resultset tqSelectPostingLine


field namedata typedb fielddescription
tiCostCentre_IDintegerCostCentre.CostCentre_IDRecord ID
tiDivision_IDintegerDivision.Division_IDRecord ID
tiGL_IDintegerGL.GL_IDRecord ID
tcGLSystemTypeCodecharacterGL.GLSystemTypeCodeSystem Type: A code identifying the type of system account.
tiJournal_IDintegerJournal.Journal_IDRecord ID
tiPosting_IDintegerPostingLine.Posting_IDLink to Posting
ttPostingDatedatePostingLine.PostingDatePosting Date.
api annotation:If this field is blank, it gets a default value equal to the value of PostingDate in tPosting.
tcPostingKeycharactercalculated
tiPostingLine_IDintegerPostingLine.PostingLine_IDRecord ID
tdPostingLineCCRatedecimalPostingLine.PostingLineCCRateThe exchange rate used to convert between transaction (TC) and statutory(SC) amounts.
api annotation:Default value for this field depends on the exchangerate shared set specified for the current domain.
tdPostingLineCCScaledecimalPostingLine.PostingLineCCScaleA decimal number that must be multiplied by the exchange rate to get the real exchange rate. Its format is 9999999.9999999 and it was introduced to extend the accuracy of the exchange rate.
api annotation:The default value is 1.
tdPostingLineExchangeRatedecimalPostingLine.PostingLineExchangeRateExchange Rate
api annotation:Default value for this field depends on the exchang erate shared set specified for the current domain.
tcPostingLineLegalDocNbrcharacterPostingLine.PostingLineLegalDocNbrLegal Document Nbr
tdPostingLineRateScaledecimalPostingLine.PostingLineRateScaleScale Factor
api annotation:The default value is 1.
tiPostingLineSequenceintegerPostingLine.PostingLineSequenceSequence
tiProject_IDintegerProject.Project_IDRecord ID
tcGLTypeCodeTrcharactercalculatedGL Type
tdBalanceTCCalcdecimalcalculatedBalance TC
tcDivisionDescriptioncharacterDivision.DivisionDescriptionDescription
tdBalanceCCCalcdecimalcalculatedBalance CC
tcGLDescriptioncharacterGL.GLDescriptionA description of the GL account.
tcGLTypeCodecharacterGL.GLTypeCodeA code identifying the type of account.
tcProjectDescriptioncharacterProject.ProjectDescriptionDescription
tcPostingOriginBatchNumbercharacterPosting.PostingBatchNumberSome financial input programs allow you to enter a batch number and to keep a control total on the screen of all the transactions entered with the same batch number.
api annotation:Not applicable for application integration.
tiCompany_IDintegerPostingLine.Company_IDLink to Company
tdBalanceLCCalcdecimalcalculatedBalance LC
tiPostingYearPeriodintegerPostingLine.PostingYearPeriodThe GL calendar year/period for the journal entry.
api annotation:In Create mode, it will get be defaulted to the value for the field PostingYearPeriod of tPosting.
tcJournalTypeCodeTrcharactercalculatedDaybook Type
tcJournalCodecharacterJournal.JournalCodeA daybook code (maximum eight characters).
tiPostingVoucherintegerPosting.PostingVoucherVoucher is a sequential number that uniquely identifies the journal entry (within the combination of an entity and a daybook code).
api annotation:In create mode,enter 0 in this field - the voucher number is generated by the system. In Modify/Delete, the correct voucher number must be entered because this identifies the record.
tcGLCodecharacterGL.GLCodeA code identifying the GL account.
tcDivisionCodecharacterDivision.DivisionCodeSub-Account
tdPostingLineCreditLCdecimalPostingLine.PostingLineCreditLCBC Credit
api annotation:Partial Update = yes - it will get a default value depends on the value of PostingLineCreditTC, PostingLineExchangeRate & PostingLineRateScale.
BC Amount = TC Amount * Exchange rate (TC/BC) * Scale Factor (TC/BC). If Partial Update is false, enter a value for this field.
tdPostingLineDebitLCdecimalPostingLine.PostingLineDebitLCBC Debit
api annotation:Partial Update = yes - it will get a default value depending on the value of PostingLineDebitTC, PostingLineExchangeRate and PostingLineRateScale.
BC Amount = TC Amount * Exchange rate (TC/BC) * Scale Factor (TC/BC). If Partial Update = false, enter the correct value into this field.
tcPostingLineTextcharacterPostingLine.PostingLineTextDescription
api annotation:Value for this field defaults to blank. Note: if a new record is created through the user interface, the default value is as same as the value of "PostingText" of tPosting.
ttPostingSystemDatedatePosting.PostingSystemDateThe system date of the posting corresponding to "PostingDate".
api annotation:In Create mode, when Partial Update = yes - this field gets a default value which is the current date of the system.
tcPostingInvoiceReferenceTxtcharacterPosting.PostingInvoiceReferenceTxtWhen the posting is part of an invoice posting, then this field contains the invoice number (Year/Daybook/Voucher extended with supplier invoice Reference in case of a supplier invoice). Used for information purpose on reports and browsers.
api annotation:Value for this field defaults to blank
tcPostingTextcharacterPosting.PostingTextFree text describing the posting.
api annotation:Value for this field defaults to blank
tcProjectCodecharacterProject.ProjectCodeProject
tcCostCentreCodecharacterCostCentre.CostCentreCodeCost Center: A code that identifies the cost center.
tcCurrencyCodecharacterCurrency.CurrencyCodeCurrency Code
tdPostingLineCreditTCdecimalPostingLine.PostingLineCreditTCTC Credit
tdPostingLineDebitTCdecimalPostingLine.PostingLineDebitTCTC Debit
tdPostingLineCreditCCdecimalPostingLine.PostingLineCreditCCSC Credit
api annotation:Partial Update = yes - it will get a default value depending on the value of PostingLinCreditTC, PostingLineCCRate & PostingLineCCScale.
SC Amount = TC Amount * Exchange rate (TC/SC) * Scale Factor (TC/SC). If Partial Update is false, you should enter the correct value for this field
tdPostingLineDebitCCdecimalPostingLine.PostingLineDebitCCSC Debit
api annotation:Partial Update = yes - it will get a default value depending on the value of PostingLineDebitTC, PostingLineCCRate & PostingLineCCScale.
SC Amount = TC Amount * Exchange rate (TC/SC) * Scale Factor (TC/SC). If Partial Update is false, enter the correct value for this field.
tcLayerCodecharacterLayer.LayerCodeLayer Code
tcJournalTypeCodecharacterJournal.JournalTypeCodeA daybook type code.
api annotation:Value for this field defaults to "Journal Entries".
tcJournalDescriptioncharacterJournal.JournalDescriptionA brief description of the daybook.
api annotation:Value for this field defaults to null.
tiCurrency_IDintegerPostingLine.Currency_IDCurrency Code
tiCompany_ID2integerPosting.Company_IDLink to Company
tiPeriod_IDintegerPosting.Period_IDLink to Period
tiClosing_IDintegerPosting.ObsoleteClosing_IDLink to Closing
tlPostingOriginIsExternallogicalPosting.PostingOriginIsExternalIndicate whether the posting is from an External Origin. When creating cross company postings, set this to true.
api annotation:Value for this field defaults to false.
tiPostingLineOriginLineNbrintegerPostingLine.PostingLineOriginLineNbrEquivalent to PostingLineSequence, however there is a difference in format and the value may differ in a number of specific cases.
MfgPro Equivalent: glt_line
api annotation:Value for this field defaults to 0.
tcPostingBusinessRelationTxtcharacterPosting.PostingBusinessRelationTxtWhen the posting is a transaction linked to a business relation (for example, an invoice posting), this field contains the Business Relation Name. Used for information purposes on reports and browses.
api annotation:Value for this field defaults to blank.
tcCostCentreDescriptioncharacterCostCentre.CostCentreDescriptionDescription: a brief description of the cost center.
tcPostingOriginReferencecharacterPosting.PostingOriginReferenceGL Reference Number. Format is ZZYYMMDD999999 where ZZ = module (IC, SO, WO) YY = Year, MM = Month, DD = Day, 999999 = Running Journal Number.
MfgPro equivalent: glt_ref
tcPostingOriginDocumentcharacterPosting.PostingOriginDocumentTransaction History Number (Inventory or Operations) or Invoice Number (Sales Order)
MfgPro equivalent: glt_doc
tcPostingOriginDocumentTypecharacterPosting.PostingOriginDocumentTypeDocument Type (I for Invoice, OP for Work Orders)
MfgPro equivalent: glt_doc_type
tcPostingOriginTransTypecharacterPosting.PostingOriginTransTypeSystem generated code used to identify a transaction (IC for Inventory, WO for Work Orders, SO for Sales Orders, FA for Fixed Assets)
MfgPro equivalent: glt_tr_type
tcPostingOriginDaybookCodecharacterPosting.PostingOriginDaybookCodeDaybook Code (normally this corresponds with our JournalCode)
MfgPro equivalent: glt_dy_code
tcPostingOriginDaybookNumbercharacterPosting.PostingOriginDaybookNumberDaybook Number (normally this corresponds with our PostingVoucher)
MfgPro equivalent: glt_dy_num
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.
PostingLineCustomcharactercalculatedcustom fields
CostCentreCustomcharactercalculatedcustom fields
CurrencyCustomcharactercalculatedcustom fields
DivisionCustomcharactercalculatedcustom fields
GLCustomcharactercalculatedcustom fields
PostingCustomcharactercalculatedcustom fields
BusinessRelationCustomcharactercalculatedcustom fields
JournalCustomcharactercalculatedcustom fields
LayerCustomcharactercalculatedcustom fields
ProjectCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(PostingLine),rowid(CostCentre),rowid(Currency),rowid(Division),rowid(GL),rowid(Posting),rowid(BusinessRelation),rowid(Journal),rowid(Layer),rowid(Project)


Internal usage


unused


Sample code: how to call this query through RPCRequestService (QXtend Inbound)

define temp-table ttContext no-undo
    field propertyQualifier as character
    field propertyName as character
    field propertyValue as character
    index entityContext is primary unique
        propertyQualifier
        propertyName
    index propertyQualifier
        propertyQualifier.

define dataset dsContext for ttContext.

define variable vhContextDS as handle no-undo.
define variable vhExceptionDS as handle no-undo.
define variable vhServer as handle no-undo.
define variable vhInputDS as handle no-undo.
define variable vhInputOutputDS as handle no-undo.
define variable vhOutputDS as handle no-undo.
define variable vhParameter as handle no-undo.

/* Create context */
create ttContext.
assign ttContext.propertyName = "programName"
       ttContext.propertyValue = "BPosting".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "SelectPostingLine".
create ttContext.
assign ttContext.propertyName = "applicationId"
       ttContext.propertyValue = "fin".
create ttContext.
assign ttContext.propertyName = "entity"
       ttContext.propertyValue = "1000".
create ttContext.
assign ttContext.propertyName = "userName"
       ttContext.propertyValue = "mfg".
create ttContext.
assign ttContext.propertyName = "password"
       ttContext.propertyValue = "".

/* Create input dataset */
create dataset vhInputDS.
vhInputDS:read-xmlschema("file", "xml/bposting.selectpostingline.i.xsd", ?).
vhParameter = vhInputDS:get-buffer-handle("tParameterI").
vhParameter:buffer-create().

assign vhParameter::icRange = "A"
       vhParameter::icRowid = ""
       vhParameter::iiRownum = 0
       vhParameter::iiNumber = 5 /* Number of records to read */
       vhParameter::icSortColumns = ""
       vhParameter::ilCountOnly = false
       vhParameter::ilForwardRead = true
       vhParameter::iiMaximumBrowseRecordsToCount = 0.

vhParameter = vhInputDS:get-buffer-handle("tFilter").
vhParameter:buffer-create().

assign vhParameter::<field-name-1> = <field-value-1>
       vhParameter::<field-name-2> = <field-value-2>
       ...

/* Connect the AppServer */
create server vhServer.
vhServer:connect("-URL <appserver-url>").

if not vhServer:connected()
then do:
    message "Could not connect AppServer" view-as alert-box error title "Error".
    return.
end.

/* Run */
assign vhContextDS = dataset dsContext:handle.

run program/rpcrequestservice.p on vhServer
    (input-output dataset-handle vhContextDS by-reference,
           output dataset-handle vhExceptionDS,
     input        dataset-handle vhInputDS by-reference,
     input-output dataset-handle vhInputOutputDS by-reference,
           output dataset-handle vhOutputDS).

/* Handle output however you want, in this example, we dump it to xml */
if valid-handle(vhExceptionDS)
then vhExceptionDS:write-xml("file", "Exceptions.xml", true).

if valid-handle(vhOutputDS)
then vhOutputDS:write-xml("file", "Output.xml", true).

/* Cleanup */
vhServer:disconnect().
assign vhServer = ?.

if valid-handle(vhInputDS)
then delete object vhInputDS.

if valid-handle(vhOutputDS)
then delete object vhOutputDS.

if valid-handle(vhExceptionDS)
then delete object vhExceptionDS.