project QadFinancials > class BCompanyProperty > API query SelectCompanyPropertyForSiteAd

Description

Select query to look up the address and business relation information of a company.
This query also includes the operational tables.


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
iiCompanyIdi
icDomainCodec=
tAddress.AddressCityc=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStatec=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet1c=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet2c=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet3c=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressTaxIDStatec=,>=,>,<>,<=,<,begins,can-do,matches
tAddressType.AddressTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressZipc=,>=,>,<>,<=,<,begins,can-do,matches
tBusinessRelation.BusinessRelationCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCompanyProperty.CompanyPropertyActCheckpc=,>=,>,<>,<=,<,begins,can-do,matches
tCompanyProperty.CompanyPropertyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCountry.CountryCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCountry.CountryIsEUCountryl=,<>
tsi_mstr.si_domainc=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.TxzTaxZonec=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


iiCompanyIdintegerCompany id
icDomainCodecharacterdomain Code


query condition


  each CompanyProperty where
CompanyProperty.Company_Id = iiCompanyId AND

      each si_mstr (inner-join) where
si_mstr.si_entity = CompanyProperty.CompanyPropertyCode AND
si_mstr.si_domain = icDomainCode

          each ls_mstr (inner-join) where
ls_mstr.ls_domain = si_mstr.si_domain AND
ls_mstr.ls_addr = si_mstr.si_site AND
ls_mstr.ls_type = 'company' AND

              first ad_mstr (inner-join) where
ad_mstr.ad_addr = ls_mstr.ls_addr AND
ad_mstr.ad_domain = ls_mstr.ls_domain AND

                  first BusinessRelation (inner-join) where
BusinessRelation.BusinessRelationCode = ad_mstr.ad_bus_relation AND

                      each Address (inner-join) where
Address.BusinessRelation_ID = BusinessRelation.BusinessRelation_ID AND

                          first AddressType (inner-join) where
AddressType.AddressType_ID = Address.AddressType_ID AND

                          first Country (inner-join) where
Country.Country_ID = Address.Country_ID AND


query sort order


CompanyProperty.CompanyPropertyCode (ascending)


query resultset tqSelectCompanyPropertyForSiteAd


field namedata typedb fielddescription
tiAddress_IDintegerAddress.Address_IDRecord ID
tcAddressCitycharacterAddress.AddressCityCity. The city for this address. This field can be used to decide the tax zone of the address.
tcAddressStatecharacterAddress.AddressStateObsolete field
tcAddressStreet1characterAddress.AddressStreet1Address: Line one of address details.
This field can be blank.
tcAddressStreet2characterAddress.AddressStreet2Address.Line two of address details.
This field can be blank.
tcAddressStreet3characterAddress.AddressStreet3Address.Line three of address details.
This field can be blank.
tcAddressTaxIDStatecharacterAddress.AddressTaxIDStateState Tax. This field is for reference and documentation purposes, the value of the field is either a state or provincial tax identification number or a VAT registration number.
tcAddressTypeCodecharacterAddressType.AddressTypeCodeAddress Type
tcAddressZipcharacterAddress.AddressZipZip. The postal code or US zip code associated with this address.
This field is used to decide the tax zone for the address.
This field can be blank.
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.
tiCompanyProperty_IDintegerCompanyProperty.CompanyProperty_IDRecord ID
tcCompanyPropertyActCheckpcharacterCompanyProperty.CompanyPropertyActCheckpActivity Sheets Checkpoint
tcCompanyPropertyCodecharacterCompanyProperty.CompanyPropertyCodeEntity Code
tcCountryCodecharacterCountry.CountryCodeCountry Code
tlCountryIsEUCountrylogicalCountry.CountryIsEUCountryEU Member
tcsi_domaincharactersi_mstr.si_domainDomain
tcTxzTaxZonecharacterAddress.TxzTaxZoneTax Zone. This field indicates the tax zone for this address. This field is mandatory.
api annotation:PartialUpdate = yes - defaults to a value the system searches for based on the country, state or province, county, city, and postal code of the current address.
CompanyPropertyCustomcharactercalculatedcustom fields
si_mstrCustomcharactercalculatedcustom fields
BusinessRelationCustomcharactercalculatedcustom fields
AddressCustomcharactercalculatedcustom fields
AddressTypeCustomcharactercalculatedcustom fields
CountryCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(CompanyProperty),rowid(si_mstr),rowid(ls_mstr),rowid(ad_mstr),rowid(BusinessRelation),rowid(Address),rowid(AddressType),rowid(Country)


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 = "BCompanyProperty".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "SelectCompanyPropertyForSiteAd".
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/bcompanyproperty.selectcompanypropertyforsitead.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.