Skip to content

WorkOrder date properties use Dtm prefix but Fiix API expects dtt prefix #4

Closed

Description

@Screaminlean

Describe the bug
The WorkOrder model uses Dtm-prefixed properties for date fields (e.g. DtmDateCreated, DtmSuggestedCompletionDate). However, FiixPropertyNamingPolicy serialises these to dtmDateCreated / dtmSuggestedCompletionDate, which the Fiix API server does not recognise — returning an error stating the column does not exist or is not accessible.
The live API expects the dtt prefix for these fields (e.g. dttDateCreated, dttSuggestedCompletionDate), consistent with the Hungarian notation used elsewhere in the API.

To Reproduce
Steps to reproduce the behavior:

var request = client.PrepareFind<WorkOrder>();
request.Fields = "id, strCode, dtmDateCreated, dtmSuggestedCompletionDate";
var response = await client.FindAsync(request);
// response.Error is non-null: column not found / not accessible

Removing the date fields from the Fields string returns results successfully.
Expected behavior
DtmDateCreated serialises to dttDateCreated and the API returns the date values correctly, consistent with the Fiix API field naming convention.

Environment

  • FiixCmms.Client version: 1.0.1-rc3
  • .NET version: .NET 10
  • Verified against live Fiix sandbox

Possible Fix
Either:

  1. Rename the WorkOrder date properties to use the Dtt prefix (DttDateCreated, DttSuggestedCompletionDate, etc.) to match what FiixPropertyNamingPolicy will serialise to, or

  2. Add a special-case mapping in FiixPropertyNamingPolicy to convert the Dtm prefix to dtt on serialisation.

Activity

  1. self-assigned this
    on Aug 5, 2026
  2. Screaminlean commented on Aug 5, 2026

    @Screaminlean
    OwnerAuthor

    Fixed in 1.0.1-rc4 (merged via #5).
    All DateTime? model properties have been renamed from the Dtm prefix to Dtt to match the Fiix Java API's Hungarian notation exactly (e.g. DtmDateCreated → DttDateCreated). This means FiixPropertyNamingPolicy now serialises them correctly to dttDateCreated without any special-case mapping required.
    The change affects all models that contain date fields (WorkOrder, WorkOrderTask, WorkOrderTool, AssetActivityLog, Move, MoveBack, and others). As this is a pre-release (rc4), the breaking rename is considered acceptable before 1.0.1 stable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions