1 #ifndef FIX43_ORDERSTATUSREQUEST_H
2 #define FIX43_ORDERSTATUSREQUEST_H
3 
4 #include "Message.h"
5 
6 namespace FIX43
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::ClOrdID & aClOrdID,const FIX::Side & aSide)18     OrderStatusRequest(
19       const FIX::ClOrdID& aClOrdID,
20       const FIX::Side& aSide )
21     : Message(MsgType())
22     {
23       set(aClOrdID);
24       set(aSide);
25     }
26 
27     FIELD_SET(*this, FIX::OrderID);
28     FIELD_SET(*this, FIX::ClOrdID);
29     FIELD_SET(*this, FIX::SecondaryClOrdID);
30     FIELD_SET(*this, FIX::ClOrdLinkID);
31     FIELD_SET(*this, FIX::NoPartyIDs);
32     class NoPartyIDs: public FIX::Group
33     {
34     public:
NoPartyIDs()35     NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,523,0)) {}
36       FIELD_SET(*this, FIX::PartyID);
37       FIELD_SET(*this, FIX::PartyIDSource);
38       FIELD_SET(*this, FIX::PartyRole);
39       FIELD_SET(*this, FIX::PartySubID);
40     };
41     FIELD_SET(*this, FIX::Account);
42     FIELD_SET(*this, FIX::Symbol);
43     FIELD_SET(*this, FIX::SymbolSfx);
44     FIELD_SET(*this, FIX::SecurityID);
45     FIELD_SET(*this, FIX::SecurityIDSource);
46     FIELD_SET(*this, FIX::Product);
47     FIELD_SET(*this, FIX::CFICode);
48     FIELD_SET(*this, FIX::SecurityType);
49     FIELD_SET(*this, FIX::MaturityMonthYear);
50     FIELD_SET(*this, FIX::MaturityDate);
51     FIELD_SET(*this, FIX::CouponPaymentDate);
52     FIELD_SET(*this, FIX::IssueDate);
53     FIELD_SET(*this, FIX::RepoCollateralSecurityType);
54     FIELD_SET(*this, FIX::RepurchaseTerm);
55     FIELD_SET(*this, FIX::RepurchaseRate);
56     FIELD_SET(*this, FIX::Factor);
57     FIELD_SET(*this, FIX::CreditRating);
58     FIELD_SET(*this, FIX::InstrRegistry);
59     FIELD_SET(*this, FIX::CountryOfIssue);
60     FIELD_SET(*this, FIX::StateOrProvinceOfIssue);
61     FIELD_SET(*this, FIX::LocaleOfIssue);
62     FIELD_SET(*this, FIX::RedemptionDate);
63     FIELD_SET(*this, FIX::StrikePrice);
64     FIELD_SET(*this, FIX::OptAttribute);
65     FIELD_SET(*this, FIX::ContractMultiplier);
66     FIELD_SET(*this, FIX::CouponRate);
67     FIELD_SET(*this, FIX::SecurityExchange);
68     FIELD_SET(*this, FIX::Issuer);
69     FIELD_SET(*this, FIX::EncodedIssuerLen);
70     FIELD_SET(*this, FIX::EncodedIssuer);
71     FIELD_SET(*this, FIX::SecurityDesc);
72     FIELD_SET(*this, FIX::EncodedSecurityDescLen);
73     FIELD_SET(*this, FIX::EncodedSecurityDesc);
74     FIELD_SET(*this, FIX::NoSecurityAltID);
75     class NoSecurityAltID: public FIX::Group
76     {
77     public:
NoSecurityAltID()78     NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {}
79       FIELD_SET(*this, FIX::SecurityAltID);
80       FIELD_SET(*this, FIX::SecurityAltIDSource);
81     };
82     FIELD_SET(*this, FIX::Side);
83   };
84 
85 }
86 
87 #endif
88