Skip to content

SAIF.Business.Claim operations and processes

SAIF.Business.Claim is the shared claim-domain business object library. It carries the operations that other claim applications reuse rather than reimplement: stopping benefit payment schedules when claim data changes, moving awards back to pending, maintaining federal awards and their payments, calling the Oracle procedures that calculate statutory wages, aggravation rights, medically stationary dates, and first-payment timeliness, tracking work status and injured body parts, queueing 1502 filings for the Department of Consumer and Business Services, and caching the permanent partial disability and reserve service reference tables.

Each operation below has its own page describing its trigger, ordered steps, per-step rule and SQL citations, branch handling, and failure behavior.

Operation catalog

Operation Intent Trigger Inputs Outputs Rules Tables SQL
Benefit schedule payment processing Stop a claim's outstanding payment schedules, truncating released payments and deleting unreleased ones, then task the adjuster A claim change invalidates the schedule; ProcessBenefitPayment is called Claim ID, calling application and function, adjuster mail ID, task-suppression flag Truncated or deleted schedules, adjuster task, #PAYUPD# / #PAYDEL# errors BR-008, BR-009, BR-010 CL_BENEFIT_SCHEDULE, CL_BENEFIT_PAYMENT SQL-013, SQL-017, SQL-022, SQL-029, SQL-031, SQL-036, SQL-040, SQL-041, SQL-042, SQL-046
Award payment pending transition Move a claim's active award to pending and reset its payments for re-approval GetSetAwardPaymentPending followed by Save() Claim ID, acting portal user Award status P, payments returned to in-progress, UpdateError / #PAYUPD# BR-008, BR-011 CL_AWARD, CL_BENEFIT_PAYMENT SQL-025, SQL-037
Award benefit payment management Retrieve, update, and delete the benefit payments attached to a SAIF award A caller requests a payment or payment collection and saves changes Claim ID, award number, payment sequence number, benefit type codes Payment object or collection, updated or deleted payment rows BR-008, BR-012 CL_BENEFIT_PAYMENT SQL-015, SQL-016, SQL-030, SQL-041
Federal award management Retrieve federal awards by claim or worker, hydrate their payments, and persist status changes A caller requests federal awards and saves the collection Claim ID or worker ID, award status code, benefit type codes Federal award collection with attached payments, updated award rows BR-008, BR-012 CL_FEDERAL_AWARD, CL_BENEFIT_PAYMENT SQL-016, SQL-021, SQL-035
Statutory weekly wage calculation Calculate the statutory weekly wage that drives time-loss benefit amounts GetStatutoryWeeklyWageCalculation Injury date, wages, pay period, hours per day, days per week Statutory weekly wage, procedure error message PR-001, PR-002, PR-003, PR-004, PR-005, PR-006 N/A SQL-026
Aggravation rights date calculation Return the start and end of a claim's aggravation rights window GetAggRightDates Claim ID Aggravation right start and end dates, error message, "Claim Not Found" N/A N/A SQL-014
Medically stationary date retrieval Return a claim's medically stationary date, blanked when the procedure reports an error GetMedicallyStationaryDate SAIF claim number Medically stationary date, procedure error message N/A N/A SQL-024
Timeliness of first payment evaluation Assemble the dates, flags, and verdict needed to judge whether the first time-loss payment was timely GetTimelinessOfFirstPayment Claim ID, claim-detail request flag Knowledge, disability, authorization, attempt, due and issue dates; timeliness flags and codes BR-016 N/A SQL-023
DCBS 1502 transfer management Queue, list, and mark off the 1502 filings awaiting transfer to DCBS A caller creates a transfer record or requests the outstanding queue Claim ID, filing reason, document type, file name and identifier, image sequence Persisted transfer rows, transfer list collections BR-001, BR-002, BR-008, BR-014 CL_1502_DCBS_TRANSFER, CLM_DBA.CL_1502_DCBS_TRANSFER, CL_1502_DCBS_TRANSFER_SEQ SQL-001, SQL-004, SQL-028, SQL-039
Claim list generation Turn a caller-supplied query into a sortable collection of claim identifiers and SAIF claim numbers GetClaimListCollection SQL statement text, a single bind value, optional column-name overrides Claim list collection of claim ID, claim number, check character, worker ID N/A N/A N/A
Work status and work release tracking Record and maintain the worker's return-to-work status and the physician's work release status A claim-maintenance caller creates or retrieves the current status and saves Claim ID, return-to-work or work release date, status codes Sequence-numbered status rows, rule failures BR-003, BR-004, BR-005, BR-008, BR-019 CL_CLAIM_WORK_STATUS, CL_CLAIM_WORK_RELEASE_STATUS, CLAIM_WORK_STATUS_SEQ, CLAIM_WORK_REL_STATUS_SEQ_NUM SQL-002, SQL-003, SQL-006, SQL-007, SQL-019, SQL-020, SQL-033, SQL-034, SQL-044, SQL-045
Worker injured body part management Maintain the claim's injured body parts and mirror the primary selection onto the claim header A caller retrieves the body part collection, edits it, and saves Claim ID, body part code, body side code, injury nature code, primary flag Persisted body part rows, updated claim header primary columns BR-006, BR-007, BR-008, BR-013 CL_WORKER_INJURED_BODY_PART SQL-008, SQL-027, SQL-038, SQL-047
Claim employee work address management Maintain the address of the work site where the injury occurred A caller retrieves or creates the address and saves Claim ID, address lines, city, state, ZIP, county, foreign flag Persisted address row, address rule failures BR-008, BR-015 CL_CLAIM_EMPLOYEE_WORK_ADDRESS SQL-005, SQL-018, SQL-032, SQL-043
PPD award reference lookups Load and cache the PPD body part and degree award rate tables and price awards from them A caller requests a PPD reference table or an award amount Data portal info, refresh flag, effective date, degree count Cached body part and rate tables, calculated award amount, calculation proof BR-017, BR-018 CL_PPD_BODY_PART_CODE, CL_PPD_SCHED_DEGREE_AWARD, CL_PPD_UNSCHED_DEGREE_AWARD SQL-009, SQL-010, SQL-011
Reserve service reference lookups Load and cache the vocational and medical service type lists with their service descriptions A caller requests a reserve service reference list Data portal info, refresh flag Cached service type code table and service type collections with descriptions N/A CL_RESERVE_VOC_SERV_TYPE_CODE SQL-012

