1 #ifndef FIX50SP2_ORDERSTATUSREQUEST_H
2 #define FIX50SP2_ORDERSTATUSREQUEST_H
3 
4 #include "Message.h"
5 
6 namespace FIX50SP2
7 {
8 
9   class OrderStatusRequest : public Message
10   {
11   public:
OrderStatusRequest()12     OrderStatusRequest() : Message(MsgType()) {}
OrderStatusRequest(const FIX::Message & m)13     OrderStatusRequest(const FIX::Message& m) : Message(m) {}
OrderStatusRequest(const Message & m)14     OrderStatusRequest(const Message& m) : Message(m) {}
OrderStatusRequest(const OrderStatusRequest & m)15     OrderStatusRequest(const OrderStatusRequest& m) : Message(m) {}
MsgType()16     static FIX::MsgType MsgType() { return FIX::MsgType("H"); }
17 
OrderStatusRequest(const FIX::Side & aSide)18     OrderStatusRequest(
19       const FIX::Side& aSide )
20     : Message(MsgType())
21     {
22       set(aSide);
23     }
24 
25     FIELD_SET(*this, FIX::OrderID);
26     FIELD_SET(*this, FIX::ClOrdID);
27     FIELD_SET(*this, FIX::SecondaryClOrdID);
28     FIELD_SET(*this, FIX::ClOrdLinkID);
29     FIELD_SET(*this, FIX::NoPartyIDs);
30     class NoPartyIDs: public FIX::Group
31     {
32     public:
NoPartyIDs()33     NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
34       FIELD_SET(*this, FIX::PartyID);
35       FIELD_SET(*this, FIX::PartyIDSource);
36       FIELD_SET(*this, FIX::PartyRole);
37       FIELD_SET(*this, FIX::NoPartySubIDs);
38       class NoPartySubIDs: public FIX::Group
39       {
40       public:
NoPartySubIDs()41       NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
42         FIELD_SET(*this, FIX::PartySubID);
43         FIELD_SET(*this, FIX::PartySubIDType);
44       };
45     };
46     FIELD_SET(*this, FIX::OrdStatusReqID);
47     FIELD_SET(*this, FIX::Account);
48     FIELD_SET(*this, FIX::AcctIDSource);
49     FIELD_SET(*this, FIX::Symbol);
50     FIELD_SET(*this, FIX::SymbolSfx);
51     FIELD_SET(*this, FIX::SecurityID);
52     FIELD_SET(*this, FIX::SecurityIDSource);
53     FIELD_SET(*this, FIX::NoSecurityAltID);
54     class NoSecurityAltID: public FIX::Group
55     {
56     public:
NoSecurityAltID()57     NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {}
58       FIELD_SET(*this, FIX::SecurityAltID);
59       FIELD_SET(*this, FIX::SecurityAltIDSource);
60     };
61     FIELD_SET(*this, FIX::Product);
62     FIELD_SET(*this, FIX::ProductComplex);
63     FIELD_SET(*this, FIX::SecurityGroup);
64     FIELD_SET(*this, FIX::CFICode);
65     FIELD_SET(*this, FIX::SecurityType);
66     FIELD_SET(*this, FIX::SecuritySubType);
67     FIELD_SET(*this, FIX::MaturityMonthYear);
68     FIELD_SET(*this, FIX::MaturityDate);
69     FIELD_SET(*this, FIX::MaturityTime);
70     FIELD_SET(*this, FIX::SettleOnOpenFlag);
71     FIELD_SET(*this, FIX::InstrmtAssignmentMethod);
72     FIELD_SET(*this, FIX::SecurityStatus);
73     FIELD_SET(*this, FIX::CouponPaymentDate);
74     FIELD_SET(*this, FIX::IssueDate);
75     FIELD_SET(*this, FIX::RepoCollateralSecurityType);
76     FIELD_SET(*this, FIX::RepurchaseTerm);
77     FIELD_SET(*this, FIX::RepurchaseRate);
78     FIELD_SET(*this, FIX::Factor);
79     FIELD_SET(*this, FIX::CreditRating);
80     FIELD_SET(*this, FIX::InstrRegistry);
81     FIELD_SET(*this, FIX::CountryOfIssue);
82     FIELD_SET(*this, FIX::StateOrProvinceOfIssue);
83     FIELD_SET(*this, FIX::LocaleOfIssue);
84     FIELD_SET(*this, FIX::RedemptionDate);
85     FIELD_SET(*this, FIX::StrikePrice);
86     FIELD_SET(*this, FIX::StrikeCurrency);
87     FIELD_SET(*this, FIX::StrikeMultiplier);
88     FIELD_SET(*this, FIX::StrikeValue);
89     FIELD_SET(*this, FIX::OptAttribute);
90     FIELD_SET(*this, FIX::ContractMultiplier);
91     FIELD_SET(*this, FIX::MinPriceIncrement);
92     FIELD_SET(*this, FIX::MinPriceIncrementAmount);
93     FIELD_SET(*this, FIX::UnitOfMeasure);
94     FIELD_SET(*this, FIX::UnitOfMeasureQty);
95     FIELD_SET(*this, FIX::PriceUnitOfMeasure);
96     FIELD_SET(*this, FIX::PriceUnitOfMeasureQty);
97     FIELD_SET(*this, FIX::SettlMethod);
98     FIELD_SET(*this, FIX::ExerciseStyle);
99     FIELD_SET(*this, FIX::OptPayoutAmount);
100     FIELD_SET(*this, FIX::PriceQuoteMethod);
101     FIELD_SET(*this, FIX::ValuationMethod);
102     FIELD_SET(*this, FIX::ListMethod);
103     FIELD_SET(*this, FIX::CapPrice);
104     FIELD_SET(*this, FIX::FloorPrice);
105     FIELD_SET(*this, FIX::PutOrCall);
106     FIELD_SET(*this, FIX::FlexibleIndicator);
107     FIELD_SET(*this, FIX::FlexProductEligibilityIndicator);
108     FIELD_SET(*this, FIX::TimeUnit);
109     FIELD_SET(*this, FIX::CouponRate);
110     FIELD_SET(*this, FIX::SecurityExchange);
111     FIELD_SET(*this, FIX::PositionLimit);
112     FIELD_SET(*this, FIX::NTPositionLimit);
113     FIELD_SET(*this, FIX::Issuer);
114     FIELD_SET(*this, FIX::EncodedIssuerLen);
115     FIELD_SET(*this, FIX::EncodedIssuer);
116     FIELD_SET(*this, FIX::SecurityDesc);
117     FIELD_SET(*this, FIX::EncodedSecurityDescLen);
118     FIELD_SET(*this, FIX::EncodedSecurityDesc);
119     FIELD_SET(*this, FIX::SecurityXMLLen);
120     FIELD_SET(*this, FIX::SecurityXML);
121     FIELD_SET(*this, FIX::SecurityXMLSchema);
122     FIELD_SET(*this, FIX::Pool);
123     FIELD_SET(*this, FIX::ContractSettlMonth);
124     FIELD_SET(*this, FIX::CPProgram);
125     FIELD_SET(*this, FIX::CPRegType);
126     FIELD_SET(*this, FIX::NoEvents);
127     class NoEvents: public FIX::Group
128     {
129     public:
NoEvents()130     NoEvents() : FIX::Group(864,865,FIX::message_order(865,866,1145,867,868,0)) {}
131       FIELD_SET(*this, FIX::EventType);
132       FIELD_SET(*this, FIX::EventDate);
133       FIELD_SET(*this, FIX::EventTime);
134       FIELD_SET(*this, FIX::EventPx);
135       FIELD_SET(*this, FIX::EventText);
136     };
137     FIELD_SET(*this, FIX::DatedDate);
138     FIELD_SET(*this, FIX::InterestAccrualDate);
139     FIELD_SET(*this, FIX::NoInstrumentParties);
140     class NoInstrumentParties: public FIX::Group
141     {
142     public:
NoInstrumentParties()143     NoInstrumentParties() : FIX::Group(1018,1019,FIX::message_order(1019,1050,1051,1052,0)) {}
144       FIELD_SET(*this, FIX::InstrumentPartyID);
145       FIELD_SET(*this, FIX::InstrumentPartyIDSource);
146       FIELD_SET(*this, FIX::InstrumentPartyRole);
147       FIELD_SET(*this, FIX::NoInstrumentPartySubIDs);
148       class NoInstrumentPartySubIDs: public FIX::Group
149       {
150       public:
NoInstrumentPartySubIDs()151       NoInstrumentPartySubIDs() : FIX::Group(1052,1053,FIX::message_order(1053,1054,0)) {}
152         FIELD_SET(*this, FIX::InstrumentPartySubID);
153         FIELD_SET(*this, FIX::InstrumentPartySubIDType);
154       };
155     };
156     FIELD_SET(*this, FIX::ContractMultiplierUnit);
157     FIELD_SET(*this, FIX::FlowScheduleType);
158     FIELD_SET(*this, FIX::RestructuringType);
159     FIELD_SET(*this, FIX::Seniority);
160     FIELD_SET(*this, FIX::NotionalPercentageOutstanding);
161     FIELD_SET(*this, FIX::OriginalNotionalPercentageOutstanding);
162     FIELD_SET(*this, FIX::AttachmentPoint);
163     FIELD_SET(*this, FIX::DetachmentPoint);
164     FIELD_SET(*this, FIX::StrikePriceDeterminationMethod);
165     FIELD_SET(*this, FIX::StrikePriceBoundaryMethod);
166     FIELD_SET(*this, FIX::StrikePriceBoundaryPrecision);
167     FIELD_SET(*this, FIX::UnderlyingPriceDeterminationMethod);
168     FIELD_SET(*this, FIX::OptPayoutType);
169     FIELD_SET(*this, FIX::NoComplexEvents);
170     class NoComplexEvents: public FIX::Group
171     {
172     public:
NoComplexEvents()173     NoComplexEvents() : FIX::Group(1483,1484,FIX::message_order(1484,1485,1486,1487,1488,1489,1490,1491,0)) {}
174       FIELD_SET(*this, FIX::ComplexEventType);
175       FIELD_SET(*this, FIX::ComplexOptPayoutAmount);
176       FIELD_SET(*this, FIX::ComplexEventPrice);
177       FIELD_SET(*this, FIX::ComplexEventPriceBoundaryMethod);
178       FIELD_SET(*this, FIX::ComplexEventPriceBoundaryPrecision);
179       FIELD_SET(*this, FIX::ComplexEventPriceTimeType);
180       FIELD_SET(*this, FIX::ComplexEventCondition);
181       FIELD_SET(*this, FIX::NoComplexEventDates);
182       class NoComplexEventDates: public FIX::Group
183       {
184       public:
NoComplexEventDates()185       NoComplexEventDates() : FIX::Group(1491,1492,FIX::message_order(1492,1493,1494,0)) {}
186         FIELD_SET(*this, FIX::ComplexEventStartDate);
187         FIELD_SET(*this, FIX::ComplexEventEndDate);
188         FIELD_SET(*this, FIX::NoComplexEventTimes);
189         class NoComplexEventTimes: public FIX::Group
190         {
191         public:
NoComplexEventTimes()192         NoComplexEventTimes() : FIX::Group(1494,1495,FIX::message_order(1495,1496,0)) {}
193           FIELD_SET(*this, FIX::ComplexEventStartTime);
194           FIELD_SET(*this, FIX::ComplexEventEndTime);
195         };
196       };
197     };
198     FIELD_SET(*this, FIX::AgreementDesc);
199     FIELD_SET(*this, FIX::AgreementID);
200     FIELD_SET(*this, FIX::AgreementDate);
201     FIELD_SET(*this, FIX::AgreementCurrency);
202     FIELD_SET(*this, FIX::TerminationType);
203     FIELD_SET(*this, FIX::StartDate);
204     FIELD_SET(*this, FIX::EndDate);
205     FIELD_SET(*this, FIX::DeliveryType);
206     FIELD_SET(*this, FIX::MarginRatio);
207     FIELD_SET(*this, FIX::NoUnderlyings);
208     class NoUnderlyings: public FIX::Group
209     {
210     public:
NoUnderlyings()211     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)) {}
212       FIELD_SET(*this, FIX::UnderlyingSymbol);
213       FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
214       FIELD_SET(*this, FIX::UnderlyingSecurityID);
215       FIELD_SET(*this, FIX::UnderlyingSecurityIDSource);
216       FIELD_SET(*this, FIX::NoUnderlyingSecurityAltID);
217       class NoUnderlyingSecurityAltID: public FIX::Group
218       {
219       public:
NoUnderlyingSecurityAltID()220       NoUnderlyingSecurityAltID() : FIX::Group(457,458,FIX::message_order(458,459,0)) {}
221         FIELD_SET(*this, FIX::UnderlyingSecurityAltID);
222         FIELD_SET(*this, FIX::UnderlyingSecurityAltIDSource);
223       };
224       FIELD_SET(*this, FIX::UnderlyingProduct);
225       FIELD_SET(*this, FIX::UnderlyingCFICode);
226       FIELD_SET(*this, FIX::UnderlyingSecurityType);
227       FIELD_SET(*this, FIX::UnderlyingSecuritySubType);
228       FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
229       FIELD_SET(*this, FIX::UnderlyingMaturityDate);
230       FIELD_SET(*this, FIX::UnderlyingMaturityTime);
231       FIELD_SET(*this, FIX::UnderlyingCouponPaymentDate);
232       FIELD_SET(*this, FIX::UnderlyingIssueDate);
233       FIELD_SET(*this, FIX::UnderlyingRepoCollateralSecurityType);
234       FIELD_SET(*this, FIX::UnderlyingRepurchaseTerm);
235       FIELD_SET(*this, FIX::UnderlyingRepurchaseRate);
236       FIELD_SET(*this, FIX::UnderlyingFactor);
237       FIELD_SET(*this, FIX::UnderlyingCreditRating);
238       FIELD_SET(*this, FIX::UnderlyingInstrRegistry);
239       FIELD_SET(*this, FIX::UnderlyingCountryOfIssue);
240       FIELD_SET(*this, FIX::UnderlyingStateOrProvinceOfIssue);
241       FIELD_SET(*this, FIX::UnderlyingLocaleOfIssue);
242       FIELD_SET(*this, FIX::UnderlyingRedemptionDate);
243       FIELD_SET(*this, FIX::UnderlyingStrikePrice);
244       FIELD_SET(*this, FIX::UnderlyingStrikeCurrency);
245       FIELD_SET(*this, FIX::UnderlyingOptAttribute);
246       FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
247       FIELD_SET(*this, FIX::UnderlyingUnitOfMeasure);
248       FIELD_SET(*this, FIX::UnderlyingUnitOfMeasureQty);
249       FIELD_SET(*this, FIX::UnderlyingPriceUnitOfMeasure);
250       FIELD_SET(*this, FIX::UnderlyingPriceUnitOfMeasureQty);
251       FIELD_SET(*this, FIX::UnderlyingTimeUnit);
252       FIELD_SET(*this, FIX::UnderlyingExerciseStyle);
253       FIELD_SET(*this, FIX::UnderlyingCouponRate);
254       FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
255       FIELD_SET(*this, FIX::UnderlyingIssuer);
256       FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
257       FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
258       FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
259       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
260       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
261       FIELD_SET(*this, FIX::UnderlyingCPProgram);
262       FIELD_SET(*this, FIX::UnderlyingCPRegType);
263       FIELD_SET(*this, FIX::UnderlyingAllocationPercent);
264       FIELD_SET(*this, FIX::UnderlyingCurrency);
265       FIELD_SET(*this, FIX::UnderlyingQty);
266       FIELD_SET(*this, FIX::UnderlyingSettlementType);
267       FIELD_SET(*this, FIX::UnderlyingCashAmount);
268       FIELD_SET(*this, FIX::UnderlyingCashType);
269       FIELD_SET(*this, FIX::UnderlyingPx);
270       FIELD_SET(*this, FIX::UnderlyingDirtyPrice);
271       FIELD_SET(*this, FIX::UnderlyingEndPrice);
272       FIELD_SET(*this, FIX::UnderlyingStartValue);
273       FIELD_SET(*this, FIX::UnderlyingCurrentValue);
274       FIELD_SET(*this, FIX::UnderlyingEndValue);
275       FIELD_SET(*this, FIX::NoUnderlyingStips);
276       class NoUnderlyingStips: public FIX::Group
277       {
278       public:
NoUnderlyingStips()279       NoUnderlyingStips() : FIX::Group(887,888,FIX::message_order(888,889,0)) {}
280         FIELD_SET(*this, FIX::UnderlyingStipType);
281         FIELD_SET(*this, FIX::UnderlyingStipValue);
282       };
283       FIELD_SET(*this, FIX::UnderlyingAdjustedQuantity);
284       FIELD_SET(*this, FIX::UnderlyingFXRate);
285       FIELD_SET(*this, FIX::UnderlyingFXRateCalc);
286       FIELD_SET(*this, FIX::UnderlyingCapValue);
287       FIELD_SET(*this, FIX::NoUndlyInstrumentParties);
288       class NoUndlyInstrumentParties: public FIX::Group
289       {
290       public:
NoUndlyInstrumentParties()291       NoUndlyInstrumentParties() : FIX::Group(1058,1059,FIX::message_order(1059,1060,1061,1062,0)) {}
292         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyID);
293         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyIDSource);
294         FIELD_SET(*this, FIX::UnderlyingInstrumentPartyRole);
295         FIELD_SET(*this, FIX::NoUndlyInstrumentPartySubIDs);
296         class NoUndlyInstrumentPartySubIDs: public FIX::Group
297         {
298         public:
NoUndlyInstrumentPartySubIDs()299         NoUndlyInstrumentPartySubIDs() : FIX::Group(1062,1063,FIX::message_order(1063,1064,0)) {}
300           FIELD_SET(*this, FIX::UnderlyingInstrumentPartySubID);
301           FIELD_SET(*this, FIX::UnderlyingInstrumentPartySubIDType);
302         };
303       };
304       FIELD_SET(*this, FIX::UnderlyingSettlMethod);
305       FIELD_SET(*this, FIX::UnderlyingPutOrCall);
306       FIELD_SET(*this, FIX::UnderlyingContractMultiplierUnit);
307       FIELD_SET(*this, FIX::UnderlyingFlowScheduleType);
308       FIELD_SET(*this, FIX::UnderlyingRestructuringType);
309       FIELD_SET(*this, FIX::UnderlyingSeniority);
310       FIELD_SET(*this, FIX::UnderlyingNotionalPercentageOutstanding);
311       FIELD_SET(*this, FIX::UnderlyingOriginalNotionalPercentageOutstanding);
312       FIELD_SET(*this, FIX::UnderlyingAttachmentPoint);
313       FIELD_SET(*this, FIX::UnderlyingDetachmentPoint);
314     };
315     FIELD_SET(*this, FIX::Side);
316   };
317 
318 }
319 
320 #endif
321