# LogProperties

**Kind:** Class

**Source:** `Pams/Logic/Pams.Business/BindingModels/PM/MRQJobBindingModel.cs` (line 255)

**Part of:** [Pams](subsystem-pams)

`LogProperties` is a binding model that carries offset information and metadata for an object associated with a log result. It groups object identifiers, title, comment, and a `Security.UserLogResultBindingModel` description for use in the PAMS business layer.

## Diagram

```mermaid
graph LR
    LogProperties --> Offset
    LogProperties --> ObjectId
    LogProperties --> ObjectTypeId
    LogProperties --> ObjectTitle
    LogProperties --> ObjectComment
    LogProperties --> ObjectDescription
    ObjectDescription --> UserLogResultBindingModel
```

## Usage

```ts
interface LogProperties {
  Offset: number;
  ObjectId: number;
  ObjectTypeId: number;
  ObjectTitle: string;
  ObjectComment: string;
  ObjectDescription: unknown;
}

function formatLogObject(log: LogProperties): string {
  return `${log.ObjectTitle} (${log.ObjectId}): ${log.ObjectComment}`;
}

async function loadLogProperties(response: Response): Promise<LogProperties> {
  const log = (await response.json()) as LogProperties;

  console.log(formatLogObject(log));
  return log;
}
```

## AI Coding Instructions

- Keep serialized property names aligned with the C# model unless the API contract defines a naming policy.
- Treat `Offset`, `ObjectId`, and `ObjectTypeId` as identifiers or position data; do not infer additional meaning without checking the calling code.
- Preserve `ObjectDescription` as a `Security.UserLogResultBindingModel` when mapping between business models and API responses.
- Handle nullable or empty title, comment, and description values according to the surrounding binding-model conventions.

## Used by

67 references from 67 files. Each is a place in this repository where the symbol is actually used — go read one rather than trusting an example.

### Imported by (67)

- `AccountManagerTarget` — `Pams/Logic/Pams.Business/Entity/BookingTarget/AccountManagerTarget.cs`:7
- `PrincipalBookingTarget` — `Pams/Logic/Pams.Business/BindingModels/BookingTarget/PrincipalBookingTarget.cs`:6
- `MonthlyTarget` — `Pams/Logic/Pams.Business/Entity/BookingTarget/MonthlyTarget.cs`:7
- `ProductTypeTarget` — `Pams/Logic/Pams.Business/Entity/BookingTarget/ProductTypeTarget.cs`:7
- `UserSalesJobMarker` — `Pams/Logic/Pams.Business/Entity/Sales/UserSalesJobMarker.cs`:7
- `AddressBindingModel` — `Pams/Logic/Pams.Business/BindingModels/Common/AddressBindingModel.cs`:5
- `BankAccountBindingModel` — `Pams/Logic/Pams.Business/BindingModels/Common/BankAccountBindingModel.cs`:4
- `BankBindingModel` — `Pams/Logic/Pams.Business/BindingModels/Common/BankBindingModel.cs`:3

…and 59 more.
