project QadFinancials > class BDebtor > API query DebtorBankPayFormatByParent


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
iiCompanyIdi
icDebtorCodec=
icParentTypec=
tBankNumber1.BankNumberc=,>=,>,<>,<=,<,begins,can-do,matches
tBankNumber2.BankNumberc=,>=,>,<>,<=,<,begins,can-do,matches
tBankNumber1.BankNumberExtensionc=,>=,>,<>,<=,<,begins,can-do,matches
tBankNumber2.BankNumberIsActivel=,<>
tBankNumber1.BankNumberIsActivel=,<>
tBankNumber1.BankNumberIsDefaultl=,<>
tBankNumber1.BankNumberParentTypec=,>=,>,<>,<=,<,begins,can-do,matches
tBankNumber1.BankNumberValidationc=,>=,>,<>,<=,<,begins,can-do,matches
tBankPayFormat.BankPayFormatIsActivel=,<>
tCompany.CompanyCodec=,>=,>,<>,<=,<,begins,can-do,matches
tDebtor.DebtorCodec=,>=,>,<>,<=,<,begins,can-do,matches
tGL.GLCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatType.PayFormatTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatType.PayFormatTypeIsActivel=,<>
tPayFormatType.PayFormatTypeModulec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatType.PayFormatTypePayInstrumentc=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatType.PayFormatTypePayTypec=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


iiCompanyIdintegerCompany id
icDebtorCodecharacter
icParentTypecharacter


query condition


  each Debtor where
Debtor.SharedSet_Id = vi_DEBTOR_sharedset(iiCompanyId) AND
Debtor.DebtorCode = icDebtorCode

      each BankNumber1 (inner-join) where
BankNumber1.ParentObject_ID = Debtor.Debtor_ID AND
BankNumber1.BankNumberParentType = icParentType

          first BankPayFormat (inner-join) where
BankPayFormat.BankPayFormat_ID = BankNumber1.BankPayFormat_ID AND

              first BankNumber2 (inner-join) where
BankNumber2.BankNumber_ID = BankPayFormat.BankNumber_ID AND

                  first CompanySharedSet (inner-join) where
CompanySharedSet.Company_Id = iiCompanyId AND
CompanySharedSet.CompanySharedSet_ID = BankNumber2.CompanySharedSet_ID AND

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

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

              first PayFormatType (inner-join) where
PayFormatType.PayFormatTypeCode = BankPayFormat.PayFormatTypeCode AND


query resultset tqDebtorBankPayFormatByParent


field namedata typedb fielddescription
tcBankNumbercharacterBankNumber1.BankNumberBank Number
tiBankNumber_IDintegerBankNumber1.BankNumber_IDRecord ID
tcBankNumberExtensioncharacterBankNumber1.BankNumberExtensionBank Extension
tlBankNumberIsActivelogicalBankNumber1.BankNumberIsActiveActive
tlBankNumberIsDefaultlogicalBankNumber1.BankNumberIsDefaultDefault
tcBankNumberParentTypecharacterBankNumber1.BankNumberParentTypeType
tcBankNumberValidationcharacterBankNumber1.BankNumberValidationValidation
tiBankPayFormat_IDintegerBankPayFormat.BankPayFormat_IDRecord ID
tlBankPayFormatIsActivelogicalBankPayFormat.BankPayFormatIsActiveActive
tiCompany_IDintegerCompany.Company_IDRecord ID
tcCompanyCodecharacterCompany.CompanyCodeEntity Code
tiDebtor_IDintegerDebtor.Debtor_IDRecord ID
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.
tcGLCodecharacterGL.GLCodeA code identifying the GL account.
tcOwnBankNumbercharacterBankNumber2.BankNumberBank Number
tiOwnBankNumber_IDintegerBankNumber2.BankNumber_IDRecord ID
tlOwnBankNumberIsActivelogicalBankNumber2.BankNumberIsActiveActive
tcPayFormatTypeCodecharacterPayFormatType.PayFormatTypeCodeFormat Name
tlPayFormatTypeIsActivelogicalPayFormatType.PayFormatTypeIsActiveActive
tcPayFormatTypeModulecharacterPayFormatType.PayFormatTypeModuleModule
tcPayFormatTypePayInstrumentcharacterPayFormatType.PayFormatTypePayInstrumentPayment Instrument
tcPayFormatTypePayTypecharacterPayFormatType.PayFormatTypePayTypePayment Type
DebtorCustomcharactercalculatedcustom fields
BankNumber1Customcharactercalculatedcustom fields
BankPayFormatCustomcharactercalculatedcustom fields
BankNumber2Customcharactercalculatedcustom fields
CompanyCustomcharactercalculatedcustom fields
GLCustomcharactercalculatedcustom fields
PayFormatTypeCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(Debtor),rowid(BankNumber1),rowid(BankPayFormat),rowid(BankNumber2),rowid(CompanySharedSet),rowid(Company),rowid(GL),rowid(PayFormatType)


Internal usage


QadFinancials
method BDDocument.DefaultValuesDebtorCode


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 = "BDebtor".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "DebtorBankPayFormatByParent".
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/bdebtor.debtorbankpayformatbyparent.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.