1#![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 jiff::Timestamp;
16
17use crate::field;
18use crate::tag;
19
20pub struct AllocationInstruction {
22 pub message: Message,
23}
24
25impl AllocationInstruction {
26 pub fn new(alloc_id: field::AllocIDField, alloc_trans_type: field::AllocTransTypeField, alloc_type: field::AllocTypeField, side: field::SideField, quantity: field::QuantityField, trade_date: field::TradeDateField) -> Self {
28 let mut msg = Message::new();
29 msg.header.set_field(tag::MSG_TYPE, FIXString::from("J".to_string()));
30
31 msg.body.set_field(tag::ALLOC_ID, alloc_id.0);
32
33 msg.body.set_field(tag::ALLOC_TRANS_TYPE, alloc_trans_type.0);
34
35 msg.body.set_field(tag::ALLOC_TYPE, alloc_type.0);
36
37 msg.body.set_field(tag::SIDE, side.0);
38
39 msg.body.set_field(tag::QUANTITY, quantity.0);
40
41 msg.body.set_field(tag::TRADE_DATE, trade_date.0);
42
43 Self { message: msg }
44 }
45
46 pub fn from_message(msg: Message) -> Self {
48 Self { message: msg }
49 }
50
51 pub fn to_message(self) -> Message {
53 self.message
54 }
55
56
57
58
59 pub fn set_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
61 self.message.body.set_field(tag::ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
62 }
63
64 pub fn get_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
66 let mut fld = field::AccruedInterestAmtField::new(Decimal::ZERO, 0);
67 self.message.body.get_field(tag::ACCRUED_INTEREST_AMT, &mut fld.0)?;
68 Ok(fld.value())
69 }
70
71
72 pub fn has_accrued_interest_amt(&self) -> bool {
74 self.message.body.has(tag::ACCRUED_INTEREST_AMT)
75 }
76
77
78
79
80 pub fn set_accrued_interest_rate(&mut self, val: Decimal, scale: i32) {
82 self.message.body.set_field(tag::ACCRUED_INTEREST_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
83 }
84
85 pub fn get_accrued_interest_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
87 let mut fld = field::AccruedInterestRateField::new(Decimal::ZERO, 0);
88 self.message.body.get_field(tag::ACCRUED_INTEREST_RATE, &mut fld.0)?;
89 Ok(fld.value())
90 }
91
92
93 pub fn has_accrued_interest_rate(&self) -> bool {
95 self.message.body.has(tag::ACCRUED_INTEREST_RATE)
96 }
97
98
99
100
101 pub fn set_agreement_currency(&mut self, v: String) {
103 self.message.body.set_field(tag::AGREEMENT_CURRENCY, FIXString::from(v));
104 }
105
106 pub fn get_agreement_currency(&self) -> Result<String, MessageRejectErrorEnum> {
108 let mut fld = field::AgreementCurrencyField::new(String::new());
109 self.message.body.get_field(tag::AGREEMENT_CURRENCY, &mut fld.0)?;
110 Ok(fld.value().to_string())
111 }
112
113
114 pub fn has_agreement_currency(&self) -> bool {
116 self.message.body.has(tag::AGREEMENT_CURRENCY)
117 }
118
119
120
121
122 pub fn set_agreement_date(&mut self, v: String) {
124 self.message.body.set_field(tag::AGREEMENT_DATE, FIXString::from(v));
125 }
126
127 pub fn get_agreement_date(&self) -> Result<String, MessageRejectErrorEnum> {
129 let mut fld = field::AgreementDateField::new(String::new());
130 self.message.body.get_field(tag::AGREEMENT_DATE, &mut fld.0)?;
131 Ok(fld.value().to_string())
132 }
133
134
135 pub fn has_agreement_date(&self) -> bool {
137 self.message.body.has(tag::AGREEMENT_DATE)
138 }
139
140
141
142
143 pub fn set_agreement_desc(&mut self, v: String) {
145 self.message.body.set_field(tag::AGREEMENT_DESC, FIXString::from(v));
146 }
147
148 pub fn get_agreement_desc(&self) -> Result<String, MessageRejectErrorEnum> {
150 let mut fld = field::AgreementDescField::new(String::new());
151 self.message.body.get_field(tag::AGREEMENT_DESC, &mut fld.0)?;
152 Ok(fld.value().to_string())
153 }
154
155
156 pub fn has_agreement_desc(&self) -> bool {
158 self.message.body.has(tag::AGREEMENT_DESC)
159 }
160
161
162
163
164 pub fn set_agreement_id(&mut self, v: String) {
166 self.message.body.set_field(tag::AGREEMENT_ID, FIXString::from(v));
167 }
168
169 pub fn get_agreement_id(&self) -> Result<String, MessageRejectErrorEnum> {
171 let mut fld = field::AgreementIDField::new(String::new());
172 self.message.body.get_field(tag::AGREEMENT_ID, &mut fld.0)?;
173 Ok(fld.value().to_string())
174 }
175
176
177 pub fn has_agreement_id(&self) -> bool {
179 self.message.body.has(tag::AGREEMENT_ID)
180 }
181
182
183
184
185 pub fn set_alloc_canc_replace_reason(&mut self, v: isize) {
187 self.message.body.set_field(tag::ALLOC_CANC_REPLACE_REASON, fixer::fix_int::FIXInt::from(v));
188 }
189
190 pub fn get_alloc_canc_replace_reason(&self) -> Result<isize, MessageRejectErrorEnum> {
192 let mut fld = field::AllocCancReplaceReasonField::new(0);
193 self.message.body.get_field(tag::ALLOC_CANC_REPLACE_REASON, &mut fld.0)?;
194 Ok(fld.value())
195 }
196
197
198 pub fn has_alloc_canc_replace_reason(&self) -> bool {
200 self.message.body.has(tag::ALLOC_CANC_REPLACE_REASON)
201 }
202
203
204
205
206 pub fn set_alloc_id(&mut self, v: String) {
208 self.message.body.set_field(tag::ALLOC_ID, FIXString::from(v));
209 }
210
211 pub fn get_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
213 let mut fld = field::AllocIDField::new(String::new());
214 self.message.body.get_field(tag::ALLOC_ID, &mut fld.0)?;
215 Ok(fld.value().to_string())
216 }
217
218
219 pub fn has_alloc_id(&self) -> bool {
221 self.message.body.has(tag::ALLOC_ID)
222 }
223
224
225
226
227 pub fn set_alloc_intermed_req_type(&mut self, v: isize) {
229 self.message.body.set_field(tag::ALLOC_INTERMED_REQ_TYPE, fixer::fix_int::FIXInt::from(v));
230 }
231
232 pub fn get_alloc_intermed_req_type(&self) -> Result<isize, MessageRejectErrorEnum> {
234 let mut fld = field::AllocIntermedReqTypeField::new(0);
235 self.message.body.get_field(tag::ALLOC_INTERMED_REQ_TYPE, &mut fld.0)?;
236 Ok(fld.value())
237 }
238
239
240 pub fn has_alloc_intermed_req_type(&self) -> bool {
242 self.message.body.has(tag::ALLOC_INTERMED_REQ_TYPE)
243 }
244
245
246
247
248 pub fn set_alloc_link_id(&mut self, v: String) {
250 self.message.body.set_field(tag::ALLOC_LINK_ID, FIXString::from(v));
251 }
252
253 pub fn get_alloc_link_id(&self) -> Result<String, MessageRejectErrorEnum> {
255 let mut fld = field::AllocLinkIDField::new(String::new());
256 self.message.body.get_field(tag::ALLOC_LINK_ID, &mut fld.0)?;
257 Ok(fld.value().to_string())
258 }
259
260
261 pub fn has_alloc_link_id(&self) -> bool {
263 self.message.body.has(tag::ALLOC_LINK_ID)
264 }
265
266
267
268
269 pub fn set_alloc_link_type(&mut self, v: isize) {
271 self.message.body.set_field(tag::ALLOC_LINK_TYPE, fixer::fix_int::FIXInt::from(v));
272 }
273
274 pub fn get_alloc_link_type(&self) -> Result<isize, MessageRejectErrorEnum> {
276 let mut fld = field::AllocLinkTypeField::new(0);
277 self.message.body.get_field(tag::ALLOC_LINK_TYPE, &mut fld.0)?;
278 Ok(fld.value())
279 }
280
281
282 pub fn has_alloc_link_type(&self) -> bool {
284 self.message.body.has(tag::ALLOC_LINK_TYPE)
285 }
286
287
288
289
290 pub fn set_alloc_no_orders_type(&mut self, v: isize) {
292 self.message.body.set_field(tag::ALLOC_NO_ORDERS_TYPE, fixer::fix_int::FIXInt::from(v));
293 }
294
295 pub fn get_alloc_no_orders_type(&self) -> Result<isize, MessageRejectErrorEnum> {
297 let mut fld = field::AllocNoOrdersTypeField::new(0);
298 self.message.body.get_field(tag::ALLOC_NO_ORDERS_TYPE, &mut fld.0)?;
299 Ok(fld.value())
300 }
301
302
303 pub fn has_alloc_no_orders_type(&self) -> bool {
305 self.message.body.has(tag::ALLOC_NO_ORDERS_TYPE)
306 }
307
308
309
310
311 pub fn set_alloc_trans_type(&mut self, v: String) {
313 self.message.body.set_field(tag::ALLOC_TRANS_TYPE, FIXString::from(v));
314 }
315
316 pub fn get_alloc_trans_type(&self) -> Result<String, MessageRejectErrorEnum> {
318 let mut fld = field::AllocTransTypeField::new(String::new());
319 self.message.body.get_field(tag::ALLOC_TRANS_TYPE, &mut fld.0)?;
320 Ok(fld.value().to_string())
321 }
322
323
324 pub fn has_alloc_trans_type(&self) -> bool {
326 self.message.body.has(tag::ALLOC_TRANS_TYPE)
327 }
328
329
330
331
332 pub fn set_alloc_type(&mut self, v: isize) {
334 self.message.body.set_field(tag::ALLOC_TYPE, fixer::fix_int::FIXInt::from(v));
335 }
336
337 pub fn get_alloc_type(&self) -> Result<isize, MessageRejectErrorEnum> {
339 let mut fld = field::AllocTypeField::new(0);
340 self.message.body.get_field(tag::ALLOC_TYPE, &mut fld.0)?;
341 Ok(fld.value())
342 }
343
344
345 pub fn has_alloc_type(&self) -> bool {
347 self.message.body.has(tag::ALLOC_TYPE)
348 }
349
350
351
352
353 pub fn set_attachment_point(&mut self, val: Decimal, scale: i32) {
355 self.message.body.set_field(tag::ATTACHMENT_POINT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
356 }
357
358 pub fn get_attachment_point(&self) -> Result<Decimal, MessageRejectErrorEnum> {
360 let mut fld = field::AttachmentPointField::new(Decimal::ZERO, 0);
361 self.message.body.get_field(tag::ATTACHMENT_POINT, &mut fld.0)?;
362 Ok(fld.value())
363 }
364
365
366 pub fn has_attachment_point(&self) -> bool {
368 self.message.body.has(tag::ATTACHMENT_POINT)
369 }
370
371
372
373
374 pub fn set_auto_accept_indicator(&mut self, v: bool) {
376 self.message.body.set_field(tag::AUTO_ACCEPT_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
377 }
378
379 pub fn get_auto_accept_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
381 let mut fld = field::AutoAcceptIndicatorField::new(false);
382 self.message.body.get_field(tag::AUTO_ACCEPT_INDICATOR, &mut fld.0)?;
383 Ok(fld.value())
384 }
385
386
387 pub fn has_auto_accept_indicator(&self) -> bool {
389 self.message.body.has(tag::AUTO_ACCEPT_INDICATOR)
390 }
391
392
393
394
395 pub fn set_avg_par_px(&mut self, val: Decimal, scale: i32) {
397 self.message.body.set_field(tag::AVG_PAR_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
398 }
399
400 pub fn get_avg_par_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
402 let mut fld = field::AvgParPxField::new(Decimal::ZERO, 0);
403 self.message.body.get_field(tag::AVG_PAR_PX, &mut fld.0)?;
404 Ok(fld.value())
405 }
406
407
408 pub fn has_avg_par_px(&self) -> bool {
410 self.message.body.has(tag::AVG_PAR_PX)
411 }
412
413
414
415
416 pub fn set_avg_px(&mut self, val: Decimal, scale: i32) {
418 self.message.body.set_field(tag::AVG_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
419 }
420
421 pub fn get_avg_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
423 let mut fld = field::AvgPxField::new(Decimal::ZERO, 0);
424 self.message.body.get_field(tag::AVG_PX, &mut fld.0)?;
425 Ok(fld.value())
426 }
427
428
429 pub fn has_avg_px(&self) -> bool {
431 self.message.body.has(tag::AVG_PX)
432 }
433
434
435
436
437 pub fn set_avg_px_indicator(&mut self, v: isize) {
439 self.message.body.set_field(tag::AVG_PX_INDICATOR, fixer::fix_int::FIXInt::from(v));
440 }
441
442 pub fn get_avg_px_indicator(&self) -> Result<isize, MessageRejectErrorEnum> {
444 let mut fld = field::AvgPxIndicatorField::new(0);
445 self.message.body.get_field(tag::AVG_PX_INDICATOR, &mut fld.0)?;
446 Ok(fld.value())
447 }
448
449
450 pub fn has_avg_px_indicator(&self) -> bool {
452 self.message.body.has(tag::AVG_PX_INDICATOR)
453 }
454
455
456
457
458 pub fn set_avg_px_precision(&mut self, v: isize) {
460 self.message.body.set_field(tag::AVG_PX_PRECISION, fixer::fix_int::FIXInt::from(v));
461 }
462
463 pub fn get_avg_px_precision(&self) -> Result<isize, MessageRejectErrorEnum> {
465 let mut fld = field::AvgPxPrecisionField::new(0);
466 self.message.body.get_field(tag::AVG_PX_PRECISION, &mut fld.0)?;
467 Ok(fld.value())
468 }
469
470
471 pub fn has_avg_px_precision(&self) -> bool {
473 self.message.body.has(tag::AVG_PX_PRECISION)
474 }
475
476
477
478
479 pub fn set_benchmark_curve_currency(&mut self, v: String) {
481 self.message.body.set_field(tag::BENCHMARK_CURVE_CURRENCY, FIXString::from(v));
482 }
483
484 pub fn get_benchmark_curve_currency(&self) -> Result<String, MessageRejectErrorEnum> {
486 let mut fld = field::BenchmarkCurveCurrencyField::new(String::new());
487 self.message.body.get_field(tag::BENCHMARK_CURVE_CURRENCY, &mut fld.0)?;
488 Ok(fld.value().to_string())
489 }
490
491
492 pub fn has_benchmark_curve_currency(&self) -> bool {
494 self.message.body.has(tag::BENCHMARK_CURVE_CURRENCY)
495 }
496
497
498
499
500 pub fn set_benchmark_curve_name(&mut self, v: String) {
502 self.message.body.set_field(tag::BENCHMARK_CURVE_NAME, FIXString::from(v));
503 }
504
505 pub fn get_benchmark_curve_name(&self) -> Result<String, MessageRejectErrorEnum> {
507 let mut fld = field::BenchmarkCurveNameField::new(String::new());
508 self.message.body.get_field(tag::BENCHMARK_CURVE_NAME, &mut fld.0)?;
509 Ok(fld.value().to_string())
510 }
511
512
513 pub fn has_benchmark_curve_name(&self) -> bool {
515 self.message.body.has(tag::BENCHMARK_CURVE_NAME)
516 }
517
518
519
520
521 pub fn set_benchmark_curve_point(&mut self, v: String) {
523 self.message.body.set_field(tag::BENCHMARK_CURVE_POINT, FIXString::from(v));
524 }
525
526 pub fn get_benchmark_curve_point(&self) -> Result<String, MessageRejectErrorEnum> {
528 let mut fld = field::BenchmarkCurvePointField::new(String::new());
529 self.message.body.get_field(tag::BENCHMARK_CURVE_POINT, &mut fld.0)?;
530 Ok(fld.value().to_string())
531 }
532
533
534 pub fn has_benchmark_curve_point(&self) -> bool {
536 self.message.body.has(tag::BENCHMARK_CURVE_POINT)
537 }
538
539
540
541
542 pub fn set_benchmark_price(&mut self, val: Decimal, scale: i32) {
544 self.message.body.set_field(tag::BENCHMARK_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
545 }
546
547 pub fn get_benchmark_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
549 let mut fld = field::BenchmarkPriceField::new(Decimal::ZERO, 0);
550 self.message.body.get_field(tag::BENCHMARK_PRICE, &mut fld.0)?;
551 Ok(fld.value())
552 }
553
554
555 pub fn has_benchmark_price(&self) -> bool {
557 self.message.body.has(tag::BENCHMARK_PRICE)
558 }
559
560
561
562
563 pub fn set_benchmark_price_type(&mut self, v: isize) {
565 self.message.body.set_field(tag::BENCHMARK_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
566 }
567
568 pub fn get_benchmark_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
570 let mut fld = field::BenchmarkPriceTypeField::new(0);
571 self.message.body.get_field(tag::BENCHMARK_PRICE_TYPE, &mut fld.0)?;
572 Ok(fld.value())
573 }
574
575
576 pub fn has_benchmark_price_type(&self) -> bool {
578 self.message.body.has(tag::BENCHMARK_PRICE_TYPE)
579 }
580
581
582
583
584 pub fn set_benchmark_security_id(&mut self, v: String) {
586 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID, FIXString::from(v));
587 }
588
589 pub fn get_benchmark_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
591 let mut fld = field::BenchmarkSecurityIDField::new(String::new());
592 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID, &mut fld.0)?;
593 Ok(fld.value().to_string())
594 }
595
596
597 pub fn has_benchmark_security_id(&self) -> bool {
599 self.message.body.has(tag::BENCHMARK_SECURITY_ID)
600 }
601
602
603
604
605 pub fn set_benchmark_security_id_source(&mut self, v: String) {
607 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID_SOURCE, FIXString::from(v));
608 }
609
610 pub fn get_benchmark_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
612 let mut fld = field::BenchmarkSecurityIDSourceField::new(String::new());
613 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID_SOURCE, &mut fld.0)?;
614 Ok(fld.value().to_string())
615 }
616
617
618 pub fn has_benchmark_security_id_source(&self) -> bool {
620 self.message.body.has(tag::BENCHMARK_SECURITY_ID_SOURCE)
621 }
622
623
624
625
626 pub fn set_booking_ref_id(&mut self, v: String) {
628 self.message.body.set_field(tag::BOOKING_REF_ID, FIXString::from(v));
629 }
630
631 pub fn get_booking_ref_id(&self) -> Result<String, MessageRejectErrorEnum> {
633 let mut fld = field::BookingRefIDField::new(String::new());
634 self.message.body.get_field(tag::BOOKING_REF_ID, &mut fld.0)?;
635 Ok(fld.value().to_string())
636 }
637
638
639 pub fn has_booking_ref_id(&self) -> bool {
641 self.message.body.has(tag::BOOKING_REF_ID)
642 }
643
644
645
646
647 pub fn set_booking_type(&mut self, v: isize) {
649 self.message.body.set_field(tag::BOOKING_TYPE, fixer::fix_int::FIXInt::from(v));
650 }
651
652 pub fn get_booking_type(&self) -> Result<isize, MessageRejectErrorEnum> {
654 let mut fld = field::BookingTypeField::new(0);
655 self.message.body.get_field(tag::BOOKING_TYPE, &mut fld.0)?;
656 Ok(fld.value())
657 }
658
659
660 pub fn has_booking_type(&self) -> bool {
662 self.message.body.has(tag::BOOKING_TYPE)
663 }
664
665
666
667
668 pub fn set_cfi_code(&mut self, v: String) {
670 self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
671 }
672
673 pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
675 let mut fld = field::CFICodeField::new(String::new());
676 self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
677 Ok(fld.value().to_string())
678 }
679
680
681 pub fn has_cfi_code(&self) -> bool {
683 self.message.body.has(tag::CFI_CODE)
684 }
685
686
687
688
689 pub fn set_cp_program(&mut self, v: isize) {
691 self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
692 }
693
694 pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
696 let mut fld = field::CPProgramField::new(0);
697 self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
698 Ok(fld.value())
699 }
700
701
702 pub fn has_cp_program(&self) -> bool {
704 self.message.body.has(tag::CP_PROGRAM)
705 }
706
707
708
709
710 pub fn set_cp_reg_type(&mut self, v: String) {
712 self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
713 }
714
715 pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
717 let mut fld = field::CPRegTypeField::new(String::new());
718 self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
719 Ok(fld.value().to_string())
720 }
721
722
723 pub fn has_cp_reg_type(&self) -> bool {
725 self.message.body.has(tag::CP_REG_TYPE)
726 }
727
728
729
730
731 pub fn set_cap_price(&mut self, val: Decimal, scale: i32) {
733 self.message.body.set_field(tag::CAP_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
734 }
735
736 pub fn get_cap_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
738 let mut fld = field::CapPriceField::new(Decimal::ZERO, 0);
739 self.message.body.get_field(tag::CAP_PRICE, &mut fld.0)?;
740 Ok(fld.value())
741 }
742
743
744 pub fn has_cap_price(&self) -> bool {
746 self.message.body.has(tag::CAP_PRICE)
747 }
748
749
750
751
752 pub fn set_clearing_business_date(&mut self, v: String) {
754 self.message.body.set_field(tag::CLEARING_BUSINESS_DATE, FIXString::from(v));
755 }
756
757 pub fn get_clearing_business_date(&self) -> Result<String, MessageRejectErrorEnum> {
759 let mut fld = field::ClearingBusinessDateField::new(String::new());
760 self.message.body.get_field(tag::CLEARING_BUSINESS_DATE, &mut fld.0)?;
761 Ok(fld.value().to_string())
762 }
763
764
765 pub fn has_clearing_business_date(&self) -> bool {
767 self.message.body.has(tag::CLEARING_BUSINESS_DATE)
768 }
769
770
771
772
773 pub fn set_concession(&mut self, val: Decimal, scale: i32) {
775 self.message.body.set_field(tag::CONCESSION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
776 }
777
778 pub fn get_concession(&self) -> Result<Decimal, MessageRejectErrorEnum> {
780 let mut fld = field::ConcessionField::new(Decimal::ZERO, 0);
781 self.message.body.get_field(tag::CONCESSION, &mut fld.0)?;
782 Ok(fld.value())
783 }
784
785
786 pub fn has_concession(&self) -> bool {
788 self.message.body.has(tag::CONCESSION)
789 }
790
791
792
793
794 pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
796 self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
797 }
798
799 pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
801 let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
802 self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
803 Ok(fld.value())
804 }
805
806
807 pub fn has_contract_multiplier(&self) -> bool {
809 self.message.body.has(tag::CONTRACT_MULTIPLIER)
810 }
811
812
813
814
815 pub fn set_contract_multiplier_unit(&mut self, v: isize) {
817 self.message.body.set_field(tag::CONTRACT_MULTIPLIER_UNIT, fixer::fix_int::FIXInt::from(v));
818 }
819
820 pub fn get_contract_multiplier_unit(&self) -> Result<isize, MessageRejectErrorEnum> {
822 let mut fld = field::ContractMultiplierUnitField::new(0);
823 self.message.body.get_field(tag::CONTRACT_MULTIPLIER_UNIT, &mut fld.0)?;
824 Ok(fld.value())
825 }
826
827
828 pub fn has_contract_multiplier_unit(&self) -> bool {
830 self.message.body.has(tag::CONTRACT_MULTIPLIER_UNIT)
831 }
832
833
834
835
836 pub fn set_contract_settl_month(&mut self, v: String) {
838 self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
839 }
840
841 pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
843 let mut fld = field::ContractSettlMonthField::new(String::new());
844 self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
845 Ok(fld.value().to_string())
846 }
847
848
849 pub fn has_contract_settl_month(&self) -> bool {
851 self.message.body.has(tag::CONTRACT_SETTL_MONTH)
852 }
853
854
855
856
857 pub fn set_country_of_issue(&mut self, v: String) {
859 self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
860 }
861
862 pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
864 let mut fld = field::CountryOfIssueField::new(String::new());
865 self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
866 Ok(fld.value().to_string())
867 }
868
869
870 pub fn has_country_of_issue(&self) -> bool {
872 self.message.body.has(tag::COUNTRY_OF_ISSUE)
873 }
874
875
876
877
878 pub fn set_coupon_payment_date(&mut self, v: String) {
880 self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
881 }
882
883 pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
885 let mut fld = field::CouponPaymentDateField::new(String::new());
886 self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
887 Ok(fld.value().to_string())
888 }
889
890
891 pub fn has_coupon_payment_date(&self) -> bool {
893 self.message.body.has(tag::COUPON_PAYMENT_DATE)
894 }
895
896
897
898
899 pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
901 self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
902 }
903
904 pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
906 let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
907 self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
908 Ok(fld.value())
909 }
910
911
912 pub fn has_coupon_rate(&self) -> bool {
914 self.message.body.has(tag::COUPON_RATE)
915 }
916
917
918
919
920 pub fn set_credit_rating(&mut self, v: String) {
922 self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
923 }
924
925 pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
927 let mut fld = field::CreditRatingField::new(String::new());
928 self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
929 Ok(fld.value().to_string())
930 }
931
932
933 pub fn has_credit_rating(&self) -> bool {
935 self.message.body.has(tag::CREDIT_RATING)
936 }
937
938
939
940
941 pub fn set_currency(&mut self, v: String) {
943 self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
944 }
945
946 pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
948 let mut fld = field::CurrencyField::new(String::new());
949 self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
950 Ok(fld.value().to_string())
951 }
952
953
954 pub fn has_currency(&self) -> bool {
956 self.message.body.has(tag::CURRENCY)
957 }
958
959
960
961
962 pub fn set_cust_order_capacity(&mut self, v: isize) {
964 self.message.body.set_field(tag::CUST_ORDER_CAPACITY, fixer::fix_int::FIXInt::from(v));
965 }
966
967 pub fn get_cust_order_capacity(&self) -> Result<isize, MessageRejectErrorEnum> {
969 let mut fld = field::CustOrderCapacityField::new(0);
970 self.message.body.get_field(tag::CUST_ORDER_CAPACITY, &mut fld.0)?;
971 Ok(fld.value())
972 }
973
974
975 pub fn has_cust_order_capacity(&self) -> bool {
977 self.message.body.has(tag::CUST_ORDER_CAPACITY)
978 }
979
980
981
982
983 pub fn set_dated_date(&mut self, v: String) {
985 self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
986 }
987
988 pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
990 let mut fld = field::DatedDateField::new(String::new());
991 self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
992 Ok(fld.value().to_string())
993 }
994
995
996 pub fn has_dated_date(&self) -> bool {
998 self.message.body.has(tag::DATED_DATE)
999 }
1000
1001
1002
1003
1004 pub fn set_delivery_form(&mut self, v: isize) {
1006 self.message.body.set_field(tag::DELIVERY_FORM, fixer::fix_int::FIXInt::from(v));
1007 }
1008
1009 pub fn get_delivery_form(&self) -> Result<isize, MessageRejectErrorEnum> {
1011 let mut fld = field::DeliveryFormField::new(0);
1012 self.message.body.get_field(tag::DELIVERY_FORM, &mut fld.0)?;
1013 Ok(fld.value())
1014 }
1015
1016
1017 pub fn has_delivery_form(&self) -> bool {
1019 self.message.body.has(tag::DELIVERY_FORM)
1020 }
1021
1022
1023
1024
1025 pub fn set_delivery_type(&mut self, v: isize) {
1027 self.message.body.set_field(tag::DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
1028 }
1029
1030 pub fn get_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1032 let mut fld = field::DeliveryTypeField::new(0);
1033 self.message.body.get_field(tag::DELIVERY_TYPE, &mut fld.0)?;
1034 Ok(fld.value())
1035 }
1036
1037
1038 pub fn has_delivery_type(&self) -> bool {
1040 self.message.body.has(tag::DELIVERY_TYPE)
1041 }
1042
1043
1044
1045
1046 pub fn set_detachment_point(&mut self, val: Decimal, scale: i32) {
1048 self.message.body.set_field(tag::DETACHMENT_POINT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1049 }
1050
1051 pub fn get_detachment_point(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1053 let mut fld = field::DetachmentPointField::new(Decimal::ZERO, 0);
1054 self.message.body.get_field(tag::DETACHMENT_POINT, &mut fld.0)?;
1055 Ok(fld.value())
1056 }
1057
1058
1059 pub fn has_detachment_point(&self) -> bool {
1061 self.message.body.has(tag::DETACHMENT_POINT)
1062 }
1063
1064
1065
1066
1067 pub fn set_encoded_issuer(&mut self, v: String) {
1069 self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
1070 }
1071
1072 pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1074 let mut fld = field::EncodedIssuerField::new(String::new());
1075 self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
1076 Ok(fld.value().to_string())
1077 }
1078
1079
1080 pub fn has_encoded_issuer(&self) -> bool {
1082 self.message.body.has(tag::ENCODED_ISSUER)
1083 }
1084
1085
1086
1087
1088 pub fn set_encoded_issuer_len(&mut self, v: isize) {
1090 self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
1091 }
1092
1093 pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1095 let mut fld = field::EncodedIssuerLenField::new(0);
1096 self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
1097 Ok(fld.value())
1098 }
1099
1100
1101 pub fn has_encoded_issuer_len(&self) -> bool {
1103 self.message.body.has(tag::ENCODED_ISSUER_LEN)
1104 }
1105
1106
1107
1108
1109 pub fn set_encoded_security_desc(&mut self, v: String) {
1111 self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
1112 }
1113
1114 pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1116 let mut fld = field::EncodedSecurityDescField::new(String::new());
1117 self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
1118 Ok(fld.value().to_string())
1119 }
1120
1121
1122 pub fn has_encoded_security_desc(&self) -> bool {
1124 self.message.body.has(tag::ENCODED_SECURITY_DESC)
1125 }
1126
1127
1128
1129
1130 pub fn set_encoded_security_desc_len(&mut self, v: isize) {
1132 self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
1133 }
1134
1135 pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1137 let mut fld = field::EncodedSecurityDescLenField::new(0);
1138 self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
1139 Ok(fld.value())
1140 }
1141
1142
1143 pub fn has_encoded_security_desc_len(&self) -> bool {
1145 self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
1146 }
1147
1148
1149
1150
1151 pub fn set_encoded_text(&mut self, v: String) {
1153 self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
1154 }
1155
1156 pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
1158 let mut fld = field::EncodedTextField::new(String::new());
1159 self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
1160 Ok(fld.value().to_string())
1161 }
1162
1163
1164 pub fn has_encoded_text(&self) -> bool {
1166 self.message.body.has(tag::ENCODED_TEXT)
1167 }
1168
1169
1170
1171
1172 pub fn set_encoded_text_len(&mut self, v: isize) {
1174 self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
1175 }
1176
1177 pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1179 let mut fld = field::EncodedTextLenField::new(0);
1180 self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
1181 Ok(fld.value())
1182 }
1183
1184
1185 pub fn has_encoded_text_len(&self) -> bool {
1187 self.message.body.has(tag::ENCODED_TEXT_LEN)
1188 }
1189
1190
1191
1192
1193 pub fn set_end_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
1195 self.message.body.set_field(tag::END_ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1196 }
1197
1198 pub fn get_end_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1200 let mut fld = field::EndAccruedInterestAmtField::new(Decimal::ZERO, 0);
1201 self.message.body.get_field(tag::END_ACCRUED_INTEREST_AMT, &mut fld.0)?;
1202 Ok(fld.value())
1203 }
1204
1205
1206 pub fn has_end_accrued_interest_amt(&self) -> bool {
1208 self.message.body.has(tag::END_ACCRUED_INTEREST_AMT)
1209 }
1210
1211
1212
1213
1214 pub fn set_end_cash(&mut self, val: Decimal, scale: i32) {
1216 self.message.body.set_field(tag::END_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1217 }
1218
1219 pub fn get_end_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1221 let mut fld = field::EndCashField::new(Decimal::ZERO, 0);
1222 self.message.body.get_field(tag::END_CASH, &mut fld.0)?;
1223 Ok(fld.value())
1224 }
1225
1226
1227 pub fn has_end_cash(&self) -> bool {
1229 self.message.body.has(tag::END_CASH)
1230 }
1231
1232
1233
1234
1235 pub fn set_end_date(&mut self, v: String) {
1237 self.message.body.set_field(tag::END_DATE, FIXString::from(v));
1238 }
1239
1240 pub fn get_end_date(&self) -> Result<String, MessageRejectErrorEnum> {
1242 let mut fld = field::EndDateField::new(String::new());
1243 self.message.body.get_field(tag::END_DATE, &mut fld.0)?;
1244 Ok(fld.value().to_string())
1245 }
1246
1247
1248 pub fn has_end_date(&self) -> bool {
1250 self.message.body.has(tag::END_DATE)
1251 }
1252
1253
1254
1255
1256 pub fn set_exercise_style(&mut self, v: isize) {
1258 self.message.body.set_field(tag::EXERCISE_STYLE, fixer::fix_int::FIXInt::from(v));
1259 }
1260
1261 pub fn get_exercise_style(&self) -> Result<isize, MessageRejectErrorEnum> {
1263 let mut fld = field::ExerciseStyleField::new(0);
1264 self.message.body.get_field(tag::EXERCISE_STYLE, &mut fld.0)?;
1265 Ok(fld.value())
1266 }
1267
1268
1269 pub fn has_exercise_style(&self) -> bool {
1271 self.message.body.has(tag::EXERCISE_STYLE)
1272 }
1273
1274
1275
1276
1277 pub fn set_factor(&mut self, val: Decimal, scale: i32) {
1279 self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1280 }
1281
1282 pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1284 let mut fld = field::FactorField::new(Decimal::ZERO, 0);
1285 self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
1286 Ok(fld.value())
1287 }
1288
1289
1290 pub fn has_factor(&self) -> bool {
1292 self.message.body.has(tag::FACTOR)
1293 }
1294
1295
1296
1297
1298 pub fn set_flex_product_eligibility_indicator(&mut self, v: bool) {
1300 self.message.body.set_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
1301 }
1302
1303 pub fn get_flex_product_eligibility_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
1305 let mut fld = field::FlexProductEligibilityIndicatorField::new(false);
1306 self.message.body.get_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, &mut fld.0)?;
1307 Ok(fld.value())
1308 }
1309
1310
1311 pub fn has_flex_product_eligibility_indicator(&self) -> bool {
1313 self.message.body.has(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR)
1314 }
1315
1316
1317
1318
1319 pub fn set_flexible_indicator(&mut self, v: bool) {
1321 self.message.body.set_field(tag::FLEXIBLE_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
1322 }
1323
1324 pub fn get_flexible_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
1326 let mut fld = field::FlexibleIndicatorField::new(false);
1327 self.message.body.get_field(tag::FLEXIBLE_INDICATOR, &mut fld.0)?;
1328 Ok(fld.value())
1329 }
1330
1331
1332 pub fn has_flexible_indicator(&self) -> bool {
1334 self.message.body.has(tag::FLEXIBLE_INDICATOR)
1335 }
1336
1337
1338
1339
1340 pub fn set_floor_price(&mut self, val: Decimal, scale: i32) {
1342 self.message.body.set_field(tag::FLOOR_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1343 }
1344
1345 pub fn get_floor_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1347 let mut fld = field::FloorPriceField::new(Decimal::ZERO, 0);
1348 self.message.body.get_field(tag::FLOOR_PRICE, &mut fld.0)?;
1349 Ok(fld.value())
1350 }
1351
1352
1353 pub fn has_floor_price(&self) -> bool {
1355 self.message.body.has(tag::FLOOR_PRICE)
1356 }
1357
1358
1359
1360
1361 pub fn set_flow_schedule_type(&mut self, v: isize) {
1363 self.message.body.set_field(tag::FLOW_SCHEDULE_TYPE, fixer::fix_int::FIXInt::from(v));
1364 }
1365
1366 pub fn get_flow_schedule_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1368 let mut fld = field::FlowScheduleTypeField::new(0);
1369 self.message.body.get_field(tag::FLOW_SCHEDULE_TYPE, &mut fld.0)?;
1370 Ok(fld.value())
1371 }
1372
1373
1374 pub fn has_flow_schedule_type(&self) -> bool {
1376 self.message.body.has(tag::FLOW_SCHEDULE_TYPE)
1377 }
1378
1379
1380
1381
1382 pub fn set_gross_trade_amt(&mut self, val: Decimal, scale: i32) {
1384 self.message.body.set_field(tag::GROSS_TRADE_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1385 }
1386
1387 pub fn get_gross_trade_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1389 let mut fld = field::GrossTradeAmtField::new(Decimal::ZERO, 0);
1390 self.message.body.get_field(tag::GROSS_TRADE_AMT, &mut fld.0)?;
1391 Ok(fld.value())
1392 }
1393
1394
1395 pub fn has_gross_trade_amt(&self) -> bool {
1397 self.message.body.has(tag::GROSS_TRADE_AMT)
1398 }
1399
1400
1401
1402
1403 pub fn set_instr_registry(&mut self, v: String) {
1405 self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
1406 }
1407
1408 pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
1410 let mut fld = field::InstrRegistryField::new(String::new());
1411 self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
1412 Ok(fld.value().to_string())
1413 }
1414
1415
1416 pub fn has_instr_registry(&self) -> bool {
1418 self.message.body.has(tag::INSTR_REGISTRY)
1419 }
1420
1421
1422
1423
1424 pub fn set_instrmt_assignment_method(&mut self, v: String) {
1426 self.message.body.set_field(tag::INSTRMT_ASSIGNMENT_METHOD, FIXString::from(v));
1427 }
1428
1429 pub fn get_instrmt_assignment_method(&self) -> Result<String, MessageRejectErrorEnum> {
1431 let mut fld = field::InstrmtAssignmentMethodField::new(String::new());
1432 self.message.body.get_field(tag::INSTRMT_ASSIGNMENT_METHOD, &mut fld.0)?;
1433 Ok(fld.value().to_string())
1434 }
1435
1436
1437 pub fn has_instrmt_assignment_method(&self) -> bool {
1439 self.message.body.has(tag::INSTRMT_ASSIGNMENT_METHOD)
1440 }
1441
1442
1443
1444
1445 pub fn set_interest_accrual_date(&mut self, v: String) {
1447 self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
1448 }
1449
1450 pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
1452 let mut fld = field::InterestAccrualDateField::new(String::new());
1453 self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
1454 Ok(fld.value().to_string())
1455 }
1456
1457
1458 pub fn has_interest_accrual_date(&self) -> bool {
1460 self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
1461 }
1462
1463
1464
1465
1466 pub fn set_interest_at_maturity(&mut self, val: Decimal, scale: i32) {
1468 self.message.body.set_field(tag::INTEREST_AT_MATURITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1469 }
1470
1471 pub fn get_interest_at_maturity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1473 let mut fld = field::InterestAtMaturityField::new(Decimal::ZERO, 0);
1474 self.message.body.get_field(tag::INTEREST_AT_MATURITY, &mut fld.0)?;
1475 Ok(fld.value())
1476 }
1477
1478
1479 pub fn has_interest_at_maturity(&self) -> bool {
1481 self.message.body.has(tag::INTEREST_AT_MATURITY)
1482 }
1483
1484
1485
1486
1487 pub fn set_issue_date(&mut self, v: String) {
1489 self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
1490 }
1491
1492 pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
1494 let mut fld = field::IssueDateField::new(String::new());
1495 self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
1496 Ok(fld.value().to_string())
1497 }
1498
1499
1500 pub fn has_issue_date(&self) -> bool {
1502 self.message.body.has(tag::ISSUE_DATE)
1503 }
1504
1505
1506
1507
1508 pub fn set_issuer(&mut self, v: String) {
1510 self.message.body.set_field(tag::ISSUER, FIXString::from(v));
1511 }
1512
1513 pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1515 let mut fld = field::IssuerField::new(String::new());
1516 self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
1517 Ok(fld.value().to_string())
1518 }
1519
1520
1521 pub fn has_issuer(&self) -> bool {
1523 self.message.body.has(tag::ISSUER)
1524 }
1525
1526
1527
1528
1529 pub fn set_last_fragment(&mut self, v: bool) {
1531 self.message.body.set_field(tag::LAST_FRAGMENT, fixer::fix_boolean::FIXBoolean::from(v));
1532 }
1533
1534 pub fn get_last_fragment(&self) -> Result<bool, MessageRejectErrorEnum> {
1536 let mut fld = field::LastFragmentField::new(false);
1537 self.message.body.get_field(tag::LAST_FRAGMENT, &mut fld.0)?;
1538 Ok(fld.value())
1539 }
1540
1541
1542 pub fn has_last_fragment(&self) -> bool {
1544 self.message.body.has(tag::LAST_FRAGMENT)
1545 }
1546
1547
1548
1549
1550 pub fn set_last_mkt(&mut self, v: String) {
1552 self.message.body.set_field(tag::LAST_MKT, FIXString::from(v));
1553 }
1554
1555 pub fn get_last_mkt(&self) -> Result<String, MessageRejectErrorEnum> {
1557 let mut fld = field::LastMktField::new(String::new());
1558 self.message.body.get_field(tag::LAST_MKT, &mut fld.0)?;
1559 Ok(fld.value().to_string())
1560 }
1561
1562
1563 pub fn has_last_mkt(&self) -> bool {
1565 self.message.body.has(tag::LAST_MKT)
1566 }
1567
1568
1569
1570
1571 pub fn set_legal_confirm(&mut self, v: bool) {
1573 self.message.body.set_field(tag::LEGAL_CONFIRM, fixer::fix_boolean::FIXBoolean::from(v));
1574 }
1575
1576 pub fn get_legal_confirm(&self) -> Result<bool, MessageRejectErrorEnum> {
1578 let mut fld = field::LegalConfirmField::new(false);
1579 self.message.body.get_field(tag::LEGAL_CONFIRM, &mut fld.0)?;
1580 Ok(fld.value())
1581 }
1582
1583
1584 pub fn has_legal_confirm(&self) -> bool {
1586 self.message.body.has(tag::LEGAL_CONFIRM)
1587 }
1588
1589
1590
1591
1592 pub fn set_list_method(&mut self, v: isize) {
1594 self.message.body.set_field(tag::LIST_METHOD, fixer::fix_int::FIXInt::from(v));
1595 }
1596
1597 pub fn get_list_method(&self) -> Result<isize, MessageRejectErrorEnum> {
1599 let mut fld = field::ListMethodField::new(0);
1600 self.message.body.get_field(tag::LIST_METHOD, &mut fld.0)?;
1601 Ok(fld.value())
1602 }
1603
1604
1605 pub fn has_list_method(&self) -> bool {
1607 self.message.body.has(tag::LIST_METHOD)
1608 }
1609
1610
1611
1612
1613 pub fn set_locale_of_issue(&mut self, v: String) {
1615 self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
1616 }
1617
1618 pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1620 let mut fld = field::LocaleOfIssueField::new(String::new());
1621 self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
1622 Ok(fld.value().to_string())
1623 }
1624
1625
1626 pub fn has_locale_of_issue(&self) -> bool {
1628 self.message.body.has(tag::LOCALE_OF_ISSUE)
1629 }
1630
1631
1632
1633
1634 pub fn set_margin_ratio(&mut self, val: Decimal, scale: i32) {
1636 self.message.body.set_field(tag::MARGIN_RATIO, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1637 }
1638
1639 pub fn get_margin_ratio(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1641 let mut fld = field::MarginRatioField::new(Decimal::ZERO, 0);
1642 self.message.body.get_field(tag::MARGIN_RATIO, &mut fld.0)?;
1643 Ok(fld.value())
1644 }
1645
1646
1647 pub fn has_margin_ratio(&self) -> bool {
1649 self.message.body.has(tag::MARGIN_RATIO)
1650 }
1651
1652
1653
1654
1655 pub fn set_match_type(&mut self, v: String) {
1657 self.message.body.set_field(tag::MATCH_TYPE, FIXString::from(v));
1658 }
1659
1660 pub fn get_match_type(&self) -> Result<String, MessageRejectErrorEnum> {
1662 let mut fld = field::MatchTypeField::new(String::new());
1663 self.message.body.get_field(tag::MATCH_TYPE, &mut fld.0)?;
1664 Ok(fld.value().to_string())
1665 }
1666
1667
1668 pub fn has_match_type(&self) -> bool {
1670 self.message.body.has(tag::MATCH_TYPE)
1671 }
1672
1673
1674
1675
1676 pub fn set_maturity_date(&mut self, v: String) {
1678 self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
1679 }
1680
1681 pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
1683 let mut fld = field::MaturityDateField::new(String::new());
1684 self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
1685 Ok(fld.value().to_string())
1686 }
1687
1688
1689 pub fn has_maturity_date(&self) -> bool {
1691 self.message.body.has(tag::MATURITY_DATE)
1692 }
1693
1694
1695
1696
1697 pub fn set_maturity_month_year(&mut self, v: String) {
1699 self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
1700 }
1701
1702 pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
1704 let mut fld = field::MaturityMonthYearField::new(String::new());
1705 self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
1706 Ok(fld.value().to_string())
1707 }
1708
1709
1710 pub fn has_maturity_month_year(&self) -> bool {
1712 self.message.body.has(tag::MATURITY_MONTH_YEAR)
1713 }
1714
1715
1716
1717
1718 pub fn set_maturity_time(&mut self, v: String) {
1720 self.message.body.set_field(tag::MATURITY_TIME, FIXString::from(v));
1721 }
1722
1723 pub fn get_maturity_time(&self) -> Result<String, MessageRejectErrorEnum> {
1725 let mut fld = field::MaturityTimeField::new(String::new());
1726 self.message.body.get_field(tag::MATURITY_TIME, &mut fld.0)?;
1727 Ok(fld.value().to_string())
1728 }
1729
1730
1731 pub fn has_maturity_time(&self) -> bool {
1733 self.message.body.has(tag::MATURITY_TIME)
1734 }
1735
1736
1737
1738
1739 pub fn set_message_event_source(&mut self, v: String) {
1741 self.message.body.set_field(tag::MESSAGE_EVENT_SOURCE, FIXString::from(v));
1742 }
1743
1744 pub fn get_message_event_source(&self) -> Result<String, MessageRejectErrorEnum> {
1746 let mut fld = field::MessageEventSourceField::new(String::new());
1747 self.message.body.get_field(tag::MESSAGE_EVENT_SOURCE, &mut fld.0)?;
1748 Ok(fld.value().to_string())
1749 }
1750
1751
1752 pub fn has_message_event_source(&self) -> bool {
1754 self.message.body.has(tag::MESSAGE_EVENT_SOURCE)
1755 }
1756
1757
1758
1759
1760 pub fn set_min_price_increment(&mut self, val: Decimal, scale: i32) {
1762 self.message.body.set_field(tag::MIN_PRICE_INCREMENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1763 }
1764
1765 pub fn get_min_price_increment(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1767 let mut fld = field::MinPriceIncrementField::new(Decimal::ZERO, 0);
1768 self.message.body.get_field(tag::MIN_PRICE_INCREMENT, &mut fld.0)?;
1769 Ok(fld.value())
1770 }
1771
1772
1773 pub fn has_min_price_increment(&self) -> bool {
1775 self.message.body.has(tag::MIN_PRICE_INCREMENT)
1776 }
1777
1778
1779
1780
1781 pub fn set_min_price_increment_amount(&mut self, val: Decimal, scale: i32) {
1783 self.message.body.set_field(tag::MIN_PRICE_INCREMENT_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1784 }
1785
1786 pub fn get_min_price_increment_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1788 let mut fld = field::MinPriceIncrementAmountField::new(Decimal::ZERO, 0);
1789 self.message.body.get_field(tag::MIN_PRICE_INCREMENT_AMOUNT, &mut fld.0)?;
1790 Ok(fld.value())
1791 }
1792
1793
1794 pub fn has_min_price_increment_amount(&self) -> bool {
1796 self.message.body.has(tag::MIN_PRICE_INCREMENT_AMOUNT)
1797 }
1798
1799
1800
1801
1802 pub fn set_multi_leg_reporting_type(&mut self, v: String) {
1804 self.message.body.set_field(tag::MULTI_LEG_REPORTING_TYPE, FIXString::from(v));
1805 }
1806
1807 pub fn get_multi_leg_reporting_type(&self) -> Result<String, MessageRejectErrorEnum> {
1809 let mut fld = field::MultiLegReportingTypeField::new(String::new());
1810 self.message.body.get_field(tag::MULTI_LEG_REPORTING_TYPE, &mut fld.0)?;
1811 Ok(fld.value().to_string())
1812 }
1813
1814
1815 pub fn has_multi_leg_reporting_type(&self) -> bool {
1817 self.message.body.has(tag::MULTI_LEG_REPORTING_TYPE)
1818 }
1819
1820
1821
1822
1823 pub fn set_nt_position_limit(&mut self, v: isize) {
1825 self.message.body.set_field(tag::NT_POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1826 }
1827
1828 pub fn get_nt_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1830 let mut fld = field::NTPositionLimitField::new(0);
1831 self.message.body.get_field(tag::NT_POSITION_LIMIT, &mut fld.0)?;
1832 Ok(fld.value())
1833 }
1834
1835
1836 pub fn has_nt_position_limit(&self) -> bool {
1838 self.message.body.has(tag::NT_POSITION_LIMIT)
1839 }
1840
1841
1842
1843
1844 pub fn set_net_money(&mut self, val: Decimal, scale: i32) {
1846 self.message.body.set_field(tag::NET_MONEY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1847 }
1848
1849 pub fn get_net_money(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1851 let mut fld = field::NetMoneyField::new(Decimal::ZERO, 0);
1852 self.message.body.get_field(tag::NET_MONEY, &mut fld.0)?;
1853 Ok(fld.value())
1854 }
1855
1856
1857 pub fn has_net_money(&self) -> bool {
1859 self.message.body.has(tag::NET_MONEY)
1860 }
1861
1862
1863
1864
1865 pub fn set_no_allocs(&mut self, v: isize) {
1867 self.message.body.set_field(tag::NO_ALLOCS, fixer::fix_int::FIXInt::from(v));
1868 }
1869
1870 pub fn get_no_allocs(&self) -> Result<isize, MessageRejectErrorEnum> {
1872 let mut fld = field::NoAllocsField::new(0);
1873 self.message.body.get_field(tag::NO_ALLOCS, &mut fld.0)?;
1874 Ok(fld.value())
1875 }
1876
1877
1878 pub fn has_no_allocs(&self) -> bool {
1880 self.message.body.has(tag::NO_ALLOCS)
1881 }
1882
1883
1884
1885
1886 pub fn set_no_complex_events(&mut self, v: isize) {
1888 self.message.body.set_field(tag::NO_COMPLEX_EVENTS, fixer::fix_int::FIXInt::from(v));
1889 }
1890
1891 pub fn get_no_complex_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1893 let mut fld = field::NoComplexEventsField::new(0);
1894 self.message.body.get_field(tag::NO_COMPLEX_EVENTS, &mut fld.0)?;
1895 Ok(fld.value())
1896 }
1897
1898
1899 pub fn has_no_complex_events(&self) -> bool {
1901 self.message.body.has(tag::NO_COMPLEX_EVENTS)
1902 }
1903
1904
1905
1906
1907 pub fn set_no_events(&mut self, v: isize) {
1909 self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
1910 }
1911
1912 pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1914 let mut fld = field::NoEventsField::new(0);
1915 self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
1916 Ok(fld.value())
1917 }
1918
1919
1920 pub fn has_no_events(&self) -> bool {
1922 self.message.body.has(tag::NO_EVENTS)
1923 }
1924
1925
1926
1927
1928 pub fn set_no_execs(&mut self, v: isize) {
1930 self.message.body.set_field(tag::NO_EXECS, fixer::fix_int::FIXInt::from(v));
1931 }
1932
1933 pub fn get_no_execs(&self) -> Result<isize, MessageRejectErrorEnum> {
1935 let mut fld = field::NoExecsField::new(0);
1936 self.message.body.get_field(tag::NO_EXECS, &mut fld.0)?;
1937 Ok(fld.value())
1938 }
1939
1940
1941 pub fn has_no_execs(&self) -> bool {
1943 self.message.body.has(tag::NO_EXECS)
1944 }
1945
1946
1947
1948
1949 pub fn set_no_instr_attrib(&mut self, v: isize) {
1951 self.message.body.set_field(tag::NO_INSTR_ATTRIB, fixer::fix_int::FIXInt::from(v));
1952 }
1953
1954 pub fn get_no_instr_attrib(&self) -> Result<isize, MessageRejectErrorEnum> {
1956 let mut fld = field::NoInstrAttribField::new(0);
1957 self.message.body.get_field(tag::NO_INSTR_ATTRIB, &mut fld.0)?;
1958 Ok(fld.value())
1959 }
1960
1961
1962 pub fn has_no_instr_attrib(&self) -> bool {
1964 self.message.body.has(tag::NO_INSTR_ATTRIB)
1965 }
1966
1967
1968
1969
1970 pub fn set_no_instrument_parties(&mut self, v: isize) {
1972 self.message.body.set_field(tag::NO_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
1973 }
1974
1975 pub fn get_no_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
1977 let mut fld = field::NoInstrumentPartiesField::new(0);
1978 self.message.body.get_field(tag::NO_INSTRUMENT_PARTIES, &mut fld.0)?;
1979 Ok(fld.value())
1980 }
1981
1982
1983 pub fn has_no_instrument_parties(&self) -> bool {
1985 self.message.body.has(tag::NO_INSTRUMENT_PARTIES)
1986 }
1987
1988
1989
1990
1991 pub fn set_no_legs(&mut self, v: isize) {
1993 self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
1994 }
1995
1996 pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
1998 let mut fld = field::NoLegsField::new(0);
1999 self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
2000 Ok(fld.value())
2001 }
2002
2003
2004 pub fn has_no_legs(&self) -> bool {
2006 self.message.body.has(tag::NO_LEGS)
2007 }
2008
2009
2010
2011
2012 pub fn set_no_orders(&mut self, v: isize) {
2014 self.message.body.set_field(tag::NO_ORDERS, fixer::fix_int::FIXInt::from(v));
2015 }
2016
2017 pub fn get_no_orders(&self) -> Result<isize, MessageRejectErrorEnum> {
2019 let mut fld = field::NoOrdersField::new(0);
2020 self.message.body.get_field(tag::NO_ORDERS, &mut fld.0)?;
2021 Ok(fld.value())
2022 }
2023
2024
2025 pub fn has_no_orders(&self) -> bool {
2027 self.message.body.has(tag::NO_ORDERS)
2028 }
2029
2030
2031
2032
2033 pub fn set_no_party_i_ds(&mut self, v: isize) {
2035 self.message.body.set_field(tag::NO_PARTY_I_DS, fixer::fix_int::FIXInt::from(v));
2036 }
2037
2038 pub fn get_no_party_i_ds(&self) -> Result<isize, MessageRejectErrorEnum> {
2040 let mut fld = field::NoPartyIDsField::new(0);
2041 self.message.body.get_field(tag::NO_PARTY_I_DS, &mut fld.0)?;
2042 Ok(fld.value())
2043 }
2044
2045
2046 pub fn has_no_party_i_ds(&self) -> bool {
2048 self.message.body.has(tag::NO_PARTY_I_DS)
2049 }
2050
2051
2052
2053
2054 pub fn set_no_pos_amt(&mut self, v: isize) {
2056 self.message.body.set_field(tag::NO_POS_AMT, fixer::fix_int::FIXInt::from(v));
2057 }
2058
2059 pub fn get_no_pos_amt(&self) -> Result<isize, MessageRejectErrorEnum> {
2061 let mut fld = field::NoPosAmtField::new(0);
2062 self.message.body.get_field(tag::NO_POS_AMT, &mut fld.0)?;
2063 Ok(fld.value())
2064 }
2065
2066
2067 pub fn has_no_pos_amt(&self) -> bool {
2069 self.message.body.has(tag::NO_POS_AMT)
2070 }
2071
2072
2073
2074
2075 pub fn set_no_rate_sources(&mut self, v: isize) {
2077 self.message.body.set_field(tag::NO_RATE_SOURCES, fixer::fix_int::FIXInt::from(v));
2078 }
2079
2080 pub fn get_no_rate_sources(&self) -> Result<isize, MessageRejectErrorEnum> {
2082 let mut fld = field::NoRateSourcesField::new(0);
2083 self.message.body.get_field(tag::NO_RATE_SOURCES, &mut fld.0)?;
2084 Ok(fld.value())
2085 }
2086
2087
2088 pub fn has_no_rate_sources(&self) -> bool {
2090 self.message.body.has(tag::NO_RATE_SOURCES)
2091 }
2092
2093
2094
2095
2096 pub fn set_no_security_alt_id(&mut self, v: isize) {
2098 self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
2099 }
2100
2101 pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
2103 let mut fld = field::NoSecurityAltIDField::new(0);
2104 self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
2105 Ok(fld.value())
2106 }
2107
2108
2109 pub fn has_no_security_alt_id(&self) -> bool {
2111 self.message.body.has(tag::NO_SECURITY_ALT_ID)
2112 }
2113
2114
2115
2116
2117 pub fn set_no_stipulations(&mut self, v: isize) {
2119 self.message.body.set_field(tag::NO_STIPULATIONS, fixer::fix_int::FIXInt::from(v));
2120 }
2121
2122 pub fn get_no_stipulations(&self) -> Result<isize, MessageRejectErrorEnum> {
2124 let mut fld = field::NoStipulationsField::new(0);
2125 self.message.body.get_field(tag::NO_STIPULATIONS, &mut fld.0)?;
2126 Ok(fld.value())
2127 }
2128
2129
2130 pub fn has_no_stipulations(&self) -> bool {
2132 self.message.body.has(tag::NO_STIPULATIONS)
2133 }
2134
2135
2136
2137
2138 pub fn set_no_underlyings(&mut self, v: isize) {
2140 self.message.body.set_field(tag::NO_UNDERLYINGS, fixer::fix_int::FIXInt::from(v));
2141 }
2142
2143 pub fn get_no_underlyings(&self) -> Result<isize, MessageRejectErrorEnum> {
2145 let mut fld = field::NoUnderlyingsField::new(0);
2146 self.message.body.get_field(tag::NO_UNDERLYINGS, &mut fld.0)?;
2147 Ok(fld.value())
2148 }
2149
2150
2151 pub fn has_no_underlyings(&self) -> bool {
2153 self.message.body.has(tag::NO_UNDERLYINGS)
2154 }
2155
2156
2157
2158
2159 pub fn set_notional_percentage_outstanding(&mut self, val: Decimal, scale: i32) {
2161 self.message.body.set_field(tag::NOTIONAL_PERCENTAGE_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2162 }
2163
2164 pub fn get_notional_percentage_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2166 let mut fld = field::NotionalPercentageOutstandingField::new(Decimal::ZERO, 0);
2167 self.message.body.get_field(tag::NOTIONAL_PERCENTAGE_OUTSTANDING, &mut fld.0)?;
2168 Ok(fld.value())
2169 }
2170
2171
2172 pub fn has_notional_percentage_outstanding(&self) -> bool {
2174 self.message.body.has(tag::NOTIONAL_PERCENTAGE_OUTSTANDING)
2175 }
2176
2177
2178
2179
2180 pub fn set_num_days_interest(&mut self, v: isize) {
2182 self.message.body.set_field(tag::NUM_DAYS_INTEREST, fixer::fix_int::FIXInt::from(v));
2183 }
2184
2185 pub fn get_num_days_interest(&self) -> Result<isize, MessageRejectErrorEnum> {
2187 let mut fld = field::NumDaysInterestField::new(0);
2188 self.message.body.get_field(tag::NUM_DAYS_INTEREST, &mut fld.0)?;
2189 Ok(fld.value())
2190 }
2191
2192
2193 pub fn has_num_days_interest(&self) -> bool {
2195 self.message.body.has(tag::NUM_DAYS_INTEREST)
2196 }
2197
2198
2199
2200
2201 pub fn set_opt_attribute(&mut self, v: String) {
2203 self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
2204 }
2205
2206 pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
2208 let mut fld = field::OptAttributeField::new(String::new());
2209 self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
2210 Ok(fld.value().to_string())
2211 }
2212
2213
2214 pub fn has_opt_attribute(&self) -> bool {
2216 self.message.body.has(tag::OPT_ATTRIBUTE)
2217 }
2218
2219
2220
2221
2222 pub fn set_opt_payout_amount(&mut self, val: Decimal, scale: i32) {
2224 self.message.body.set_field(tag::OPT_PAYOUT_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2225 }
2226
2227 pub fn get_opt_payout_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2229 let mut fld = field::OptPayoutAmountField::new(Decimal::ZERO, 0);
2230 self.message.body.get_field(tag::OPT_PAYOUT_AMOUNT, &mut fld.0)?;
2231 Ok(fld.value())
2232 }
2233
2234
2235 pub fn has_opt_payout_amount(&self) -> bool {
2237 self.message.body.has(tag::OPT_PAYOUT_AMOUNT)
2238 }
2239
2240
2241
2242
2243 pub fn set_opt_payout_type(&mut self, v: isize) {
2245 self.message.body.set_field(tag::OPT_PAYOUT_TYPE, fixer::fix_int::FIXInt::from(v));
2246 }
2247
2248 pub fn get_opt_payout_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2250 let mut fld = field::OptPayoutTypeField::new(0);
2251 self.message.body.get_field(tag::OPT_PAYOUT_TYPE, &mut fld.0)?;
2252 Ok(fld.value())
2253 }
2254
2255
2256 pub fn has_opt_payout_type(&self) -> bool {
2258 self.message.body.has(tag::OPT_PAYOUT_TYPE)
2259 }
2260
2261
2262
2263
2264 pub fn set_original_notional_percentage_outstanding(&mut self, val: Decimal, scale: i32) {
2266 self.message.body.set_field(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2267 }
2268
2269 pub fn get_original_notional_percentage_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2271 let mut fld = field::OriginalNotionalPercentageOutstandingField::new(Decimal::ZERO, 0);
2272 self.message.body.get_field(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING, &mut fld.0)?;
2273 Ok(fld.value())
2274 }
2275
2276
2277 pub fn has_original_notional_percentage_outstanding(&self) -> bool {
2279 self.message.body.has(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING)
2280 }
2281
2282
2283
2284
2285 pub fn set_pct_at_risk(&mut self, val: Decimal, scale: i32) {
2287 self.message.body.set_field(tag::PCT_AT_RISK, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2288 }
2289
2290 pub fn get_pct_at_risk(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2292 let mut fld = field::PctAtRiskField::new(Decimal::ZERO, 0);
2293 self.message.body.get_field(tag::PCT_AT_RISK, &mut fld.0)?;
2294 Ok(fld.value())
2295 }
2296
2297
2298 pub fn has_pct_at_risk(&self) -> bool {
2300 self.message.body.has(tag::PCT_AT_RISK)
2301 }
2302
2303
2304
2305
2306 pub fn set_pool(&mut self, v: String) {
2308 self.message.body.set_field(tag::POOL, FIXString::from(v));
2309 }
2310
2311 pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
2313 let mut fld = field::PoolField::new(String::new());
2314 self.message.body.get_field(tag::POOL, &mut fld.0)?;
2315 Ok(fld.value().to_string())
2316 }
2317
2318
2319 pub fn has_pool(&self) -> bool {
2321 self.message.body.has(tag::POOL)
2322 }
2323
2324
2325
2326
2327 pub fn set_position_effect(&mut self, v: String) {
2329 self.message.body.set_field(tag::POSITION_EFFECT, FIXString::from(v));
2330 }
2331
2332 pub fn get_position_effect(&self) -> Result<String, MessageRejectErrorEnum> {
2334 let mut fld = field::PositionEffectField::new(String::new());
2335 self.message.body.get_field(tag::POSITION_EFFECT, &mut fld.0)?;
2336 Ok(fld.value().to_string())
2337 }
2338
2339
2340 pub fn has_position_effect(&self) -> bool {
2342 self.message.body.has(tag::POSITION_EFFECT)
2343 }
2344
2345
2346
2347
2348 pub fn set_position_limit(&mut self, v: isize) {
2350 self.message.body.set_field(tag::POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
2351 }
2352
2353 pub fn get_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
2355 let mut fld = field::PositionLimitField::new(0);
2356 self.message.body.get_field(tag::POSITION_LIMIT, &mut fld.0)?;
2357 Ok(fld.value())
2358 }
2359
2360
2361 pub fn has_position_limit(&self) -> bool {
2363 self.message.body.has(tag::POSITION_LIMIT)
2364 }
2365
2366
2367
2368
2369 pub fn set_previously_reported(&mut self, v: bool) {
2371 self.message.body.set_field(tag::PREVIOUSLY_REPORTED, fixer::fix_boolean::FIXBoolean::from(v));
2372 }
2373
2374 pub fn get_previously_reported(&self) -> Result<bool, MessageRejectErrorEnum> {
2376 let mut fld = field::PreviouslyReportedField::new(false);
2377 self.message.body.get_field(tag::PREVIOUSLY_REPORTED, &mut fld.0)?;
2378 Ok(fld.value())
2379 }
2380
2381
2382 pub fn has_previously_reported(&self) -> bool {
2384 self.message.body.has(tag::PREVIOUSLY_REPORTED)
2385 }
2386
2387
2388
2389
2390 pub fn set_price_quote_method(&mut self, v: String) {
2392 self.message.body.set_field(tag::PRICE_QUOTE_METHOD, FIXString::from(v));
2393 }
2394
2395 pub fn get_price_quote_method(&self) -> Result<String, MessageRejectErrorEnum> {
2397 let mut fld = field::PriceQuoteMethodField::new(String::new());
2398 self.message.body.get_field(tag::PRICE_QUOTE_METHOD, &mut fld.0)?;
2399 Ok(fld.value().to_string())
2400 }
2401
2402
2403 pub fn has_price_quote_method(&self) -> bool {
2405 self.message.body.has(tag::PRICE_QUOTE_METHOD)
2406 }
2407
2408
2409
2410
2411 pub fn set_price_type(&mut self, v: isize) {
2413 self.message.body.set_field(tag::PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
2414 }
2415
2416 pub fn get_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2418 let mut fld = field::PriceTypeField::new(0);
2419 self.message.body.get_field(tag::PRICE_TYPE, &mut fld.0)?;
2420 Ok(fld.value())
2421 }
2422
2423
2424 pub fn has_price_type(&self) -> bool {
2426 self.message.body.has(tag::PRICE_TYPE)
2427 }
2428
2429
2430
2431
2432 pub fn set_price_unit_of_measure(&mut self, v: String) {
2434 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE, FIXString::from(v));
2435 }
2436
2437 pub fn get_price_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2439 let mut fld = field::PriceUnitOfMeasureField::new(String::new());
2440 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE, &mut fld.0)?;
2441 Ok(fld.value().to_string())
2442 }
2443
2444
2445 pub fn has_price_unit_of_measure(&self) -> bool {
2447 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE)
2448 }
2449
2450
2451
2452
2453 pub fn set_price_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
2455 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2456 }
2457
2458 pub fn get_price_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2460 let mut fld = field::PriceUnitOfMeasureQtyField::new(Decimal::ZERO, 0);
2461 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE_QTY, &mut fld.0)?;
2462 Ok(fld.value())
2463 }
2464
2465
2466 pub fn has_price_unit_of_measure_qty(&self) -> bool {
2468 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE_QTY)
2469 }
2470
2471
2472
2473
2474 pub fn set_product(&mut self, v: isize) {
2476 self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
2477 }
2478
2479 pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
2481 let mut fld = field::ProductField::new(0);
2482 self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
2483 Ok(fld.value())
2484 }
2485
2486
2487 pub fn has_product(&self) -> bool {
2489 self.message.body.has(tag::PRODUCT)
2490 }
2491
2492
2493
2494
2495 pub fn set_product_complex(&mut self, v: String) {
2497 self.message.body.set_field(tag::PRODUCT_COMPLEX, FIXString::from(v));
2498 }
2499
2500 pub fn get_product_complex(&self) -> Result<String, MessageRejectErrorEnum> {
2502 let mut fld = field::ProductComplexField::new(String::new());
2503 self.message.body.get_field(tag::PRODUCT_COMPLEX, &mut fld.0)?;
2504 Ok(fld.value().to_string())
2505 }
2506
2507
2508 pub fn has_product_complex(&self) -> bool {
2510 self.message.body.has(tag::PRODUCT_COMPLEX)
2511 }
2512
2513
2514
2515
2516 pub fn set_put_or_call(&mut self, v: isize) {
2518 self.message.body.set_field(tag::PUT_OR_CALL, fixer::fix_int::FIXInt::from(v));
2519 }
2520
2521 pub fn get_put_or_call(&self) -> Result<isize, MessageRejectErrorEnum> {
2523 let mut fld = field::PutOrCallField::new(0);
2524 self.message.body.get_field(tag::PUT_OR_CALL, &mut fld.0)?;
2525 Ok(fld.value())
2526 }
2527
2528
2529 pub fn has_put_or_call(&self) -> bool {
2531 self.message.body.has(tag::PUT_OR_CALL)
2532 }
2533
2534
2535
2536
2537 pub fn set_qty_type(&mut self, v: isize) {
2539 self.message.body.set_field(tag::QTY_TYPE, fixer::fix_int::FIXInt::from(v));
2540 }
2541
2542 pub fn get_qty_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2544 let mut fld = field::QtyTypeField::new(0);
2545 self.message.body.get_field(tag::QTY_TYPE, &mut fld.0)?;
2546 Ok(fld.value())
2547 }
2548
2549
2550 pub fn has_qty_type(&self) -> bool {
2552 self.message.body.has(tag::QTY_TYPE)
2553 }
2554
2555
2556
2557
2558 pub fn set_quantity(&mut self, val: Decimal, scale: i32) {
2560 self.message.body.set_field(tag::QUANTITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2561 }
2562
2563 pub fn get_quantity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2565 let mut fld = field::QuantityField::new(Decimal::ZERO, 0);
2566 self.message.body.get_field(tag::QUANTITY, &mut fld.0)?;
2567 Ok(fld.value())
2568 }
2569
2570
2571 pub fn has_quantity(&self) -> bool {
2573 self.message.body.has(tag::QUANTITY)
2574 }
2575
2576
2577
2578
2579 pub fn set_redemption_date(&mut self, v: String) {
2581 self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
2582 }
2583
2584 pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
2586 let mut fld = field::RedemptionDateField::new(String::new());
2587 self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
2588 Ok(fld.value().to_string())
2589 }
2590
2591
2592 pub fn has_redemption_date(&self) -> bool {
2594 self.message.body.has(tag::REDEMPTION_DATE)
2595 }
2596
2597
2598
2599
2600 pub fn set_ref_alloc_id(&mut self, v: String) {
2602 self.message.body.set_field(tag::REF_ALLOC_ID, FIXString::from(v));
2603 }
2604
2605 pub fn get_ref_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
2607 let mut fld = field::RefAllocIDField::new(String::new());
2608 self.message.body.get_field(tag::REF_ALLOC_ID, &mut fld.0)?;
2609 Ok(fld.value().to_string())
2610 }
2611
2612
2613 pub fn has_ref_alloc_id(&self) -> bool {
2615 self.message.body.has(tag::REF_ALLOC_ID)
2616 }
2617
2618
2619
2620
2621 pub fn set_repo_collateral_security_type(&mut self, v: isize) {
2623 self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
2624 }
2625
2626 pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2628 let mut fld = field::RepoCollateralSecurityTypeField::new(0);
2629 self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
2630 Ok(fld.value())
2631 }
2632
2633
2634 pub fn has_repo_collateral_security_type(&self) -> bool {
2636 self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
2637 }
2638
2639
2640
2641
2642 pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
2644 self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2645 }
2646
2647 pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2649 let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
2650 self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
2651 Ok(fld.value())
2652 }
2653
2654
2655 pub fn has_repurchase_rate(&self) -> bool {
2657 self.message.body.has(tag::REPURCHASE_RATE)
2658 }
2659
2660
2661
2662
2663 pub fn set_repurchase_term(&mut self, v: isize) {
2665 self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
2666 }
2667
2668 pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
2670 let mut fld = field::RepurchaseTermField::new(0);
2671 self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
2672 Ok(fld.value())
2673 }
2674
2675
2676 pub fn has_repurchase_term(&self) -> bool {
2678 self.message.body.has(tag::REPURCHASE_TERM)
2679 }
2680
2681
2682
2683
2684 pub fn set_restructuring_type(&mut self, v: String) {
2686 self.message.body.set_field(tag::RESTRUCTURING_TYPE, FIXString::from(v));
2687 }
2688
2689 pub fn get_restructuring_type(&self) -> Result<String, MessageRejectErrorEnum> {
2691 let mut fld = field::RestructuringTypeField::new(String::new());
2692 self.message.body.get_field(tag::RESTRUCTURING_TYPE, &mut fld.0)?;
2693 Ok(fld.value().to_string())
2694 }
2695
2696
2697 pub fn has_restructuring_type(&self) -> bool {
2699 self.message.body.has(tag::RESTRUCTURING_TYPE)
2700 }
2701
2702
2703
2704
2705 pub fn set_reversal_indicator(&mut self, v: bool) {
2707 self.message.body.set_field(tag::REVERSAL_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
2708 }
2709
2710 pub fn get_reversal_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
2712 let mut fld = field::ReversalIndicatorField::new(false);
2713 self.message.body.get_field(tag::REVERSAL_INDICATOR, &mut fld.0)?;
2714 Ok(fld.value())
2715 }
2716
2717
2718 pub fn has_reversal_indicator(&self) -> bool {
2720 self.message.body.has(tag::REVERSAL_INDICATOR)
2721 }
2722
2723
2724
2725
2726 pub fn set_rnd_px(&mut self, val: Decimal, scale: i32) {
2728 self.message.body.set_field(tag::RND_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2729 }
2730
2731 pub fn get_rnd_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2733 let mut fld = field::RndPxField::new(Decimal::ZERO, 0);
2734 self.message.body.get_field(tag::RND_PX, &mut fld.0)?;
2735 Ok(fld.value())
2736 }
2737
2738
2739 pub fn has_rnd_px(&self) -> bool {
2741 self.message.body.has(tag::RND_PX)
2742 }
2743
2744
2745
2746
2747 pub fn set_secondary_alloc_id(&mut self, v: String) {
2749 self.message.body.set_field(tag::SECONDARY_ALLOC_ID, FIXString::from(v));
2750 }
2751
2752 pub fn get_secondary_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
2754 let mut fld = field::SecondaryAllocIDField::new(String::new());
2755 self.message.body.get_field(tag::SECONDARY_ALLOC_ID, &mut fld.0)?;
2756 Ok(fld.value().to_string())
2757 }
2758
2759
2760 pub fn has_secondary_alloc_id(&self) -> bool {
2762 self.message.body.has(tag::SECONDARY_ALLOC_ID)
2763 }
2764
2765
2766
2767
2768 pub fn set_security_desc(&mut self, v: String) {
2770 self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
2771 }
2772
2773 pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2775 let mut fld = field::SecurityDescField::new(String::new());
2776 self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
2777 Ok(fld.value().to_string())
2778 }
2779
2780
2781 pub fn has_security_desc(&self) -> bool {
2783 self.message.body.has(tag::SECURITY_DESC)
2784 }
2785
2786
2787
2788
2789 pub fn set_security_exchange(&mut self, v: String) {
2791 self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
2792 }
2793
2794 pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2796 let mut fld = field::SecurityExchangeField::new(String::new());
2797 self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
2798 Ok(fld.value().to_string())
2799 }
2800
2801
2802 pub fn has_security_exchange(&self) -> bool {
2804 self.message.body.has(tag::SECURITY_EXCHANGE)
2805 }
2806
2807
2808
2809
2810 pub fn set_security_group(&mut self, v: String) {
2812 self.message.body.set_field(tag::SECURITY_GROUP, FIXString::from(v));
2813 }
2814
2815 pub fn get_security_group(&self) -> Result<String, MessageRejectErrorEnum> {
2817 let mut fld = field::SecurityGroupField::new(String::new());
2818 self.message.body.get_field(tag::SECURITY_GROUP, &mut fld.0)?;
2819 Ok(fld.value().to_string())
2820 }
2821
2822
2823 pub fn has_security_group(&self) -> bool {
2825 self.message.body.has(tag::SECURITY_GROUP)
2826 }
2827
2828
2829
2830
2831 pub fn set_security_id(&mut self, v: String) {
2833 self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
2834 }
2835
2836 pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2838 let mut fld = field::SecurityIDField::new(String::new());
2839 self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
2840 Ok(fld.value().to_string())
2841 }
2842
2843
2844 pub fn has_security_id(&self) -> bool {
2846 self.message.body.has(tag::SECURITY_ID)
2847 }
2848
2849
2850
2851
2852 pub fn set_security_id_source(&mut self, v: String) {
2854 self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
2855 }
2856
2857 pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2859 let mut fld = field::SecurityIDSourceField::new(String::new());
2860 self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
2861 Ok(fld.value().to_string())
2862 }
2863
2864
2865 pub fn has_security_id_source(&self) -> bool {
2867 self.message.body.has(tag::SECURITY_ID_SOURCE)
2868 }
2869
2870
2871
2872
2873 pub fn set_security_status(&mut self, v: String) {
2875 self.message.body.set_field(tag::SECURITY_STATUS, FIXString::from(v));
2876 }
2877
2878 pub fn get_security_status(&self) -> Result<String, MessageRejectErrorEnum> {
2880 let mut fld = field::SecurityStatusField::new(String::new());
2881 self.message.body.get_field(tag::SECURITY_STATUS, &mut fld.0)?;
2882 Ok(fld.value().to_string())
2883 }
2884
2885
2886 pub fn has_security_status(&self) -> bool {
2888 self.message.body.has(tag::SECURITY_STATUS)
2889 }
2890
2891
2892
2893
2894 pub fn set_security_sub_type(&mut self, v: String) {
2896 self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
2897 }
2898
2899 pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2901 let mut fld = field::SecuritySubTypeField::new(String::new());
2902 self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
2903 Ok(fld.value().to_string())
2904 }
2905
2906
2907 pub fn has_security_sub_type(&self) -> bool {
2909 self.message.body.has(tag::SECURITY_SUB_TYPE)
2910 }
2911
2912
2913
2914
2915 pub fn set_security_type(&mut self, v: String) {
2917 self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
2918 }
2919
2920 pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2922 let mut fld = field::SecurityTypeField::new(String::new());
2923 self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
2924 Ok(fld.value().to_string())
2925 }
2926
2927
2928 pub fn has_security_type(&self) -> bool {
2930 self.message.body.has(tag::SECURITY_TYPE)
2931 }
2932
2933
2934
2935
2936 pub fn set_security_xml(&mut self, v: String) {
2938 self.message.body.set_field(tag::SECURITY_XML, FIXString::from(v));
2939 }
2940
2941 pub fn get_security_xml(&self) -> Result<String, MessageRejectErrorEnum> {
2943 let mut fld = field::SecurityXMLField::new(String::new());
2944 self.message.body.get_field(tag::SECURITY_XML, &mut fld.0)?;
2945 Ok(fld.value().to_string())
2946 }
2947
2948
2949 pub fn has_security_xml(&self) -> bool {
2951 self.message.body.has(tag::SECURITY_XML)
2952 }
2953
2954
2955
2956
2957 pub fn set_security_xml_len(&mut self, v: isize) {
2959 self.message.body.set_field(tag::SECURITY_XML_LEN, fixer::fix_int::FIXInt::from(v));
2960 }
2961
2962 pub fn get_security_xml_len(&self) -> Result<isize, MessageRejectErrorEnum> {
2964 let mut fld = field::SecurityXMLLenField::new(0);
2965 self.message.body.get_field(tag::SECURITY_XML_LEN, &mut fld.0)?;
2966 Ok(fld.value())
2967 }
2968
2969
2970 pub fn has_security_xml_len(&self) -> bool {
2972 self.message.body.has(tag::SECURITY_XML_LEN)
2973 }
2974
2975
2976
2977
2978 pub fn set_security_xml_schema(&mut self, v: String) {
2980 self.message.body.set_field(tag::SECURITY_XML_SCHEMA, FIXString::from(v));
2981 }
2982
2983 pub fn get_security_xml_schema(&self) -> Result<String, MessageRejectErrorEnum> {
2985 let mut fld = field::SecurityXMLSchemaField::new(String::new());
2986 self.message.body.get_field(tag::SECURITY_XML_SCHEMA, &mut fld.0)?;
2987 Ok(fld.value().to_string())
2988 }
2989
2990
2991 pub fn has_security_xml_schema(&self) -> bool {
2993 self.message.body.has(tag::SECURITY_XML_SCHEMA)
2994 }
2995
2996
2997
2998
2999 pub fn set_seniority(&mut self, v: String) {
3001 self.message.body.set_field(tag::SENIORITY, FIXString::from(v));
3002 }
3003
3004 pub fn get_seniority(&self) -> Result<String, MessageRejectErrorEnum> {
3006 let mut fld = field::SeniorityField::new(String::new());
3007 self.message.body.get_field(tag::SENIORITY, &mut fld.0)?;
3008 Ok(fld.value().to_string())
3009 }
3010
3011
3012 pub fn has_seniority(&self) -> bool {
3014 self.message.body.has(tag::SENIORITY)
3015 }
3016
3017
3018
3019
3020 pub fn set_settl_date(&mut self, v: String) {
3022 self.message.body.set_field(tag::SETTL_DATE, FIXString::from(v));
3023 }
3024
3025 pub fn get_settl_date(&self) -> Result<String, MessageRejectErrorEnum> {
3027 let mut fld = field::SettlDateField::new(String::new());
3028 self.message.body.get_field(tag::SETTL_DATE, &mut fld.0)?;
3029 Ok(fld.value().to_string())
3030 }
3031
3032
3033 pub fn has_settl_date(&self) -> bool {
3035 self.message.body.has(tag::SETTL_DATE)
3036 }
3037
3038
3039
3040
3041 pub fn set_settl_method(&mut self, v: String) {
3043 self.message.body.set_field(tag::SETTL_METHOD, FIXString::from(v));
3044 }
3045
3046 pub fn get_settl_method(&self) -> Result<String, MessageRejectErrorEnum> {
3048 let mut fld = field::SettlMethodField::new(String::new());
3049 self.message.body.get_field(tag::SETTL_METHOD, &mut fld.0)?;
3050 Ok(fld.value().to_string())
3051 }
3052
3053
3054 pub fn has_settl_method(&self) -> bool {
3056 self.message.body.has(tag::SETTL_METHOD)
3057 }
3058
3059
3060
3061
3062 pub fn set_settl_type(&mut self, v: String) {
3064 self.message.body.set_field(tag::SETTL_TYPE, FIXString::from(v));
3065 }
3066
3067 pub fn get_settl_type(&self) -> Result<String, MessageRejectErrorEnum> {
3069 let mut fld = field::SettlTypeField::new(String::new());
3070 self.message.body.get_field(tag::SETTL_TYPE, &mut fld.0)?;
3071 Ok(fld.value().to_string())
3072 }
3073
3074
3075 pub fn has_settl_type(&self) -> bool {
3077 self.message.body.has(tag::SETTL_TYPE)
3078 }
3079
3080
3081
3082
3083 pub fn set_settle_on_open_flag(&mut self, v: String) {
3085 self.message.body.set_field(tag::SETTLE_ON_OPEN_FLAG, FIXString::from(v));
3086 }
3087
3088 pub fn get_settle_on_open_flag(&self) -> Result<String, MessageRejectErrorEnum> {
3090 let mut fld = field::SettleOnOpenFlagField::new(String::new());
3091 self.message.body.get_field(tag::SETTLE_ON_OPEN_FLAG, &mut fld.0)?;
3092 Ok(fld.value().to_string())
3093 }
3094
3095
3096 pub fn has_settle_on_open_flag(&self) -> bool {
3098 self.message.body.has(tag::SETTLE_ON_OPEN_FLAG)
3099 }
3100
3101
3102
3103
3104 pub fn set_side(&mut self, v: String) {
3106 self.message.body.set_field(tag::SIDE, FIXString::from(v));
3107 }
3108
3109 pub fn get_side(&self) -> Result<String, MessageRejectErrorEnum> {
3111 let mut fld = field::SideField::new(String::new());
3112 self.message.body.get_field(tag::SIDE, &mut fld.0)?;
3113 Ok(fld.value().to_string())
3114 }
3115
3116
3117 pub fn has_side(&self) -> bool {
3119 self.message.body.has(tag::SIDE)
3120 }
3121
3122
3123
3124
3125 pub fn set_spread(&mut self, val: Decimal, scale: i32) {
3127 self.message.body.set_field(tag::SPREAD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3128 }
3129
3130 pub fn get_spread(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3132 let mut fld = field::SpreadField::new(Decimal::ZERO, 0);
3133 self.message.body.get_field(tag::SPREAD, &mut fld.0)?;
3134 Ok(fld.value())
3135 }
3136
3137
3138 pub fn has_spread(&self) -> bool {
3140 self.message.body.has(tag::SPREAD)
3141 }
3142
3143
3144
3145
3146 pub fn set_start_cash(&mut self, val: Decimal, scale: i32) {
3148 self.message.body.set_field(tag::START_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3149 }
3150
3151 pub fn get_start_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3153 let mut fld = field::StartCashField::new(Decimal::ZERO, 0);
3154 self.message.body.get_field(tag::START_CASH, &mut fld.0)?;
3155 Ok(fld.value())
3156 }
3157
3158
3159 pub fn has_start_cash(&self) -> bool {
3161 self.message.body.has(tag::START_CASH)
3162 }
3163
3164
3165
3166
3167 pub fn set_start_date(&mut self, v: String) {
3169 self.message.body.set_field(tag::START_DATE, FIXString::from(v));
3170 }
3171
3172 pub fn get_start_date(&self) -> Result<String, MessageRejectErrorEnum> {
3174 let mut fld = field::StartDateField::new(String::new());
3175 self.message.body.get_field(tag::START_DATE, &mut fld.0)?;
3176 Ok(fld.value().to_string())
3177 }
3178
3179
3180 pub fn has_start_date(&self) -> bool {
3182 self.message.body.has(tag::START_DATE)
3183 }
3184
3185
3186
3187
3188 pub fn set_state_or_province_of_issue(&mut self, v: String) {
3190 self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
3191 }
3192
3193 pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
3195 let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
3196 self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
3197 Ok(fld.value().to_string())
3198 }
3199
3200
3201 pub fn has_state_or_province_of_issue(&self) -> bool {
3203 self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
3204 }
3205
3206
3207
3208
3209 pub fn set_strike_currency(&mut self, v: String) {
3211 self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
3212 }
3213
3214 pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
3216 let mut fld = field::StrikeCurrencyField::new(String::new());
3217 self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
3218 Ok(fld.value().to_string())
3219 }
3220
3221
3222 pub fn has_strike_currency(&self) -> bool {
3224 self.message.body.has(tag::STRIKE_CURRENCY)
3225 }
3226
3227
3228
3229
3230 pub fn set_strike_multiplier(&mut self, val: Decimal, scale: i32) {
3232 self.message.body.set_field(tag::STRIKE_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3233 }
3234
3235 pub fn get_strike_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3237 let mut fld = field::StrikeMultiplierField::new(Decimal::ZERO, 0);
3238 self.message.body.get_field(tag::STRIKE_MULTIPLIER, &mut fld.0)?;
3239 Ok(fld.value())
3240 }
3241
3242
3243 pub fn has_strike_multiplier(&self) -> bool {
3245 self.message.body.has(tag::STRIKE_MULTIPLIER)
3246 }
3247
3248
3249
3250
3251 pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
3253 self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3254 }
3255
3256 pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3258 let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
3259 self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
3260 Ok(fld.value())
3261 }
3262
3263
3264 pub fn has_strike_price(&self) -> bool {
3266 self.message.body.has(tag::STRIKE_PRICE)
3267 }
3268
3269
3270
3271
3272 pub fn set_strike_price_boundary_method(&mut self, v: isize) {
3274 self.message.body.set_field(tag::STRIKE_PRICE_BOUNDARY_METHOD, fixer::fix_int::FIXInt::from(v));
3275 }
3276
3277 pub fn get_strike_price_boundary_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3279 let mut fld = field::StrikePriceBoundaryMethodField::new(0);
3280 self.message.body.get_field(tag::STRIKE_PRICE_BOUNDARY_METHOD, &mut fld.0)?;
3281 Ok(fld.value())
3282 }
3283
3284
3285 pub fn has_strike_price_boundary_method(&self) -> bool {
3287 self.message.body.has(tag::STRIKE_PRICE_BOUNDARY_METHOD)
3288 }
3289
3290
3291
3292
3293 pub fn set_strike_price_boundary_precision(&mut self, val: Decimal, scale: i32) {
3295 self.message.body.set_field(tag::STRIKE_PRICE_BOUNDARY_PRECISION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3296 }
3297
3298 pub fn get_strike_price_boundary_precision(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3300 let mut fld = field::StrikePriceBoundaryPrecisionField::new(Decimal::ZERO, 0);
3301 self.message.body.get_field(tag::STRIKE_PRICE_BOUNDARY_PRECISION, &mut fld.0)?;
3302 Ok(fld.value())
3303 }
3304
3305
3306 pub fn has_strike_price_boundary_precision(&self) -> bool {
3308 self.message.body.has(tag::STRIKE_PRICE_BOUNDARY_PRECISION)
3309 }
3310
3311
3312
3313
3314 pub fn set_strike_price_determination_method(&mut self, v: isize) {
3316 self.message.body.set_field(tag::STRIKE_PRICE_DETERMINATION_METHOD, fixer::fix_int::FIXInt::from(v));
3317 }
3318
3319 pub fn get_strike_price_determination_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3321 let mut fld = field::StrikePriceDeterminationMethodField::new(0);
3322 self.message.body.get_field(tag::STRIKE_PRICE_DETERMINATION_METHOD, &mut fld.0)?;
3323 Ok(fld.value())
3324 }
3325
3326
3327 pub fn has_strike_price_determination_method(&self) -> bool {
3329 self.message.body.has(tag::STRIKE_PRICE_DETERMINATION_METHOD)
3330 }
3331
3332
3333
3334
3335 pub fn set_strike_value(&mut self, val: Decimal, scale: i32) {
3337 self.message.body.set_field(tag::STRIKE_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3338 }
3339
3340 pub fn get_strike_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3342 let mut fld = field::StrikeValueField::new(Decimal::ZERO, 0);
3343 self.message.body.get_field(tag::STRIKE_VALUE, &mut fld.0)?;
3344 Ok(fld.value())
3345 }
3346
3347
3348 pub fn has_strike_value(&self) -> bool {
3350 self.message.body.has(tag::STRIKE_VALUE)
3351 }
3352
3353
3354
3355
3356 pub fn set_symbol(&mut self, v: String) {
3358 self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
3359 }
3360
3361 pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
3363 let mut fld = field::SymbolField::new(String::new());
3364 self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
3365 Ok(fld.value().to_string())
3366 }
3367
3368
3369 pub fn has_symbol(&self) -> bool {
3371 self.message.body.has(tag::SYMBOL)
3372 }
3373
3374
3375
3376
3377 pub fn set_symbol_sfx(&mut self, v: String) {
3379 self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
3380 }
3381
3382 pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
3384 let mut fld = field::SymbolSfxField::new(String::new());
3385 self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
3386 Ok(fld.value().to_string())
3387 }
3388
3389
3390 pub fn has_symbol_sfx(&self) -> bool {
3392 self.message.body.has(tag::SYMBOL_SFX)
3393 }
3394
3395
3396
3397
3398 pub fn set_termination_type(&mut self, v: isize) {
3400 self.message.body.set_field(tag::TERMINATION_TYPE, fixer::fix_int::FIXInt::from(v));
3401 }
3402
3403 pub fn get_termination_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3405 let mut fld = field::TerminationTypeField::new(0);
3406 self.message.body.get_field(tag::TERMINATION_TYPE, &mut fld.0)?;
3407 Ok(fld.value())
3408 }
3409
3410
3411 pub fn has_termination_type(&self) -> bool {
3413 self.message.body.has(tag::TERMINATION_TYPE)
3414 }
3415
3416
3417
3418
3419 pub fn set_text(&mut self, v: String) {
3421 self.message.body.set_field(tag::TEXT, FIXString::from(v));
3422 }
3423
3424 pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
3426 let mut fld = field::TextField::new(String::new());
3427 self.message.body.get_field(tag::TEXT, &mut fld.0)?;
3428 Ok(fld.value().to_string())
3429 }
3430
3431
3432 pub fn has_text(&self) -> bool {
3434 self.message.body.has(tag::TEXT)
3435 }
3436
3437
3438
3439
3440 pub fn set_time_unit(&mut self, v: String) {
3442 self.message.body.set_field(tag::TIME_UNIT, FIXString::from(v));
3443 }
3444
3445 pub fn get_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
3447 let mut fld = field::TimeUnitField::new(String::new());
3448 self.message.body.get_field(tag::TIME_UNIT, &mut fld.0)?;
3449 Ok(fld.value().to_string())
3450 }
3451
3452
3453 pub fn has_time_unit(&self) -> bool {
3455 self.message.body.has(tag::TIME_UNIT)
3456 }
3457
3458
3459
3460
3461 pub fn set_tot_no_allocs(&mut self, v: isize) {
3463 self.message.body.set_field(tag::TOT_NO_ALLOCS, fixer::fix_int::FIXInt::from(v));
3464 }
3465
3466 pub fn get_tot_no_allocs(&self) -> Result<isize, MessageRejectErrorEnum> {
3468 let mut fld = field::TotNoAllocsField::new(0);
3469 self.message.body.get_field(tag::TOT_NO_ALLOCS, &mut fld.0)?;
3470 Ok(fld.value())
3471 }
3472
3473
3474 pub fn has_tot_no_allocs(&self) -> bool {
3476 self.message.body.has(tag::TOT_NO_ALLOCS)
3477 }
3478
3479
3480
3481
3482 pub fn set_total_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
3484 self.message.body.set_field(tag::TOTAL_ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3485 }
3486
3487 pub fn get_total_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3489 let mut fld = field::TotalAccruedInterestAmtField::new(Decimal::ZERO, 0);
3490 self.message.body.get_field(tag::TOTAL_ACCRUED_INTEREST_AMT, &mut fld.0)?;
3491 Ok(fld.value())
3492 }
3493
3494
3495 pub fn has_total_accrued_interest_amt(&self) -> bool {
3497 self.message.body.has(tag::TOTAL_ACCRUED_INTEREST_AMT)
3498 }
3499
3500
3501
3502
3503 pub fn set_total_takedown(&mut self, val: Decimal, scale: i32) {
3505 self.message.body.set_field(tag::TOTAL_TAKEDOWN, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3506 }
3507
3508 pub fn get_total_takedown(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3510 let mut fld = field::TotalTakedownField::new(Decimal::ZERO, 0);
3511 self.message.body.get_field(tag::TOTAL_TAKEDOWN, &mut fld.0)?;
3512 Ok(fld.value())
3513 }
3514
3515
3516 pub fn has_total_takedown(&self) -> bool {
3518 self.message.body.has(tag::TOTAL_TAKEDOWN)
3519 }
3520
3521
3522
3523
3524 pub fn set_trade_date(&mut self, v: String) {
3526 self.message.body.set_field(tag::TRADE_DATE, FIXString::from(v));
3527 }
3528
3529 pub fn get_trade_date(&self) -> Result<String, MessageRejectErrorEnum> {
3531 let mut fld = field::TradeDateField::new(String::new());
3532 self.message.body.get_field(tag::TRADE_DATE, &mut fld.0)?;
3533 Ok(fld.value().to_string())
3534 }
3535
3536
3537 pub fn has_trade_date(&self) -> bool {
3539 self.message.body.has(tag::TRADE_DATE)
3540 }
3541
3542
3543
3544
3545 pub fn set_trade_input_source(&mut self, v: String) {
3547 self.message.body.set_field(tag::TRADE_INPUT_SOURCE, FIXString::from(v));
3548 }
3549
3550 pub fn get_trade_input_source(&self) -> Result<String, MessageRejectErrorEnum> {
3552 let mut fld = field::TradeInputSourceField::new(String::new());
3553 self.message.body.get_field(tag::TRADE_INPUT_SOURCE, &mut fld.0)?;
3554 Ok(fld.value().to_string())
3555 }
3556
3557
3558 pub fn has_trade_input_source(&self) -> bool {
3560 self.message.body.has(tag::TRADE_INPUT_SOURCE)
3561 }
3562
3563
3564
3565
3566 pub fn set_trade_origination_date(&mut self, v: String) {
3568 self.message.body.set_field(tag::TRADE_ORIGINATION_DATE, FIXString::from(v));
3569 }
3570
3571 pub fn get_trade_origination_date(&self) -> Result<String, MessageRejectErrorEnum> {
3573 let mut fld = field::TradeOriginationDateField::new(String::new());
3574 self.message.body.get_field(tag::TRADE_ORIGINATION_DATE, &mut fld.0)?;
3575 Ok(fld.value().to_string())
3576 }
3577
3578
3579 pub fn has_trade_origination_date(&self) -> bool {
3581 self.message.body.has(tag::TRADE_ORIGINATION_DATE)
3582 }
3583
3584
3585
3586
3587 pub fn set_trading_session_id(&mut self, v: String) {
3589 self.message.body.set_field(tag::TRADING_SESSION_ID, FIXString::from(v));
3590 }
3591
3592 pub fn get_trading_session_id(&self) -> Result<String, MessageRejectErrorEnum> {
3594 let mut fld = field::TradingSessionIDField::new(String::new());
3595 self.message.body.get_field(tag::TRADING_SESSION_ID, &mut fld.0)?;
3596 Ok(fld.value().to_string())
3597 }
3598
3599
3600 pub fn has_trading_session_id(&self) -> bool {
3602 self.message.body.has(tag::TRADING_SESSION_ID)
3603 }
3604
3605
3606
3607
3608 pub fn set_trading_session_sub_id(&mut self, v: String) {
3610 self.message.body.set_field(tag::TRADING_SESSION_SUB_ID, FIXString::from(v));
3611 }
3612
3613 pub fn get_trading_session_sub_id(&self) -> Result<String, MessageRejectErrorEnum> {
3615 let mut fld = field::TradingSessionSubIDField::new(String::new());
3616 self.message.body.get_field(tag::TRADING_SESSION_SUB_ID, &mut fld.0)?;
3617 Ok(fld.value().to_string())
3618 }
3619
3620
3621 pub fn has_trading_session_sub_id(&self) -> bool {
3623 self.message.body.has(tag::TRADING_SESSION_SUB_ID)
3624 }
3625
3626
3627
3628
3629 pub fn set_transact_time(&mut self, v: Timestamp) {
3631 self.message.body.set_field(tag::TRANSACT_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
3632 time: v,
3633 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
3634 });
3635 }
3636
3637 pub fn get_transact_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
3639 let mut fld = field::TransactTimeField::new(Timestamp::UNIX_EPOCH);
3640 self.message.body.get_field(tag::TRANSACT_TIME, &mut fld.0)?;
3641 Ok(fld.value())
3642 }
3643
3644
3645 pub fn has_transact_time(&self) -> bool {
3647 self.message.body.has(tag::TRANSACT_TIME)
3648 }
3649
3650
3651
3652
3653 pub fn set_trd_sub_type(&mut self, v: isize) {
3655 self.message.body.set_field(tag::TRD_SUB_TYPE, fixer::fix_int::FIXInt::from(v));
3656 }
3657
3658 pub fn get_trd_sub_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3660 let mut fld = field::TrdSubTypeField::new(0);
3661 self.message.body.get_field(tag::TRD_SUB_TYPE, &mut fld.0)?;
3662 Ok(fld.value())
3663 }
3664
3665
3666 pub fn has_trd_sub_type(&self) -> bool {
3668 self.message.body.has(tag::TRD_SUB_TYPE)
3669 }
3670
3671
3672
3673
3674 pub fn set_trd_type(&mut self, v: isize) {
3676 self.message.body.set_field(tag::TRD_TYPE, fixer::fix_int::FIXInt::from(v));
3677 }
3678
3679 pub fn get_trd_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3681 let mut fld = field::TrdTypeField::new(0);
3682 self.message.body.get_field(tag::TRD_TYPE, &mut fld.0)?;
3683 Ok(fld.value())
3684 }
3685
3686
3687 pub fn has_trd_type(&self) -> bool {
3689 self.message.body.has(tag::TRD_TYPE)
3690 }
3691
3692
3693
3694
3695 pub fn set_underlying_price_determination_method(&mut self, v: isize) {
3697 self.message.body.set_field(tag::UNDERLYING_PRICE_DETERMINATION_METHOD, fixer::fix_int::FIXInt::from(v));
3698 }
3699
3700 pub fn get_underlying_price_determination_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3702 let mut fld = field::UnderlyingPriceDeterminationMethodField::new(0);
3703 self.message.body.get_field(tag::UNDERLYING_PRICE_DETERMINATION_METHOD, &mut fld.0)?;
3704 Ok(fld.value())
3705 }
3706
3707
3708 pub fn has_underlying_price_determination_method(&self) -> bool {
3710 self.message.body.has(tag::UNDERLYING_PRICE_DETERMINATION_METHOD)
3711 }
3712
3713
3714
3715
3716 pub fn set_unit_of_measure(&mut self, v: String) {
3718 self.message.body.set_field(tag::UNIT_OF_MEASURE, FIXString::from(v));
3719 }
3720
3721 pub fn get_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
3723 let mut fld = field::UnitOfMeasureField::new(String::new());
3724 self.message.body.get_field(tag::UNIT_OF_MEASURE, &mut fld.0)?;
3725 Ok(fld.value().to_string())
3726 }
3727
3728
3729 pub fn has_unit_of_measure(&self) -> bool {
3731 self.message.body.has(tag::UNIT_OF_MEASURE)
3732 }
3733
3734
3735
3736
3737 pub fn set_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
3739 self.message.body.set_field(tag::UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3740 }
3741
3742 pub fn get_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3744 let mut fld = field::UnitOfMeasureQtyField::new(Decimal::ZERO, 0);
3745 self.message.body.get_field(tag::UNIT_OF_MEASURE_QTY, &mut fld.0)?;
3746 Ok(fld.value())
3747 }
3748
3749
3750 pub fn has_unit_of_measure_qty(&self) -> bool {
3752 self.message.body.has(tag::UNIT_OF_MEASURE_QTY)
3753 }
3754
3755
3756
3757
3758 pub fn set_valuation_method(&mut self, v: String) {
3760 self.message.body.set_field(tag::VALUATION_METHOD, FIXString::from(v));
3761 }
3762
3763 pub fn get_valuation_method(&self) -> Result<String, MessageRejectErrorEnum> {
3765 let mut fld = field::ValuationMethodField::new(String::new());
3766 self.message.body.get_field(tag::VALUATION_METHOD, &mut fld.0)?;
3767 Ok(fld.value().to_string())
3768 }
3769
3770
3771 pub fn has_valuation_method(&self) -> bool {
3773 self.message.body.has(tag::VALUATION_METHOD)
3774 }
3775
3776
3777
3778
3779 pub fn set_yield(&mut self, val: Decimal, scale: i32) {
3781 self.message.body.set_field(tag::YIELD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3782 }
3783
3784 pub fn get_yield(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3786 let mut fld = field::YieldField::new(Decimal::ZERO, 0);
3787 self.message.body.get_field(tag::YIELD, &mut fld.0)?;
3788 Ok(fld.value())
3789 }
3790
3791
3792 pub fn has_yield(&self) -> bool {
3794 self.message.body.has(tag::YIELD)
3795 }
3796
3797
3798
3799
3800 pub fn set_yield_calc_date(&mut self, v: String) {
3802 self.message.body.set_field(tag::YIELD_CALC_DATE, FIXString::from(v));
3803 }
3804
3805 pub fn get_yield_calc_date(&self) -> Result<String, MessageRejectErrorEnum> {
3807 let mut fld = field::YieldCalcDateField::new(String::new());
3808 self.message.body.get_field(tag::YIELD_CALC_DATE, &mut fld.0)?;
3809 Ok(fld.value().to_string())
3810 }
3811
3812
3813 pub fn has_yield_calc_date(&self) -> bool {
3815 self.message.body.has(tag::YIELD_CALC_DATE)
3816 }
3817
3818
3819
3820
3821 pub fn set_yield_redemption_date(&mut self, v: String) {
3823 self.message.body.set_field(tag::YIELD_REDEMPTION_DATE, FIXString::from(v));
3824 }
3825
3826 pub fn get_yield_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
3828 let mut fld = field::YieldRedemptionDateField::new(String::new());
3829 self.message.body.get_field(tag::YIELD_REDEMPTION_DATE, &mut fld.0)?;
3830 Ok(fld.value().to_string())
3831 }
3832
3833
3834 pub fn has_yield_redemption_date(&self) -> bool {
3836 self.message.body.has(tag::YIELD_REDEMPTION_DATE)
3837 }
3838
3839
3840
3841
3842 pub fn set_yield_redemption_price(&mut self, val: Decimal, scale: i32) {
3844 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3845 }
3846
3847 pub fn get_yield_redemption_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3849 let mut fld = field::YieldRedemptionPriceField::new(Decimal::ZERO, 0);
3850 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE, &mut fld.0)?;
3851 Ok(fld.value())
3852 }
3853
3854
3855 pub fn has_yield_redemption_price(&self) -> bool {
3857 self.message.body.has(tag::YIELD_REDEMPTION_PRICE)
3858 }
3859
3860
3861
3862
3863 pub fn set_yield_redemption_price_type(&mut self, v: isize) {
3865 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
3866 }
3867
3868 pub fn get_yield_redemption_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3870 let mut fld = field::YieldRedemptionPriceTypeField::new(0);
3871 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE_TYPE, &mut fld.0)?;
3872 Ok(fld.value())
3873 }
3874
3875
3876 pub fn has_yield_redemption_price_type(&self) -> bool {
3878 self.message.body.has(tag::YIELD_REDEMPTION_PRICE_TYPE)
3879 }
3880
3881
3882
3883
3884 pub fn set_yield_type(&mut self, v: String) {
3886 self.message.body.set_field(tag::YIELD_TYPE, FIXString::from(v));
3887 }
3888
3889 pub fn get_yield_type(&self) -> Result<String, MessageRejectErrorEnum> {
3891 let mut fld = field::YieldTypeField::new(String::new());
3892 self.message.body.get_field(tag::YIELD_TYPE, &mut fld.0)?;
3893 Ok(fld.value().to_string())
3894 }
3895
3896
3897 pub fn has_yield_type(&self) -> bool {
3899 self.message.body.has(tag::YIELD_TYPE)
3900 }
3901
3902
3903}
3904
3905pub type RouteOut = fn(msg: AllocationInstruction, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
3907
3908pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
3910
3911pub fn route(router: RouteOut) -> Route {
3913 let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
3914 router(AllocationInstruction::from_message(msg.clone()), session_id)
3915 };
3916 ("9", "J", Box::new(r))
3917}