Skip to content

Load DCBS cost-charge factors

Loads all DCBS cost-to-charge factors for a provider location using the direct-query, self-loading list pattern (bypassing the criteria/portal pipeline).

Field Value
Operation ID OP-10
Trigger clsProviderLocation.DCBSCostCharges navigation
Inputs IDataPortalInfo, provider-location ID
Outputs clsDCBSCostChargeList
Primary components clsDCBSCostChargeList..ctor(dpi, providerLocationID)
Entry point SAIF.Business.View.Provider/clsDCBSCostCharge.vb:90

Steps

  1. Build SQL over PROVIDER_DCBS_COST_CHARGE with a StringBuilder.
  2. Bind :ProviderLocationID and execute via SqlHelper.ResultSetQuery (SQL-DCBS-01).
  3. Materialise each row into a clsDCBSCostCharge and add it to the list.
  4. Each factor's effective window is evaluated with IsInEffect(date) / IsActive / IsExpired, applying the uniform date-window rule BR-DATE-001.

Process flow

The following diagram visualizes this operation's control flow.

flowchart TD
    Start([Caller request]) --> S1[Build SQL via StringBuilder]
    S1 --> S2[Bind ProviderLocationID]
    S2 --> S3["Execute via<br>SqlHelper.ResultSetQuery"]
    S3 --> S4["Materialize each row into<br>clsDCBSCostCharge"]
    S4 --> S5{"Effective-date check<br>requested?"}
    S5 -->|Yes| S6["IsInEffect / IsActive /<br>IsExpired"]
    S5 -->|No| EndOk(["clsDCBSCostChargeList<br>returned"])
    S6 --> EndOk

Failure and edge-case behavior

  • No matching rows: an empty clsDCBSCostChargeList is returned.
  • This is a direct-query construction path (no IBusinessCriteria/portal involvement), so no BOF IsValid rules apply to the list itself.

Sources

  • SAIF.Business.View.Provider/clsDCBSCostCharge.vb