Skip to content

SQL-120: Retrieve CbpBillService

This ORM statement performs a read operation on CbpBillService via IUnitOfWork.GetRepository<T>(), executed from Services/SAIF.Services/Claims/Bills/BillServiceService.cs (L77, L159).

Classification

Field Value
SQL ID SQL-120
Operation type Read
Execution method ORM (NHibernate LINQ)
Database Oracle
Schema [unqualified]**
Command type N/A (ORM-generated)
Business object CbpBillService
Criteria property N/A — ORM
Lifecycle method GetChargedServicesTotal, GetServices

Parameters

Parameter Direction Type Max length Description
billId Input ** N/A x.Bill.Id == billId → column join via Bill (BILL_ID) → Bill.Id

Tables

Table Access Columns used
CBP_BILL_SERVICE SELECT BILL_ID, BILL_SERVICE_SEQ_NUM, UPDATE_NUM, BILL_SERVICE_DATE, BILL_SERVICE_END_DATE, PROVIDER_SERVICE_CODE, BILL_SERVICE_TYPE_CODE, SERVICE_MODIFIER_CODE1, SERVICE_MODIFIER_CODE2, SERVICE_MODIFIER_CODE3, SERVICE_MODIFIER_CODE4, SERVICE_QUANTITY, CHARGE_AMT, MSRP_INVOICE_AMT, TOOTH_NUM, SERVICE_LOCATION_CODE, DAYS_SUPPLY_QTY, UPDATE_USER, UPDATE_DATE, DIAGNOSIS_POINTER_CODE1, DIAGNOSIS_POINTER_CODE2, DIAGNOSIS_POINTER_CODE3, DIAGNOSIS_POINTER_CODE4, SECONDARY_PROV_SERVICE_CODE, SECONDARY_BILL_SERV_TYPE_CODE, PRESCRIPTION_WRITTEN_DATE, PRESCRIBING_PROVIDER_ID, COMPOUND_DRUG_FLAG, PRESCRIBER_LAST_NAME, PRESCRIBER_FIRST_NAME, TAX_CHARGED_AMT, PRESCRIBING_PROVIDER_CODE, DISPENSE_AS_WRITTEN_CODE, PRESC_PROVIDER_LOC_SEQ_NUM, SERV_PROVIDER_LOC_SEQ_NUM, MSRP_INVOICE_CODE

LINQ statement

Source: Services/SAIF.Services/Claims/Bills/BillServiceService.cs:77

// Services/SAIF.Services/Claims/Bills/BillServiceService.cs:77
            var dataServices = unitOfWork.GetRepository<CbpBillService>().Query().Where(x => x.Bill.Id == billId).ToList();

// Services/SAIF.Services/Claims/Bills/BillServiceService.cs:159
            return unitOfWork.GetRepository<CbpBillService>().Query().Where(x => x.Bill.Id == billId).Sum(x => x.ChargeAmount);

Sample SQL

Inferred SQL: This SQL was inferred from the LINQ statement above and the NHibernate mappings. It is not concrete SQL from source code; NHibernate generates the executed statement at runtime, so aliases, column order, join syntax, and bind-parameter names may differ.

-- Inferred from LINQ (NHibernate mapping translation); not concrete SQL
-- Services/SAIF.Services/Claims/Bills/BillServiceService.cs:77
SELECT
  CBS.BILL_ID,
  CBS.BILL_SERVICE_SEQ_NUM,
  CBS.UPDATE_NUM,
  CBS.BILL_SERVICE_DATE,
  CBS.BILL_SERVICE_END_DATE,
  CBS.PROVIDER_SERVICE_CODE,
  CBS.BILL_SERVICE_TYPE_CODE,
  CBS.SERVICE_MODIFIER_CODE1,
  CBS.SERVICE_MODIFIER_CODE2,
  CBS.SERVICE_MODIFIER_CODE3,
  CBS.SERVICE_MODIFIER_CODE4,
  CBS.SERVICE_QUANTITY,
  CBS.CHARGE_AMT,
  CBS.MSRP_INVOICE_AMT,
  CBS.TOOTH_NUM,
  CBS.SERVICE_LOCATION_CODE,
  CBS.DAYS_SUPPLY_QTY,
  CBS.UPDATE_USER,
  CBS.UPDATE_DATE,
  CBS.DIAGNOSIS_POINTER_CODE1,
  CBS.DIAGNOSIS_POINTER_CODE2,
  CBS.DIAGNOSIS_POINTER_CODE3,
  CBS.DIAGNOSIS_POINTER_CODE4,
  CBS.SECONDARY_PROV_SERVICE_CODE,
  CBS.SECONDARY_BILL_SERV_TYPE_CODE,
  CBS.PRESCRIPTION_WRITTEN_DATE,
  CBS.PRESCRIBING_PROVIDER_ID,
  CBS.COMPOUND_DRUG_FLAG,
  CBS.PRESCRIBER_LAST_NAME,
  CBS.PRESCRIBER_FIRST_NAME,
  CBS.TAX_CHARGED_AMT,
  CBS.PRESCRIBING_PROVIDER_CODE,
  CBS.DISPENSE_AS_WRITTEN_CODE,
  CBS.PRESC_PROVIDER_LOC_SEQ_NUM,
  CBS.SERV_PROVIDER_LOC_SEQ_NUM,
  CBS.MSRP_INVOICE_CODE
FROM CBP_BILL_SERVICE CBS
WHERE CBS.BILL_ID = :billId

-- Services/SAIF.Services/Claims/Bills/BillServiceService.cs:159
SELECT SUM(CBS.CHARGE_AMT)
FROM CBP_BILL_SERVICE CBS
WHERE CBS.BILL_ID = :billId

Translation notes: - BILL_ID is both a key-reference part and a References(...).Not.Insert() column -> selected once.

Operations and processes

Business rules

Sources

  • Services/SAIF.Services/Claims/Bills/BillServiceService.cs (L77, L159)