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¶
- BillServiceService.GetChargedServicesTotal — see Operations and processes
- BillServiceService.GetServices — see Operations and processes
Business rules¶
Sources¶
Services/SAIF.Services/Claims/Bills/BillServiceService.cs (L77, L159)