---
title: clsGenerateBill
summary: API reference for clsGenerateBill.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-28
library: SAIF.Business.Claim.EAIP
reference_type: package
---

# clsGenerateBill

`clsGenerateBill` orchestrates EAIP bill generation for a period, using the selected period, admin fee, worker address, and bill-processing operations.*

## Purpose

- Builds bill output for an EAIP period from the current criteria and period context.*
- Coordinates bill-processing steps such as generating bill data and cover-letter content.*

## Context

- Namespace: `Billing`
- Assembly/package: `SAIF.Business.Claim.EAIP`

## Public members

| Member | Signature | Purpose |
| --- | --- | --- |
| `MyCriteria` | `Public ReadOnly Property MyCriteria() As Criteria` | Returns my criteria. |
| `EAIPPeriod` | `Public ReadOnly Property EAIPPeriod() As Period.clsPeriod` | Returns e a i p period. |
| `AdminFee` | `Public ReadOnly Property AdminFee() As Decimal` | Returns admin fee. |
| `WorkerAddress` | `Public ReadOnly Property WorkerAddress() As clsAddress` | Returns worker address. |
| `ProcessBills` | `Public Function ProcessBills(inPeriodId As Integer, ByRef inReportNode As clsXMLNodeBuilder,` | Exposes the public member. |
| `GenerateBill` | `Public Function GenerateBill(inPeriod As clsPeriod, Optional ByVal billAmended As Boolean = False) As String` | Exposes the public member. |
| `GenCoverLetter` | `Public Sub GenCoverLetter(ByVal billType As String)` | Exposes the public member. |
| `NewBillGenerator` | `Public Shared Function NewBillGenerator(ByVal inDataportal As IDataPortalInfo) As clsGenerateBill` | Executes the `NewBillGenerator` operation. |

## Inherited public members

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| `MyGuid` | `Public ReadOnly Property MyGuid() As String` | Returns the object's generated GUID identifier.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsNew` | `Public ReadOnly Property IsNew() As Boolean` | Indicates whether the object represents unsaved data.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `IsDeleted` | `Public ReadOnly Property IsDeleted() As Boolean` | Indicates whether the object has been marked for deletion.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SetValueOnChange` | `Public Function SetValueOnChange(Of T)(ByRef inFieldValue As T, ByVal inSetValue As T, Optional ByVal inMarkDirty As Boolean = True) As Boolean` | Assigns a new field value only when it differs and optionally marks the object dirty.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Rules` | `Public ReadOnly Property Rules() As clsRulesManager` | Exposes the BOF rules manager for validation and messages.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `Save` | `Public Overridable Function Save() As Boolean` | Persists the object through the BOF save pipeline.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `SaveChild` | `Public Overridable Function SaveChild() As Boolean` | Persists the object as a BOF child object.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |
| `ToXml` | `Public Function ToXml() As String` | Returns the object's XML representation using the configured default tag name.* | `Legacy\BusinessObjectFramework` — `clsBusinessBase` |

## Behavioral notes

- This type is documented from its source declaration.
- The type participates in the `clsBusinessBase` inheritance path used by `SAIF.Business.Claim.EAIP`.

## Constraints and usage notes

- Consumers should rely on the public members and BOF lifecycle patterns visible in the source file.

> **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

- `Business\SAIF.Business.Claim.EAIP\Billing\clsGenerateBill.vb`
- `Legacy\BusinessObjectFramework\clsBusinessBase.vb`
