Skip to content

DDTool generates invalid field type for SEQNUM (SeqNumFieldType / SeqNumType not found) #979

@artzlite

Description

@artzlite

Describe the bug

When generating FIX message classes using DDTool, the SEQNUM type is mapped to SeqNumFieldType / SeqNumType.
These classes do not exist in the current QuickFIX/n codebase, which results in compile errors like:

QuickFix.Fields SeqNumFieldType SeqNumType not found

Steps to reproduce

  1. Run DDTool with any DataDictionary (e.g. FIX42.xml or a custom FIX42-CUSTOM.xml).
  2. Include the generated files in a project that only references QuickFIXn.Core.
  3. Build → errors appear for missing SeqNumFieldType and SeqNumType.

Expected behavior

SEQNUM should be generated as ULongField with base type ulong (consistent with QuickFIX/n core definitions).

Workaround

In DDField.DeriveTypeInfo, modify case mapping:

case "SEQNUM": 
    csClass = "ULongField";
    baseType = "ulong";
    return;

After regenerating, the code compiles and works as expected.

Environment

QuickFIX/n version: 1.13.1
.NET: 8.0
OS: Windows 11

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions