project QadFinancials > class BDomain > API query SelectDomainsForFin (optimised)

Description

Select Query for Domains used in the financial module based on the selected company.


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
iiCompanyIdi
tCompany.CompanyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCurrency1.CurrencyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCurrency2.CurrencyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tDomains.DomainCodec=,>=,>,<>,<=,<,begins,can-do,matches
tDomains.DomainIsActivel=,<>
tDomains.DomainPropathc=,>=,>,<>,<=,<,begins,can-do,matches
tDomainProperty.DomainPropertyCodePagec=,>=,>,<>,<=,<,begins,can-do,matches
tDomainProperty.DomainPropertyExceptListc=,>=,>,<>,<=,<,begins,can-do,matches
tDomainProperty.DomainPropertyIsChronolNrl=,<>
tDomainProperty.DomainPropertyIsConsecutNrl=,<>
tDomainProperty.DomainPropertyIsInvCertificl=,<>
tDomainProperty.DomainPropertyIsMaskCCl=,<>
tDomainProperty.DomainPropertyIsMaskCCAlll=,<>
tDomainProperty.DomainPropertyIsMaskDivl=,<>
tDomainProperty.DomainPropertyIsMaskDivAlll=,<>
tDomainProperty.DomainPropertyIsMaskPrjAlll=,<>
tDomainProperty.DomainPropertyIsMaskProjl=,<>
tDomainProperty.DomainPropertyIsPopupInvNrl=,<>
tDomainProperty.DomainPropertyIsSetupCompll=,<>
tDomainProperty.DomainPropertyIsStatutoryl=,<>
tDomainProperty.DomainPropertyIsTaxValidl=,<>
tDomainProperty.DomainPropertyIsWHTl=,<>
tDomainProperty.DomainPropertyNamec=,>=,>,<>,<=,<,begins,can-do,matches
tDomainProperty.DomainPropertyNonChronErrc=,>=,>,<>,<=,<,begins,can-do,matches
tDomainProperty.DomainPropertySearchNamec=,>=,>,<>,<=,<,begins,can-do,matches
tDomains.DomainTypec=,>=,>,<>,<=,<,begins,can-do,matches
tGL5.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL4.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL3.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL2.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL1.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tLng.LngCodec=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


iiCompanyIdintegerCompany id


query condition


  each Domains where

      first Company (conditional-join) where
Company.Company_Id = iiCompanyId AND
Company.Company_ID = Domains.PrimaryCompany_ID AND

      each DomainProperty (inner-join) where
DomainProperty.Domain_ID = Domains.Domain_ID AND

          first Currency1 (inner-join) where
Currency1.Currency_ID = DomainProperty.Currency_ID AND

          first Currency2 (inner-join) where
Currency2.Currency_ID = DomainProperty.StatutoryCurrency_ID AND

          first GL1 (conditional-join) where
GL1.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL1.GL_ID = DomainProperty.IntercoAPGL_ID AND

          first GL2 (conditional-join) where
GL2.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL2.GL_ID = DomainProperty.IntercoARGL_ID AND

          first GL3 (conditional-join) where
GL3.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL3.GL_ID = DomainProperty.IntercoFAGL_ID AND

          first GL4 (conditional-join) where
GL4.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL4.GL_ID = DomainProperty.IntercoICGL_ID AND

          first GL5 (conditional-join) where
GL5.SharedSet_Id = vi_GL_sharedset(iiCompanyId) AND
GL5.GL_ID = DomainProperty.IntercoJEGL_ID AND

      first Lng (inner-join) where
Lng.Lng_ID = Domains.Lng_ID AND


query sort order


Domains.DomainCode (ascending)


query resultset tqSelectDomainsForFin