Process flow diagram

The following diagram shows how the library's operations relate to the claim lifecycle they support.

flowchart TD
    App([Claim application or batch process]) --> Group{What is being done?}
    Group -->|Claim data changed| Stop[Benefit schedule<br>payment processing]
    Group -->|Award re-work| Pend[Award payment<br>pending transition]
    Group -->|Award maintenance| Fed[Federal award management]
    Fed --> Pay[Award benefit<br>payment management]
    Stop --> Task[Claim task posted<br>for the adjuster]
    Group -->|Statutory determination| Proc{Which procedure?}
    Proc --> Wage[Statutory weekly<br>wage calculation]
    Proc --> Agg[Aggravation rights<br>date calculation]
    Proc --> Med[Medically stationary<br>date retrieval]
    Proc --> Time[Timeliness of first<br>payment evaluation]
    Group -->|Claim status upkeep| Status[Work status and<br>work release tracking]
    Group -->|Injury detail upkeep| Body[Worker injured body<br>part management]
    Body --> Header[Claim header primary<br>body part updated]
    Group -->|Employer detail upkeep| Addr[Claim employee work<br>address management]
    Group -->|Regulatory filing| DCBS[DCBS 1502<br>transfer management]
    Group -->|List of claims needed| List[Claim list generation]
    Group -->|Reference data needed| Ref{Which reference set?}
    Ref --> PPD[PPD award<br>reference lookups]
    Ref --> Serv[Reserve service<br>reference lookups]

Inherited operations and processes

Operations in this section come from inherited BOF framework behavior.

From clsBusinessBase (SAIF.Framework.Core)

Operation Intent Provided by Origin
Edit lifecycle † Supports the begin-edit, cancel-edit, and apply-edit lifecycle used by every mutable business object in this library before Save() is called.* clsBusinessBase SAIF.Framework.Core
Rule evaluation † Runs the property and object rules registered by each object's rule-registration member and exposes the resulting broken-rule state.* clsBusinessBase SAIF.Framework.Core
Data portal lifecycle hooks † Invokes the create, retrieve, insert, update, and delete hooks that each object overrides to bind its Criteria SQL and inspect the affected row count.* clsBusinessBase SAIF.Framework.Core

From clsBusinessCollectionBase (SAIF.Framework.Core)

Operation Intent Provided by Origin
Collection traversal † Supports cursor-style traversal and deleted-item tracking for the award, federal award, body part, transfer list, and claim list collections.* clsBusinessCollectionBase SAIF.Framework.Core
Cascading save † Walks each dirty child item through its own insert, update, or delete path when the collection is saved.* clsBusinessCollectionBase SAIF.Framework.Core

Origin: The operations in this section are implemented in SAIF.Framework.Core and inherited by this library's business objects and collections rather than being defined here.

Database interactions

The following table maps catalogued SQL statements back to the operation that executes them.

