---
title: EbillDocumentQueryProvider
summary: API reference for EbillDocumentQueryProvider.
status: draft
owner: SAIF.Core documentation team
last_reviewed: 2026-09-24
library: SAIF.Data
reference_type: package
---

# EbillDocumentQueryProvider

Query provider exposing 8 data-access operation(s) (`GetBillingParentDocumentsImagedByBatchId`, `GetDocument`, `GetDocumentOverride`, `GetDocumentTypeByCode`, `GetDocumentTypeBySetType`, `GetDocumentsforBill` and 2 more) against 6 distinct table(s); see [sql/index.md](../../sql/index.md) for the full ORM operation catalog.

## Purpose
- Provides read/write access to 6 table(s) via NHibernate `IQueryable<T>`/`GetRepository<T>()` calls documented in [sql/index.md](../../sql/index.md).
- Exposes 8 public query/command method(s) consumed by higher application layers; see [database-tables.md](../../database-tables.md) for the underlying schema.

## Context
- Namespace: `SAIF.Data.Queries.Claims.Ebilling`
- Assembly/package: `SAIF.Data`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| GetDocument | `EbillDocument GetDocument(long documentId)` | Executes an ORM query ([SQL-092](../../sql/SQL-092-ebill-document-query-provider-get-document.md)) against [EBILL_DOCUMENT](../../database-tables.md#ebill_document). |
| GetNonImagedDocumentsforBatch | `IEnumerable<EbillDocument> GetNonImagedDocumentsforBatch(long batchId)` | Executes an ORM query ([SQL-093](../../sql/SQL-093-ebill-document-query-provider-get-non-imaged-documentsfor-batch.md)) against [EBILL_DOCUMENT](../../database-tables.md#ebill_document), [EBILL](../../database-tables.md#ebill), [EBILL_BATCH](../../database-tables.md#ebill_batch). |
| GetNonImagedDocumentsforBill | `IEnumerable<EbillDocument> GetNonImagedDocumentsforBill(long billId)` | Executes an ORM query ([SQL-094](../../sql/SQL-094-ebill-document-query-provider-get-non-imaged-documentsfor-bill.md)) against [EBILL_DOCUMENT](../../database-tables.md#ebill_document), [EBILL](../../database-tables.md#ebill). |
| GetDocumentsforBill | `IEnumerable<EbillDocument> GetDocumentsforBill(long billId)` | Executes an ORM query ([SQL-095](../../sql/SQL-095-ebill-document-query-provider-get-documentsfor-bill.md)) against [EBILL_DOCUMENT](../../database-tables.md#ebill_document), [EBILL](../../database-tables.md#ebill). |
| GetBillingParentDocumentsImagedByBatchId | `IEnumerable<EbillDocument> GetBillingParentDocumentsImagedByBatchId(long batchId)` | Executes an ORM query ([SQL-096](../../sql/SQL-096-ebill-document-query-provider-get-billing-parent-documents-imaged-by-batch-id.md)) against [EBILL_DOCUMENT](../../database-tables.md#ebill_document), [EBILL](../../database-tables.md#ebill), [EBILL_BATCH](../../database-tables.md#ebill_batch). |
| GetDocumentTypeByCode | `EbillDocumentTypeCode GetDocumentTypeByCode(string documentTypeCode)` | Executes an ORM query ([SQL-097](../../sql/SQL-097-ebill-document-query-provider-get-document-type-by-code.md)) against [EBILL_DOCUMENT_TYPE_CODE](../../database-tables.md#ebill_document_type_code). |
| GetDocumentTypeBySetType | `EbillDocumentTypeCode GetDocumentTypeBySetType(EbillSetTypeCode setTypeCode)` | Executes an ORM query ([SQL-098](../../sql/SQL-098-ebill-document-query-provider-get-document-type-by-set-type.md)) against [EBILL_DOCUMENT_TYPE_CODE](../../database-tables.md#ebill_document_type_code), [EBILL_SET_TYPE_CODE](../../database-tables.md#ebill_set_type_code). |
| GetDocumentOverride | `EbillDocumentOverride GetDocumentOverride(string ebillDocumentTypeCode, string providerTypeCode)` | Executes an ORM query ([SQL-099](../../sql/SQL-099-ebill-document-query-provider-get-document-override.md)) against [EBILL_DOCUMENT_OVERRIDE](../../database-tables.md#ebill_document_override). |
| EbillDocumentQueryProvider(IRepositoryFactory factory) | `EbillDocumentQueryProvider(IRepositoryFactory factory)` | Initializes a new instance, wiring the repository factory used by this provider's query methods.* |

## Behavioral notes
- Query methods build LINQ expressions over `IQueryable<T>` obtained via `Factory.GetRepository<T>()` and execute them against the underlying NHibernate session.*

## Constraints and usage notes
- Instances are constructed with an `IRepositoryFactory` and are expected to be resolved through dependency injection rather than instantiated directly.*

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `Data/SAIF.Data/Queries/Claims/Ebilling/EbillDocumentQueryProvider.cs`
