﻿---
title: clsManualClassParagraphCollection
summary: API reference for clsManualClassParagraphCollection.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Rating
reference_type: package
---
# clsManualClassParagraphCollection
Enumerates manual class paragraph rows. Its factory methods retrieve these rows through BOF criteria objects, and its helpers expose the keyed or effective-dated filters callers use after load.
## Purpose
- Enumerates manual class paragraph rows.
- Its factory methods retrieve these rows through BOF criteria objects, and its helpers expose the keyed or effective-dated filters callers use after load.
## Context
- Namespace: `SAIF.Business.Policy.Rating`
- Assembly/package: `SAIF.Business.Policy.Rating`
## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| Item | `Public Shadows ReadOnly Property Item(ByVal inParaID As String) As clsManualClassParagraph` | Looks up a paragraph row by its `ParagraphID` value within the in-memory collection. |
| Save | `Public Overrides Function Save() As Boolean` | Applies pending edits before delegating persistence of the collection to the BOF base class. |
| Contains | `Public Overloads Function Contains(ByVal inParagraphNum As String) As Boolean` | Checks whether a paragraph with the specified paragraph ID is present in the active list. |
| ContainsDeleted | `Public Overloads Function ContainsDeleted(ByVal inclsManualClassParagraph As clsManualClassParagraph) As Boolean` | Checks whether a specific paragraph object has been moved into the deleted-items list. |
| ContainsDeleted | `Public Overloads Function ContainsDeleted(ByVal inParagraphNum As String) As Boolean` | Checks whether a paragraph ID is present in the deleted-items list. |
| Remove | `Public Overloads Sub Remove(ByVal inclsManualClassParagraph As clsManualClassParagraph)` | Removes the specified paragraph object from the active collection. |
| Remove | `Public Overloads Sub Remove(ByVal inParagraphNum As String)` | Finds the first active paragraph with the supplied paragraph ID and removes it. |
| NewManualClassParagraphs | `Public Shared Function NewManualClassParagraphs(ByVal inDataportal As IDataPortalInfo) As clsManualClassParagraphCollection` | Creates a new editable collection for manual-class paragraph maintenance. |
| GetManualClassParagraphs | `Public Shared Function GetManualClassParagraphs(ByVal inDataportal As IDataPortalInfo) As clsManualClassParagraphCollection` | Retrieves manual class paragraph rows using the key, date, or period criteria supplied by this overload. |
## Inherited public members
| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| First | `Sub First()` | Moves collection traversal to the first item.† | `SAIF.Framework.Core` — `clsBusinessCollectionBase` |
| Last | `Sub Last()` | Moves collection traversal to the last item.† | `SAIF.Framework.Core` — `clsBusinessCollectionBase` |
| Next | `Sub Next()` | Advances collection traversal to the next item.† | `SAIF.Framework.Core` — `clsBusinessCollectionBase` |
| Previous | `Sub Previous()` | Moves collection traversal to the previous item.† | `SAIF.Framework.Core` — `clsBusinessCollectionBase` |
| Error | `ReadOnly Property Error As String` | Surfaces collection-level broken-rule text through `IDataErrorInfo`.† | `SAIF.Framework.Core` — `clsBusinessCollectionBase` |
## Behavioral notes
- Rows are loaded through the BOF data portal first; the collection then applies any additional in-memory filtering or keyed selection.
## Constraints and usage notes
- Lookups that do not find a matching row return `Nothing` or an empty filtered collection, so callers should handle missing results explicitly.
> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. They describe inherited behavior from the
> indicated origin library and should be verified if the dependency version changes.
## Sources
- `Business\SAIF.Business.Policy.Rating\clsManualClassParagraphCollection.vb`
