clsLegalPersonManager¶
clsLegalPersonManager maintains legal persons and other-firm reference records: inserting/deleting persons, person types, and firms, and preventing deletion of a person currently referenced elsewhere. Like clsHearingLocationManager, it caches code-list lookups to reduce Oracle round trips for largely static reference data. It inherits LegalManagerBase (this library) → ClaimAppManager (SAIF.Application.Claim).
Purpose¶
- Maintain legal person and other-firm reference records: insert/delete person, person type, and firm.
- Enforce that a legal person cannot be deleted while still in use, delegating the in-use check to the business layer (Business rules).
- Cache legal-person/firm code-list lookups in-process to reduce Oracle round trips.
Context¶
- Namespace:
SAIF.Application.Claim.Legal - Assembly/package:
SAIF.Application.Claim.Legal.dll(embedded library, referenced by theLegalweb front end)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
New(inDatabase, inSecurityPrincipal) |
Public Sub New(inDatabase As String, inSecurityPrincipal As clsSecurityPrincipal) |
Constructs the manager for the given database context and authenticated principal, calling into LegalManagerBase.New. |
LegalPersonCol |
Public ReadOnly Property LegalPersonCol As clsLegalPersonCollection* |
Exposes the legal-person collection backing the maintenance grid. |
InsertPerson() |
Public Sub InsertPerson()* |
Adds a new legal-person record to LegalPersonCol for subsequent editing and save. |
DeletePerson() |
Public Sub DeletePerson() |
Deletes the selected legal person, blocking the operation with "Error: This person is in use, and cannot be deleted." when clsLegalPerson.CanDeleteLegalPerson reports the person is still in use (Business rules). |
OtherFirmCol |
Public ReadOnly Property OtherFirmCol As clsOtherFirmCollection* |
Exposes the other-firm collection backing the firm maintenance grid. |
Save() |
Public Overrides Function Save() As Boolean* |
Persists pending legal-person/firm inserts/edits via the inherited clsBusinessBase.Save() dispatch path. |
Behavioral notes¶
DeletePerson()delegates the in-use determination toclsLegalPerson.CanDeleteLegalPersonin the referencedSAIF.Business.Claim.Legallibrary rather than checking usage locally (Business rules).- Code-list lookups cached by this manager reduce repeated Oracle round trips for largely static person/firm reference data*.
Constraints and usage notes¶
- Deletion of a person or firm still referenced by case data is blocked at the manager layer using a business-layer-reported in-use flag, not a database foreign-key error surfaced to the user*.
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
SAIF.Application.Claim.Legal\clsLegalPersonManager.vb