Skip to content

SAIF.Services.Appworx operations and processes

This page is the operation catalog and cross-operation hub for this library. Each operation's detailed, step-by-step logic lives in its own page under operations/.

Operation catalog

Operation Intent Trigger Inputs Outputs Rules Tables SQL
Submit an Appworx batch job (shared overload) One-call façade that selects a data portal, builds a submission instance, and submits a batch job to Appworx Application manager needs a scheduler job run inDPI, inModule, inRequestor, inPrinter, inArg1..inArg20, inUseWCISDEV1AppworxForAllDevEnv Job request row created in the Appworx scheduler (side effect only) BR-001, BR-003 JOB_QUEUE SQL-001
Execute the Appworx submission stored procedure Build and execute the BOF portal request that calls submit_appworx_job Called by the shared overload, or directly by any caller holding a configured instance Instance state — DPI, ModuleName, Requestor, Printer, Arg1..Arg20 None (Sub); side effect: procedure call executed BR-004, BR-005, BR-006 JOB_QUEUE SQL-001
Reset argument slots Return all 20 argument slots to the empty state so a reused instance cannot leak arguments Called by the constructor, by the shared overload, or explicitly by a caller reusing an instance None (mutates instance state only) All 20 clsSmartString argument fields set to empty BR-007 — —

Process flow diagram

The following diagram visualizes the primary operational flow from an application manager through job submission.

flowchart TD
    Start(["Application manager needs a<br>scheduler job run"]) --> S1[Submit an Appworx batch job<br>shared overload]
    S1 --> D{inUseWCISDEV1AppworxForAllDevEnv?}
    D -->|Yes| S1a["Redirect to PRADT@WCISPROD<br>or WCISDEV1"]
    D -->|No| S1b[Use caller's inDPI]
    S1a --> S2[Construct clsRequestAppworxJob<br>and reset argument slots]
    S1b --> S2
    S2 --> S3[Execute submit_appworx_job<br>stored procedure]
    S3 --> EndOk([Job row queued in JOB_QUEUE])
    S3 -->|exception| EndErr(["ApplicationException<br>rethrown"])

Database interactions

Operation SQL Tables Type
Execute the Appworx submission stored procedure SQL-001 JOB_QUEUE Write

Failure and edge-case behavior

  • Any exception from DPI.ProcessPortalRequest is wrapped in an ApplicationException and rethrown (BR-006); there is no logging, retry, or compensating action.
  • The submission is fire-and-forget (BR-008); callers cannot correlate the call with a specific scheduler job instance.
  • The stored procedure itself silently swallows a NO_DATA_FOUND condition and reports success (see PR-006 in Stored procedure operations below).

Stored procedure operations

Operations implemented in Oracle stored procedures referenced by this library.

Operation Description Source Link
Generate job identifier Fetches the next value of the SO_MAX_JOBID sequence into a local variable and uses it as the scheduler job identifier for the row about to be queued. submit_appworx_job Details
Queue batch job request Inserts a single row into JOB_QUEUE capturing the module, requestor, generated job id, the standalone-job marker (-1), and all 20 positional argument slots. submit_appworx_job Details
Suppress no-data condition Catches NO_DATA_FOUND and returns normally without queuing, converting a data-absence failure into a silent no-op. submit_appworx_job Details
Propagate failure Re-raises any other exception unchanged so the calling application can surface it. submit_appworx_job Details

Sources

  • SAIF.Services.Appworx/clsRequestAppworxJob.vb
  • SAIF.Application.Claim.Legal/LegalNet/clsCreateFileManager.vb
  • SAIF.Application.Claim.Legal/LegalNet/clsMailDateManager.vb
  • SAIF.Application.Claim.Legal/LegalNet/clsRequestManager.vb