Skip to content

Create a new correspondence or endorsement

Create an unsaved correspondence or endorsement and seed audit fields and keys.

Field Value
Operation ID OP-001
Trigger Caller invokes NewCorrespondence(...) or NewEndoresment(...).
Inputs IDataPortalInfo, policy number, correspondence code, effective date, optional policy-period effective date.
Outputs A new clsCorrespondence or clsEndorsement instance marked new.
Primary components clsCorrespondence.Create, clsCorrespondence.NewCorrespondence, clsEndorsement.NewEndoresment
Entry point Business\SAIF.Business.Policy.Correspondence\clsCorrespondence.vb; Business\SAIF.Business.Policy.Correspondence\clsEndorsement.vb

Steps

  1. Call the BOF create path with a fresh criteria object so the framework can instantiate the business object and execute the inherited create lifecycle† (BR-006).
  2. clsCorrespondence.Create() requests the next Endorsement_Seq value through the data portal and assigns it to CorrespondenceSequenceNumber (SQL-001, BR-006).
  3. The same create method stamps CreateUser, CreateDate, and CorrespondenceDate from IDataPortalInfo rather than from the client clock (BR-007).
  4. The factory method assigns the caller-supplied policy number, effective date, and correspondence code to the in-memory object.
  5. The endorsement factory also stores the policy-period effective date and registers the endorsement-specific validation rule (BR-004).

Process flow

The following diagram summarizes the control flow for this operation.

flowchart TD
    Start([Factory called]) --> Create[BOF create path] --> Seq[Get Endorsement_Seq] --> Stamp[Stamp audit fields] --> Return([Return new object])

Failure and edge-case behavior

  • Validation and framework state errors surface through the BOF error collection unless the called dependency throws directly.
  • Database-dependent operations rely on the caller-supplied data portal context and Oracle connectivity.
  • Imaging reconciliation and stored-procedure wrappers defer cross-system behavior to their external collaborators.

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 ** could not be confirmed; treat as unknown until verified. Statements marked with † are derived from dependency library documentation via the Legends CLI.

Sources

  • Business\SAIF.Business.Policy.Correspondence\clsCorrespondence.vb
  • Business\SAIF.Business.Policy.Correspondence\clsEndorsement.vb