field namedata typedb fielddescription
tcCompanyCodecharacterCompany.CompanyCodeEntity Code
tiCurrency_IDintegerDomainProperty.Currency_IDBase Currency
tcCurrencyCodecharacterCurrency1.CurrencyCodeCurrency Code
tcDomainPropathcharacterDomains.DomainPropathPropath
tcDomainPropertyCodePagecharacterDomainProperty.DomainPropertyCodePageDomain Code Page
tcDomainPropertyExceptListcharacterDomainProperty.DomainPropertyExceptListDomain Exception List
tlDomainPropertyIsChronolNrlogicalDomainProperty.DomainPropertyIsChronolNrChronological Invoice Numbering
tlDomainPropertyIsConsecutNrlogicalDomainProperty.DomainPropertyIsConsecutNrConsecutive Invoice Numbering
tlDomainPropertyIsInvCertificlogicalDomainProperty.DomainPropertyIsInvCertificInvoice Certification: activated or not
tlDomainPropertyIsMaskCClogicalDomainProperty.DomainPropertyIsMaskCCCost Center COA Mask
tlDomainPropertyIsMaskCCAlllogicalDomainProperty.DomainPropertyIsMaskCCAllCost Center All-Range Mask By Default
tlDomainPropertyIsMaskDivlogicalDomainProperty.DomainPropertyIsMaskDivSub-Account COA Mask
tlDomainPropertyIsMaskDivAlllogicalDomainProperty.DomainPropertyIsMaskDivAllSub-Account All-Range Mask By Default
tlDomainPropertyIsMaskPrjAlllogicalDomainProperty.DomainPropertyIsMaskPrjAllProject All-Range Mask By Default
tlDomainPropertyIsMaskProjlogicalDomainProperty.DomainPropertyIsMaskProjProject COA Mask
tlDomainPropertyIsPopupInvNrlogicalDomainProperty.DomainPropertyIsPopupInvNrShow Supplier Invoice Number in Pop-up After Save
tlDomainPropertyIsStatutorylogicalDomainProperty.DomainPropertyIsStatutoryStatutory Currency Enabled
tlDomainPropertyIsTaxValidlogicalDomainProperty.DomainPropertyIsTaxValidTax Validation
tlDomainPropertyIsWHTlogicalDomainProperty.DomainPropertyIsWHTUse Withholding Tax
tcDomainPropertyNonChronErrcharacterDomainProperty.DomainPropertyNonChronErrAction on Non-Chronological Number
tcIntercoAPGLCodecharacterGL1.GLCodeA code identifying the GL account.
tcIntercoARGLCodecharacterGL2.GLCodeA code identifying the GL account.
tcIntercoFAGLCodecharacterGL3.GLCodeA code identifying the GL account.
tcIntercoICGLCodecharacterGL4.GLCodeA code identifying the GL account.
tcIntercoJEGLCodecharacterGL5.GLCodeA code identifying the GL account.
ttLastModifiedDatedateDomains.LastModifiedDateLast Modified Date
tiLastModifiedTimeintegerDomains.LastModifiedTimeLast Modified Time
tcLastModifiedUsercharacterDomains.LastModifiedUserLast Modified User
tcLngCodecharacterLng.LngCodeLanguage Code
tiStatutoryCurrency_IDintegerDomainProperty.StatutoryCurrency_IDStatutory Currency
tcStatutoryCurrencyCodecharacterCurrency2.CurrencyCodeCurrency Code
tiDomain_IDintegerDomains.Domain_IDRecord ID
tcDomainCodecharacterDomains.DomainCodeDomain
tcDomainTypecharacterDomains.DomainTypeType
tlDomainIsActivelogicalDomains.DomainIsActiveActive
tlDomainPropertyIsSetupCompllogicalDomainProperty.DomainPropertyIsSetupComplSetup Complete
tcDomainPropertyNamecharacterDomainProperty.DomainPropertyNameName
tcDomainPropertySearchNamecharacterDomainProperty.DomainPropertySearchNameSearch Name
DomainsCustomcharactercalculatedcustom fields
CompanyCustomcharactercalculatedcustom fields
DomainPropertyCustomcharactercalculatedcustom fields
Currency1Customcharactercalculatedcustom fields
GL1Customcharactercalculatedcustom fields
GL2Customcharactercalculatedcustom fields
GL3Customcharactercalculatedcustom fields
GL4Customcharactercalculatedcustom fields
GL5Customcharactercalculatedcustom fields
LngCustomcharactercalculatedcustom fields
Currency2Customcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(Domains),rowid(Company),rowid(DomainProperty),rowid(Currency1),rowid(Currency2),rowid(GL1),rowid(GL2),rowid(GL3),rowid(GL4),rowid(GL5),rowid(Lng)


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 = "BDomain".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "SelectDomainsForFin".
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/bdomain.selectdomainsforfin.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.