1 #ifndef FIX50_ADJUSTEDPOSITIONREPORT_H
2 #define FIX50_ADJUSTEDPOSITIONREPORT_H
3 
4 #include "Message.h"
5 
6 namespace FIX50
7 {
8 
9   class AdjustedPositionReport : public Message
10   {
11   public:
AdjustedPositionReport()12     AdjustedPositionReport() : Message(MsgType()) {}
AdjustedPositionReport(const FIX::Message & m)13     AdjustedPositionReport(const FIX::Message& m) : Message(m) {}
AdjustedPositionReport(const Message & m)14     AdjustedPositionReport(const Message& m) : Message(m) {}
AdjustedPositionReport(const AdjustedPositionReport & m)15     AdjustedPositionReport(const AdjustedPositionReport& m) : Message(m) {}
MsgType()16     static FIX::MsgType MsgType() { return FIX::MsgType("BL"); }
17 
AdjustedPositionReport(const FIX::PosMaintRptID & aPosMaintRptID,const FIX::ClearingBusinessDate & aClearingBusinessDate)18     AdjustedPositionReport(
19       const FIX::PosMaintRptID& aPosMaintRptID,
20       const FIX::ClearingBusinessDate& aClearingBusinessDate )
21     : Message(MsgType())
22     {
23       set(aPosMaintRptID);
24       set(aClearingBusinessDate);
25     }
26 
27     FIELD_SET(*this, FIX::PosMaintRptID);
28     FIELD_SET(*this, FIX::PosReqType);
29     FIELD_SET(*this, FIX::ClearingBusinessDate);
30     FIELD_SET(*this, FIX::SettlSessID);
31     FIELD_SET(*this, FIX::PosMaintRptRefID);
32     FIELD_SET(*this, FIX::NoPartyIDs);
33     class NoPartyIDs: public FIX::Group
34     {
35     public:
NoPartyIDs()36     NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
37       FIELD_SET(*this, FIX::PartyID);
38       FIELD_SET(*this, FIX::PartyIDSource);
39       FIELD_SET(*this, FIX::PartyRole);
40       FIELD_SET(*this, FIX::NoPartySubIDs);
41       class NoPartySubIDs: public FIX::Group
42       {
43       public:
NoPartySubIDs()44       NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
45         FIELD_SET(*this, FIX::PartySubID);
46         FIELD_SET(*this, FIX::PartySubIDType);
47       };
48     };
49     FIELD_SET(*this, FIX::NoPositions);
50     class NoPositions: public FIX::Group
51     {
52     public:
NoPositions()53     NoPositions() : FIX::Group(702,703,FIX::message_order(703,704,705,706,976,539,0)) {}
54       FIELD_SET(*this, FIX::PosType);
55       FIELD_SET(*this, FIX::LongQty);
56       FIELD_SET(*this, FIX::ShortQty);
57       FIELD_SET(*this, FIX::PosQtyStatus);
58       FIELD_SET(*this, FIX::QuantityDate);
59       FIELD_SET(*this, FIX::NoNestedPartyIDs);
60       class NoNestedPartyIDs: public FIX::Group
61       {
62       public:
NoNestedPartyIDs()63       NoNestedPartyIDs() : FIX::Group(539,524,FIX::message_order(524,525,538,804,0)) {}
64         FIELD_SET(*this, FIX::NestedPartyID);
65         FIELD_SET(*this, FIX::NestedPartyIDSource);
66         FIELD_SET(*this, FIX::NestedPartyRole);
67         FIELD_SET(*this, FIX::NoNestedPartySubIDs);
68         class NoNestedPartySubIDs: public FIX::Group
69         {
70         public:
NoNestedPartySubIDs()71         NoNestedPartySubIDs() : FIX::Group(804,545,FIX::message_order(545,805,0)) {}
72           FIELD_SET(*this, FIX::NestedPartySubID);
73           FIELD_SET(*this, FIX::NestedPartySubIDType);
74         };
75       };
76     };
77     FIELD_SET(*this, FIX::Symbol);
78     FIELD_SET(*this, FIX::SymbolSfx);
79     FIELD_SET(*this, FIX::SecurityID);
80     FIELD_SET(*this, FIX::SecurityIDSource);
81     FIELD_SET(*this, FIX::NoSecurityAltID);
82     class NoSecurityAltID: public FIX::Group
83     {
84     public:
NoSecurityAltID()85     NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {}
86       FIELD_SET(*this, FIX::SecurityAltID);
87       FIELD_SET(*this, FIX::SecurityAltIDSource);
88     };
89     FIELD_SET(*this, FIX::Product);
90     FIELD_SET(*this, FIX::CFICode);
91     FIELD_SET(*this, FIX::SecurityType);
92     FIELD_SET(*this, FIX::SecuritySubType);
93     FIELD_SET(*this, FIX::MaturityMonthYear);
94     FIELD_SET(*this, FIX::MaturityDate);
95     FIELD_SET(*this, FIX::MaturityTime);
96     FIELD_SET(*this, FIX::PutOrCall);
97     FIELD_SET(*this, FIX::SettleOnOpenFlag);
98     FIELD_SET(*this, FIX::InstrmtAssignmentMethod);
99     FIELD_SET(*this, FIX::SecurityStatus);
100     FIELD_SET(*this, FIX::CouponPaymentDate);
101     FIELD_SET(*this, FIX::IssueDate);
102     FIELD_SET(*this, FIX::RepoCollateralSecurityType);
103     FIELD_SET(*this, FIX::RepurchaseTerm);
104     FIELD_SET(*this, FIX::RepurchaseRate);
105     FIELD_SET(*this, FIX::Factor);
106     FIELD_SET(*this, FIX::CreditRating);
107     FIELD_SET(*this, FIX::InstrRegistry);
108     FIELD_SET(*this, FIX::CountryOfIssue);
109     FIELD_SET(*this, FIX::StateOrProvinceOfIssue);
110     FIELD_SET(*this, FIX::LocaleOfIssue);
111     FIELD_SET(*this, FIX::RedemptionDate);
112     FIELD_SET(*this, FIX::StrikePrice);
113     FIELD_SET(*this, FIX::StrikeCurrency);
114     FIELD_SET(*this, FIX::StrikeMultiplier);
115     FIELD_SET(*this, FIX::StrikeValue);
116     FIELD_SET(*this, FIX::OptAttribute);
117     FIELD_SET(*this, FIX::ContractMultiplier);
118     FIELD_SET(*this, FIX::MinPriceIncrement);
119     FIELD_SET(*this, FIX::UnitOfMeasure);
120     FIELD_SET(*this, FIX::TimeUnit);
121     FIELD_SET(*this, FIX::CouponRate);
122     FIELD_SET(*this, FIX::SecurityExchange);
123     FIELD_SET(*this, FIX::PositionLimit);
124     FIELD_SET(*this, FIX::NTPositionLimit);
125     FIELD_SET(*this, FIX::Issuer);
126     FIELD_SET(*this, FIX::EncodedIssuerLen);
127     FIELD_SET(*this, FIX::EncodedIssuer);
128     FIELD_SET(*this, FIX::SecurityDesc);
129     FIELD_SET(*this, FIX::EncodedSecurityDescLen);
130     FIELD_SET(*this, FIX::EncodedSecurityDesc);
131     FIELD_SET(*this, FIX::Pool);
132     FIELD_SET(*this, FIX::ContractSettlMonth);
133     FIELD_SET(*this, FIX::CPProgram);
134     FIELD_SET(*this, FIX::CPRegType);
135     FIELD_SET(*this, FIX::NoEvents);
136     class NoEvents: public FIX::Group
137     {
138     public:
NoEvents()139     NoEvents() : FIX::Group(864,865,FIX::message_order(865,866,867,868,0)) {}
140       FIELD_SET(*this, FIX::EventType);
141       FIELD_SET(*this, FIX::EventDate);
142       FIELD_SET(*this, FIX::EventPx);
143       FIELD_SET(*this, FIX::EventText);
144     };
145     FIELD_SET(*this, FIX::DatedDate);
146     FIELD_SET(*this, FIX::InterestAccrualDate);
147     FIELD_SET(*this, FIX::NoInstrumentParties);
148     class NoInstrumentParties: public FIX::Group
149     {
150     public:
NoInstrumentParties()151     NoInstrumentParties() : FIX::Group(1018,1019,FIX::message_order(1019,1050,1051,1052,0)) {}
152       FIELD_SET(*this, FIX::InstrumentPartyID);
153       FIELD_SET(*this, FIX::InstrumentPartyIDSource);
154       FIELD_SET(*this, FIX::InstrumentPartyRole);
155       FIELD_SET(*this, FIX::NoInstrumentPartySubIDs);
156       class NoInstrumentPartySubIDs: public FIX::Group
157       {
158       public:
NoInstrumentPartySubIDs()159       NoInstrumentPartySubIDs() : FIX::Group(1052,1053,FIX::message_order(1053,1054,0)) {}
160         FIELD_SET(*this, FIX::InstrumentPartySubID);
161         FIELD_SET(*this, FIX::InstrumentPartySubIDType);
162       };
163     };
164     FIELD_SET(*this, FIX::SettlPrice);
165     FIELD_SET(*this, FIX::PriorSettlPrice);
166   };
167 
168 }
169 
170 #endif
171