project QadFinancials > class BEmployee > API query EmployeeAddressByEmpCoCode


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
icEmployeeCodec=
icAddressTypec=
icCompanyCodec=
iiCompanyIdi
tAddress.AddressCityc=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressFormati=,>=,>,<>,<=,<
tAddress.AddressNamec=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressSearchNamec=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet1c=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet2c=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressStreet3c=,>=,>,<>,<=,<,begins,can-do,matches
tAddressType.AddressTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tAddress.AddressZipc=,>=,>,<>,<=,<,begins,can-do,matches
tCompany.CompanyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCountry.CountryCodec=,>=,>,<>,<=,<,begins,can-do,matches
tCountry.CountryDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tEmployee.EmployeeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tEmployee.EmployeeIsActivel=,<>
tState.StateCodec=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


icEmployeeCodecharacter
icAddressTypecharacter
icCompanyCodecharacter
iiCompanyIdintegerCompany id


query condition


  each Employee where
Employee.Company_Id = iiCompanyId AND
Employee.EmployeeCode = icEmployeeCode

      first BusinessRelation (inner-join) where
BusinessRelation.BusinessRelation_ID = Employee.BusinessRelation_ID 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
AddressType.AddressTypeCode = icAddressType

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

              first State (conditional-join) where
State.State_ID = Address.State_ID AND

      first Company (inner-join) where
Company.Company_Id = iiCompanyId AND
Company.Company_ID = Employee.Company_ID AND
Company.CompanyCode = icCompanyCode


query resultset tqEmployeeAddressByEmpCoCode


field namedata typedb fielddescription
tcAddressCitycharacterAddress.AddressCityCity. The city for this address. This field can be used to decide the tax zone of the address.
tiAddressFormatintegerAddress.AddressFormatFormat. This field determines where postal codes display on printed addresses.
api annotation:PartialUpdate = yes - defaults to the value for the same field defined for the country.
tcAddressNamecharacterAddress.AddressNameName. The full name of this particular address.
The name of a headoffice address is the same as the name of the business relationship and can not be modified.
api annotation:PartialUpdate = yes - defaults to the name of the businessRelation.
tcAddressSearchNamecharacterAddress.AddressSearchNameSearch Name. An alternate name for finding this address.
The searchname of a headoffice address is the same as the business relationship and can not be modified.
api annotation:PartialUpdate = yes - defaults to the searchname of the businessRelation.
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.
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.
tiCompany_IDintegerCompany.Company_IDRecord ID
tcCompanyCodecharacterCompany.CompanyCodeEntity Code
tiCountry_IDintegerCountry.Country_IDRecord ID
tcCountryCodecharacterCountry.CountryCodeCountry Code
tcCountryDescriptioncharacterCountry.CountryDescriptionDescription
tiEmployee_IDintegerEmployee.Employee_IDRecord ID
tcEmployeeCodecharacterEmployee.EmployeeCodeEmployee Code. A code that identifies an employee. The code cannot match any other employee in the current entity or any other entities in the current domain.
If you leave the Employee Code field blank, the system automatically generates a number for the record based on the sequence defined in Employee Autonumber Create.
tlEmployeeIsActivelogicalEmployee.EmployeeIsActiveActive: This field indicates if this is an active record.
api annotation:PartialUpdate = yes - defaults to true
tcStateCodecharacterState.StateCodeState
EmployeeCustomcharactercalculatedcustom fields
AddressCustomcharactercalculatedcustom fields
AddressTypeCustomcharactercalculatedcustom fields
CountryCustomcharactercalculatedcustom fields
StateCustomcharactercalculatedcustom fields
CompanyCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(Employee),rowid(BusinessRelation),rowid(Address),rowid(AddressType),rowid(Country),rowid(State),rowid(Company)


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 = "BEmployee".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "EmployeeAddressByEmpCoCode".
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/bemployee.employeeaddressbyempcocode.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.