Skip to content

SQL-056: ClaimQueryProvider.GetClaimFromInjuryClaimCrossReference

This statement is a read operation invoked through ORM (NHibernate LINQ). Executed by ClaimQueryProvider.GetClaimFromInjuryClaimCrossReference.

Classification

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

Parameters

Parameter Direction Type Max length Description
customerClaimNumber Input string N/A Method argument of ClaimQueryProvider.GetClaimFromInjuryClaimCrossReference bound into the ORM expression; NHibernate generates the bind variable at runtime

Tables

Table Access Columns used
LPT_CLAIM_CROSS_REFERENCE SELECT CUSTOMER_CLAIM_NUMBER, POLICY_NUMBER, CLAIM_ID, HISTORICAL_FLAG

LINQ statement

Source: Data/SAIF.Data/Queries/Claims/ClaimQueryProvider.cs:100.

var xRef = Factory.GetRepository<InjuryClaimCrossReference>().Query().SingleOrDefault(x => x.CustomerClaimNumber == customerClaimNumber);

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
SELECT
  LCCR.CUSTOMER_CLAIM_NUMBER,
  LCCR.POLICY_NUMBER,
  LCCR.CLAIM_ID,
  LCCR.HISTORICAL_FLAG
FROM LPT_CLAIM_CROSS_REFERENCE LCCR
WHERE LCCR.CUSTOMER_CLAIM_NUMBER = :customerClaimNumber
-- NHibernate expects at most one row

Translation notes: - The filter is on the identifier column, so at most one row can match. - IsValidClaim(xRef.ClaimId) and the claim load that follows run as separate statements outside this page.

Operations and processes

Sources

  • Data/SAIF.Data/Queries/Claims/ClaimQueryProvider.cs:100