1 #ifndef FIX50SP2_COLLATERALREPORT_H
2 #define FIX50SP2_COLLATERALREPORT_H
3 
4 #include "Message.h"
5 
6 namespace FIX50SP2
7 {
8 
9   class CollateralReport : public Message
10   {
11   public:
CollateralReport()12     CollateralReport() : Message(MsgType()) {}
CollateralReport(const FIX::Message & m)13     CollateralReport(const FIX::Message& m) : Message(m) {}
CollateralReport(const Message & m)14     CollateralReport(const Message& m) : Message(m) {}
CollateralReport(const CollateralReport & m)15     CollateralReport(const CollateralReport& m) : Message(m) {}
MsgType()16     static FIX::MsgType MsgType() { return FIX::MsgType("BA"); }
17 
CollateralReport(const FIX::CollRptID & aCollRptID,const FIX::CollStatus & aCollStatus)18     CollateralReport(
19       const FIX::CollRptID& aCollRptID,
20       const FIX::CollStatus& aCollStatus )
21     : Message(MsgType())
22     {
23       set(aCollRptID);
24       set(aCollStatus);
25     }
26 
27     FIELD_SET(*this, FIX::CollRptID);
28     FIELD_SET(*this, FIX::CollInquiryID);
29     FIELD_SET(*this, FIX::TransactTime);
30     FIELD_SET(*this, FIX::CollApplType);
31     FIELD_SET(*this, FIX::FinancialStatus);
32     FIELD_SET(*this, FIX::CollStatus);
33     FIELD_SET(*this, FIX::TotNumReports);
34     FIELD_SET(*this, FIX::LastRptRequested);
35     FIELD_SET(*this, FIX::NoPartyIDs);
36     class NoPartyIDs: public FIX::Group
37     {
38     public:
NoPartyIDs()39     NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
40       FIELD_SET(*this, FIX::PartyID);
41       FIELD_SET(*this, FIX::PartyIDSource);
42       FIELD_SET(*this, FIX::PartyRole);
43       FIELD_SET(*this, FIX::NoPartySubIDs);
44       class NoPartySubIDs: public FIX::Group
45       {
46       public:
NoPartySubIDs()47       NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
48         FIELD_SET(*this, FIX::PartySubID);
49         FIELD_SET(*this, FIX::PartySubIDType);
50       };
51     };
52     FIELD_SET(*this, FIX::Account);
53     FIELD_SET(*this, FIX::AccountType);
54     FIELD_SET(*this, FIX::ClOrdID);
55     FIELD_SET(*this, FIX::OrderID);
56     FIELD_SET(*this, FIX::SecondaryOrderID);
57     FIELD_SET(*this, FIX::SecondaryClOrdID);
58     FIELD_SET(*this, FIX::NoExecs);
59     class NoExecs: public FIX::Group
60     {
61     public:
NoExecs()62     NoExecs() : FIX::Group(124,17,FIX::message_order(17,0)) {}
63       FIELD_SET(*this, FIX::ExecID);
64     };
65     FIELD_SET(*this, FIX::NoTrades);
66     class NoTrades: public FIX::Group
67     {
68     public:
NoTrades()69     NoTrades() : FIX::Group(897,571,FIX::message_order(571,818,0)) {}
70       FIELD_SET(*this, FIX::TradeReportID);
71       FIELD_SET(*this, FIX::SecondaryTradeReportID);
72     };
73     FIELD_SET(*this, FIX::Symbol);
74     FIELD_SET(*this, FIX::SymbolSfx);
75     FIELD_SET(*this, FIX::SecurityID);
76     FIELD_SET(*this, FIX::SecurityIDSource);
77     FIELD_SET(*this, FIX::NoSecurityAltID);
78     class NoSecurityAltID: public FIX::Group
79     {
80     public:
NoSecurityAltID()81     NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {}
82       FIELD_SET(*this, FIX::SecurityAltID);
83       FIELD_SET(*this, FIX::SecurityAltIDSource);
84     };
85     FIELD_SET(*this, FIX::Product);
86     FIELD_SET(*this, FIX::ProductComplex);
87     FIELD_SET(*this, FIX::SecurityGroup);
88     FIELD_SET(*this, FIX::CFICode);
89     FIELD_SET(*this, FIX::SecurityType);
90     FIELD_SET(*this, FIX::SecuritySubType);
91     FIELD_SET(*this, FIX::MaturityMonthYear);
92     FIELD_SET(*this, FIX::MaturityDate);
93     FIELD_SET(*this, FIX::MaturityTime);
94     FIELD_SET(*this, FIX::SettleOnOpenFlag);
95     FIELD_SET(*this, FIX::InstrmtAssignmentMethod);
96     FIELD_SET(*this, FIX::SecurityStatus);
97     FIELD_SET(*this, FIX::CouponPaymentDate);
98     FIELD_SET(*this, FIX::IssueDate);
99     FIELD_SET(*this, FIX::RepoCollateralSecurityType);
100     FIELD_SET(*this, FIX::RepurchaseTerm);
101     FIELD_SET(*this, FIX::RepurchaseRate);
102     FIELD_SET(*this, FIX::Factor);
103     FIELD_SET(*this, FIX::CreditRating);
104     FIELD_SET(*this, FIX::InstrRegistry);
105     FIELD_SET(*this, FIX::CountryOfIssue);
106     FIELD_SET(*this, FIX::StateOrProvinceOfIssue);
107     FIELD_SET(*this, FIX::LocaleOfIssue);
108     FIELD_SET(*this, FIX::RedemptionDate);
109     FIELD_SET(*this, FIX::StrikePrice);
110     FIELD_SET(*this, FIX::StrikeCurrency);
111     FIELD_SET(*this, FIX::StrikeMultiplier);
112     FIELD_SET(*this, FIX::StrikeValue);
113     FIELD_SET(*this, FIX::OptAttribute);
114     FIELD_SET(*this, FIX::ContractMultiplier);
115     FIELD_SET(*this, FIX::MinPriceIncrement);
116     FIELD_SET(*this, FIX::MinPriceIncrementAmount);
117     FIELD_SET(*this, FIX::UnitOfMeasure);
118     FIELD_SET(*this, FIX::UnitOfMeasureQty);
119     FIELD_SET(*this, FIX::PriceUnitOfMeasure);
120     FIELD_SET(*this, FIX::PriceUnitOfMeasureQty);
121     FIELD_SET(*this, FIX::SettlMethod);
122     FIELD_SET(*this, FIX::ExerciseStyle);
123     FIELD_SET(*this, FIX::OptPayoutAmount);
124     FIELD_SET(*this, FIX::PriceQuoteMethod);
125     FIELD_SET(*this, FIX::ValuationMethod);
126     FIELD_SET(*this, FIX::ListMethod);
127     FIELD_SET(*this, FIX::CapPrice);
128     FIELD_SET(*this, FIX::FloorPrice);
129     FIELD_SET(*this, FIX::PutOrCall);
130     FIELD_SET(*this, FIX::FlexibleIndicator);
131     FIELD_SET(*this, FIX::FlexProductEligibilityIndicator);
132     FIELD_SET(*this, FIX::TimeUnit);
133     FIELD_SET(*this, FIX::CouponRate);
134     FIELD_SET(*this, FIX::SecurityExchange);
135     FIELD_SET(*this, FIX::PositionLimit);
136     FIELD_SET(*this, FIX::NTPositionLimit);
137     FIELD_SET(*this, FIX::Issuer);
138     FIELD_SET(*this, FIX::EncodedIssuerLen);
139     FIELD_SET(*this, FIX::EncodedIssuer);
140     FIELD_SET(*this, FIX::SecurityDesc);
141     FIELD_SET(*this, FIX::EncodedSecurityDescLen);
142     FIELD_SET(*this, FIX::EncodedSecurityDesc);
143     FIELD_SET(*this, FIX::SecurityXMLLen);
144     FIELD_SET(*this, FIX::SecurityXML);
145     FIELD_SET(*this, FIX::SecurityXMLSchema);
146     FIELD_SET(*this, FIX::Pool);
147     FIELD_SET(*this, FIX::ContractSettlMonth);
148     FIELD_SET(*this, FIX::CPProgram);
149     FIELD_SET(*this, FIX::CPRegType);
150     FIELD_SET(*this, FIX::NoEvents);
151     class NoEvents: public FIX::Group
152     {
153     public:
NoEvents()154     NoEvents() : FIX::Group(864,865,FIX::message_order(865,866,1145,867,868,0)) {}
155       FIELD_SET(*this, FIX::EventType);
156       FIELD_SET(*this, FIX::EventDate);
157       FIELD_SET(*this, FIX::EventTime);
158       FIELD_SET(*this, FIX::EventPx);
159       FIELD_SET(*this, FIX::EventText);
160     };
161     FIELD_SET(*this, FIX::DatedDate);
162     FIELD_SET(*this, FIX::InterestAccrualDate);
163     FIELD_SET(*this, FIX::NoInstrumentParties);
164     class NoInstrumentParties: public FIX::Group
165     {
166     public:
NoInstrumentParties()167     NoInstrumentParties() : FIX::Group(1018,1019,FIX::message_order(1019,1050,1051,1052,0)) {}
168       FIELD_SET(*this, FIX::InstrumentPartyID);
169       FIELD_SET(*this, FIX::InstrumentPartyIDSource);
170       FIELD_SET(*this, FIX::InstrumentPartyRole);
171       FIELD_SET(*this, FIX::NoInstrumentPartySubIDs);
172       class NoInstrumentPartySubIDs: public FIX::Group
173       {
174       public:
NoInstrumentPartySubIDs()175       NoInstrumentPartySubIDs() : FIX::Group(1052,1053,FIX::message_order(1053,1054,0)) {}
176         FIELD_SET(*this, FIX::InstrumentPartySubID);
177         FIELD_SET(*this, FIX::InstrumentPartySubIDType);
178       };
179     };
180     FIELD_SET(*this, FIX::ContractMultiplierUnit);
181     FIELD_SET(*this, FIX::FlowScheduleType);
182     FIELD_SET(*this, FIX::RestructuringType);
183     FIELD_SET(*this, FIX::Seniority);
184     FIELD_SET(*this, FIX::NotionalPercentageOutstanding);
185     FIELD_SET(*this, FIX::OriginalNotionalPercentageOutstanding);
186     FIELD_SET(*this, FIX::AttachmentPoint);
187     FIELD_SET(*this, FIX::DetachmentPoint);
188     FIELD_SET(*this, FIX::StrikePriceDeterminationMethod);
189     FIELD_SET(*this, FIX::StrikePriceBoundaryMethod);
190     FIELD_SET(*this, FIX::StrikePriceBoundaryPrecision);
191     FIELD_SET(*this, FIX::UnderlyingPriceDeterminationMethod);
192     FIELD_SET(*this, FIX::OptPayoutType);
193     FIELD_SET(*this, FIX::NoComplexEvents);
194     class NoComplexEvents: public FIX::Group
195     {
196     public:
NoComplexEvents()197     NoComplexEvents() : FIX::Group(1483,1484,FIX::message_order(1484,1485,1486,1487,1488,1489,1490,1491,0)) {}
198       FIELD_SET(*this, FIX::ComplexEventType);
199       FIELD_SET(*this, FIX::ComplexOptPayoutAmount);
200       FIELD_SET(*this, FIX::ComplexEventPrice);
201       FIELD_SET(*this, FIX::ComplexEventPriceBoundaryMethod);
202       FIELD_SET(*this, FIX::ComplexEventPriceBoundaryPrecision);
203       FIELD_SET(*this, FIX::ComplexEventPriceTimeType);
204       FIELD_SET(*this, FIX::ComplexEventCondition);
205       FIELD_SET(*this, FIX::NoComplexEventDates);
206       class NoComplexEventDates: public FIX::Group
207       {
208       public:
NoComplexEventDates()209       NoComplexEventDates() : FIX::Group(1491,1492,FIX::message_order(1492,1493,1494,0)) {}
210         FIELD_SET(*this, FIX::ComplexEventStartDate);
211         FIELD_SET(*this, FIX::ComplexEventEndDate);
212         FIELD_SET(*this, FIX::NoComplexEventTimes);
213         class NoComplexEventTimes: public FIX::Group
214         {
215         public:
NoComplexEventTimes()216         NoComplexEventTimes() : FIX::Group(1494,1495,FIX::message_order(1495,1496,0)) {}
217           FIELD_SET(*this, FIX::ComplexEventStartTime);
218           FIELD_SET(*this, FIX::ComplexEventEndTime);
219         };
220       };
221     };
222     FIELD_SET(*this, FIX::AgreementDesc);
223     FIELD_SET(*this, FIX::AgreementID);
224     FIELD_SET(*this, FIX::AgreementDate);
225     FIELD_SET(*this, FIX::AgreementCurrency);
226     FIELD_SET(*this, FIX::TerminationType);
227     FIELD_SET(*this, FIX::StartDate);
228     FIELD_SET(*this, FIX::EndDate);
229     FIELD_SET(*this, FIX::DeliveryType);
230     FIELD_SET(*this, FIX::MarginRatio);
231     FIELD_SET(*this, FIX::SettlDate);
232     FIELD_SET(*this, FIX::Quantity);
233     FIELD_SET(*this, FIX::QtyType);
234     FIELD_SET(*this, FIX::Currency);
235     FIELD_SET(*this, FIX::NoLegs);
236     class NoLegs: public FIX::Group
237     {
238     public:
NoLegs()239     NoLegs() : FIX::Group(555,600,FIX::message_order(600,601,602,603,607,608,609,764,610,611,1212,248,249,250,251,252,253,257,599,596,597,598,254,612,942,613,614,999,1224,1421,1422,1001,1420,615,616,617,618,619,620,621,622,623,624,556,740,739,955,956,1358,1017,1436,1440,0)) {}
240       FIELD_SET(*this, FIX::LegSymbol);
241       FIELD_SET(*this, FIX::LegSymbolSfx);
242       FIELD_SET(*this, FIX::LegSecurityID);
243       FIELD_SET(*this, FIX::LegSecurityIDSource);
244       FIELD_SET(*this, FIX::NoLegSecurityAltID);
245       class NoLegSecurityAltID: public FIX::Group
246       {
247       public:
NoLegSecurityAltID()248       NoLegSecurityAltID() : FIX::Group(604,605,FIX::message_order(605,606,0)) {}
249         FIELD_SET(*this, FIX::LegSecurityAltID);
250         FIELD_SET(*this, FIX::LegSecurityAltIDSource);
251       };
252       FIELD_SET(*this, FIX::LegProduct);
253       FIELD_SET(*this, FIX::LegCFICode);
254       FIELD_SET(*this, FIX::LegSecurityType);
255       FIELD_SET(*this, FIX::LegSecuritySubType);
256       FIELD_SET(*this, FIX::LegMaturityMonthYear);
257       FIELD_SET(*this, FIX::LegMaturityDate);
258       FIELD_SET(*this, FIX::LegMaturityTime);
259       FIELD_SET(*this, FIX::LegCouponPaymentDate);
260       FIELD_SET(*this, FIX::LegIssueDate);
261       FIELD_SET(*this, FIX::LegRepoCollateralSecurityType);
262       FIELD_SET(*this, FIX::LegRepurchaseTerm);
263       FIELD_SET(*this, FIX::LegRepurchaseRate);
264       FIELD_SET(*this, FIX::LegFactor);
265       FIELD_SET(*this, FIX::LegCreditRating);
266       FIELD_SET(*this, FIX::LegInstrRegistry);
267       FIELD_SET(*this, FIX::LegCountryOfIssue);
268       FIELD_SET(*this, FIX::LegStateOrProvinceOfIssue);
269       FIELD_SET(*this, FIX::LegLocaleOfIssue);
270       FIELD_SET(*this, FIX::LegRedemptionDate);
271       FIELD_SET(*this, FIX::LegStrikePrice);
272       FIELD_SET(*this, FIX::LegStrikeCurrency);
273       FIELD_SET(*this, FIX::LegOptAttribute);
274       FIELD_SET(*this, FIX::LegContractMultiplier);
275       FIELD_SET(*this, FIX::LegUnitOfMeasure);
276       FIELD_SET(*this, FIX::LegUnitOfMeasureQty);
277       FIELD_SET(*this, FIX::LegPriceUnitOfMeasure);
278       FIELD_SET(*this, FIX::LegPriceUnitOfMeasureQty);
279       FIELD_SET(*this, FIX::LegTimeUnit);
280       FIELD_SET(*this, FIX::LegExerciseStyle);
281       FIELD_SET(*this, FIX::LegCouponRate);
282       FIELD_SET(*this, FIX::LegSecurityExchange);
283       FIELD_SET(*this, FIX::LegIssuer);
284       FIELD_SET(*this, FIX::EncodedLegIssuerLen);
285       FIELD_SET(*this, FIX::EncodedLegIssuer);
286       FIELD_SET(*this, FIX::LegSecurityDesc);
287       FIELD_SET(*this, FIX::EncodedLegSecurityDescLen);
288       FIELD_SET(*this, FIX::EncodedLegSecurityDesc);
289       FIELD_SET(*this, FIX::LegRatioQty);
290       FIELD_SET(*this, FIX::LegSide);
291       FIELD_SET(*this, FIX::LegCurrency);
292       FIELD_SET(*this, FIX::LegPool);
293       FIELD_SET(*this, FIX::LegDatedDate);
294       FIELD_SET(*this, FIX::LegContractSettlMonth);
295       FIELD_SET(*this, FIX::LegInterestAccrualDate);
296       FIELD_SET(*this, FIX::LegPutOrCall);
297       FIELD_SET(*this, FIX::LegOptionRatio);
298       FIELD_SET(*this, FIX::LegContractMultiplierUnit);
299       FIELD_SET(*this, FIX::LegFlowScheduleType);
300     };
301     FIELD_SET(*this, FIX::NoUnderlyings);
302     class NoUnderlyings: public FIX::Group
303     {
304     public:
NoUnderlyings()305     NoUnderlyings() : FIX::Group(711,311,FIX::message_order(311,312,309,305,462,463,310,763,313,542,1213,241,242,243,244,245,246,256,595,592,593,594,247,316,941,317,436,998,1423,1424,1425,1000,1419,435,308,306,362,363,307,364,365,877,878,972,318,879,975,973,974,810,882,883,884,885,886,1044,1045,1046,1038,1039,315,1437,1441,1453,1454,1455,1456,1459,1460,0)) {}
306       FIELD_SET(*this, FIX::UnderlyingSymbol);
307       FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
308       FIELD_SET(*this, FIX::UnderlyingSecurityID);
309       FIELD_SET(*this, FIX::UnderlyingSecurityIDSource);
310       FIELD_SET(*this, FIX::NoUnderlyingSecurityAltID);
311       class NoUnderlyingSecurityAltID: public FIX::Group
312       {
313       public:
NoUnderlyingSecurityAltID()314       NoUnderlyingSecurityAltID() : FIX::Group(457,458,FIX::message_order(458,459,0)) {}
315         FIELD_SET(*this, FIX::UnderlyingSecurityAltID);
316         FIELD_SET(*this, FIX::UnderlyingSecurityAltIDSource);
317       };
318       FIELD_SET(*this, FIX::UnderlyingProduct);
319       FIELD_SET(*this, FIX::UnderlyingCFICode);
320       FIELD_SET(*this, FIX::UnderlyingSecurityType);
321       FIELD_SET(*this, FIX::UnderlyingSecuritySubType);
322       FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
323       FIELD_SET(*this, FIX::UnderlyingMaturityDate);
324       FIELD_SET(*this, FIX::UnderlyingMaturityTime);
325       FIELD_SET(*this, FIX::UnderlyingCouponPaymentDate);
326       FIELD_SET(*this, FIX::UnderlyingIssueDate);
327       FIELD_SET(*this, FIX::UnderlyingRepoCollateralSecurityType);
328       FIELD_SET(*this, FIX::UnderlyingRepurchaseTerm);
329       FIELD_SET(*this, FIX::UnderlyingRepurchaseRate);
330       FIELD_SET(*this, FIX::UnderlyingFactor);
331       FIELD_SET(*this, FIX::UnderlyingCreditRating);
332       FIELD_SET(*this, FIX::UnderlyingInstrRegistry);
333       FIELD_SET(*this, FIX::UnderlyingCountryOfIssue);
334       FIELD_SET(*this, FIX::UnderlyingStateOrProvinceOfIssue);
335       FIELD_SET(*this, FIX::UnderlyingLocaleOfIssue);
336       FIELD_SET(*this, FIX::UnderlyingRedemptionDate);
337       FIELD_SET(*this, FIX::UnderlyingStrikePrice);
338       FIELD_SET(*this, FIX::UnderlyingStrikeCurrency);
339       FIELD_SET(*this, FIX::UnderlyingOptAttribute);
340       FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
341       FIELD_SET(*this, FIX::UnderlyingUnitOfMeasure);
342       FIELD_SET(*this, FIX::UnderlyingUnitOfMeasureQty);
343       FIELD_SET(*this, FIX::UnderlyingPriceUnitOfMeasure);
344       FIELD_SET(*this, FIX::UnderlyingPriceUnitOfMeasureQty);
345       FIELD_SET(*this, FIX::UnderlyingTimeUnit);
346       FIELD_SET(*this, FIX::UnderlyingExerciseStyle);
347       FIELD_SET(*this, FIX::UnderlyingCouponRate);
348       FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
349       FIELD_SET(*this, FIX::UnderlyingIssuer);
350       FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
351       FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
352       FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
353       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
354       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
355       FIELD_SET(*this, FIX::UnderlyingCPProgram);
356       FIELD_SET(*this, FIX::UnderlyingCPRegType);
357       FIELD_SET(*this, FIX::UnderlyingAllocationPercent);
358       FIELD_SET(*this, FIX::UnderlyingCurrency);
359       FIELD_SET(*this, FIX::UnderlyingQty);
360       FIELD_SET(*this, FIX::UnderlyingSettlementType);
361       FIELD_SET(*this, FIX::UnderlyingCashAmount);
362       FIELD_SET(*this, FIX::UnderlyingCashType);
363       FIELD_SET(*this, FIX::UnderlyingPx);
364       FIELD_SET(*this, FIX::UnderlyingDirtyPrice);
365       FIELD_SET(*this, FIX::UnderlyingEndPrice);
366       FIELD_SET(*this, FIX::UnderlyingStartValue);
367       FIELD_SET(*this, FIX::UnderlyingCurrentValue);
368       FIELD_SET(*this, FIX::UnderlyingEndValue);
369       FIELD_SET(*this, FIX::NoUnderlyingStips);
370       class NoUnderlyingStips: public FIX::Group
371       {
372       public:
NoUnderlyingStips()373       NoUnderlyingStips() : FIX::Group(887,888,FIX::message_order(888,889,0)) {}
374         FIELD_SET(*this, FIX::UnderlyingStipType);
375         FIELD_SET(*this, FIX::UnderlyingStipValue);
376       };
377       FIELD_SET(*this, FIX::UnderlyingAdjustedQuantity);
378       FIELD_SET(*this, FIX::UnderlyingFXRate);
379       FIELD_SET(*this, FIX::UnderlyingFXRateCalc);
380       FIELD_SET(*this, FIX::UnderlyingCapValue);
381       FIELD_SET(*this, FIX::NoUndlyInstrumentParties);
382       class NoUndlyInstrumentParties: public FIX::Group
383       {
384       public:
NoUndlyInstrumentParties()385       NoUndlyInstrumentParties() : FIX::Group(1058,1059,FIX::message_order(1059,1060,1061,1062,0)) {}
386         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyID);
387         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyIDSource);
388         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyRole);
389         FIELD_SET(*this, FIX::NoUndlyInstrumentPartySubIDs);
390         class NoUndlyInstrumentPartySubIDs: public FIX::Group
391         {
392         public:
NoUndlyInstrumentPartySubIDs()393         NoUndlyInstrumentPartySubIDs() : FIX::Group(1062,1063,FIX::message_order(1063,1064,0)) {}
394           FIELD_SET(*this, FIX::UnderlyingInstrumentPartySubID);
395           FIELD_SET(*this, FIX::UnderlyingInstrumentPartySubIDType);
396         };
397       };
398       FIELD_SET(*this, FIX::UnderlyingSettlMethod);
399       FIELD_SET(*this, FIX::UnderlyingPutOrCall);
400       FIELD_SET(*this, FIX::UnderlyingContractMultiplierUnit);
401       FIELD_SET(*this, FIX::UnderlyingFlowScheduleType);
402       FIELD_SET(*this, FIX::UnderlyingRestructuringType);
403       FIELD_SET(*this, FIX::UnderlyingSeniority);
404       FIELD_SET(*this, FIX::UnderlyingNotionalPercentageOutstanding);
405       FIELD_SET(*this, FIX::UnderlyingOriginalNotionalPercentageOutstanding);
406       FIELD_SET(*this, FIX::UnderlyingAttachmentPoint);
407       FIELD_SET(*this, FIX::UnderlyingDetachmentPoint);
408     };
409     FIELD_SET(*this, FIX::MarginExcess);
410     FIELD_SET(*this, FIX::TotalNetValue);
411     FIELD_SET(*this, FIX::CashOutstanding);
412     FIELD_SET(*this, FIX::NoTrdRegTimestamps);
413     class NoTrdRegTimestamps: public FIX::Group
414     {
415     public:
NoTrdRegTimestamps()416     NoTrdRegTimestamps() : FIX::Group(768,769,FIX::message_order(769,770,771,1033,1034,1035,0)) {}
417       FIELD_SET(*this, FIX::TrdRegTimestamp);
418       FIELD_SET(*this, FIX::TrdRegTimestampType);
419       FIELD_SET(*this, FIX::TrdRegTimestampOrigin);
420       FIELD_SET(*this, FIX::DeskType);
421       FIELD_SET(*this, FIX::DeskTypeSource);
422       FIELD_SET(*this, FIX::DeskOrderHandlingInst);
423     };
424     FIELD_SET(*this, FIX::Side);
425     FIELD_SET(*this, FIX::NoMiscFees);
426     class NoMiscFees: public FIX::Group
427     {
428     public:
NoMiscFees()429     NoMiscFees() : FIX::Group(136,137,FIX::message_order(137,138,139,891,0)) {}
430       FIELD_SET(*this, FIX::MiscFeeAmt);
431       FIELD_SET(*this, FIX::MiscFeeCurr);
432       FIELD_SET(*this, FIX::MiscFeeType);
433       FIELD_SET(*this, FIX::MiscFeeBasis);
434     };
435     FIELD_SET(*this, FIX::Price);
436     FIELD_SET(*this, FIX::PriceType);
437     FIELD_SET(*this, FIX::AccruedInterestAmt);
438     FIELD_SET(*this, FIX::EndAccruedInterestAmt);
439     FIELD_SET(*this, FIX::StartCash);
440     FIELD_SET(*this, FIX::EndCash);
441     FIELD_SET(*this, FIX::Spread);
442     FIELD_SET(*this, FIX::BenchmarkCurveCurrency);
443     FIELD_SET(*this, FIX::BenchmarkCurveName);
444     FIELD_SET(*this, FIX::BenchmarkCurvePoint);
445     FIELD_SET(*this, FIX::BenchmarkPrice);
446     FIELD_SET(*this, FIX::BenchmarkPriceType);
447     FIELD_SET(*this, FIX::BenchmarkSecurityID);
448     FIELD_SET(*this, FIX::BenchmarkSecurityIDSource);
449     FIELD_SET(*this, FIX::NoStipulations);
450     class NoStipulations: public FIX::Group
451     {
452     public:
NoStipulations()453     NoStipulations() : FIX::Group(232,233,FIX::message_order(233,234,0)) {}
454       FIELD_SET(*this, FIX::StipulationType);
455       FIELD_SET(*this, FIX::StipulationValue);
456     };
457     FIELD_SET(*this, FIX::SettlDeliveryType);
458     FIELD_SET(*this, FIX::StandInstDbType);
459     FIELD_SET(*this, FIX::StandInstDbName);
460     FIELD_SET(*this, FIX::StandInstDbID);
461     FIELD_SET(*this, FIX::NoDlvyInst);
462     class NoDlvyInst: public FIX::Group
463     {
464     public:
NoDlvyInst()465     NoDlvyInst() : FIX::Group(85,165,FIX::message_order(165,787,781,0)) {}
466       FIELD_SET(*this, FIX::SettlInstSource);
467       FIELD_SET(*this, FIX::DlvyInstType);
468       FIELD_SET(*this, FIX::NoSettlPartyIDs);
469       class NoSettlPartyIDs: public FIX::Group
470       {
471       public:
NoSettlPartyIDs()472       NoSettlPartyIDs() : FIX::Group(781,782,FIX::message_order(782,783,784,801,0)) {}
473         FIELD_SET(*this, FIX::SettlPartyID);
474         FIELD_SET(*this, FIX::SettlPartyIDSource);
475         FIELD_SET(*this, FIX::SettlPartyRole);
476         FIELD_SET(*this, FIX::NoSettlPartySubIDs);
477         class NoSettlPartySubIDs: public FIX::Group
478         {
479         public:
NoSettlPartySubIDs()480         NoSettlPartySubIDs() : FIX::Group(801,785,FIX::message_order(785,786,0)) {}
481           FIELD_SET(*this, FIX::SettlPartySubID);
482           FIELD_SET(*this, FIX::SettlPartySubIDType);
483         };
484       };
485     };
486     FIELD_SET(*this, FIX::TradingSessionID);
487     FIELD_SET(*this, FIX::TradingSessionSubID);
488     FIELD_SET(*this, FIX::SettlSessID);
489     FIELD_SET(*this, FIX::SettlSessSubID);
490     FIELD_SET(*this, FIX::ClearingBusinessDate);
491     FIELD_SET(*this, FIX::Text);
492     FIELD_SET(*this, FIX::EncodedTextLen);
493     FIELD_SET(*this, FIX::EncodedText);
494   };
495 
496 }
497 
498 #endif
499