Operation SQL Tables Type
DCBS 1502 transfer management SQL-001 CL_1502_DCBS_TRANSFER_SEQ Read
Work status and work release tracking SQL-002 CLAIM_WORK_REL_STATUS_SEQ_NUM Read
Work status and work release tracking SQL-003 CLAIM_WORK_STATUS_SEQ Read
DCBS 1502 transfer management SQL-004 CL_1502_DCBS_TRANSFER Write
Claim employee work address management SQL-005 CL_CLAIM_EMPLOYEE_WORK_ADDRESS Write
Work status and work release tracking SQL-006 CL_CLAIM_WORK_RELEASE_STATUS Write
Work status and work release tracking SQL-007 CL_CLAIM_WORK_STATUS Write
Worker injured body part management SQL-008 CL_WORKER_INJURED_BODY_PART Write
PPD award reference lookups SQL-009 CL_PPD_BODY_PART_CODE Read
PPD award reference lookups SQL-010 CL_PPD_SCHED_DEGREE_AWARD Read
PPD award reference lookups SQL-011 CL_PPD_UNSCHED_DEGREE_AWARD Read
Reserve service reference lookups SQL-012 CL_RESERVE_VOC_SERV_TYPE_CODE Read
Benefit schedule payment processing SQL-013 CL_BENEFIT_SCHEDULE Read
Aggravation rights date calculation SQL-014 N/A Read
Award benefit payment management SQL-015 CL_BENEFIT_PAYMENT Read
Award benefit payment management SQL-016 CL_BENEFIT_PAYMENT Read
Benefit schedule payment processing SQL-017 CL_BENEFIT_SCHEDULE Read
Claim employee work address management SQL-018 CL_CLAIM_EMPLOYEE_WORK_ADDRESS Read
Work status and work release tracking SQL-019 CL_CLAIM_WORK_RELEASE_STATUS Read
Work status and work release tracking SQL-020 CL_CLAIM_WORK_STATUS Read
Federal award management SQL-021 CL_FEDERAL_AWARD Read
Benefit schedule payment processing SQL-022 CL_BENEFIT_SCHEDULE Read
Timeliness of first payment evaluation SQL-023 N/A Read
Medically stationary date retrieval SQL-024 N/A Read
Award payment pending transition SQL-025 CL_AWARD Read
Statutory weekly wage calculation SQL-026 N/A Read
Worker injured body part management SQL-027 CL_WORKER_INJURED_BODY_PART Read
DCBS 1502 transfer management SQL-028 CLM_DBA.CL_1502_DCBS_TRANSFER Write
Benefit schedule payment processing SQL-029 CL_BENEFIT_SCHEDULE Write
Award benefit payment management SQL-030 CL_BENEFIT_PAYMENT Write
Benefit schedule payment processing SQL-031 CL_BENEFIT_SCHEDULE Write
Claim employee work address management SQL-032 CL_CLAIM_EMPLOYEE_WORK_ADDRESS Write
Work status and work release tracking SQL-033 CL_CLAIM_WORK_RELEASE_STATUS Write
Work status and work release tracking SQL-034 CL_CLAIM_WORK_STATUS Write
Federal award management SQL-035 CL_FEDERAL_AWARD Write
Benefit schedule payment processing SQL-036 CL_BENEFIT_SCHEDULE Write
Award payment pending transition SQL-037 CL_AWARD Write
Worker injured body part management SQL-038 CL_WORKER_INJURED_BODY_PART Write
DCBS 1502 transfer management SQL-039 CL_1502_DCBS_TRANSFER Write
Benefit schedule payment processing SQL-040 CL_BENEFIT_SCHEDULE Write
Award benefit payment management SQL-041 CL_BENEFIT_PAYMENT Write
Benefit schedule payment processing SQL-042 CL_BENEFIT_SCHEDULE Write
Claim employee work address management SQL-043 CL_CLAIM_EMPLOYEE_WORK_ADDRESS Write
Work status and work release tracking SQL-044 CL_CLAIM_WORK_RELEASE_STATUS Write
Work status and work release tracking SQL-045 CL_CLAIM_WORK_STATUS Write
Benefit schedule payment processing SQL-046 CL_BENEFIT_SCHEDULE Write
Worker injured body part management SQL-047 CL_WORKER_INJURED_BODY_PART Write

Several statements executed by this library are not represented in the SQL catalog because they are built at runtime or issued through direct portal requests rather than through a Criteria property: the filtered schedule select and partial schedule update used when stopping payments, the benefit payment retrieve and update used by the award pending transition, the claim header cascade used by injured body part management, the worker-scoped federal award join, the two ad-hoc 1502 transfer queue selects, the reserve service type and description join, and the caller-supplied statement executed by claim list generation.*

Stored procedure operations

Operations implemented by referenced Oracle procedures.

