project BLF > class BEventDaemonQueue > API query DaemonQueueOverview (optimised)


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
tfcDaemon.DaemonNamec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueue.DaemonQueueEndDatet=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueEndTimei=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueLockedProcessi=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueLogc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogBusMethodc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogContextc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogExplanationc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogFieldLabelc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogFieldNamec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogFieldValuec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogIdentc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogMessagec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogNumberc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogRowidc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueueLog.DaemonQueueLogSeverityi=,>=,>,<>,<=,<
tfcDaemonQueueLog.DaemonQueueLogTypec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueue.DaemonQueuePriorityi=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueRefc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueue.DaemonQueueRefDescriptionc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemonQueue.DaemonQueueReqStartDatet=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueReqStartTimei=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueStartDatet=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueStartTimei=,>=,>,<>,<=,<
tfcDaemonQueue.DaemonQueueStatusc=,>=,>,<>,<=,<,begins,can-do,matches


query condition


  each fcDaemonQueue where

      first fcDaemon (inner-join) where
fcDaemon.DaemonId = fcDaemonQueue.DaemonId AND

      each fcDaemonQueueLog (conditional-join) where
fcDaemonQueueLog.DaemonQueueId = fcDaemonQueue.DaemonQueueId AND


query resultset tqDaemonQueueOverview


field namedata typedb fielddescription
tcDaemonNamecharacterfcDaemon.DaemonNameDaemon Name
ttDaemonQueueEndDatedatefcDaemonQueue.DaemonQueueEndDateactual end date and time of processing the request
tiDaemonQueueEndTimeintegerfcDaemonQueue.DaemonQueueEndTimeactual end date and time of processing the request
tiDaemonQueueIdintegerfcDaemonQueue.DaemonQueueIdidentifier
tiDaemonQueueLockedProcessintegerfcDaemonQueue.DaemonQueueLockedProcessprocess ID of the daemon process that is handling this request
tcDaemonQueueLogcharacterfcDaemonQueue.DaemonQueueLogError Log of this Daemon Request
tcDaemonQueueLogBusMethodcharacterfcDaemonQueueLog.DaemonQueueLogBusMethodThe error message business method (copy of tFcMessages.tcFcBusMethod)
tcDaemonQueueLogContextcharacterfcDaemonQueueLog.DaemonQueueLogContextThe error message context (copy of tFcMessages.tcFcContext)
tcDaemonQueueLogExplanationcharacterfcDaemonQueueLog.DaemonQueueLogExplanationThe error message explanation (copy of tFcMessages.tcFcExplanation)
tcDaemonQueueLogFieldLabelcharacterfcDaemonQueueLog.DaemonQueueLogFieldLabel= tFcMessages.tcFcFieldLabel
tcDaemonQueueLogFieldNamecharacterfcDaemonQueueLog.DaemonQueueLogFieldName= tFcMessages.tcFcFieldName
tcDaemonQueueLogFieldValuecharacterfcDaemonQueueLog.DaemonQueueLogFieldValue= tFcMessages.tcFcFieldValue
tcDaemonQueueLogIdentcharacterfcDaemonQueueLog.DaemonQueueLogIdentThe error message identification (copy of tFcMessages.tcFcIdentification)
tcDaemonQueueLogLINEcharactercalculated
tcDaemonQueueLogMessagecharacterfcDaemonQueueLog.DaemonQueueLogMessage= tFcMessages.tcFcMessage
tcDaemonQueueLogNumbercharacterfcDaemonQueueLog.DaemonQueueLogNumberThe error message number (copy of tFcMessages.tcFcMsgNumber)
tcDaemonQueueLogRowidcharacterfcDaemonQueueLog.DaemonQueueLogRowid= tFcMessages.tcFcRowid
tiDaemonQueueLogSeverityintegerfcDaemonQueueLog.DaemonQueueLogSeverity= tFcMessages.tiFcSeverity
tcDaemonQueueLogTypecharacterfcDaemonQueueLog.DaemonQueueLogType= tFcMessages.tcFcType
tiDaemonQueuePriorityintegerfcDaemonQueue.DaemonQueuePrioritydefines the sequence of processing requests in a single loop (also see fcdaemon.DaemonNrOfRequestsInLoop)
tcDaemonQueueRefcharacterfcDaemonQueue.DaemonQueueRefinternal reference to identify the request (may contain non-displayable ID's)
tcDaemonQueueRefDescriptioncharacterfcDaemonQueue.DaemonQueueRefDescriptiondisplayable reference for identifying the request
ttDaemonQueueReqStartDatedatefcDaemonQueue.DaemonQueueReqStartDatethe request will not be processed before this date and time
tiDaemonQueueReqStartTimeintegerfcDaemonQueue.DaemonQueueReqStartTimethe request will not be processed before this date and time
ttDaemonQueueStartDatedatefcDaemonQueue.DaemonQueueStartDateactual start date and time of processing the request
tiDaemonQueueStartTimeintegerfcDaemonQueue.DaemonQueueStartTimeactual start date and time of processing the request
tcDaemonQueueStatuscharacterfcDaemonQueue.DaemonQueueStatuspossible values:
WAITING
IN-PROCESS
PROCESSED-OK
PROCESSED-ERROR
tcEndTimeUTCcharactercalculated
tcReqStartTimeUTCcharactercalculated
tcStartTimeUTCcharactercalculated
fcDaemonQueueCustomcharactercalculatedcustom fields
fcDaemonCustomcharactercalculatedcustom fields
fcDaemonQueueLogCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(fcDaemonQueue),rowid(fcDaemon),rowid(fcDaemonQueueLog)


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 = "BEventDaemonQueue".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "DaemonQueueOverview".
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/beventdaemonqueue.daemonqueueoverview.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.