Skip to content

Retrieve producers

This operation retrieves producer rows from AGENT by key or by agency scope and exposes the resulting objects for identity and activity checks.

Field Value
Operation ID OP-009
Trigger A caller invokes clsProducer.GetProducer or clsProducerCollection.GetProducerCollection.
Inputs IDataPortalInfo, agent number and/or agency sequence number
Outputs clsProducer or clsProducerCollection
Primary components clsProducer, clsProducerCollection, nested Criteria classes
Entry point Business\SAIF.Business.Policy.Agency\clsProducer.vb, Business\SAIF.Business.Policy.Agency\clsProducerCollection.vb

Steps

  1. Build either a single-object criteria keyed by agent number or a collection criteria with an optional agency sequence number.
  2. Pass the criteria through the BOF retrieve lifecycle (BR-024).
  3. For single-object retrieval, execute SQL-007 against AGENT.
  4. For collection retrieval, execute SQL-009, binding :AgencySeqNum only when the collection is scoped to one agency.
  5. Hydrate one producer or many producers from the returned reader; missing keyed rows remain default-initialized (BR-001).
  6. Expose the loaded rows for active-date checks and agency-self detection (BR-008, BR-023, BR-025).

Process flow

The following diagram visualizes the producer retrieve paths.

flowchart TD
  Start([Producer request]) --> Type{Single or collection?}
  Type -->|Single| One[Run SQL-007]
  Type -->|Collection| Many[Run SQL-009]
  One --> FillOne[Fill clsProducer]
  Many --> FillMany[Load producer collection]
  FillOne --> End([Producers returned])
  FillMany --> End

Failure and edge-case behavior

  • Missing keyed rows return a default-initialized producer object.
  • The unscoped collection path reads all producer rows.

Sources

  • Business\SAIF.Business.Policy.Agency\clsProducer.vb
  • Business\SAIF.Business.Policy.Agency\clsProducerCollection.vb