project QadFinancials > class BPaymentFormat > API query PayFormatCodeByDefault (optimised)

Description

This query returns default payment format codes for selected payment type.


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
icPayFormatTypeCodec=
iiPayFormatGroupSequencei=
ilPayFormatGroupIsActivel=
ilPayFormatCodeIsActivel=
ilPayFormatCodeIsDefaultl=
tPayFormatCode.PayFormatCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatCode.PayFormatCodeDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatCode.PayFormatCodeIsActivel=,<>
tPayFormatCode.PayFormatCodeIsDefaultl=,<>
tPayFormatGroup.PayFormatGroupCodec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatGroup.PayFormatGroupDataTypec=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatGroup.PayFormatGroupDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatGroup.PayFormatGroupInputOptionc=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatGroup.PayFormatGroupIsActivel=,<>
tPayFormatGroup.PayFormatGroupIsMandatoryl=,<>
tPayFormatGroup.PayFormatGroupLevelc=,>=,>,<>,<=,<,begins,can-do,matches
tPayFormatGroup.PayFormatGroupSequencei=,>=,>,<>,<=,<
tPayFormatGroup.PayFormatTypeCodec=,>=,>,<>,<=,<,begins,can-do,matches


Parameters (internal)


icPayFormatTypeCodecharacterPayment Format Type Code
iiPayFormatGroupSequenceintegerPayment Format Group Sequence.
ilPayFormatGroupIsActivelogicalIs the Payment Format Group Active
ilPayFormatCodeIsActivelogicalIs Payment Format Code Active
ilPayFormatCodeIsDefaultlogicalIs the Payment Format Code Default


query condition


  each PayFormatGroup where
PayFormatGroup.PayFormatTypeCode = icPayFormatTypeCode AND
PayFormatGroup.PayFormatGroupSequence = iiPayFormatGroupSequence AND
PayFormatGroup.PayFormatGroupIsActive = ilPayFormatGroupIsActive

      each PayFormatCode (outer-join) where
PayFormatCode.PayFormatGroup_ID = PayFormatGroup.PayFormatGroup_ID AND
PayFormatCode.PayFormatCodeIsActive = ilPayFormatCodeIsActive AND
PayFormatCode.PayFormatCodeIsDefault = ilPayFormatCodeIsDefault


query resultset tqPayFormatCodeByDefault


field namedata typedb fielddescription
tcPayFormatCodecharacterPayFormatCode.PayFormatCodeAttribute Value
tiPayFormatCode_IDintegerPayFormatCode.PayFormatCode_IDRecord ID
tcPayFormatCodeDescriptioncharacterPayFormatCode.PayFormatCodeDescriptionDescription
tlPayFormatCodeIsActivelogicalPayFormatCode.PayFormatCodeIsActiveActive
tlPayFormatCodeIsDefaultlogicalPayFormatCode.PayFormatCodeIsDefaultDefault
tiPayFormatGroup_IDintegerPayFormatGroup.PayFormatGroup_IDRecord ID
tcPayFormatGroupCodecharacterPayFormatGroup.PayFormatGroupCodeAttribute Name
tcPayFormatGroupDataTypecharacterPayFormatGroup.PayFormatGroupDataTypeData Type
tcPayFormatGroupDescriptioncharacterPayFormatGroup.PayFormatGroupDescriptionDescription
tcPayFormatGroupInputOptioncharacterPayFormatGroup.PayFormatGroupInputOptionInput Option
tlPayFormatGroupIsActivelogicalPayFormatGroup.PayFormatGroupIsActiveActive
tlPayFormatGroupIsMandatorylogicalPayFormatGroup.PayFormatGroupIsMandatoryMandatory
tcPayFormatGroupLevelcharacterPayFormatGroup.PayFormatGroupLevelLevel
tiPayFormatGroupSequenceintegerPayFormatGroup.PayFormatGroupSequenceGroup Code
tcPayFormatTypeCodecharacterPayFormatGroup.PayFormatTypeCodePayment Format Type
PayFormatGroupCustomcharactercalculatedcustom fields
PayFormatCodeCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(PayFormatGroup),rowid(PayFormatCode)


Internal usage


QadFinancials
method BCreditor.CreateBankNumberPayCode
method BDDocument.ApiSetDDocumentStatusChange
method BDDocument.CreateHeaderPayCode
method BDDocument.CreateHeaderPayCodeForSel
method BDebtor.CreateBankNumberPayCode
method BDPaymentSelection.GetHeaderPayCodeEnabled
method BPaymentFormat.ApiDefaultPayFormatCode
method BPaymentSelection.GetHeaderPaymentAttributes
dataset BPaymentFormat.tPayFormatCodeByDefaultRef


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 = "BPaymentFormat".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "PayFormatCodeByDefault".
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/bpaymentformat.payformatcodebydefault.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.