Operation Description Source Link
Calculate statutory weekly wage Calculates the statutory weekly wage from injury date, wage basis, and schedule inputs, applying its own input validation and the pre-1995 three-day minimum sp82286_statutoryweeklywage Details
Calculate aggravation rights dates Returns the start and end dates of a claim's aggravation rights window sp82046_CalcAggRightDates Details
Retrieve medically stationary date Returns the medically stationary date for a SAIF claim number sp82289_medicallystationarydt Details
Evaluate timeliness of first payment Returns the dates, flags, and verdict used to judge whether the first time-loss payment met the statutory deadline sp82067_TimelinessOf1stPayment Details

Failure and edge-case behavior

  • Every mutable object in this library reports persistence failure by adding an error message rather than raising an exception, so a caller that ignores the error collection will believe a failed save succeeded.
  • Optimistic concurrency is expressed by carrying the prior update number in the WHERE clause and incrementing it in the SET clause; a concurrent change therefore appears as an affected row count other than one. The 1502 transfer update is the exception and carries no update number, so it has no concurrency protection.
  • Several objects override Save() to return True unconditionally, discarding the framework result — the three benefit schedule objects and the award benefit payment item all behave this way.*
  • The stored-procedure wrapper objects catch and discard every exception raised while reading their result cursor, so a schema or type mismatch surfaces as an unset result rather than as a failure.
  • Multi-statement operations are not wrapped in an explicit transaction inside this library, so the award pending transition, the federal award cascade, and the injured body part claim-header cascade can each leave a partially applied change.
  • Reference data caches are module-level statics with no expiry, so changes to PPD rate tables or reserve service lists are not visible until a caller requests a refresh or the process restarts.
  • Retrieval paths generally return an unpopulated object rather than an error when nothing matches, so "not found" and "found but empty" are indistinguishable without inspecting the object's state.
  • Only four objects register real business rules — the 1502 transfer, the two work status objects, and the injured body part collection — so most field-level validity in this library is the caller's responsibility.
  • Oracle schema, sequence, or procedure changes can alter behavior without any change to this library's code.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with † are inherited from a dependency and are documented here for context only.

Sources

  • Business\SAIF.Business.Claim\cls1502Transfer.vb
  • Business\SAIF.Business.Claim\clsActiveBenefitSchedule.vb
  • Business\SAIF.Business.Claim\clsAggRightDates.vb
  • Business\SAIF.Business.Claim\clsAwardBenefitPayment.vb
  • Business\SAIF.Business.Claim\clsAwardBenefitPaymentCollection.vb
  • Business\SAIF.Business.Claim\clsBenefitSchedule.vb
  • Business\SAIF.Business.Claim\clsClaimEmployeeWorkAddress.vb
  • Business\SAIF.Business.Claim\clsClaimListCollection.vb
  • Business\SAIF.Business.Claim\clsClaimListGenerator.vb
  • Business\SAIF.Business.Claim\clsClaimListItem.vb
  • Business\SAIF.Business.Claim\clsClaimWorkReleaseStatus.vb
  • Business\SAIF.Business.Claim\clsClaimWorkStatus.vb
  • Business\SAIF.Business.Claim\clsFederalAwardStatus.vb
  • Business\SAIF.Business.Claim\clsFederalAwardStatusCollection.vb
  • Business\SAIF.Business.Claim\clsFederalBenefitSchedule.vb
  • Business\SAIF.Business.Claim\clsITimelinessOfFirstPayment.vb
  • Business\SAIF.Business.Claim\clsMedicallyStationaryDate.vb
  • Business\SAIF.Business.Claim\clsPPDBodyParts.vb
  • Business\SAIF.Business.Claim\clsPPDScheduledDegreeAwards.vb
  • Business\SAIF.Business.Claim\clsPPDUnscheduledDegreeAwards.vb
  • Business\SAIF.Business.Claim\clsServiceDescription.vb
  • Business\SAIF.Business.Claim\clsServiceDescriptionCollection.vb
  • Business\SAIF.Business.Claim\clsServiceType.vb
  • Business\SAIF.Business.Claim\clsServiceTypeCollection.vb
  • Business\SAIF.Business.Claim\clsSetAwardPaymentPending.vb
  • Business\SAIF.Business.Claim\clsStatutoryWeeklyWageCalculation.vb
  • Business\SAIF.Business.Claim\clsVocationalServicesTypes.vb
  • Business\SAIF.Business.Claim\clsWorkerInjuredBodyPart.vb
  • Business\SAIF.Business.Claim\clsWorkerInjuredBodyPartCollection.vb
  • Business\SAIF.Business.Claim\Enums.vb
  • Business\SAIF.Business.Claim\mdlPPD.vb
  • Business\SAIF.Business.Claim\mdlReserveServices.vb
  • Business\SAIF.Business.Claim\SAIF.BOF.Business.Claim.vbproj
  • Business\SAIF.Business\ClaimServices.vb
  • Business\SAIF.Business.Tasks.Claim\clsClaimTaskGenerator.vb