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
- Run DDTool with any DataDictionary (e.g. FIX42.xml or a custom FIX42-CUSTOM.xml).
- Include the generated files in a project that only references
QuickFIXn.Core.
- 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