Skip to main content

fixer_fix/fix50/
security_definition_update_report.rs

1// Code generated by fixer-gen. DO NOT EDIT.
2#![allow(clippy::new_without_default)]
3#![allow(clippy::needless_pass_by_value)]
4#![allow(clippy::too_many_arguments)]
5#![allow(unused_imports)]
6
7use fixer::message::Message;
8use fixer::fix_string::FIXString;
9use fixer::errors::MessageRejectErrorEnum;
10use fixer::session::session_id::SessionID;
11
12use rust_decimal::Decimal;
13
14
15use crate::field;
16use crate::tag;
17
18/// `SecurityDefinitionUpdateReport` is the `fix50` `SecurityDefinitionUpdateReport` type, `MsgType` = BP.
19pub struct SecurityDefinitionUpdateReport {
20    pub message: Message,
21}
22
23impl SecurityDefinitionUpdateReport {
24    /// Creates a new `SecurityDefinitionUpdateReport` with required fields.
25    pub fn new() -> Self {
26        let mut msg = Message::new();
27        msg.header.set_field(tag::MSG_TYPE, FIXString::from("BP".to_string()));
28
29        Self { message: msg }
30    }
31
32    /// Creates a `SecurityDefinitionUpdateReport` from an existing `Message`.
33    pub fn from_message(msg: Message) -> Self {
34        Self { message: msg }
35    }
36
37    /// Returns the underlying `Message`.
38    pub fn to_message(self) -> Message {
39        self.message
40    }
41
42
43
44
45    /// Sets `CFICode`, Tag 461.
46    pub fn set_cfi_code(&mut self, v: String) {
47        self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
48    }
49
50    /// Gets `CFICode`, Tag 461.
51    pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
52        let mut fld = field::CFICodeField::new(String::new());
53        self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
54        Ok(fld.value().to_string())
55    }
56
57
58    /// Returns true if `CFICode` is present, Tag 461.
59    pub fn has_cfi_code(&self) -> bool {
60        self.message.body.has(tag::CFI_CODE)
61    }
62
63
64
65
66    /// Sets `CPProgram`, Tag 875.
67    pub fn set_cp_program(&mut self, v: isize) {
68        self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
69    }
70
71    /// Gets `CPProgram`, Tag 875.
72    pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
73        let mut fld = field::CPProgramField::new(0);
74        self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
75        Ok(fld.value())
76    }
77
78
79    /// Returns true if `CPProgram` is present, Tag 875.
80    pub fn has_cp_program(&self) -> bool {
81        self.message.body.has(tag::CP_PROGRAM)
82    }
83
84
85
86
87    /// Sets `CPRegType`, Tag 876.
88    pub fn set_cp_reg_type(&mut self, v: String) {
89        self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
90    }
91
92    /// Gets `CPRegType`, Tag 876.
93    pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
94        let mut fld = field::CPRegTypeField::new(String::new());
95        self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
96        Ok(fld.value().to_string())
97    }
98
99
100    /// Returns true if `CPRegType` is present, Tag 876.
101    pub fn has_cp_reg_type(&self) -> bool {
102        self.message.body.has(tag::CP_REG_TYPE)
103    }
104
105
106
107
108    /// Sets `ClearingBusinessDate`, Tag 715.
109    pub fn set_clearing_business_date(&mut self, v: String) {
110        self.message.body.set_field(tag::CLEARING_BUSINESS_DATE, FIXString::from(v));
111    }
112
113    /// Gets `ClearingBusinessDate`, Tag 715.
114    pub fn get_clearing_business_date(&self) -> Result<String, MessageRejectErrorEnum> {
115        let mut fld = field::ClearingBusinessDateField::new(String::new());
116        self.message.body.get_field(tag::CLEARING_BUSINESS_DATE, &mut fld.0)?;
117        Ok(fld.value().to_string())
118    }
119
120
121    /// Returns true if `ClearingBusinessDate` is present, Tag 715.
122    pub fn has_clearing_business_date(&self) -> bool {
123        self.message.body.has(tag::CLEARING_BUSINESS_DATE)
124    }
125
126
127
128
129    /// Sets `ContractMultiplier`, Tag 231.
130    pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
131        self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
132    }
133
134    /// Gets `ContractMultiplier`, Tag 231.
135    pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
136        let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
137        self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
138        Ok(fld.value())
139    }
140
141
142    /// Returns true if `ContractMultiplier` is present, Tag 231.
143    pub fn has_contract_multiplier(&self) -> bool {
144        self.message.body.has(tag::CONTRACT_MULTIPLIER)
145    }
146
147
148
149
150    /// Sets `ContractSettlMonth`, Tag 667.
151    pub fn set_contract_settl_month(&mut self, v: String) {
152        self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
153    }
154
155    /// Gets `ContractSettlMonth`, Tag 667.
156    pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
157        let mut fld = field::ContractSettlMonthField::new(String::new());
158        self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
159        Ok(fld.value().to_string())
160    }
161
162
163    /// Returns true if `ContractSettlMonth` is present, Tag 667.
164    pub fn has_contract_settl_month(&self) -> bool {
165        self.message.body.has(tag::CONTRACT_SETTL_MONTH)
166    }
167
168
169
170
171    /// Sets `CorporateAction`, Tag 292.
172    pub fn set_corporate_action(&mut self, v: String) {
173        self.message.body.set_field(tag::CORPORATE_ACTION, FIXString::from(v));
174    }
175
176    /// Gets `CorporateAction`, Tag 292.
177    pub fn get_corporate_action(&self) -> Result<String, MessageRejectErrorEnum> {
178        let mut fld = field::CorporateActionField::new(String::new());
179        self.message.body.get_field(tag::CORPORATE_ACTION, &mut fld.0)?;
180        Ok(fld.value().to_string())
181    }
182
183
184    /// Returns true if `CorporateAction` is present, Tag 292.
185    pub fn has_corporate_action(&self) -> bool {
186        self.message.body.has(tag::CORPORATE_ACTION)
187    }
188
189
190
191
192    /// Sets `CountryOfIssue`, Tag 470.
193    pub fn set_country_of_issue(&mut self, v: String) {
194        self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
195    }
196
197    /// Gets `CountryOfIssue`, Tag 470.
198    pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
199        let mut fld = field::CountryOfIssueField::new(String::new());
200        self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
201        Ok(fld.value().to_string())
202    }
203
204
205    /// Returns true if `CountryOfIssue` is present, Tag 470.
206    pub fn has_country_of_issue(&self) -> bool {
207        self.message.body.has(tag::COUNTRY_OF_ISSUE)
208    }
209
210
211
212
213    /// Sets `CouponPaymentDate`, Tag 224.
214    pub fn set_coupon_payment_date(&mut self, v: String) {
215        self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
216    }
217
218    /// Gets `CouponPaymentDate`, Tag 224.
219    pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
220        let mut fld = field::CouponPaymentDateField::new(String::new());
221        self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
222        Ok(fld.value().to_string())
223    }
224
225
226    /// Returns true if `CouponPaymentDate` is present, Tag 224.
227    pub fn has_coupon_payment_date(&self) -> bool {
228        self.message.body.has(tag::COUPON_PAYMENT_DATE)
229    }
230
231
232
233
234    /// Sets `CouponRate`, Tag 223.
235    pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
236        self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
237    }
238
239    /// Gets `CouponRate`, Tag 223.
240    pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
241        let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
242        self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
243        Ok(fld.value())
244    }
245
246
247    /// Returns true if `CouponRate` is present, Tag 223.
248    pub fn has_coupon_rate(&self) -> bool {
249        self.message.body.has(tag::COUPON_RATE)
250    }
251
252
253
254
255    /// Sets `CreditRating`, Tag 255.
256    pub fn set_credit_rating(&mut self, v: String) {
257        self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
258    }
259
260    /// Gets `CreditRating`, Tag 255.
261    pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
262        let mut fld = field::CreditRatingField::new(String::new());
263        self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
264        Ok(fld.value().to_string())
265    }
266
267
268    /// Returns true if `CreditRating` is present, Tag 255.
269    pub fn has_credit_rating(&self) -> bool {
270        self.message.body.has(tag::CREDIT_RATING)
271    }
272
273
274
275
276    /// Sets `Currency`, Tag 15.
277    pub fn set_currency(&mut self, v: String) {
278        self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
279    }
280
281    /// Gets `Currency`, Tag 15.
282    pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
283        let mut fld = field::CurrencyField::new(String::new());
284        self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
285        Ok(fld.value().to_string())
286    }
287
288
289    /// Returns true if `Currency` is present, Tag 15.
290    pub fn has_currency(&self) -> bool {
291        self.message.body.has(tag::CURRENCY)
292    }
293
294
295
296
297    /// Sets `DatedDate`, Tag 873.
298    pub fn set_dated_date(&mut self, v: String) {
299        self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
300    }
301
302    /// Gets `DatedDate`, Tag 873.
303    pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
304        let mut fld = field::DatedDateField::new(String::new());
305        self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
306        Ok(fld.value().to_string())
307    }
308
309
310    /// Returns true if `DatedDate` is present, Tag 873.
311    pub fn has_dated_date(&self) -> bool {
312        self.message.body.has(tag::DATED_DATE)
313    }
314
315
316
317
318    /// Sets `EncodedIssuer`, Tag 349.
319    pub fn set_encoded_issuer(&mut self, v: String) {
320        self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
321    }
322
323    /// Gets `EncodedIssuer`, Tag 349.
324    pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
325        let mut fld = field::EncodedIssuerField::new(String::new());
326        self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
327        Ok(fld.value().to_string())
328    }
329
330
331    /// Returns true if `EncodedIssuer` is present, Tag 349.
332    pub fn has_encoded_issuer(&self) -> bool {
333        self.message.body.has(tag::ENCODED_ISSUER)
334    }
335
336
337
338
339    /// Sets `EncodedIssuerLen`, Tag 348.
340    pub fn set_encoded_issuer_len(&mut self, v: isize) {
341        self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
342    }
343
344    /// Gets `EncodedIssuerLen`, Tag 348.
345    pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
346        let mut fld = field::EncodedIssuerLenField::new(0);
347        self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
348        Ok(fld.value())
349    }
350
351
352    /// Returns true if `EncodedIssuerLen` is present, Tag 348.
353    pub fn has_encoded_issuer_len(&self) -> bool {
354        self.message.body.has(tag::ENCODED_ISSUER_LEN)
355    }
356
357
358
359
360    /// Sets `EncodedSecurityDesc`, Tag 351.
361    pub fn set_encoded_security_desc(&mut self, v: String) {
362        self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
363    }
364
365    /// Gets `EncodedSecurityDesc`, Tag 351.
366    pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
367        let mut fld = field::EncodedSecurityDescField::new(String::new());
368        self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
369        Ok(fld.value().to_string())
370    }
371
372
373    /// Returns true if `EncodedSecurityDesc` is present, Tag 351.
374    pub fn has_encoded_security_desc(&self) -> bool {
375        self.message.body.has(tag::ENCODED_SECURITY_DESC)
376    }
377
378
379
380
381    /// Sets `EncodedSecurityDescLen`, Tag 350.
382    pub fn set_encoded_security_desc_len(&mut self, v: isize) {
383        self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
384    }
385
386    /// Gets `EncodedSecurityDescLen`, Tag 350.
387    pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
388        let mut fld = field::EncodedSecurityDescLenField::new(0);
389        self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
390        Ok(fld.value())
391    }
392
393
394    /// Returns true if `EncodedSecurityDescLen` is present, Tag 350.
395    pub fn has_encoded_security_desc_len(&self) -> bool {
396        self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
397    }
398
399
400
401
402    /// Sets `EncodedText`, Tag 355.
403    pub fn set_encoded_text(&mut self, v: String) {
404        self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
405    }
406
407    /// Gets `EncodedText`, Tag 355.
408    pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
409        let mut fld = field::EncodedTextField::new(String::new());
410        self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
411        Ok(fld.value().to_string())
412    }
413
414
415    /// Returns true if `EncodedText` is present, Tag 355.
416    pub fn has_encoded_text(&self) -> bool {
417        self.message.body.has(tag::ENCODED_TEXT)
418    }
419
420
421
422
423    /// Sets `EncodedTextLen`, Tag 354.
424    pub fn set_encoded_text_len(&mut self, v: isize) {
425        self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
426    }
427
428    /// Gets `EncodedTextLen`, Tag 354.
429    pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
430        let mut fld = field::EncodedTextLenField::new(0);
431        self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
432        Ok(fld.value())
433    }
434
435
436    /// Returns true if `EncodedTextLen` is present, Tag 354.
437    pub fn has_encoded_text_len(&self) -> bool {
438        self.message.body.has(tag::ENCODED_TEXT_LEN)
439    }
440
441
442
443
444    /// Sets `EncodedUnderlyingIssuer`, Tag 363.
445    pub fn set_encoded_underlying_issuer(&mut self, v: String) {
446        self.message.body.set_field(tag::ENCODED_UNDERLYING_ISSUER, FIXString::from(v));
447    }
448
449    /// Gets `EncodedUnderlyingIssuer`, Tag 363.
450    pub fn get_encoded_underlying_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
451        let mut fld = field::EncodedUnderlyingIssuerField::new(String::new());
452        self.message.body.get_field(tag::ENCODED_UNDERLYING_ISSUER, &mut fld.0)?;
453        Ok(fld.value().to_string())
454    }
455
456
457    /// Returns true if `EncodedUnderlyingIssuer` is present, Tag 363.
458    pub fn has_encoded_underlying_issuer(&self) -> bool {
459        self.message.body.has(tag::ENCODED_UNDERLYING_ISSUER)
460    }
461
462
463
464
465    /// Sets `EncodedUnderlyingIssuerLen`, Tag 362.
466    pub fn set_encoded_underlying_issuer_len(&mut self, v: isize) {
467        self.message.body.set_field(tag::ENCODED_UNDERLYING_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
468    }
469
470    /// Gets `EncodedUnderlyingIssuerLen`, Tag 362.
471    pub fn get_encoded_underlying_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
472        let mut fld = field::EncodedUnderlyingIssuerLenField::new(0);
473        self.message.body.get_field(tag::ENCODED_UNDERLYING_ISSUER_LEN, &mut fld.0)?;
474        Ok(fld.value())
475    }
476
477
478    /// Returns true if `EncodedUnderlyingIssuerLen` is present, Tag 362.
479    pub fn has_encoded_underlying_issuer_len(&self) -> bool {
480        self.message.body.has(tag::ENCODED_UNDERLYING_ISSUER_LEN)
481    }
482
483
484
485
486    /// Sets `EncodedUnderlyingSecurityDesc`, Tag 365.
487    pub fn set_encoded_underlying_security_desc(&mut self, v: String) {
488        self.message.body.set_field(tag::ENCODED_UNDERLYING_SECURITY_DESC, FIXString::from(v));
489    }
490
491    /// Gets `EncodedUnderlyingSecurityDesc`, Tag 365.
492    pub fn get_encoded_underlying_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
493        let mut fld = field::EncodedUnderlyingSecurityDescField::new(String::new());
494        self.message.body.get_field(tag::ENCODED_UNDERLYING_SECURITY_DESC, &mut fld.0)?;
495        Ok(fld.value().to_string())
496    }
497
498
499    /// Returns true if `EncodedUnderlyingSecurityDesc` is present, Tag 365.
500    pub fn has_encoded_underlying_security_desc(&self) -> bool {
501        self.message.body.has(tag::ENCODED_UNDERLYING_SECURITY_DESC)
502    }
503
504
505
506
507    /// Sets `EncodedUnderlyingSecurityDescLen`, Tag 364.
508    pub fn set_encoded_underlying_security_desc_len(&mut self, v: isize) {
509        self.message.body.set_field(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
510    }
511
512    /// Gets `EncodedUnderlyingSecurityDescLen`, Tag 364.
513    pub fn get_encoded_underlying_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
514        let mut fld = field::EncodedUnderlyingSecurityDescLenField::new(0);
515        self.message.body.get_field(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN, &mut fld.0)?;
516        Ok(fld.value())
517    }
518
519
520    /// Returns true if `EncodedUnderlyingSecurityDescLen` is present, Tag 364.
521    pub fn has_encoded_underlying_security_desc_len(&self) -> bool {
522        self.message.body.has(tag::ENCODED_UNDERLYING_SECURITY_DESC_LEN)
523    }
524
525
526
527
528    /// Sets `ExpirationCycle`, Tag 827.
529    pub fn set_expiration_cycle(&mut self, v: isize) {
530        self.message.body.set_field(tag::EXPIRATION_CYCLE, fixer::fix_int::FIXInt::from(v));
531    }
532
533    /// Gets `ExpirationCycle`, Tag 827.
534    pub fn get_expiration_cycle(&self) -> Result<isize, MessageRejectErrorEnum> {
535        let mut fld = field::ExpirationCycleField::new(0);
536        self.message.body.get_field(tag::EXPIRATION_CYCLE, &mut fld.0)?;
537        Ok(fld.value())
538    }
539
540
541    /// Returns true if `ExpirationCycle` is present, Tag 827.
542    pub fn has_expiration_cycle(&self) -> bool {
543        self.message.body.has(tag::EXPIRATION_CYCLE)
544    }
545
546
547
548
549    /// Sets `Factor`, Tag 228.
550    pub fn set_factor(&mut self, val: Decimal, scale: i32) {
551        self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
552    }
553
554    /// Gets `Factor`, Tag 228.
555    pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
556        let mut fld = field::FactorField::new(Decimal::ZERO, 0);
557        self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
558        Ok(fld.value())
559    }
560
561
562    /// Returns true if `Factor` is present, Tag 228.
563    pub fn has_factor(&self) -> bool {
564        self.message.body.has(tag::FACTOR)
565    }
566
567
568
569
570    /// Sets `InstrRegistry`, Tag 543.
571    pub fn set_instr_registry(&mut self, v: String) {
572        self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
573    }
574
575    /// Gets `InstrRegistry`, Tag 543.
576    pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
577        let mut fld = field::InstrRegistryField::new(String::new());
578        self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
579        Ok(fld.value().to_string())
580    }
581
582
583    /// Returns true if `InstrRegistry` is present, Tag 543.
584    pub fn has_instr_registry(&self) -> bool {
585        self.message.body.has(tag::INSTR_REGISTRY)
586    }
587
588
589
590
591    /// Sets `InstrmtAssignmentMethod`, Tag 1049.
592    pub fn set_instrmt_assignment_method(&mut self, v: String) {
593        self.message.body.set_field(tag::INSTRMT_ASSIGNMENT_METHOD, FIXString::from(v));
594    }
595
596    /// Gets `InstrmtAssignmentMethod`, Tag 1049.
597    pub fn get_instrmt_assignment_method(&self) -> Result<String, MessageRejectErrorEnum> {
598        let mut fld = field::InstrmtAssignmentMethodField::new(String::new());
599        self.message.body.get_field(tag::INSTRMT_ASSIGNMENT_METHOD, &mut fld.0)?;
600        Ok(fld.value().to_string())
601    }
602
603
604    /// Returns true if `InstrmtAssignmentMethod` is present, Tag 1049.
605    pub fn has_instrmt_assignment_method(&self) -> bool {
606        self.message.body.has(tag::INSTRMT_ASSIGNMENT_METHOD)
607    }
608
609
610
611
612    /// Sets `InterestAccrualDate`, Tag 874.
613    pub fn set_interest_accrual_date(&mut self, v: String) {
614        self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
615    }
616
617    /// Gets `InterestAccrualDate`, Tag 874.
618    pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
619        let mut fld = field::InterestAccrualDateField::new(String::new());
620        self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
621        Ok(fld.value().to_string())
622    }
623
624
625    /// Returns true if `InterestAccrualDate` is present, Tag 874.
626    pub fn has_interest_accrual_date(&self) -> bool {
627        self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
628    }
629
630
631
632
633    /// Sets `IssueDate`, Tag 225.
634    pub fn set_issue_date(&mut self, v: String) {
635        self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
636    }
637
638    /// Gets `IssueDate`, Tag 225.
639    pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
640        let mut fld = field::IssueDateField::new(String::new());
641        self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
642        Ok(fld.value().to_string())
643    }
644
645
646    /// Returns true if `IssueDate` is present, Tag 225.
647    pub fn has_issue_date(&self) -> bool {
648        self.message.body.has(tag::ISSUE_DATE)
649    }
650
651
652
653
654    /// Sets `Issuer`, Tag 106.
655    pub fn set_issuer(&mut self, v: String) {
656        self.message.body.set_field(tag::ISSUER, FIXString::from(v));
657    }
658
659    /// Gets `Issuer`, Tag 106.
660    pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
661        let mut fld = field::IssuerField::new(String::new());
662        self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
663        Ok(fld.value().to_string())
664    }
665
666
667    /// Returns true if `Issuer` is present, Tag 106.
668    pub fn has_issuer(&self) -> bool {
669        self.message.body.has(tag::ISSUER)
670    }
671
672
673
674
675    /// Sets `LocaleOfIssue`, Tag 472.
676    pub fn set_locale_of_issue(&mut self, v: String) {
677        self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
678    }
679
680    /// Gets `LocaleOfIssue`, Tag 472.
681    pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
682        let mut fld = field::LocaleOfIssueField::new(String::new());
683        self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
684        Ok(fld.value().to_string())
685    }
686
687
688    /// Returns true if `LocaleOfIssue` is present, Tag 472.
689    pub fn has_locale_of_issue(&self) -> bool {
690        self.message.body.has(tag::LOCALE_OF_ISSUE)
691    }
692
693
694
695
696    /// Sets `MaturityDate`, Tag 541.
697    pub fn set_maturity_date(&mut self, v: String) {
698        self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
699    }
700
701    /// Gets `MaturityDate`, Tag 541.
702    pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
703        let mut fld = field::MaturityDateField::new(String::new());
704        self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
705        Ok(fld.value().to_string())
706    }
707
708
709    /// Returns true if `MaturityDate` is present, Tag 541.
710    pub fn has_maturity_date(&self) -> bool {
711        self.message.body.has(tag::MATURITY_DATE)
712    }
713
714
715
716
717    /// Sets `MaturityMonthYear`, Tag 200.
718    pub fn set_maturity_month_year(&mut self, v: String) {
719        self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
720    }
721
722    /// Gets `MaturityMonthYear`, Tag 200.
723    pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
724        let mut fld = field::MaturityMonthYearField::new(String::new());
725        self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
726        Ok(fld.value().to_string())
727    }
728
729
730    /// Returns true if `MaturityMonthYear` is present, Tag 200.
731    pub fn has_maturity_month_year(&self) -> bool {
732        self.message.body.has(tag::MATURITY_MONTH_YEAR)
733    }
734
735
736
737
738    /// Sets `MaturityTime`, Tag 1079.
739    pub fn set_maturity_time(&mut self, v: String) {
740        self.message.body.set_field(tag::MATURITY_TIME, FIXString::from(v));
741    }
742
743    /// Gets `MaturityTime`, Tag 1079.
744    pub fn get_maturity_time(&self) -> Result<String, MessageRejectErrorEnum> {
745        let mut fld = field::MaturityTimeField::new(String::new());
746        self.message.body.get_field(tag::MATURITY_TIME, &mut fld.0)?;
747        Ok(fld.value().to_string())
748    }
749
750
751    /// Returns true if `MaturityTime` is present, Tag 1079.
752    pub fn has_maturity_time(&self) -> bool {
753        self.message.body.has(tag::MATURITY_TIME)
754    }
755
756
757
758
759    /// Sets `MinPriceIncrement`, Tag 969.
760    pub fn set_min_price_increment(&mut self, val: Decimal, scale: i32) {
761        self.message.body.set_field(tag::MIN_PRICE_INCREMENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
762    }
763
764    /// Gets `MinPriceIncrement`, Tag 969.
765    pub fn get_min_price_increment(&self) -> Result<Decimal, MessageRejectErrorEnum> {
766        let mut fld = field::MinPriceIncrementField::new(Decimal::ZERO, 0);
767        self.message.body.get_field(tag::MIN_PRICE_INCREMENT, &mut fld.0)?;
768        Ok(fld.value())
769    }
770
771
772    /// Returns true if `MinPriceIncrement` is present, Tag 969.
773    pub fn has_min_price_increment(&self) -> bool {
774        self.message.body.has(tag::MIN_PRICE_INCREMENT)
775    }
776
777
778
779
780    /// Sets `MinTradeVol`, Tag 562.
781    pub fn set_min_trade_vol(&mut self, val: Decimal, scale: i32) {
782        self.message.body.set_field(tag::MIN_TRADE_VOL, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
783    }
784
785    /// Gets `MinTradeVol`, Tag 562.
786    pub fn get_min_trade_vol(&self) -> Result<Decimal, MessageRejectErrorEnum> {
787        let mut fld = field::MinTradeVolField::new(Decimal::ZERO, 0);
788        self.message.body.get_field(tag::MIN_TRADE_VOL, &mut fld.0)?;
789        Ok(fld.value())
790    }
791
792
793    /// Returns true if `MinTradeVol` is present, Tag 562.
794    pub fn has_min_trade_vol(&self) -> bool {
795        self.message.body.has(tag::MIN_TRADE_VOL)
796    }
797
798
799
800
801    /// Sets `NTPositionLimit`, Tag 971.
802    pub fn set_nt_position_limit(&mut self, v: isize) {
803        self.message.body.set_field(tag::NT_POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
804    }
805
806    /// Gets `NTPositionLimit`, Tag 971.
807    pub fn get_nt_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
808        let mut fld = field::NTPositionLimitField::new(0);
809        self.message.body.get_field(tag::NT_POSITION_LIMIT, &mut fld.0)?;
810        Ok(fld.value())
811    }
812
813
814    /// Returns true if `NTPositionLimit` is present, Tag 971.
815    pub fn has_nt_position_limit(&self) -> bool {
816        self.message.body.has(tag::NT_POSITION_LIMIT)
817    }
818
819
820
821
822    /// Sets `NoEvents`, Tag 864.
823    pub fn set_no_events(&mut self, v: isize) {
824        self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
825    }
826
827    /// Gets `NoEvents`, Tag 864.
828    pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
829        let mut fld = field::NoEventsField::new(0);
830        self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
831        Ok(fld.value())
832    }
833
834
835    /// Returns true if `NoEvents` is present, Tag 864.
836    pub fn has_no_events(&self) -> bool {
837        self.message.body.has(tag::NO_EVENTS)
838    }
839
840
841
842
843    /// Sets `NoInstrumentParties`, Tag 1018.
844    pub fn set_no_instrument_parties(&mut self, v: isize) {
845        self.message.body.set_field(tag::NO_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
846    }
847
848    /// Gets `NoInstrumentParties`, Tag 1018.
849    pub fn get_no_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
850        let mut fld = field::NoInstrumentPartiesField::new(0);
851        self.message.body.get_field(tag::NO_INSTRUMENT_PARTIES, &mut fld.0)?;
852        Ok(fld.value())
853    }
854
855
856    /// Returns true if `NoInstrumentParties` is present, Tag 1018.
857    pub fn has_no_instrument_parties(&self) -> bool {
858        self.message.body.has(tag::NO_INSTRUMENT_PARTIES)
859    }
860
861
862
863
864    /// Sets `NoLegs`, Tag 555.
865    pub fn set_no_legs(&mut self, v: isize) {
866        self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
867    }
868
869    /// Gets `NoLegs`, Tag 555.
870    pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
871        let mut fld = field::NoLegsField::new(0);
872        self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
873        Ok(fld.value())
874    }
875
876
877    /// Returns true if `NoLegs` is present, Tag 555.
878    pub fn has_no_legs(&self) -> bool {
879        self.message.body.has(tag::NO_LEGS)
880    }
881
882
883
884
885    /// Sets `NoSecurityAltID`, Tag 454.
886    pub fn set_no_security_alt_id(&mut self, v: isize) {
887        self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
888    }
889
890    /// Gets `NoSecurityAltID`, Tag 454.
891    pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
892        let mut fld = field::NoSecurityAltIDField::new(0);
893        self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
894        Ok(fld.value())
895    }
896
897
898    /// Returns true if `NoSecurityAltID` is present, Tag 454.
899    pub fn has_no_security_alt_id(&self) -> bool {
900        self.message.body.has(tag::NO_SECURITY_ALT_ID)
901    }
902
903
904
905
906    /// Sets `NoUnderlyingSecurityAltID`, Tag 457.
907    pub fn set_no_underlying_security_alt_id(&mut self, v: isize) {
908        self.message.body.set_field(tag::NO_UNDERLYING_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
909    }
910
911    /// Gets `NoUnderlyingSecurityAltID`, Tag 457.
912    pub fn get_no_underlying_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
913        let mut fld = field::NoUnderlyingSecurityAltIDField::new(0);
914        self.message.body.get_field(tag::NO_UNDERLYING_SECURITY_ALT_ID, &mut fld.0)?;
915        Ok(fld.value())
916    }
917
918
919    /// Returns true if `NoUnderlyingSecurityAltID` is present, Tag 457.
920    pub fn has_no_underlying_security_alt_id(&self) -> bool {
921        self.message.body.has(tag::NO_UNDERLYING_SECURITY_ALT_ID)
922    }
923
924
925
926
927    /// Sets `NoUnderlyingStips`, Tag 887.
928    pub fn set_no_underlying_stips(&mut self, v: isize) {
929        self.message.body.set_field(tag::NO_UNDERLYING_STIPS, fixer::fix_int::FIXInt::from(v));
930    }
931
932    /// Gets `NoUnderlyingStips`, Tag 887.
933    pub fn get_no_underlying_stips(&self) -> Result<isize, MessageRejectErrorEnum> {
934        let mut fld = field::NoUnderlyingStipsField::new(0);
935        self.message.body.get_field(tag::NO_UNDERLYING_STIPS, &mut fld.0)?;
936        Ok(fld.value())
937    }
938
939
940    /// Returns true if `NoUnderlyingStips` is present, Tag 887.
941    pub fn has_no_underlying_stips(&self) -> bool {
942        self.message.body.has(tag::NO_UNDERLYING_STIPS)
943    }
944
945
946
947
948    /// Sets `NoUndlyInstrumentParties`, Tag 1058.
949    pub fn set_no_undly_instrument_parties(&mut self, v: isize) {
950        self.message.body.set_field(tag::NO_UNDLY_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
951    }
952
953    /// Gets `NoUndlyInstrumentParties`, Tag 1058.
954    pub fn get_no_undly_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
955        let mut fld = field::NoUndlyInstrumentPartiesField::new(0);
956        self.message.body.get_field(tag::NO_UNDLY_INSTRUMENT_PARTIES, &mut fld.0)?;
957        Ok(fld.value())
958    }
959
960
961    /// Returns true if `NoUndlyInstrumentParties` is present, Tag 1058.
962    pub fn has_no_undly_instrument_parties(&self) -> bool {
963        self.message.body.has(tag::NO_UNDLY_INSTRUMENT_PARTIES)
964    }
965
966
967
968
969    /// Sets `OptAttribute`, Tag 206.
970    pub fn set_opt_attribute(&mut self, v: String) {
971        self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
972    }
973
974    /// Gets `OptAttribute`, Tag 206.
975    pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
976        let mut fld = field::OptAttributeField::new(String::new());
977        self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
978        Ok(fld.value().to_string())
979    }
980
981
982    /// Returns true if `OptAttribute` is present, Tag 206.
983    pub fn has_opt_attribute(&self) -> bool {
984        self.message.body.has(tag::OPT_ATTRIBUTE)
985    }
986
987
988
989
990    /// Sets `Pool`, Tag 691.
991    pub fn set_pool(&mut self, v: String) {
992        self.message.body.set_field(tag::POOL, FIXString::from(v));
993    }
994
995    /// Gets `Pool`, Tag 691.
996    pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
997        let mut fld = field::PoolField::new(String::new());
998        self.message.body.get_field(tag::POOL, &mut fld.0)?;
999        Ok(fld.value().to_string())
1000    }
1001
1002
1003    /// Returns true if `Pool` is present, Tag 691.
1004    pub fn has_pool(&self) -> bool {
1005        self.message.body.has(tag::POOL)
1006    }
1007
1008
1009
1010
1011    /// Sets `PositionLimit`, Tag 970.
1012    pub fn set_position_limit(&mut self, v: isize) {
1013        self.message.body.set_field(tag::POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1014    }
1015
1016    /// Gets `PositionLimit`, Tag 970.
1017    pub fn get_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1018        let mut fld = field::PositionLimitField::new(0);
1019        self.message.body.get_field(tag::POSITION_LIMIT, &mut fld.0)?;
1020        Ok(fld.value())
1021    }
1022
1023
1024    /// Returns true if `PositionLimit` is present, Tag 970.
1025    pub fn has_position_limit(&self) -> bool {
1026        self.message.body.has(tag::POSITION_LIMIT)
1027    }
1028
1029
1030
1031
1032    /// Sets `Product`, Tag 460.
1033    pub fn set_product(&mut self, v: isize) {
1034        self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
1035    }
1036
1037    /// Gets `Product`, Tag 460.
1038    pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
1039        let mut fld = field::ProductField::new(0);
1040        self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
1041        Ok(fld.value())
1042    }
1043
1044
1045    /// Returns true if `Product` is present, Tag 460.
1046    pub fn has_product(&self) -> bool {
1047        self.message.body.has(tag::PRODUCT)
1048    }
1049
1050
1051
1052
1053    /// Sets `RedemptionDate`, Tag 240.
1054    pub fn set_redemption_date(&mut self, v: String) {
1055        self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
1056    }
1057
1058    /// Gets `RedemptionDate`, Tag 240.
1059    pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
1060        let mut fld = field::RedemptionDateField::new(String::new());
1061        self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
1062        Ok(fld.value().to_string())
1063    }
1064
1065
1066    /// Returns true if `RedemptionDate` is present, Tag 240.
1067    pub fn has_redemption_date(&self) -> bool {
1068        self.message.body.has(tag::REDEMPTION_DATE)
1069    }
1070
1071
1072
1073
1074    /// Sets `RepoCollateralSecurityType`, Tag 239.
1075    pub fn set_repo_collateral_security_type(&mut self, v: isize) {
1076        self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
1077    }
1078
1079    /// Gets `RepoCollateralSecurityType`, Tag 239.
1080    pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1081        let mut fld = field::RepoCollateralSecurityTypeField::new(0);
1082        self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
1083        Ok(fld.value())
1084    }
1085
1086
1087    /// Returns true if `RepoCollateralSecurityType` is present, Tag 239.
1088    pub fn has_repo_collateral_security_type(&self) -> bool {
1089        self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
1090    }
1091
1092
1093
1094
1095    /// Sets `RepurchaseRate`, Tag 227.
1096    pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
1097        self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1098    }
1099
1100    /// Gets `RepurchaseRate`, Tag 227.
1101    pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1102        let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
1103        self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
1104        Ok(fld.value())
1105    }
1106
1107
1108    /// Returns true if `RepurchaseRate` is present, Tag 227.
1109    pub fn has_repurchase_rate(&self) -> bool {
1110        self.message.body.has(tag::REPURCHASE_RATE)
1111    }
1112
1113
1114
1115
1116    /// Sets `RepurchaseTerm`, Tag 226.
1117    pub fn set_repurchase_term(&mut self, v: isize) {
1118        self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
1119    }
1120
1121    /// Gets `RepurchaseTerm`, Tag 226.
1122    pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
1123        let mut fld = field::RepurchaseTermField::new(0);
1124        self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
1125        Ok(fld.value())
1126    }
1127
1128
1129    /// Returns true if `RepurchaseTerm` is present, Tag 226.
1130    pub fn has_repurchase_term(&self) -> bool {
1131        self.message.body.has(tag::REPURCHASE_TERM)
1132    }
1133
1134
1135
1136
1137    /// Sets `RoundLot`, Tag 561.
1138    pub fn set_round_lot(&mut self, val: Decimal, scale: i32) {
1139        self.message.body.set_field(tag::ROUND_LOT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1140    }
1141
1142    /// Gets `RoundLot`, Tag 561.
1143    pub fn get_round_lot(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1144        let mut fld = field::RoundLotField::new(Decimal::ZERO, 0);
1145        self.message.body.get_field(tag::ROUND_LOT, &mut fld.0)?;
1146        Ok(fld.value())
1147    }
1148
1149
1150    /// Returns true if `RoundLot` is present, Tag 561.
1151    pub fn has_round_lot(&self) -> bool {
1152        self.message.body.has(tag::ROUND_LOT)
1153    }
1154
1155
1156
1157
1158    /// Sets `SecurityDesc`, Tag 107.
1159    pub fn set_security_desc(&mut self, v: String) {
1160        self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
1161    }
1162
1163    /// Gets `SecurityDesc`, Tag 107.
1164    pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1165        let mut fld = field::SecurityDescField::new(String::new());
1166        self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
1167        Ok(fld.value().to_string())
1168    }
1169
1170
1171    /// Returns true if `SecurityDesc` is present, Tag 107.
1172    pub fn has_security_desc(&self) -> bool {
1173        self.message.body.has(tag::SECURITY_DESC)
1174    }
1175
1176
1177
1178
1179    /// Sets `SecurityExchange`, Tag 207.
1180    pub fn set_security_exchange(&mut self, v: String) {
1181        self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
1182    }
1183
1184    /// Gets `SecurityExchange`, Tag 207.
1185    pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
1186        let mut fld = field::SecurityExchangeField::new(String::new());
1187        self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
1188        Ok(fld.value().to_string())
1189    }
1190
1191
1192    /// Returns true if `SecurityExchange` is present, Tag 207.
1193    pub fn has_security_exchange(&self) -> bool {
1194        self.message.body.has(tag::SECURITY_EXCHANGE)
1195    }
1196
1197
1198
1199
1200    /// Sets `SecurityID`, Tag 48.
1201    pub fn set_security_id(&mut self, v: String) {
1202        self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
1203    }
1204
1205    /// Gets `SecurityID`, Tag 48.
1206    pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
1207        let mut fld = field::SecurityIDField::new(String::new());
1208        self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
1209        Ok(fld.value().to_string())
1210    }
1211
1212
1213    /// Returns true if `SecurityID` is present, Tag 48.
1214    pub fn has_security_id(&self) -> bool {
1215        self.message.body.has(tag::SECURITY_ID)
1216    }
1217
1218
1219
1220
1221    /// Sets `SecurityIDSource`, Tag 22.
1222    pub fn set_security_id_source(&mut self, v: String) {
1223        self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
1224    }
1225
1226    /// Gets `SecurityIDSource`, Tag 22.
1227    pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
1228        let mut fld = field::SecurityIDSourceField::new(String::new());
1229        self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
1230        Ok(fld.value().to_string())
1231    }
1232
1233
1234    /// Returns true if `SecurityIDSource` is present, Tag 22.
1235    pub fn has_security_id_source(&self) -> bool {
1236        self.message.body.has(tag::SECURITY_ID_SOURCE)
1237    }
1238
1239
1240
1241
1242    /// Sets `SecurityReportID`, Tag 964.
1243    pub fn set_security_report_id(&mut self, v: isize) {
1244        self.message.body.set_field(tag::SECURITY_REPORT_ID, fixer::fix_int::FIXInt::from(v));
1245    }
1246
1247    /// Gets `SecurityReportID`, Tag 964.
1248    pub fn get_security_report_id(&self) -> Result<isize, MessageRejectErrorEnum> {
1249        let mut fld = field::SecurityReportIDField::new(0);
1250        self.message.body.get_field(tag::SECURITY_REPORT_ID, &mut fld.0)?;
1251        Ok(fld.value())
1252    }
1253
1254
1255    /// Returns true if `SecurityReportID` is present, Tag 964.
1256    pub fn has_security_report_id(&self) -> bool {
1257        self.message.body.has(tag::SECURITY_REPORT_ID)
1258    }
1259
1260
1261
1262
1263    /// Sets `SecurityReqID`, Tag 320.
1264    pub fn set_security_req_id(&mut self, v: String) {
1265        self.message.body.set_field(tag::SECURITY_REQ_ID, FIXString::from(v));
1266    }
1267
1268    /// Gets `SecurityReqID`, Tag 320.
1269    pub fn get_security_req_id(&self) -> Result<String, MessageRejectErrorEnum> {
1270        let mut fld = field::SecurityReqIDField::new(String::new());
1271        self.message.body.get_field(tag::SECURITY_REQ_ID, &mut fld.0)?;
1272        Ok(fld.value().to_string())
1273    }
1274
1275
1276    /// Returns true if `SecurityReqID` is present, Tag 320.
1277    pub fn has_security_req_id(&self) -> bool {
1278        self.message.body.has(tag::SECURITY_REQ_ID)
1279    }
1280
1281
1282
1283
1284    /// Sets `SecurityResponseID`, Tag 322.
1285    pub fn set_security_response_id(&mut self, v: String) {
1286        self.message.body.set_field(tag::SECURITY_RESPONSE_ID, FIXString::from(v));
1287    }
1288
1289    /// Gets `SecurityResponseID`, Tag 322.
1290    pub fn get_security_response_id(&self) -> Result<String, MessageRejectErrorEnum> {
1291        let mut fld = field::SecurityResponseIDField::new(String::new());
1292        self.message.body.get_field(tag::SECURITY_RESPONSE_ID, &mut fld.0)?;
1293        Ok(fld.value().to_string())
1294    }
1295
1296
1297    /// Returns true if `SecurityResponseID` is present, Tag 322.
1298    pub fn has_security_response_id(&self) -> bool {
1299        self.message.body.has(tag::SECURITY_RESPONSE_ID)
1300    }
1301
1302
1303
1304
1305    /// Sets `SecurityResponseType`, Tag 323.
1306    pub fn set_security_response_type(&mut self, v: isize) {
1307        self.message.body.set_field(tag::SECURITY_RESPONSE_TYPE, fixer::fix_int::FIXInt::from(v));
1308    }
1309
1310    /// Gets `SecurityResponseType`, Tag 323.
1311    pub fn get_security_response_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1312        let mut fld = field::SecurityResponseTypeField::new(0);
1313        self.message.body.get_field(tag::SECURITY_RESPONSE_TYPE, &mut fld.0)?;
1314        Ok(fld.value())
1315    }
1316
1317
1318    /// Returns true if `SecurityResponseType` is present, Tag 323.
1319    pub fn has_security_response_type(&self) -> bool {
1320        self.message.body.has(tag::SECURITY_RESPONSE_TYPE)
1321    }
1322
1323
1324
1325
1326    /// Sets `SecurityStatus`, Tag 965.
1327    pub fn set_security_status(&mut self, v: String) {
1328        self.message.body.set_field(tag::SECURITY_STATUS, FIXString::from(v));
1329    }
1330
1331    /// Gets `SecurityStatus`, Tag 965.
1332    pub fn get_security_status(&self) -> Result<String, MessageRejectErrorEnum> {
1333        let mut fld = field::SecurityStatusField::new(String::new());
1334        self.message.body.get_field(tag::SECURITY_STATUS, &mut fld.0)?;
1335        Ok(fld.value().to_string())
1336    }
1337
1338
1339    /// Returns true if `SecurityStatus` is present, Tag 965.
1340    pub fn has_security_status(&self) -> bool {
1341        self.message.body.has(tag::SECURITY_STATUS)
1342    }
1343
1344
1345
1346
1347    /// Sets `SecuritySubType`, Tag 762.
1348    pub fn set_security_sub_type(&mut self, v: String) {
1349        self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
1350    }
1351
1352    /// Gets `SecuritySubType`, Tag 762.
1353    pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
1354        let mut fld = field::SecuritySubTypeField::new(String::new());
1355        self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
1356        Ok(fld.value().to_string())
1357    }
1358
1359
1360    /// Returns true if `SecuritySubType` is present, Tag 762.
1361    pub fn has_security_sub_type(&self) -> bool {
1362        self.message.body.has(tag::SECURITY_SUB_TYPE)
1363    }
1364
1365
1366
1367
1368    /// Sets `SecurityType`, Tag 167.
1369    pub fn set_security_type(&mut self, v: String) {
1370        self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
1371    }
1372
1373    /// Gets `SecurityType`, Tag 167.
1374    pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
1375        let mut fld = field::SecurityTypeField::new(String::new());
1376        self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
1377        Ok(fld.value().to_string())
1378    }
1379
1380
1381    /// Returns true if `SecurityType` is present, Tag 167.
1382    pub fn has_security_type(&self) -> bool {
1383        self.message.body.has(tag::SECURITY_TYPE)
1384    }
1385
1386
1387
1388
1389    /// Sets `SecurityUpdateAction`, Tag 980.
1390    pub fn set_security_update_action(&mut self, v: String) {
1391        self.message.body.set_field(tag::SECURITY_UPDATE_ACTION, FIXString::from(v));
1392    }
1393
1394    /// Gets `SecurityUpdateAction`, Tag 980.
1395    pub fn get_security_update_action(&self) -> Result<String, MessageRejectErrorEnum> {
1396        let mut fld = field::SecurityUpdateActionField::new(String::new());
1397        self.message.body.get_field(tag::SECURITY_UPDATE_ACTION, &mut fld.0)?;
1398        Ok(fld.value().to_string())
1399    }
1400
1401
1402    /// Returns true if `SecurityUpdateAction` is present, Tag 980.
1403    pub fn has_security_update_action(&self) -> bool {
1404        self.message.body.has(tag::SECURITY_UPDATE_ACTION)
1405    }
1406
1407
1408
1409
1410    /// Sets `SettleOnOpenFlag`, Tag 966.
1411    pub fn set_settle_on_open_flag(&mut self, v: String) {
1412        self.message.body.set_field(tag::SETTLE_ON_OPEN_FLAG, FIXString::from(v));
1413    }
1414
1415    /// Gets `SettleOnOpenFlag`, Tag 966.
1416    pub fn get_settle_on_open_flag(&self) -> Result<String, MessageRejectErrorEnum> {
1417        let mut fld = field::SettleOnOpenFlagField::new(String::new());
1418        self.message.body.get_field(tag::SETTLE_ON_OPEN_FLAG, &mut fld.0)?;
1419        Ok(fld.value().to_string())
1420    }
1421
1422
1423    /// Returns true if `SettleOnOpenFlag` is present, Tag 966.
1424    pub fn has_settle_on_open_flag(&self) -> bool {
1425        self.message.body.has(tag::SETTLE_ON_OPEN_FLAG)
1426    }
1427
1428
1429
1430
1431    /// Sets `StateOrProvinceOfIssue`, Tag 471.
1432    pub fn set_state_or_province_of_issue(&mut self, v: String) {
1433        self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
1434    }
1435
1436    /// Gets `StateOrProvinceOfIssue`, Tag 471.
1437    pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1438        let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
1439        self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
1440        Ok(fld.value().to_string())
1441    }
1442
1443
1444    /// Returns true if `StateOrProvinceOfIssue` is present, Tag 471.
1445    pub fn has_state_or_province_of_issue(&self) -> bool {
1446        self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
1447    }
1448
1449
1450
1451
1452    /// Sets `StrikeCurrency`, Tag 947.
1453    pub fn set_strike_currency(&mut self, v: String) {
1454        self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
1455    }
1456
1457    /// Gets `StrikeCurrency`, Tag 947.
1458    pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1459        let mut fld = field::StrikeCurrencyField::new(String::new());
1460        self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
1461        Ok(fld.value().to_string())
1462    }
1463
1464
1465    /// Returns true if `StrikeCurrency` is present, Tag 947.
1466    pub fn has_strike_currency(&self) -> bool {
1467        self.message.body.has(tag::STRIKE_CURRENCY)
1468    }
1469
1470
1471
1472
1473    /// Sets `StrikeMultiplier`, Tag 967.
1474    pub fn set_strike_multiplier(&mut self, val: Decimal, scale: i32) {
1475        self.message.body.set_field(tag::STRIKE_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1476    }
1477
1478    /// Gets `StrikeMultiplier`, Tag 967.
1479    pub fn get_strike_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1480        let mut fld = field::StrikeMultiplierField::new(Decimal::ZERO, 0);
1481        self.message.body.get_field(tag::STRIKE_MULTIPLIER, &mut fld.0)?;
1482        Ok(fld.value())
1483    }
1484
1485
1486    /// Returns true if `StrikeMultiplier` is present, Tag 967.
1487    pub fn has_strike_multiplier(&self) -> bool {
1488        self.message.body.has(tag::STRIKE_MULTIPLIER)
1489    }
1490
1491
1492
1493
1494    /// Sets `StrikePrice`, Tag 202.
1495    pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
1496        self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1497    }
1498
1499    /// Gets `StrikePrice`, Tag 202.
1500    pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1501        let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
1502        self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
1503        Ok(fld.value())
1504    }
1505
1506
1507    /// Returns true if `StrikePrice` is present, Tag 202.
1508    pub fn has_strike_price(&self) -> bool {
1509        self.message.body.has(tag::STRIKE_PRICE)
1510    }
1511
1512
1513
1514
1515    /// Sets `StrikeValue`, Tag 968.
1516    pub fn set_strike_value(&mut self, val: Decimal, scale: i32) {
1517        self.message.body.set_field(tag::STRIKE_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1518    }
1519
1520    /// Gets `StrikeValue`, Tag 968.
1521    pub fn get_strike_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1522        let mut fld = field::StrikeValueField::new(Decimal::ZERO, 0);
1523        self.message.body.get_field(tag::STRIKE_VALUE, &mut fld.0)?;
1524        Ok(fld.value())
1525    }
1526
1527
1528    /// Returns true if `StrikeValue` is present, Tag 968.
1529    pub fn has_strike_value(&self) -> bool {
1530        self.message.body.has(tag::STRIKE_VALUE)
1531    }
1532
1533
1534
1535
1536    /// Sets `Symbol`, Tag 55.
1537    pub fn set_symbol(&mut self, v: String) {
1538        self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
1539    }
1540
1541    /// Gets `Symbol`, Tag 55.
1542    pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
1543        let mut fld = field::SymbolField::new(String::new());
1544        self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
1545        Ok(fld.value().to_string())
1546    }
1547
1548
1549    /// Returns true if `Symbol` is present, Tag 55.
1550    pub fn has_symbol(&self) -> bool {
1551        self.message.body.has(tag::SYMBOL)
1552    }
1553
1554
1555
1556
1557    /// Sets `SymbolSfx`, Tag 65.
1558    pub fn set_symbol_sfx(&mut self, v: String) {
1559        self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
1560    }
1561
1562    /// Gets `SymbolSfx`, Tag 65.
1563    pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
1564        let mut fld = field::SymbolSfxField::new(String::new());
1565        self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
1566        Ok(fld.value().to_string())
1567    }
1568
1569
1570    /// Returns true if `SymbolSfx` is present, Tag 65.
1571    pub fn has_symbol_sfx(&self) -> bool {
1572        self.message.body.has(tag::SYMBOL_SFX)
1573    }
1574
1575
1576
1577
1578    /// Sets `Text`, Tag 58.
1579    pub fn set_text(&mut self, v: String) {
1580        self.message.body.set_field(tag::TEXT, FIXString::from(v));
1581    }
1582
1583    /// Gets `Text`, Tag 58.
1584    pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
1585        let mut fld = field::TextField::new(String::new());
1586        self.message.body.get_field(tag::TEXT, &mut fld.0)?;
1587        Ok(fld.value().to_string())
1588    }
1589
1590
1591    /// Returns true if `Text` is present, Tag 58.
1592    pub fn has_text(&self) -> bool {
1593        self.message.body.has(tag::TEXT)
1594    }
1595
1596
1597
1598
1599    /// Sets `TimeUnit`, Tag 997.
1600    pub fn set_time_unit(&mut self, v: String) {
1601        self.message.body.set_field(tag::TIME_UNIT, FIXString::from(v));
1602    }
1603
1604    /// Gets `TimeUnit`, Tag 997.
1605    pub fn get_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
1606        let mut fld = field::TimeUnitField::new(String::new());
1607        self.message.body.get_field(tag::TIME_UNIT, &mut fld.0)?;
1608        Ok(fld.value().to_string())
1609    }
1610
1611
1612    /// Returns true if `TimeUnit` is present, Tag 997.
1613    pub fn has_time_unit(&self) -> bool {
1614        self.message.body.has(tag::TIME_UNIT)
1615    }
1616
1617
1618
1619
1620    /// Sets `TradingSessionID`, Tag 336.
1621    pub fn set_trading_session_id(&mut self, v: String) {
1622        self.message.body.set_field(tag::TRADING_SESSION_ID, FIXString::from(v));
1623    }
1624
1625    /// Gets `TradingSessionID`, Tag 336.
1626    pub fn get_trading_session_id(&self) -> Result<String, MessageRejectErrorEnum> {
1627        let mut fld = field::TradingSessionIDField::new(String::new());
1628        self.message.body.get_field(tag::TRADING_SESSION_ID, &mut fld.0)?;
1629        Ok(fld.value().to_string())
1630    }
1631
1632
1633    /// Returns true if `TradingSessionID` is present, Tag 336.
1634    pub fn has_trading_session_id(&self) -> bool {
1635        self.message.body.has(tag::TRADING_SESSION_ID)
1636    }
1637
1638
1639
1640
1641    /// Sets `TradingSessionSubID`, Tag 625.
1642    pub fn set_trading_session_sub_id(&mut self, v: String) {
1643        self.message.body.set_field(tag::TRADING_SESSION_SUB_ID, FIXString::from(v));
1644    }
1645
1646    /// Gets `TradingSessionSubID`, Tag 625.
1647    pub fn get_trading_session_sub_id(&self) -> Result<String, MessageRejectErrorEnum> {
1648        let mut fld = field::TradingSessionSubIDField::new(String::new());
1649        self.message.body.get_field(tag::TRADING_SESSION_SUB_ID, &mut fld.0)?;
1650        Ok(fld.value().to_string())
1651    }
1652
1653
1654    /// Returns true if `TradingSessionSubID` is present, Tag 625.
1655    pub fn has_trading_session_sub_id(&self) -> bool {
1656        self.message.body.has(tag::TRADING_SESSION_SUB_ID)
1657    }
1658
1659
1660
1661
1662    /// Sets `UnderlyingAdjustedQuantity`, Tag 1044.
1663    pub fn set_underlying_adjusted_quantity(&mut self, val: Decimal, scale: i32) {
1664        self.message.body.set_field(tag::UNDERLYING_ADJUSTED_QUANTITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1665    }
1666
1667    /// Gets `UnderlyingAdjustedQuantity`, Tag 1044.
1668    pub fn get_underlying_adjusted_quantity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1669        let mut fld = field::UnderlyingAdjustedQuantityField::new(Decimal::ZERO, 0);
1670        self.message.body.get_field(tag::UNDERLYING_ADJUSTED_QUANTITY, &mut fld.0)?;
1671        Ok(fld.value())
1672    }
1673
1674
1675    /// Returns true if `UnderlyingAdjustedQuantity` is present, Tag 1044.
1676    pub fn has_underlying_adjusted_quantity(&self) -> bool {
1677        self.message.body.has(tag::UNDERLYING_ADJUSTED_QUANTITY)
1678    }
1679
1680
1681
1682
1683    /// Sets `UnderlyingAllocationPercent`, Tag 972.
1684    pub fn set_underlying_allocation_percent(&mut self, val: Decimal, scale: i32) {
1685        self.message.body.set_field(tag::UNDERLYING_ALLOCATION_PERCENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1686    }
1687
1688    /// Gets `UnderlyingAllocationPercent`, Tag 972.
1689    pub fn get_underlying_allocation_percent(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1690        let mut fld = field::UnderlyingAllocationPercentField::new(Decimal::ZERO, 0);
1691        self.message.body.get_field(tag::UNDERLYING_ALLOCATION_PERCENT, &mut fld.0)?;
1692        Ok(fld.value())
1693    }
1694
1695
1696    /// Returns true if `UnderlyingAllocationPercent` is present, Tag 972.
1697    pub fn has_underlying_allocation_percent(&self) -> bool {
1698        self.message.body.has(tag::UNDERLYING_ALLOCATION_PERCENT)
1699    }
1700
1701
1702
1703
1704    /// Sets `UnderlyingCFICode`, Tag 463.
1705    pub fn set_underlying_cfi_code(&mut self, v: String) {
1706        self.message.body.set_field(tag::UNDERLYING_CFI_CODE, FIXString::from(v));
1707    }
1708
1709    /// Gets `UnderlyingCFICode`, Tag 463.
1710    pub fn get_underlying_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
1711        let mut fld = field::UnderlyingCFICodeField::new(String::new());
1712        self.message.body.get_field(tag::UNDERLYING_CFI_CODE, &mut fld.0)?;
1713        Ok(fld.value().to_string())
1714    }
1715
1716
1717    /// Returns true if `UnderlyingCFICode` is present, Tag 463.
1718    pub fn has_underlying_cfi_code(&self) -> bool {
1719        self.message.body.has(tag::UNDERLYING_CFI_CODE)
1720    }
1721
1722
1723
1724
1725    /// Sets `UnderlyingCPProgram`, Tag 877.
1726    pub fn set_underlying_cp_program(&mut self, v: String) {
1727        self.message.body.set_field(tag::UNDERLYING_CP_PROGRAM, FIXString::from(v));
1728    }
1729
1730    /// Gets `UnderlyingCPProgram`, Tag 877.
1731    pub fn get_underlying_cp_program(&self) -> Result<String, MessageRejectErrorEnum> {
1732        let mut fld = field::UnderlyingCPProgramField::new(String::new());
1733        self.message.body.get_field(tag::UNDERLYING_CP_PROGRAM, &mut fld.0)?;
1734        Ok(fld.value().to_string())
1735    }
1736
1737
1738    /// Returns true if `UnderlyingCPProgram` is present, Tag 877.
1739    pub fn has_underlying_cp_program(&self) -> bool {
1740        self.message.body.has(tag::UNDERLYING_CP_PROGRAM)
1741    }
1742
1743
1744
1745
1746    /// Sets `UnderlyingCPRegType`, Tag 878.
1747    pub fn set_underlying_cp_reg_type(&mut self, v: String) {
1748        self.message.body.set_field(tag::UNDERLYING_CP_REG_TYPE, FIXString::from(v));
1749    }
1750
1751    /// Gets `UnderlyingCPRegType`, Tag 878.
1752    pub fn get_underlying_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
1753        let mut fld = field::UnderlyingCPRegTypeField::new(String::new());
1754        self.message.body.get_field(tag::UNDERLYING_CP_REG_TYPE, &mut fld.0)?;
1755        Ok(fld.value().to_string())
1756    }
1757
1758
1759    /// Returns true if `UnderlyingCPRegType` is present, Tag 878.
1760    pub fn has_underlying_cp_reg_type(&self) -> bool {
1761        self.message.body.has(tag::UNDERLYING_CP_REG_TYPE)
1762    }
1763
1764
1765
1766
1767    /// Sets `UnderlyingCapValue`, Tag 1038.
1768    pub fn set_underlying_cap_value(&mut self, val: Decimal, scale: i32) {
1769        self.message.body.set_field(tag::UNDERLYING_CAP_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1770    }
1771
1772    /// Gets `UnderlyingCapValue`, Tag 1038.
1773    pub fn get_underlying_cap_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1774        let mut fld = field::UnderlyingCapValueField::new(Decimal::ZERO, 0);
1775        self.message.body.get_field(tag::UNDERLYING_CAP_VALUE, &mut fld.0)?;
1776        Ok(fld.value())
1777    }
1778
1779
1780    /// Returns true if `UnderlyingCapValue` is present, Tag 1038.
1781    pub fn has_underlying_cap_value(&self) -> bool {
1782        self.message.body.has(tag::UNDERLYING_CAP_VALUE)
1783    }
1784
1785
1786
1787
1788    /// Sets `UnderlyingCashAmount`, Tag 973.
1789    pub fn set_underlying_cash_amount(&mut self, val: Decimal, scale: i32) {
1790        self.message.body.set_field(tag::UNDERLYING_CASH_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1791    }
1792
1793    /// Gets `UnderlyingCashAmount`, Tag 973.
1794    pub fn get_underlying_cash_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1795        let mut fld = field::UnderlyingCashAmountField::new(Decimal::ZERO, 0);
1796        self.message.body.get_field(tag::UNDERLYING_CASH_AMOUNT, &mut fld.0)?;
1797        Ok(fld.value())
1798    }
1799
1800
1801    /// Returns true if `UnderlyingCashAmount` is present, Tag 973.
1802    pub fn has_underlying_cash_amount(&self) -> bool {
1803        self.message.body.has(tag::UNDERLYING_CASH_AMOUNT)
1804    }
1805
1806
1807
1808
1809    /// Sets `UnderlyingCashType`, Tag 974.
1810    pub fn set_underlying_cash_type(&mut self, v: String) {
1811        self.message.body.set_field(tag::UNDERLYING_CASH_TYPE, FIXString::from(v));
1812    }
1813
1814    /// Gets `UnderlyingCashType`, Tag 974.
1815    pub fn get_underlying_cash_type(&self) -> Result<String, MessageRejectErrorEnum> {
1816        let mut fld = field::UnderlyingCashTypeField::new(String::new());
1817        self.message.body.get_field(tag::UNDERLYING_CASH_TYPE, &mut fld.0)?;
1818        Ok(fld.value().to_string())
1819    }
1820
1821
1822    /// Returns true if `UnderlyingCashType` is present, Tag 974.
1823    pub fn has_underlying_cash_type(&self) -> bool {
1824        self.message.body.has(tag::UNDERLYING_CASH_TYPE)
1825    }
1826
1827
1828
1829
1830    /// Sets `UnderlyingContractMultiplier`, Tag 436.
1831    pub fn set_underlying_contract_multiplier(&mut self, val: Decimal, scale: i32) {
1832        self.message.body.set_field(tag::UNDERLYING_CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1833    }
1834
1835    /// Gets `UnderlyingContractMultiplier`, Tag 436.
1836    pub fn get_underlying_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1837        let mut fld = field::UnderlyingContractMultiplierField::new(Decimal::ZERO, 0);
1838        self.message.body.get_field(tag::UNDERLYING_CONTRACT_MULTIPLIER, &mut fld.0)?;
1839        Ok(fld.value())
1840    }
1841
1842
1843    /// Returns true if `UnderlyingContractMultiplier` is present, Tag 436.
1844    pub fn has_underlying_contract_multiplier(&self) -> bool {
1845        self.message.body.has(tag::UNDERLYING_CONTRACT_MULTIPLIER)
1846    }
1847
1848
1849
1850
1851    /// Sets `UnderlyingCountryOfIssue`, Tag 592.
1852    pub fn set_underlying_country_of_issue(&mut self, v: String) {
1853        self.message.body.set_field(tag::UNDERLYING_COUNTRY_OF_ISSUE, FIXString::from(v));
1854    }
1855
1856    /// Gets `UnderlyingCountryOfIssue`, Tag 592.
1857    pub fn get_underlying_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1858        let mut fld = field::UnderlyingCountryOfIssueField::new(String::new());
1859        self.message.body.get_field(tag::UNDERLYING_COUNTRY_OF_ISSUE, &mut fld.0)?;
1860        Ok(fld.value().to_string())
1861    }
1862
1863
1864    /// Returns true if `UnderlyingCountryOfIssue` is present, Tag 592.
1865    pub fn has_underlying_country_of_issue(&self) -> bool {
1866        self.message.body.has(tag::UNDERLYING_COUNTRY_OF_ISSUE)
1867    }
1868
1869
1870
1871
1872    /// Sets `UnderlyingCouponPaymentDate`, Tag 241.
1873    pub fn set_underlying_coupon_payment_date(&mut self, v: String) {
1874        self.message.body.set_field(tag::UNDERLYING_COUPON_PAYMENT_DATE, FIXString::from(v));
1875    }
1876
1877    /// Gets `UnderlyingCouponPaymentDate`, Tag 241.
1878    pub fn get_underlying_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
1879        let mut fld = field::UnderlyingCouponPaymentDateField::new(String::new());
1880        self.message.body.get_field(tag::UNDERLYING_COUPON_PAYMENT_DATE, &mut fld.0)?;
1881        Ok(fld.value().to_string())
1882    }
1883
1884
1885    /// Returns true if `UnderlyingCouponPaymentDate` is present, Tag 241.
1886    pub fn has_underlying_coupon_payment_date(&self) -> bool {
1887        self.message.body.has(tag::UNDERLYING_COUPON_PAYMENT_DATE)
1888    }
1889
1890
1891
1892
1893    /// Sets `UnderlyingCouponRate`, Tag 435.
1894    pub fn set_underlying_coupon_rate(&mut self, val: Decimal, scale: i32) {
1895        self.message.body.set_field(tag::UNDERLYING_COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1896    }
1897
1898    /// Gets `UnderlyingCouponRate`, Tag 435.
1899    pub fn get_underlying_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1900        let mut fld = field::UnderlyingCouponRateField::new(Decimal::ZERO, 0);
1901        self.message.body.get_field(tag::UNDERLYING_COUPON_RATE, &mut fld.0)?;
1902        Ok(fld.value())
1903    }
1904
1905
1906    /// Returns true if `UnderlyingCouponRate` is present, Tag 435.
1907    pub fn has_underlying_coupon_rate(&self) -> bool {
1908        self.message.body.has(tag::UNDERLYING_COUPON_RATE)
1909    }
1910
1911
1912
1913
1914    /// Sets `UnderlyingCreditRating`, Tag 256.
1915    pub fn set_underlying_credit_rating(&mut self, v: String) {
1916        self.message.body.set_field(tag::UNDERLYING_CREDIT_RATING, FIXString::from(v));
1917    }
1918
1919    /// Gets `UnderlyingCreditRating`, Tag 256.
1920    pub fn get_underlying_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
1921        let mut fld = field::UnderlyingCreditRatingField::new(String::new());
1922        self.message.body.get_field(tag::UNDERLYING_CREDIT_RATING, &mut fld.0)?;
1923        Ok(fld.value().to_string())
1924    }
1925
1926
1927    /// Returns true if `UnderlyingCreditRating` is present, Tag 256.
1928    pub fn has_underlying_credit_rating(&self) -> bool {
1929        self.message.body.has(tag::UNDERLYING_CREDIT_RATING)
1930    }
1931
1932
1933
1934
1935    /// Sets `UnderlyingCurrency`, Tag 318.
1936    pub fn set_underlying_currency(&mut self, v: String) {
1937        self.message.body.set_field(tag::UNDERLYING_CURRENCY, FIXString::from(v));
1938    }
1939
1940    /// Gets `UnderlyingCurrency`, Tag 318.
1941    pub fn get_underlying_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1942        let mut fld = field::UnderlyingCurrencyField::new(String::new());
1943        self.message.body.get_field(tag::UNDERLYING_CURRENCY, &mut fld.0)?;
1944        Ok(fld.value().to_string())
1945    }
1946
1947
1948    /// Returns true if `UnderlyingCurrency` is present, Tag 318.
1949    pub fn has_underlying_currency(&self) -> bool {
1950        self.message.body.has(tag::UNDERLYING_CURRENCY)
1951    }
1952
1953
1954
1955
1956    /// Sets `UnderlyingCurrentValue`, Tag 885.
1957    pub fn set_underlying_current_value(&mut self, val: Decimal, scale: i32) {
1958        self.message.body.set_field(tag::UNDERLYING_CURRENT_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1959    }
1960
1961    /// Gets `UnderlyingCurrentValue`, Tag 885.
1962    pub fn get_underlying_current_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1963        let mut fld = field::UnderlyingCurrentValueField::new(Decimal::ZERO, 0);
1964        self.message.body.get_field(tag::UNDERLYING_CURRENT_VALUE, &mut fld.0)?;
1965        Ok(fld.value())
1966    }
1967
1968
1969    /// Returns true if `UnderlyingCurrentValue` is present, Tag 885.
1970    pub fn has_underlying_current_value(&self) -> bool {
1971        self.message.body.has(tag::UNDERLYING_CURRENT_VALUE)
1972    }
1973
1974
1975
1976
1977    /// Sets `UnderlyingDirtyPrice`, Tag 882.
1978    pub fn set_underlying_dirty_price(&mut self, val: Decimal, scale: i32) {
1979        self.message.body.set_field(tag::UNDERLYING_DIRTY_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1980    }
1981
1982    /// Gets `UnderlyingDirtyPrice`, Tag 882.
1983    pub fn get_underlying_dirty_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1984        let mut fld = field::UnderlyingDirtyPriceField::new(Decimal::ZERO, 0);
1985        self.message.body.get_field(tag::UNDERLYING_DIRTY_PRICE, &mut fld.0)?;
1986        Ok(fld.value())
1987    }
1988
1989
1990    /// Returns true if `UnderlyingDirtyPrice` is present, Tag 882.
1991    pub fn has_underlying_dirty_price(&self) -> bool {
1992        self.message.body.has(tag::UNDERLYING_DIRTY_PRICE)
1993    }
1994
1995
1996
1997
1998    /// Sets `UnderlyingEndPrice`, Tag 883.
1999    pub fn set_underlying_end_price(&mut self, val: Decimal, scale: i32) {
2000        self.message.body.set_field(tag::UNDERLYING_END_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2001    }
2002
2003    /// Gets `UnderlyingEndPrice`, Tag 883.
2004    pub fn get_underlying_end_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2005        let mut fld = field::UnderlyingEndPriceField::new(Decimal::ZERO, 0);
2006        self.message.body.get_field(tag::UNDERLYING_END_PRICE, &mut fld.0)?;
2007        Ok(fld.value())
2008    }
2009
2010
2011    /// Returns true if `UnderlyingEndPrice` is present, Tag 883.
2012    pub fn has_underlying_end_price(&self) -> bool {
2013        self.message.body.has(tag::UNDERLYING_END_PRICE)
2014    }
2015
2016
2017
2018
2019    /// Sets `UnderlyingEndValue`, Tag 886.
2020    pub fn set_underlying_end_value(&mut self, val: Decimal, scale: i32) {
2021        self.message.body.set_field(tag::UNDERLYING_END_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2022    }
2023
2024    /// Gets `UnderlyingEndValue`, Tag 886.
2025    pub fn get_underlying_end_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2026        let mut fld = field::UnderlyingEndValueField::new(Decimal::ZERO, 0);
2027        self.message.body.get_field(tag::UNDERLYING_END_VALUE, &mut fld.0)?;
2028        Ok(fld.value())
2029    }
2030
2031
2032    /// Returns true if `UnderlyingEndValue` is present, Tag 886.
2033    pub fn has_underlying_end_value(&self) -> bool {
2034        self.message.body.has(tag::UNDERLYING_END_VALUE)
2035    }
2036
2037
2038
2039
2040    /// Sets `UnderlyingFXRate`, Tag 1045.
2041    pub fn set_underlying_fx_rate(&mut self, val: Decimal, scale: i32) {
2042        self.message.body.set_field(tag::UNDERLYING_FX_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2043    }
2044
2045    /// Gets `UnderlyingFXRate`, Tag 1045.
2046    pub fn get_underlying_fx_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2047        let mut fld = field::UnderlyingFXRateField::new(Decimal::ZERO, 0);
2048        self.message.body.get_field(tag::UNDERLYING_FX_RATE, &mut fld.0)?;
2049        Ok(fld.value())
2050    }
2051
2052
2053    /// Returns true if `UnderlyingFXRate` is present, Tag 1045.
2054    pub fn has_underlying_fx_rate(&self) -> bool {
2055        self.message.body.has(tag::UNDERLYING_FX_RATE)
2056    }
2057
2058
2059
2060
2061    /// Sets `UnderlyingFXRateCalc`, Tag 1046.
2062    pub fn set_underlying_fx_rate_calc(&mut self, v: String) {
2063        self.message.body.set_field(tag::UNDERLYING_FX_RATE_CALC, FIXString::from(v));
2064    }
2065
2066    /// Gets `UnderlyingFXRateCalc`, Tag 1046.
2067    pub fn get_underlying_fx_rate_calc(&self) -> Result<String, MessageRejectErrorEnum> {
2068        let mut fld = field::UnderlyingFXRateCalcField::new(String::new());
2069        self.message.body.get_field(tag::UNDERLYING_FX_RATE_CALC, &mut fld.0)?;
2070        Ok(fld.value().to_string())
2071    }
2072
2073
2074    /// Returns true if `UnderlyingFXRateCalc` is present, Tag 1046.
2075    pub fn has_underlying_fx_rate_calc(&self) -> bool {
2076        self.message.body.has(tag::UNDERLYING_FX_RATE_CALC)
2077    }
2078
2079
2080
2081
2082    /// Sets `UnderlyingFactor`, Tag 246.
2083    pub fn set_underlying_factor(&mut self, val: Decimal, scale: i32) {
2084        self.message.body.set_field(tag::UNDERLYING_FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2085    }
2086
2087    /// Gets `UnderlyingFactor`, Tag 246.
2088    pub fn get_underlying_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2089        let mut fld = field::UnderlyingFactorField::new(Decimal::ZERO, 0);
2090        self.message.body.get_field(tag::UNDERLYING_FACTOR, &mut fld.0)?;
2091        Ok(fld.value())
2092    }
2093
2094
2095    /// Returns true if `UnderlyingFactor` is present, Tag 246.
2096    pub fn has_underlying_factor(&self) -> bool {
2097        self.message.body.has(tag::UNDERLYING_FACTOR)
2098    }
2099
2100
2101
2102
2103    /// Sets `UnderlyingInstrRegistry`, Tag 595.
2104    pub fn set_underlying_instr_registry(&mut self, v: String) {
2105        self.message.body.set_field(tag::UNDERLYING_INSTR_REGISTRY, FIXString::from(v));
2106    }
2107
2108    /// Gets `UnderlyingInstrRegistry`, Tag 595.
2109    pub fn get_underlying_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
2110        let mut fld = field::UnderlyingInstrRegistryField::new(String::new());
2111        self.message.body.get_field(tag::UNDERLYING_INSTR_REGISTRY, &mut fld.0)?;
2112        Ok(fld.value().to_string())
2113    }
2114
2115
2116    /// Returns true if `UnderlyingInstrRegistry` is present, Tag 595.
2117    pub fn has_underlying_instr_registry(&self) -> bool {
2118        self.message.body.has(tag::UNDERLYING_INSTR_REGISTRY)
2119    }
2120
2121
2122
2123
2124    /// Sets `UnderlyingIssueDate`, Tag 242.
2125    pub fn set_underlying_issue_date(&mut self, v: String) {
2126        self.message.body.set_field(tag::UNDERLYING_ISSUE_DATE, FIXString::from(v));
2127    }
2128
2129    /// Gets `UnderlyingIssueDate`, Tag 242.
2130    pub fn get_underlying_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
2131        let mut fld = field::UnderlyingIssueDateField::new(String::new());
2132        self.message.body.get_field(tag::UNDERLYING_ISSUE_DATE, &mut fld.0)?;
2133        Ok(fld.value().to_string())
2134    }
2135
2136
2137    /// Returns true if `UnderlyingIssueDate` is present, Tag 242.
2138    pub fn has_underlying_issue_date(&self) -> bool {
2139        self.message.body.has(tag::UNDERLYING_ISSUE_DATE)
2140    }
2141
2142
2143
2144
2145    /// Sets `UnderlyingIssuer`, Tag 306.
2146    pub fn set_underlying_issuer(&mut self, v: String) {
2147        self.message.body.set_field(tag::UNDERLYING_ISSUER, FIXString::from(v));
2148    }
2149
2150    /// Gets `UnderlyingIssuer`, Tag 306.
2151    pub fn get_underlying_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
2152        let mut fld = field::UnderlyingIssuerField::new(String::new());
2153        self.message.body.get_field(tag::UNDERLYING_ISSUER, &mut fld.0)?;
2154        Ok(fld.value().to_string())
2155    }
2156
2157
2158    /// Returns true if `UnderlyingIssuer` is present, Tag 306.
2159    pub fn has_underlying_issuer(&self) -> bool {
2160        self.message.body.has(tag::UNDERLYING_ISSUER)
2161    }
2162
2163
2164
2165
2166    /// Sets `UnderlyingLocaleOfIssue`, Tag 594.
2167    pub fn set_underlying_locale_of_issue(&mut self, v: String) {
2168        self.message.body.set_field(tag::UNDERLYING_LOCALE_OF_ISSUE, FIXString::from(v));
2169    }
2170
2171    /// Gets `UnderlyingLocaleOfIssue`, Tag 594.
2172    pub fn get_underlying_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2173        let mut fld = field::UnderlyingLocaleOfIssueField::new(String::new());
2174        self.message.body.get_field(tag::UNDERLYING_LOCALE_OF_ISSUE, &mut fld.0)?;
2175        Ok(fld.value().to_string())
2176    }
2177
2178
2179    /// Returns true if `UnderlyingLocaleOfIssue` is present, Tag 594.
2180    pub fn has_underlying_locale_of_issue(&self) -> bool {
2181        self.message.body.has(tag::UNDERLYING_LOCALE_OF_ISSUE)
2182    }
2183
2184
2185
2186
2187    /// Sets `UnderlyingMaturityDate`, Tag 542.
2188    pub fn set_underlying_maturity_date(&mut self, v: String) {
2189        self.message.body.set_field(tag::UNDERLYING_MATURITY_DATE, FIXString::from(v));
2190    }
2191
2192    /// Gets `UnderlyingMaturityDate`, Tag 542.
2193    pub fn get_underlying_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
2194        let mut fld = field::UnderlyingMaturityDateField::new(String::new());
2195        self.message.body.get_field(tag::UNDERLYING_MATURITY_DATE, &mut fld.0)?;
2196        Ok(fld.value().to_string())
2197    }
2198
2199
2200    /// Returns true if `UnderlyingMaturityDate` is present, Tag 542.
2201    pub fn has_underlying_maturity_date(&self) -> bool {
2202        self.message.body.has(tag::UNDERLYING_MATURITY_DATE)
2203    }
2204
2205
2206
2207
2208    /// Sets `UnderlyingMaturityMonthYear`, Tag 313.
2209    pub fn set_underlying_maturity_month_year(&mut self, v: String) {
2210        self.message.body.set_field(tag::UNDERLYING_MATURITY_MONTH_YEAR, FIXString::from(v));
2211    }
2212
2213    /// Gets `UnderlyingMaturityMonthYear`, Tag 313.
2214    pub fn get_underlying_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
2215        let mut fld = field::UnderlyingMaturityMonthYearField::new(String::new());
2216        self.message.body.get_field(tag::UNDERLYING_MATURITY_MONTH_YEAR, &mut fld.0)?;
2217        Ok(fld.value().to_string())
2218    }
2219
2220
2221    /// Returns true if `UnderlyingMaturityMonthYear` is present, Tag 313.
2222    pub fn has_underlying_maturity_month_year(&self) -> bool {
2223        self.message.body.has(tag::UNDERLYING_MATURITY_MONTH_YEAR)
2224    }
2225
2226
2227
2228
2229    /// Sets `UnderlyingOptAttribute`, Tag 317.
2230    pub fn set_underlying_opt_attribute(&mut self, v: String) {
2231        self.message.body.set_field(tag::UNDERLYING_OPT_ATTRIBUTE, FIXString::from(v));
2232    }
2233
2234    /// Gets `UnderlyingOptAttribute`, Tag 317.
2235    pub fn get_underlying_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
2236        let mut fld = field::UnderlyingOptAttributeField::new(String::new());
2237        self.message.body.get_field(tag::UNDERLYING_OPT_ATTRIBUTE, &mut fld.0)?;
2238        Ok(fld.value().to_string())
2239    }
2240
2241
2242    /// Returns true if `UnderlyingOptAttribute` is present, Tag 317.
2243    pub fn has_underlying_opt_attribute(&self) -> bool {
2244        self.message.body.has(tag::UNDERLYING_OPT_ATTRIBUTE)
2245    }
2246
2247
2248
2249
2250    /// Sets `UnderlyingProduct`, Tag 462.
2251    pub fn set_underlying_product(&mut self, v: isize) {
2252        self.message.body.set_field(tag::UNDERLYING_PRODUCT, fixer::fix_int::FIXInt::from(v));
2253    }
2254
2255    /// Gets `UnderlyingProduct`, Tag 462.
2256    pub fn get_underlying_product(&self) -> Result<isize, MessageRejectErrorEnum> {
2257        let mut fld = field::UnderlyingProductField::new(0);
2258        self.message.body.get_field(tag::UNDERLYING_PRODUCT, &mut fld.0)?;
2259        Ok(fld.value())
2260    }
2261
2262
2263    /// Returns true if `UnderlyingProduct` is present, Tag 462.
2264    pub fn has_underlying_product(&self) -> bool {
2265        self.message.body.has(tag::UNDERLYING_PRODUCT)
2266    }
2267
2268
2269
2270
2271    /// Sets `UnderlyingPx`, Tag 810.
2272    pub fn set_underlying_px(&mut self, val: Decimal, scale: i32) {
2273        self.message.body.set_field(tag::UNDERLYING_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2274    }
2275
2276    /// Gets `UnderlyingPx`, Tag 810.
2277    pub fn get_underlying_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2278        let mut fld = field::UnderlyingPxField::new(Decimal::ZERO, 0);
2279        self.message.body.get_field(tag::UNDERLYING_PX, &mut fld.0)?;
2280        Ok(fld.value())
2281    }
2282
2283
2284    /// Returns true if `UnderlyingPx` is present, Tag 810.
2285    pub fn has_underlying_px(&self) -> bool {
2286        self.message.body.has(tag::UNDERLYING_PX)
2287    }
2288
2289
2290
2291
2292    /// Sets `UnderlyingQty`, Tag 879.
2293    pub fn set_underlying_qty(&mut self, val: Decimal, scale: i32) {
2294        self.message.body.set_field(tag::UNDERLYING_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2295    }
2296
2297    /// Gets `UnderlyingQty`, Tag 879.
2298    pub fn get_underlying_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2299        let mut fld = field::UnderlyingQtyField::new(Decimal::ZERO, 0);
2300        self.message.body.get_field(tag::UNDERLYING_QTY, &mut fld.0)?;
2301        Ok(fld.value())
2302    }
2303
2304
2305    /// Returns true if `UnderlyingQty` is present, Tag 879.
2306    pub fn has_underlying_qty(&self) -> bool {
2307        self.message.body.has(tag::UNDERLYING_QTY)
2308    }
2309
2310
2311
2312
2313    /// Sets `UnderlyingRedemptionDate`, Tag 247.
2314    pub fn set_underlying_redemption_date(&mut self, v: String) {
2315        self.message.body.set_field(tag::UNDERLYING_REDEMPTION_DATE, FIXString::from(v));
2316    }
2317
2318    /// Gets `UnderlyingRedemptionDate`, Tag 247.
2319    pub fn get_underlying_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
2320        let mut fld = field::UnderlyingRedemptionDateField::new(String::new());
2321        self.message.body.get_field(tag::UNDERLYING_REDEMPTION_DATE, &mut fld.0)?;
2322        Ok(fld.value().to_string())
2323    }
2324
2325
2326    /// Returns true if `UnderlyingRedemptionDate` is present, Tag 247.
2327    pub fn has_underlying_redemption_date(&self) -> bool {
2328        self.message.body.has(tag::UNDERLYING_REDEMPTION_DATE)
2329    }
2330
2331
2332
2333
2334    /// Sets `UnderlyingRepoCollateralSecurityType`, Tag 243.
2335    pub fn set_underlying_repo_collateral_security_type(&mut self, v: isize) {
2336        self.message.body.set_field(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
2337    }
2338
2339    /// Gets `UnderlyingRepoCollateralSecurityType`, Tag 243.
2340    pub fn get_underlying_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2341        let mut fld = field::UnderlyingRepoCollateralSecurityTypeField::new(0);
2342        self.message.body.get_field(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
2343        Ok(fld.value())
2344    }
2345
2346
2347    /// Returns true if `UnderlyingRepoCollateralSecurityType` is present, Tag 243.
2348    pub fn has_underlying_repo_collateral_security_type(&self) -> bool {
2349        self.message.body.has(tag::UNDERLYING_REPO_COLLATERAL_SECURITY_TYPE)
2350    }
2351
2352
2353
2354
2355    /// Sets `UnderlyingRepurchaseRate`, Tag 245.
2356    pub fn set_underlying_repurchase_rate(&mut self, val: Decimal, scale: i32) {
2357        self.message.body.set_field(tag::UNDERLYING_REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2358    }
2359
2360    /// Gets `UnderlyingRepurchaseRate`, Tag 245.
2361    pub fn get_underlying_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2362        let mut fld = field::UnderlyingRepurchaseRateField::new(Decimal::ZERO, 0);
2363        self.message.body.get_field(tag::UNDERLYING_REPURCHASE_RATE, &mut fld.0)?;
2364        Ok(fld.value())
2365    }
2366
2367
2368    /// Returns true if `UnderlyingRepurchaseRate` is present, Tag 245.
2369    pub fn has_underlying_repurchase_rate(&self) -> bool {
2370        self.message.body.has(tag::UNDERLYING_REPURCHASE_RATE)
2371    }
2372
2373
2374
2375
2376    /// Sets `UnderlyingRepurchaseTerm`, Tag 244.
2377    pub fn set_underlying_repurchase_term(&mut self, v: isize) {
2378        self.message.body.set_field(tag::UNDERLYING_REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
2379    }
2380
2381    /// Gets `UnderlyingRepurchaseTerm`, Tag 244.
2382    pub fn get_underlying_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
2383        let mut fld = field::UnderlyingRepurchaseTermField::new(0);
2384        self.message.body.get_field(tag::UNDERLYING_REPURCHASE_TERM, &mut fld.0)?;
2385        Ok(fld.value())
2386    }
2387
2388
2389    /// Returns true if `UnderlyingRepurchaseTerm` is present, Tag 244.
2390    pub fn has_underlying_repurchase_term(&self) -> bool {
2391        self.message.body.has(tag::UNDERLYING_REPURCHASE_TERM)
2392    }
2393
2394
2395
2396
2397    /// Sets `UnderlyingSecurityDesc`, Tag 307.
2398    pub fn set_underlying_security_desc(&mut self, v: String) {
2399        self.message.body.set_field(tag::UNDERLYING_SECURITY_DESC, FIXString::from(v));
2400    }
2401
2402    /// Gets `UnderlyingSecurityDesc`, Tag 307.
2403    pub fn get_underlying_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2404        let mut fld = field::UnderlyingSecurityDescField::new(String::new());
2405        self.message.body.get_field(tag::UNDERLYING_SECURITY_DESC, &mut fld.0)?;
2406        Ok(fld.value().to_string())
2407    }
2408
2409
2410    /// Returns true if `UnderlyingSecurityDesc` is present, Tag 307.
2411    pub fn has_underlying_security_desc(&self) -> bool {
2412        self.message.body.has(tag::UNDERLYING_SECURITY_DESC)
2413    }
2414
2415
2416
2417
2418    /// Sets `UnderlyingSecurityExchange`, Tag 308.
2419    pub fn set_underlying_security_exchange(&mut self, v: String) {
2420        self.message.body.set_field(tag::UNDERLYING_SECURITY_EXCHANGE, FIXString::from(v));
2421    }
2422
2423    /// Gets `UnderlyingSecurityExchange`, Tag 308.
2424    pub fn get_underlying_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2425        let mut fld = field::UnderlyingSecurityExchangeField::new(String::new());
2426        self.message.body.get_field(tag::UNDERLYING_SECURITY_EXCHANGE, &mut fld.0)?;
2427        Ok(fld.value().to_string())
2428    }
2429
2430
2431    /// Returns true if `UnderlyingSecurityExchange` is present, Tag 308.
2432    pub fn has_underlying_security_exchange(&self) -> bool {
2433        self.message.body.has(tag::UNDERLYING_SECURITY_EXCHANGE)
2434    }
2435
2436
2437
2438
2439    /// Sets `UnderlyingSecurityID`, Tag 309.
2440    pub fn set_underlying_security_id(&mut self, v: String) {
2441        self.message.body.set_field(tag::UNDERLYING_SECURITY_ID, FIXString::from(v));
2442    }
2443
2444    /// Gets `UnderlyingSecurityID`, Tag 309.
2445    pub fn get_underlying_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2446        let mut fld = field::UnderlyingSecurityIDField::new(String::new());
2447        self.message.body.get_field(tag::UNDERLYING_SECURITY_ID, &mut fld.0)?;
2448        Ok(fld.value().to_string())
2449    }
2450
2451
2452    /// Returns true if `UnderlyingSecurityID` is present, Tag 309.
2453    pub fn has_underlying_security_id(&self) -> bool {
2454        self.message.body.has(tag::UNDERLYING_SECURITY_ID)
2455    }
2456
2457
2458
2459
2460    /// Sets `UnderlyingSecurityIDSource`, Tag 305.
2461    pub fn set_underlying_security_id_source(&mut self, v: String) {
2462        self.message.body.set_field(tag::UNDERLYING_SECURITY_ID_SOURCE, FIXString::from(v));
2463    }
2464
2465    /// Gets `UnderlyingSecurityIDSource`, Tag 305.
2466    pub fn get_underlying_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2467        let mut fld = field::UnderlyingSecurityIDSourceField::new(String::new());
2468        self.message.body.get_field(tag::UNDERLYING_SECURITY_ID_SOURCE, &mut fld.0)?;
2469        Ok(fld.value().to_string())
2470    }
2471
2472
2473    /// Returns true if `UnderlyingSecurityIDSource` is present, Tag 305.
2474    pub fn has_underlying_security_id_source(&self) -> bool {
2475        self.message.body.has(tag::UNDERLYING_SECURITY_ID_SOURCE)
2476    }
2477
2478
2479
2480
2481    /// Sets `UnderlyingSecuritySubType`, Tag 763.
2482    pub fn set_underlying_security_sub_type(&mut self, v: String) {
2483        self.message.body.set_field(tag::UNDERLYING_SECURITY_SUB_TYPE, FIXString::from(v));
2484    }
2485
2486    /// Gets `UnderlyingSecuritySubType`, Tag 763.
2487    pub fn get_underlying_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2488        let mut fld = field::UnderlyingSecuritySubTypeField::new(String::new());
2489        self.message.body.get_field(tag::UNDERLYING_SECURITY_SUB_TYPE, &mut fld.0)?;
2490        Ok(fld.value().to_string())
2491    }
2492
2493
2494    /// Returns true if `UnderlyingSecuritySubType` is present, Tag 763.
2495    pub fn has_underlying_security_sub_type(&self) -> bool {
2496        self.message.body.has(tag::UNDERLYING_SECURITY_SUB_TYPE)
2497    }
2498
2499
2500
2501
2502    /// Sets `UnderlyingSecurityType`, Tag 310.
2503    pub fn set_underlying_security_type(&mut self, v: String) {
2504        self.message.body.set_field(tag::UNDERLYING_SECURITY_TYPE, FIXString::from(v));
2505    }
2506
2507    /// Gets `UnderlyingSecurityType`, Tag 310.
2508    pub fn get_underlying_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2509        let mut fld = field::UnderlyingSecurityTypeField::new(String::new());
2510        self.message.body.get_field(tag::UNDERLYING_SECURITY_TYPE, &mut fld.0)?;
2511        Ok(fld.value().to_string())
2512    }
2513
2514
2515    /// Returns true if `UnderlyingSecurityType` is present, Tag 310.
2516    pub fn has_underlying_security_type(&self) -> bool {
2517        self.message.body.has(tag::UNDERLYING_SECURITY_TYPE)
2518    }
2519
2520
2521
2522
2523    /// Sets `UnderlyingSettlMethod`, Tag 1039.
2524    pub fn set_underlying_settl_method(&mut self, v: String) {
2525        self.message.body.set_field(tag::UNDERLYING_SETTL_METHOD, FIXString::from(v));
2526    }
2527
2528    /// Gets `UnderlyingSettlMethod`, Tag 1039.
2529    pub fn get_underlying_settl_method(&self) -> Result<String, MessageRejectErrorEnum> {
2530        let mut fld = field::UnderlyingSettlMethodField::new(String::new());
2531        self.message.body.get_field(tag::UNDERLYING_SETTL_METHOD, &mut fld.0)?;
2532        Ok(fld.value().to_string())
2533    }
2534
2535
2536    /// Returns true if `UnderlyingSettlMethod` is present, Tag 1039.
2537    pub fn has_underlying_settl_method(&self) -> bool {
2538        self.message.body.has(tag::UNDERLYING_SETTL_METHOD)
2539    }
2540
2541
2542
2543
2544    /// Sets `UnderlyingSettlementType`, Tag 975.
2545    pub fn set_underlying_settlement_type(&mut self, v: isize) {
2546        self.message.body.set_field(tag::UNDERLYING_SETTLEMENT_TYPE, fixer::fix_int::FIXInt::from(v));
2547    }
2548
2549    /// Gets `UnderlyingSettlementType`, Tag 975.
2550    pub fn get_underlying_settlement_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2551        let mut fld = field::UnderlyingSettlementTypeField::new(0);
2552        self.message.body.get_field(tag::UNDERLYING_SETTLEMENT_TYPE, &mut fld.0)?;
2553        Ok(fld.value())
2554    }
2555
2556
2557    /// Returns true if `UnderlyingSettlementType` is present, Tag 975.
2558    pub fn has_underlying_settlement_type(&self) -> bool {
2559        self.message.body.has(tag::UNDERLYING_SETTLEMENT_TYPE)
2560    }
2561
2562
2563
2564
2565    /// Sets `UnderlyingStartValue`, Tag 884.
2566    pub fn set_underlying_start_value(&mut self, val: Decimal, scale: i32) {
2567        self.message.body.set_field(tag::UNDERLYING_START_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2568    }
2569
2570    /// Gets `UnderlyingStartValue`, Tag 884.
2571    pub fn get_underlying_start_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2572        let mut fld = field::UnderlyingStartValueField::new(Decimal::ZERO, 0);
2573        self.message.body.get_field(tag::UNDERLYING_START_VALUE, &mut fld.0)?;
2574        Ok(fld.value())
2575    }
2576
2577
2578    /// Returns true if `UnderlyingStartValue` is present, Tag 884.
2579    pub fn has_underlying_start_value(&self) -> bool {
2580        self.message.body.has(tag::UNDERLYING_START_VALUE)
2581    }
2582
2583
2584
2585
2586    /// Sets `UnderlyingStateOrProvinceOfIssue`, Tag 593.
2587    pub fn set_underlying_state_or_province_of_issue(&mut self, v: String) {
2588        self.message.body.set_field(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
2589    }
2590
2591    /// Gets `UnderlyingStateOrProvinceOfIssue`, Tag 593.
2592    pub fn get_underlying_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
2593        let mut fld = field::UnderlyingStateOrProvinceOfIssueField::new(String::new());
2594        self.message.body.get_field(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
2595        Ok(fld.value().to_string())
2596    }
2597
2598
2599    /// Returns true if `UnderlyingStateOrProvinceOfIssue` is present, Tag 593.
2600    pub fn has_underlying_state_or_province_of_issue(&self) -> bool {
2601        self.message.body.has(tag::UNDERLYING_STATE_OR_PROVINCE_OF_ISSUE)
2602    }
2603
2604
2605
2606
2607    /// Sets `UnderlyingStrikeCurrency`, Tag 941.
2608    pub fn set_underlying_strike_currency(&mut self, v: String) {
2609        self.message.body.set_field(tag::UNDERLYING_STRIKE_CURRENCY, FIXString::from(v));
2610    }
2611
2612    /// Gets `UnderlyingStrikeCurrency`, Tag 941.
2613    pub fn get_underlying_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
2614        let mut fld = field::UnderlyingStrikeCurrencyField::new(String::new());
2615        self.message.body.get_field(tag::UNDERLYING_STRIKE_CURRENCY, &mut fld.0)?;
2616        Ok(fld.value().to_string())
2617    }
2618
2619
2620    /// Returns true if `UnderlyingStrikeCurrency` is present, Tag 941.
2621    pub fn has_underlying_strike_currency(&self) -> bool {
2622        self.message.body.has(tag::UNDERLYING_STRIKE_CURRENCY)
2623    }
2624
2625
2626
2627
2628    /// Sets `UnderlyingStrikePrice`, Tag 316.
2629    pub fn set_underlying_strike_price(&mut self, val: Decimal, scale: i32) {
2630        self.message.body.set_field(tag::UNDERLYING_STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2631    }
2632
2633    /// Gets `UnderlyingStrikePrice`, Tag 316.
2634    pub fn get_underlying_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2635        let mut fld = field::UnderlyingStrikePriceField::new(Decimal::ZERO, 0);
2636        self.message.body.get_field(tag::UNDERLYING_STRIKE_PRICE, &mut fld.0)?;
2637        Ok(fld.value())
2638    }
2639
2640
2641    /// Returns true if `UnderlyingStrikePrice` is present, Tag 316.
2642    pub fn has_underlying_strike_price(&self) -> bool {
2643        self.message.body.has(tag::UNDERLYING_STRIKE_PRICE)
2644    }
2645
2646
2647
2648
2649    /// Sets `UnderlyingSymbol`, Tag 311.
2650    pub fn set_underlying_symbol(&mut self, v: String) {
2651        self.message.body.set_field(tag::UNDERLYING_SYMBOL, FIXString::from(v));
2652    }
2653
2654    /// Gets `UnderlyingSymbol`, Tag 311.
2655    pub fn get_underlying_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
2656        let mut fld = field::UnderlyingSymbolField::new(String::new());
2657        self.message.body.get_field(tag::UNDERLYING_SYMBOL, &mut fld.0)?;
2658        Ok(fld.value().to_string())
2659    }
2660
2661
2662    /// Returns true if `UnderlyingSymbol` is present, Tag 311.
2663    pub fn has_underlying_symbol(&self) -> bool {
2664        self.message.body.has(tag::UNDERLYING_SYMBOL)
2665    }
2666
2667
2668
2669
2670    /// Sets `UnderlyingSymbolSfx`, Tag 312.
2671    pub fn set_underlying_symbol_sfx(&mut self, v: String) {
2672        self.message.body.set_field(tag::UNDERLYING_SYMBOL_SFX, FIXString::from(v));
2673    }
2674
2675    /// Gets `UnderlyingSymbolSfx`, Tag 312.
2676    pub fn get_underlying_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
2677        let mut fld = field::UnderlyingSymbolSfxField::new(String::new());
2678        self.message.body.get_field(tag::UNDERLYING_SYMBOL_SFX, &mut fld.0)?;
2679        Ok(fld.value().to_string())
2680    }
2681
2682
2683    /// Returns true if `UnderlyingSymbolSfx` is present, Tag 312.
2684    pub fn has_underlying_symbol_sfx(&self) -> bool {
2685        self.message.body.has(tag::UNDERLYING_SYMBOL_SFX)
2686    }
2687
2688
2689
2690
2691    /// Sets `UnderlyingTimeUnit`, Tag 1000.
2692    pub fn set_underlying_time_unit(&mut self, v: String) {
2693        self.message.body.set_field(tag::UNDERLYING_TIME_UNIT, FIXString::from(v));
2694    }
2695
2696    /// Gets `UnderlyingTimeUnit`, Tag 1000.
2697    pub fn get_underlying_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
2698        let mut fld = field::UnderlyingTimeUnitField::new(String::new());
2699        self.message.body.get_field(tag::UNDERLYING_TIME_UNIT, &mut fld.0)?;
2700        Ok(fld.value().to_string())
2701    }
2702
2703
2704    /// Returns true if `UnderlyingTimeUnit` is present, Tag 1000.
2705    pub fn has_underlying_time_unit(&self) -> bool {
2706        self.message.body.has(tag::UNDERLYING_TIME_UNIT)
2707    }
2708
2709
2710
2711
2712    /// Sets `UnderlyingUnitOfMeasure`, Tag 998.
2713    pub fn set_underlying_unit_of_measure(&mut self, v: String) {
2714        self.message.body.set_field(tag::UNDERLYING_UNIT_OF_MEASURE, FIXString::from(v));
2715    }
2716
2717    /// Gets `UnderlyingUnitOfMeasure`, Tag 998.
2718    pub fn get_underlying_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2719        let mut fld = field::UnderlyingUnitOfMeasureField::new(String::new());
2720        self.message.body.get_field(tag::UNDERLYING_UNIT_OF_MEASURE, &mut fld.0)?;
2721        Ok(fld.value().to_string())
2722    }
2723
2724
2725    /// Returns true if `UnderlyingUnitOfMeasure` is present, Tag 998.
2726    pub fn has_underlying_unit_of_measure(&self) -> bool {
2727        self.message.body.has(tag::UNDERLYING_UNIT_OF_MEASURE)
2728    }
2729
2730
2731
2732
2733    /// Sets `UnitOfMeasure`, Tag 996.
2734    pub fn set_unit_of_measure(&mut self, v: String) {
2735        self.message.body.set_field(tag::UNIT_OF_MEASURE, FIXString::from(v));
2736    }
2737
2738    /// Gets `UnitOfMeasure`, Tag 996.
2739    pub fn get_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2740        let mut fld = field::UnitOfMeasureField::new(String::new());
2741        self.message.body.get_field(tag::UNIT_OF_MEASURE, &mut fld.0)?;
2742        Ok(fld.value().to_string())
2743    }
2744
2745
2746    /// Returns true if `UnitOfMeasure` is present, Tag 996.
2747    pub fn has_unit_of_measure(&self) -> bool {
2748        self.message.body.has(tag::UNIT_OF_MEASURE)
2749    }
2750
2751
2752}
2753
2754/// `RouteOut` is the callback type for routing `SecurityDefinitionUpdateReport` messages.
2755pub type RouteOut = fn(msg: SecurityDefinitionUpdateReport, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
2756
2757/// Route type returned by the `route` function.
2758pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
2759
2760/// Returns the begin string, message type, and route function for `SecurityDefinitionUpdateReport`.
2761pub fn route(router: RouteOut) -> Route {
2762    let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
2763        router(SecurityDefinitionUpdateReport::from_message(msg.clone()), session_id)
2764    };
2765    ("7", "BP", Box::new(r))
2766}