project BLF > class BEventDaemon > API query SelectEventDaemon

Description

The select query for the Event Daemon


query filter (table tFilter)


tcBusinessFieldNametcDataTypetcOperator
tfcDaemon.DaemonIntervali=,>=,>,<>,<=,<
tfcDaemon.DaemonLastEndDatet=,>=,>,<>,<=,<
tfcDaemon.DaemonLastEndTimei=,>=,>,<>,<=,<
tfcDaemon.DaemonLastStartDatet=,>=,>,<>,<=,<
tfcDaemon.DaemonLastStartTimei=,>=,>,<>,<=,<
tfcDaemon.DaemonLogFilec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemon.DaemonLoginc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemon.DaemonLogLeveli=,>=,>,<>,<=,<
tfcDaemon.DaemonNamec=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemon.DaemonPasswordc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemon.DaemonRunningProcessesi=,>=,>,<>,<=,<
tfcDaemon.DaemonStartDirectoryc=,>=,>,<>,<=,<,begins,can-do,matches
tfcDaemon.DaemonStatusc=,>=,>,<>,<=,<,begins,can-do,matches


query condition


  each fcDaemon where
fcDaemon.DaemonName = 'EventDaemon'


query sort order


fcDaemon.DaemonName (ascending)


query resultset tqSelectEventDaemon


field namedata typedb fielddescription
tiDaemonIdintegerfcDaemon.DaemonIdidentifier
tiDaemonIntervalintegerfcDaemon.DaemonIntervalamount of seconds to wait before looking for new tasks
ttDaemonLastEndDatedatefcDaemon.DaemonLastEndDateLast End Date
tiDaemonLastEndTimeintegerfcDaemon.DaemonLastEndTimeEnd Time of Last Daemon Run
ttDaemonLastStartDatedatefcDaemon.DaemonLastStartDateLast Start Date
tiDaemonLastStartTimeintegerfcDaemon.DaemonLastStartTimeStart Time of Last Daemon Run
tcDaemonLogFilecharacterfcDaemon.DaemonLogFilelog file with all error messages and other messages from the daemon process
tcDaemonLogincharacterfcDaemon.DaemonLoginlogin name to use to log in to the application
tiDaemonLogLevelintegerfcDaemon.DaemonLogLevelDaemon Log Level
tcDaemonNamecharacterfcDaemon.DaemonNameDaemon Name
tcDaemonPasswordcharacterfcDaemon.DaemonPassword(encoded) password to use to log in to the application
tiDaemonRunningProcessesintegerfcDaemon.DaemonRunningProcessesnumber of processes currently running this daemon
tcDaemonStartDirectorycharacterfcDaemon.DaemonStartDirectoryworking directory for the daemon processes
tcDaemonStatuscharacterfcDaemon.DaemonStatusindicates the active status of the daemon
When set to 'STOPPING' all processes running this daemon will end.

possible statuses:
INACTIVE
RUNNING
STOPPING
ttLastModifiedDatedatefcDaemon.LastModifiedDateLast Modified Date
tiLastModifiedTimeintegerfcDaemon.LastModifiedTimeLast Modified Time
tcLastModifiedUsercharacterfcDaemon.LastModifiedUserLast Modified User
fcDaemonCustomcharactercalculatedcustom fields
ti_sequenceintegercalculatedprimary index
tc_rowidcharactercalculated = rowid(fcDaemon)


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 = "BEventDaemon".
create ttContext.
assign ttContext.propertyName = "methodName"
       ttContext.propertyValue = "SelectEventDaemon".
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/beventdaemon.selecteventdaemon.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.