AllocationReportAck.h 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. #ifndef FIX50_ALLOCATIONREPORTACK_H
  2. #define FIX50_ALLOCATIONREPORTACK_H
  3. #include "Message.h"
  4. namespace FIX50
  5. {
  6. class AllocationReportAck : public Message
  7. {
  8. public:
  9. AllocationReportAck() : Message(MsgType()) {}
  10. AllocationReportAck(const FIX::Message& m) : Message(m) {}
  11. AllocationReportAck(const Message& m) : Message(m) {}
  12. AllocationReportAck(const AllocationReportAck& m) : Message(m) {}
  13. static FIX::MsgType MsgType() { return FIX::MsgType("AT"); }
  14. AllocationReportAck(
  15. const FIX::AllocReportID& aAllocReportID,
  16. const FIX::AllocID& aAllocID )
  17. : Message(MsgType())
  18. {
  19. set(aAllocReportID);
  20. set(aAllocID);
  21. }
  22. FIELD_SET(*this, FIX::AllocReportID);
  23. FIELD_SET(*this, FIX::AllocID);
  24. FIELD_SET(*this, FIX::ClearingBusinessDate);
  25. FIELD_SET(*this, FIX::AvgPxIndicator);
  26. FIELD_SET(*this, FIX::Quantity);
  27. FIELD_SET(*this, FIX::AllocTransType);
  28. FIELD_SET(*this, FIX::NoPartyIDs);
  29. class NoPartyIDs: public FIX::Group
  30. {
  31. public:
  32. NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
  33. FIELD_SET(*this, FIX::PartyID);
  34. FIELD_SET(*this, FIX::PartyIDSource);
  35. FIELD_SET(*this, FIX::PartyRole);
  36. FIELD_SET(*this, FIX::NoPartySubIDs);
  37. class NoPartySubIDs: public FIX::Group
  38. {
  39. public:
  40. NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
  41. FIELD_SET(*this, FIX::PartySubID);
  42. FIELD_SET(*this, FIX::PartySubIDType);
  43. };
  44. };
  45. FIELD_SET(*this, FIX::SecondaryAllocID);
  46. FIELD_SET(*this, FIX::TradeDate);
  47. FIELD_SET(*this, FIX::TransactTime);
  48. FIELD_SET(*this, FIX::AllocStatus);
  49. FIELD_SET(*this, FIX::AllocRejCode);
  50. FIELD_SET(*this, FIX::AllocReportType);
  51. FIELD_SET(*this, FIX::AllocIntermedReqType);
  52. FIELD_SET(*this, FIX::MatchStatus);
  53. FIELD_SET(*this, FIX::Product);
  54. FIELD_SET(*this, FIX::SecurityType);
  55. FIELD_SET(*this, FIX::Text);
  56. FIELD_SET(*this, FIX::EncodedTextLen);
  57. FIELD_SET(*this, FIX::EncodedText);
  58. FIELD_SET(*this, FIX::NoAllocs);
  59. class NoAllocs: public FIX::Group
  60. {
  61. public:
  62. NoAllocs() : FIX::Group(78,79,FIX::message_order(79,661,366,1047,467,776,539,161,360,361,989,993,992,80,0)) {}
  63. FIELD_SET(*this, FIX::AllocAccount);
  64. FIELD_SET(*this, FIX::AllocAcctIDSource);
  65. FIELD_SET(*this, FIX::AllocPrice);
  66. FIELD_SET(*this, FIX::AllocPositionEffect);
  67. FIELD_SET(*this, FIX::IndividualAllocID);
  68. FIELD_SET(*this, FIX::IndividualAllocRejCode);
  69. FIELD_SET(*this, FIX::NoNestedPartyIDs);
  70. class NoNestedPartyIDs: public FIX::Group
  71. {
  72. public:
  73. NoNestedPartyIDs() : FIX::Group(539,524,FIX::message_order(524,525,538,804,0)) {}
  74. FIELD_SET(*this, FIX::NestedPartyID);
  75. FIELD_SET(*this, FIX::NestedPartyIDSource);
  76. FIELD_SET(*this, FIX::NestedPartyRole);
  77. FIELD_SET(*this, FIX::NoNestedPartySubIDs);
  78. class NoNestedPartySubIDs: public FIX::Group
  79. {
  80. public:
  81. NoNestedPartySubIDs() : FIX::Group(804,545,FIX::message_order(545,805,0)) {}
  82. FIELD_SET(*this, FIX::NestedPartySubID);
  83. FIELD_SET(*this, FIX::NestedPartySubIDType);
  84. };
  85. };
  86. FIELD_SET(*this, FIX::AllocText);
  87. FIELD_SET(*this, FIX::EncodedAllocTextLen);
  88. FIELD_SET(*this, FIX::EncodedAllocText);
  89. FIELD_SET(*this, FIX::SecondaryIndividualAllocID);
  90. FIELD_SET(*this, FIX::AllocCustomerCapacity);
  91. FIELD_SET(*this, FIX::IndividualAllocType);
  92. FIELD_SET(*this, FIX::AllocQty);
  93. };
  94. };
  95. }
  96. #endif