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 Confirmation {
22 pub message: Message,
23}
24
25impl Confirmation {
26 pub fn new(confirm_id: field::ConfirmIDField, confirm_trans_type: field::ConfirmTransTypeField, confirm_type: field::ConfirmTypeField, confirm_status: field::ConfirmStatusField, transact_time: field::TransactTimeField, trade_date: field::TradeDateField, alloc_qty: field::AllocQtyField, side: field::SideField, no_capacities: field::NoCapacitiesField, alloc_account: field::AllocAccountField, avg_px: field::AvgPxField, gross_trade_amt: field::GrossTradeAmtField, net_money: field::NetMoneyField) -> Self {
28 let mut msg = Message::new();
29 msg.header.set_field(tag::MSG_TYPE, FIXString::from("AK".to_string()));
30
31 msg.body.set_field(tag::CONFIRM_ID, confirm_id.0);
32
33 msg.body.set_field(tag::CONFIRM_TRANS_TYPE, confirm_trans_type.0);
34
35 msg.body.set_field(tag::CONFIRM_TYPE, confirm_type.0);
36
37 msg.body.set_field(tag::CONFIRM_STATUS, confirm_status.0);
38
39 msg.body.set_field(tag::TRANSACT_TIME, transact_time.0);
40
41 msg.body.set_field(tag::TRADE_DATE, trade_date.0);
42
43 msg.body.set_field(tag::ALLOC_QTY, alloc_qty.0);
44
45 msg.body.set_field(tag::SIDE, side.0);
46
47 msg.body.set_field(tag::NO_CAPACITIES, no_capacities.0);
48
49 msg.body.set_field(tag::ALLOC_ACCOUNT, alloc_account.0);
50
51 msg.body.set_field(tag::AVG_PX, avg_px.0);
52
53 msg.body.set_field(tag::GROSS_TRADE_AMT, gross_trade_amt.0);
54
55 msg.body.set_field(tag::NET_MONEY, net_money.0);
56
57 Self { message: msg }
58 }
59
60 pub fn from_message(msg: Message) -> Self {
62 Self { message: msg }
63 }
64
65 pub fn to_message(self) -> Message {
67 self.message
68 }
69
70
71
72
73 pub fn set_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
75 self.message.body.set_field(tag::ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
76 }
77
78 pub fn get_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
80 let mut fld = field::AccruedInterestAmtField::new(Decimal::ZERO, 0);
81 self.message.body.get_field(tag::ACCRUED_INTEREST_AMT, &mut fld.0)?;
82 Ok(fld.value())
83 }
84
85
86 pub fn has_accrued_interest_amt(&self) -> bool {
88 self.message.body.has(tag::ACCRUED_INTEREST_AMT)
89 }
90
91
92
93
94 pub fn set_accrued_interest_rate(&mut self, val: Decimal, scale: i32) {
96 self.message.body.set_field(tag::ACCRUED_INTEREST_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
97 }
98
99 pub fn get_accrued_interest_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
101 let mut fld = field::AccruedInterestRateField::new(Decimal::ZERO, 0);
102 self.message.body.get_field(tag::ACCRUED_INTEREST_RATE, &mut fld.0)?;
103 Ok(fld.value())
104 }
105
106
107 pub fn has_accrued_interest_rate(&self) -> bool {
109 self.message.body.has(tag::ACCRUED_INTEREST_RATE)
110 }
111
112
113
114
115 pub fn set_agreement_currency(&mut self, v: String) {
117 self.message.body.set_field(tag::AGREEMENT_CURRENCY, FIXString::from(v));
118 }
119
120 pub fn get_agreement_currency(&self) -> Result<String, MessageRejectErrorEnum> {
122 let mut fld = field::AgreementCurrencyField::new(String::new());
123 self.message.body.get_field(tag::AGREEMENT_CURRENCY, &mut fld.0)?;
124 Ok(fld.value().to_string())
125 }
126
127
128 pub fn has_agreement_currency(&self) -> bool {
130 self.message.body.has(tag::AGREEMENT_CURRENCY)
131 }
132
133
134
135
136 pub fn set_agreement_date(&mut self, v: String) {
138 self.message.body.set_field(tag::AGREEMENT_DATE, FIXString::from(v));
139 }
140
141 pub fn get_agreement_date(&self) -> Result<String, MessageRejectErrorEnum> {
143 let mut fld = field::AgreementDateField::new(String::new());
144 self.message.body.get_field(tag::AGREEMENT_DATE, &mut fld.0)?;
145 Ok(fld.value().to_string())
146 }
147
148
149 pub fn has_agreement_date(&self) -> bool {
151 self.message.body.has(tag::AGREEMENT_DATE)
152 }
153
154
155
156
157 pub fn set_agreement_desc(&mut self, v: String) {
159 self.message.body.set_field(tag::AGREEMENT_DESC, FIXString::from(v));
160 }
161
162 pub fn get_agreement_desc(&self) -> Result<String, MessageRejectErrorEnum> {
164 let mut fld = field::AgreementDescField::new(String::new());
165 self.message.body.get_field(tag::AGREEMENT_DESC, &mut fld.0)?;
166 Ok(fld.value().to_string())
167 }
168
169
170 pub fn has_agreement_desc(&self) -> bool {
172 self.message.body.has(tag::AGREEMENT_DESC)
173 }
174
175
176
177
178 pub fn set_agreement_id(&mut self, v: String) {
180 self.message.body.set_field(tag::AGREEMENT_ID, FIXString::from(v));
181 }
182
183 pub fn get_agreement_id(&self) -> Result<String, MessageRejectErrorEnum> {
185 let mut fld = field::AgreementIDField::new(String::new());
186 self.message.body.get_field(tag::AGREEMENT_ID, &mut fld.0)?;
187 Ok(fld.value().to_string())
188 }
189
190
191 pub fn has_agreement_id(&self) -> bool {
193 self.message.body.has(tag::AGREEMENT_ID)
194 }
195
196
197
198
199 pub fn set_alloc_account(&mut self, v: String) {
201 self.message.body.set_field(tag::ALLOC_ACCOUNT, FIXString::from(v));
202 }
203
204 pub fn get_alloc_account(&self) -> Result<String, MessageRejectErrorEnum> {
206 let mut fld = field::AllocAccountField::new(String::new());
207 self.message.body.get_field(tag::ALLOC_ACCOUNT, &mut fld.0)?;
208 Ok(fld.value().to_string())
209 }
210
211
212 pub fn has_alloc_account(&self) -> bool {
214 self.message.body.has(tag::ALLOC_ACCOUNT)
215 }
216
217
218
219
220 pub fn set_alloc_account_type(&mut self, v: isize) {
222 self.message.body.set_field(tag::ALLOC_ACCOUNT_TYPE, fixer::fix_int::FIXInt::from(v));
223 }
224
225 pub fn get_alloc_account_type(&self) -> Result<isize, MessageRejectErrorEnum> {
227 let mut fld = field::AllocAccountTypeField::new(0);
228 self.message.body.get_field(tag::ALLOC_ACCOUNT_TYPE, &mut fld.0)?;
229 Ok(fld.value())
230 }
231
232
233 pub fn has_alloc_account_type(&self) -> bool {
235 self.message.body.has(tag::ALLOC_ACCOUNT_TYPE)
236 }
237
238
239
240
241 pub fn set_alloc_acct_id_source(&mut self, v: isize) {
243 self.message.body.set_field(tag::ALLOC_ACCT_ID_SOURCE, fixer::fix_int::FIXInt::from(v));
244 }
245
246 pub fn get_alloc_acct_id_source(&self) -> Result<isize, MessageRejectErrorEnum> {
248 let mut fld = field::AllocAcctIDSourceField::new(0);
249 self.message.body.get_field(tag::ALLOC_ACCT_ID_SOURCE, &mut fld.0)?;
250 Ok(fld.value())
251 }
252
253
254 pub fn has_alloc_acct_id_source(&self) -> bool {
256 self.message.body.has(tag::ALLOC_ACCT_ID_SOURCE)
257 }
258
259
260
261
262 pub fn set_alloc_id(&mut self, v: String) {
264 self.message.body.set_field(tag::ALLOC_ID, FIXString::from(v));
265 }
266
267 pub fn get_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
269 let mut fld = field::AllocIDField::new(String::new());
270 self.message.body.get_field(tag::ALLOC_ID, &mut fld.0)?;
271 Ok(fld.value().to_string())
272 }
273
274
275 pub fn has_alloc_id(&self) -> bool {
277 self.message.body.has(tag::ALLOC_ID)
278 }
279
280
281
282
283 pub fn set_alloc_qty(&mut self, val: Decimal, scale: i32) {
285 self.message.body.set_field(tag::ALLOC_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
286 }
287
288 pub fn get_alloc_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
290 let mut fld = field::AllocQtyField::new(Decimal::ZERO, 0);
291 self.message.body.get_field(tag::ALLOC_QTY, &mut fld.0)?;
292 Ok(fld.value())
293 }
294
295
296 pub fn has_alloc_qty(&self) -> bool {
298 self.message.body.has(tag::ALLOC_QTY)
299 }
300
301
302
303
304 pub fn set_attachment_point(&mut self, val: Decimal, scale: i32) {
306 self.message.body.set_field(tag::ATTACHMENT_POINT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
307 }
308
309 pub fn get_attachment_point(&self) -> Result<Decimal, MessageRejectErrorEnum> {
311 let mut fld = field::AttachmentPointField::new(Decimal::ZERO, 0);
312 self.message.body.get_field(tag::ATTACHMENT_POINT, &mut fld.0)?;
313 Ok(fld.value())
314 }
315
316
317 pub fn has_attachment_point(&self) -> bool {
319 self.message.body.has(tag::ATTACHMENT_POINT)
320 }
321
322
323
324
325 pub fn set_avg_par_px(&mut self, val: Decimal, scale: i32) {
327 self.message.body.set_field(tag::AVG_PAR_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
328 }
329
330 pub fn get_avg_par_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
332 let mut fld = field::AvgParPxField::new(Decimal::ZERO, 0);
333 self.message.body.get_field(tag::AVG_PAR_PX, &mut fld.0)?;
334 Ok(fld.value())
335 }
336
337
338 pub fn has_avg_par_px(&self) -> bool {
340 self.message.body.has(tag::AVG_PAR_PX)
341 }
342
343
344
345
346 pub fn set_avg_px(&mut self, val: Decimal, scale: i32) {
348 self.message.body.set_field(tag::AVG_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
349 }
350
351 pub fn get_avg_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
353 let mut fld = field::AvgPxField::new(Decimal::ZERO, 0);
354 self.message.body.get_field(tag::AVG_PX, &mut fld.0)?;
355 Ok(fld.value())
356 }
357
358
359 pub fn has_avg_px(&self) -> bool {
361 self.message.body.has(tag::AVG_PX)
362 }
363
364
365
366
367 pub fn set_avg_px_precision(&mut self, v: isize) {
369 self.message.body.set_field(tag::AVG_PX_PRECISION, fixer::fix_int::FIXInt::from(v));
370 }
371
372 pub fn get_avg_px_precision(&self) -> Result<isize, MessageRejectErrorEnum> {
374 let mut fld = field::AvgPxPrecisionField::new(0);
375 self.message.body.get_field(tag::AVG_PX_PRECISION, &mut fld.0)?;
376 Ok(fld.value())
377 }
378
379
380 pub fn has_avg_px_precision(&self) -> bool {
382 self.message.body.has(tag::AVG_PX_PRECISION)
383 }
384
385
386
387
388 pub fn set_benchmark_curve_currency(&mut self, v: String) {
390 self.message.body.set_field(tag::BENCHMARK_CURVE_CURRENCY, FIXString::from(v));
391 }
392
393 pub fn get_benchmark_curve_currency(&self) -> Result<String, MessageRejectErrorEnum> {
395 let mut fld = field::BenchmarkCurveCurrencyField::new(String::new());
396 self.message.body.get_field(tag::BENCHMARK_CURVE_CURRENCY, &mut fld.0)?;
397 Ok(fld.value().to_string())
398 }
399
400
401 pub fn has_benchmark_curve_currency(&self) -> bool {
403 self.message.body.has(tag::BENCHMARK_CURVE_CURRENCY)
404 }
405
406
407
408
409 pub fn set_benchmark_curve_name(&mut self, v: String) {
411 self.message.body.set_field(tag::BENCHMARK_CURVE_NAME, FIXString::from(v));
412 }
413
414 pub fn get_benchmark_curve_name(&self) -> Result<String, MessageRejectErrorEnum> {
416 let mut fld = field::BenchmarkCurveNameField::new(String::new());
417 self.message.body.get_field(tag::BENCHMARK_CURVE_NAME, &mut fld.0)?;
418 Ok(fld.value().to_string())
419 }
420
421
422 pub fn has_benchmark_curve_name(&self) -> bool {
424 self.message.body.has(tag::BENCHMARK_CURVE_NAME)
425 }
426
427
428
429
430 pub fn set_benchmark_curve_point(&mut self, v: String) {
432 self.message.body.set_field(tag::BENCHMARK_CURVE_POINT, FIXString::from(v));
433 }
434
435 pub fn get_benchmark_curve_point(&self) -> Result<String, MessageRejectErrorEnum> {
437 let mut fld = field::BenchmarkCurvePointField::new(String::new());
438 self.message.body.get_field(tag::BENCHMARK_CURVE_POINT, &mut fld.0)?;
439 Ok(fld.value().to_string())
440 }
441
442
443 pub fn has_benchmark_curve_point(&self) -> bool {
445 self.message.body.has(tag::BENCHMARK_CURVE_POINT)
446 }
447
448
449
450
451 pub fn set_benchmark_price(&mut self, val: Decimal, scale: i32) {
453 self.message.body.set_field(tag::BENCHMARK_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
454 }
455
456 pub fn get_benchmark_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
458 let mut fld = field::BenchmarkPriceField::new(Decimal::ZERO, 0);
459 self.message.body.get_field(tag::BENCHMARK_PRICE, &mut fld.0)?;
460 Ok(fld.value())
461 }
462
463
464 pub fn has_benchmark_price(&self) -> bool {
466 self.message.body.has(tag::BENCHMARK_PRICE)
467 }
468
469
470
471
472 pub fn set_benchmark_price_type(&mut self, v: isize) {
474 self.message.body.set_field(tag::BENCHMARK_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
475 }
476
477 pub fn get_benchmark_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
479 let mut fld = field::BenchmarkPriceTypeField::new(0);
480 self.message.body.get_field(tag::BENCHMARK_PRICE_TYPE, &mut fld.0)?;
481 Ok(fld.value())
482 }
483
484
485 pub fn has_benchmark_price_type(&self) -> bool {
487 self.message.body.has(tag::BENCHMARK_PRICE_TYPE)
488 }
489
490
491
492
493 pub fn set_benchmark_security_id(&mut self, v: String) {
495 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID, FIXString::from(v));
496 }
497
498 pub fn get_benchmark_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
500 let mut fld = field::BenchmarkSecurityIDField::new(String::new());
501 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID, &mut fld.0)?;
502 Ok(fld.value().to_string())
503 }
504
505
506 pub fn has_benchmark_security_id(&self) -> bool {
508 self.message.body.has(tag::BENCHMARK_SECURITY_ID)
509 }
510
511
512
513
514 pub fn set_benchmark_security_id_source(&mut self, v: String) {
516 self.message.body.set_field(tag::BENCHMARK_SECURITY_ID_SOURCE, FIXString::from(v));
517 }
518
519 pub fn get_benchmark_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
521 let mut fld = field::BenchmarkSecurityIDSourceField::new(String::new());
522 self.message.body.get_field(tag::BENCHMARK_SECURITY_ID_SOURCE, &mut fld.0)?;
523 Ok(fld.value().to_string())
524 }
525
526
527 pub fn has_benchmark_security_id_source(&self) -> bool {
529 self.message.body.has(tag::BENCHMARK_SECURITY_ID_SOURCE)
530 }
531
532
533
534
535 pub fn set_cfi_code(&mut self, v: String) {
537 self.message.body.set_field(tag::CFI_CODE, FIXString::from(v));
538 }
539
540 pub fn get_cfi_code(&self) -> Result<String, MessageRejectErrorEnum> {
542 let mut fld = field::CFICodeField::new(String::new());
543 self.message.body.get_field(tag::CFI_CODE, &mut fld.0)?;
544 Ok(fld.value().to_string())
545 }
546
547
548 pub fn has_cfi_code(&self) -> bool {
550 self.message.body.has(tag::CFI_CODE)
551 }
552
553
554
555
556 pub fn set_cp_program(&mut self, v: isize) {
558 self.message.body.set_field(tag::CP_PROGRAM, fixer::fix_int::FIXInt::from(v));
559 }
560
561 pub fn get_cp_program(&self) -> Result<isize, MessageRejectErrorEnum> {
563 let mut fld = field::CPProgramField::new(0);
564 self.message.body.get_field(tag::CP_PROGRAM, &mut fld.0)?;
565 Ok(fld.value())
566 }
567
568
569 pub fn has_cp_program(&self) -> bool {
571 self.message.body.has(tag::CP_PROGRAM)
572 }
573
574
575
576
577 pub fn set_cp_reg_type(&mut self, v: String) {
579 self.message.body.set_field(tag::CP_REG_TYPE, FIXString::from(v));
580 }
581
582 pub fn get_cp_reg_type(&self) -> Result<String, MessageRejectErrorEnum> {
584 let mut fld = field::CPRegTypeField::new(String::new());
585 self.message.body.get_field(tag::CP_REG_TYPE, &mut fld.0)?;
586 Ok(fld.value().to_string())
587 }
588
589
590 pub fn has_cp_reg_type(&self) -> bool {
592 self.message.body.has(tag::CP_REG_TYPE)
593 }
594
595
596
597
598 pub fn set_cap_price(&mut self, val: Decimal, scale: i32) {
600 self.message.body.set_field(tag::CAP_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
601 }
602
603 pub fn get_cap_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
605 let mut fld = field::CapPriceField::new(Decimal::ZERO, 0);
606 self.message.body.get_field(tag::CAP_PRICE, &mut fld.0)?;
607 Ok(fld.value())
608 }
609
610
611 pub fn has_cap_price(&self) -> bool {
613 self.message.body.has(tag::CAP_PRICE)
614 }
615
616
617
618
619 pub fn set_comm_currency(&mut self, v: String) {
621 self.message.body.set_field(tag::COMM_CURRENCY, FIXString::from(v));
622 }
623
624 pub fn get_comm_currency(&self) -> Result<String, MessageRejectErrorEnum> {
626 let mut fld = field::CommCurrencyField::new(String::new());
627 self.message.body.get_field(tag::COMM_CURRENCY, &mut fld.0)?;
628 Ok(fld.value().to_string())
629 }
630
631
632 pub fn has_comm_currency(&self) -> bool {
634 self.message.body.has(tag::COMM_CURRENCY)
635 }
636
637
638
639
640 pub fn set_comm_type(&mut self, v: String) {
642 self.message.body.set_field(tag::COMM_TYPE, FIXString::from(v));
643 }
644
645 pub fn get_comm_type(&self) -> Result<String, MessageRejectErrorEnum> {
647 let mut fld = field::CommTypeField::new(String::new());
648 self.message.body.get_field(tag::COMM_TYPE, &mut fld.0)?;
649 Ok(fld.value().to_string())
650 }
651
652
653 pub fn has_comm_type(&self) -> bool {
655 self.message.body.has(tag::COMM_TYPE)
656 }
657
658
659
660
661 pub fn set_commission(&mut self, val: Decimal, scale: i32) {
663 self.message.body.set_field(tag::COMMISSION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
664 }
665
666 pub fn get_commission(&self) -> Result<Decimal, MessageRejectErrorEnum> {
668 let mut fld = field::CommissionField::new(Decimal::ZERO, 0);
669 self.message.body.get_field(tag::COMMISSION, &mut fld.0)?;
670 Ok(fld.value())
671 }
672
673
674 pub fn has_commission(&self) -> bool {
676 self.message.body.has(tag::COMMISSION)
677 }
678
679
680
681
682 pub fn set_concession(&mut self, val: Decimal, scale: i32) {
684 self.message.body.set_field(tag::CONCESSION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
685 }
686
687 pub fn get_concession(&self) -> Result<Decimal, MessageRejectErrorEnum> {
689 let mut fld = field::ConcessionField::new(Decimal::ZERO, 0);
690 self.message.body.get_field(tag::CONCESSION, &mut fld.0)?;
691 Ok(fld.value())
692 }
693
694
695 pub fn has_concession(&self) -> bool {
697 self.message.body.has(tag::CONCESSION)
698 }
699
700
701
702
703 pub fn set_confirm_id(&mut self, v: String) {
705 self.message.body.set_field(tag::CONFIRM_ID, FIXString::from(v));
706 }
707
708 pub fn get_confirm_id(&self) -> Result<String, MessageRejectErrorEnum> {
710 let mut fld = field::ConfirmIDField::new(String::new());
711 self.message.body.get_field(tag::CONFIRM_ID, &mut fld.0)?;
712 Ok(fld.value().to_string())
713 }
714
715
716 pub fn has_confirm_id(&self) -> bool {
718 self.message.body.has(tag::CONFIRM_ID)
719 }
720
721
722
723
724 pub fn set_confirm_ref_id(&mut self, v: String) {
726 self.message.body.set_field(tag::CONFIRM_REF_ID, FIXString::from(v));
727 }
728
729 pub fn get_confirm_ref_id(&self) -> Result<String, MessageRejectErrorEnum> {
731 let mut fld = field::ConfirmRefIDField::new(String::new());
732 self.message.body.get_field(tag::CONFIRM_REF_ID, &mut fld.0)?;
733 Ok(fld.value().to_string())
734 }
735
736
737 pub fn has_confirm_ref_id(&self) -> bool {
739 self.message.body.has(tag::CONFIRM_REF_ID)
740 }
741
742
743
744
745 pub fn set_confirm_req_id(&mut self, v: String) {
747 self.message.body.set_field(tag::CONFIRM_REQ_ID, FIXString::from(v));
748 }
749
750 pub fn get_confirm_req_id(&self) -> Result<String, MessageRejectErrorEnum> {
752 let mut fld = field::ConfirmReqIDField::new(String::new());
753 self.message.body.get_field(tag::CONFIRM_REQ_ID, &mut fld.0)?;
754 Ok(fld.value().to_string())
755 }
756
757
758 pub fn has_confirm_req_id(&self) -> bool {
760 self.message.body.has(tag::CONFIRM_REQ_ID)
761 }
762
763
764
765
766 pub fn set_confirm_status(&mut self, v: isize) {
768 self.message.body.set_field(tag::CONFIRM_STATUS, fixer::fix_int::FIXInt::from(v));
769 }
770
771 pub fn get_confirm_status(&self) -> Result<isize, MessageRejectErrorEnum> {
773 let mut fld = field::ConfirmStatusField::new(0);
774 self.message.body.get_field(tag::CONFIRM_STATUS, &mut fld.0)?;
775 Ok(fld.value())
776 }
777
778
779 pub fn has_confirm_status(&self) -> bool {
781 self.message.body.has(tag::CONFIRM_STATUS)
782 }
783
784
785
786
787 pub fn set_confirm_trans_type(&mut self, v: isize) {
789 self.message.body.set_field(tag::CONFIRM_TRANS_TYPE, fixer::fix_int::FIXInt::from(v));
790 }
791
792 pub fn get_confirm_trans_type(&self) -> Result<isize, MessageRejectErrorEnum> {
794 let mut fld = field::ConfirmTransTypeField::new(0);
795 self.message.body.get_field(tag::CONFIRM_TRANS_TYPE, &mut fld.0)?;
796 Ok(fld.value())
797 }
798
799
800 pub fn has_confirm_trans_type(&self) -> bool {
802 self.message.body.has(tag::CONFIRM_TRANS_TYPE)
803 }
804
805
806
807
808 pub fn set_confirm_type(&mut self, v: isize) {
810 self.message.body.set_field(tag::CONFIRM_TYPE, fixer::fix_int::FIXInt::from(v));
811 }
812
813 pub fn get_confirm_type(&self) -> Result<isize, MessageRejectErrorEnum> {
815 let mut fld = field::ConfirmTypeField::new(0);
816 self.message.body.get_field(tag::CONFIRM_TYPE, &mut fld.0)?;
817 Ok(fld.value())
818 }
819
820
821 pub fn has_confirm_type(&self) -> bool {
823 self.message.body.has(tag::CONFIRM_TYPE)
824 }
825
826
827
828
829 pub fn set_contract_multiplier(&mut self, val: Decimal, scale: i32) {
831 self.message.body.set_field(tag::CONTRACT_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
832 }
833
834 pub fn get_contract_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
836 let mut fld = field::ContractMultiplierField::new(Decimal::ZERO, 0);
837 self.message.body.get_field(tag::CONTRACT_MULTIPLIER, &mut fld.0)?;
838 Ok(fld.value())
839 }
840
841
842 pub fn has_contract_multiplier(&self) -> bool {
844 self.message.body.has(tag::CONTRACT_MULTIPLIER)
845 }
846
847
848
849
850 pub fn set_contract_multiplier_unit(&mut self, v: isize) {
852 self.message.body.set_field(tag::CONTRACT_MULTIPLIER_UNIT, fixer::fix_int::FIXInt::from(v));
853 }
854
855 pub fn get_contract_multiplier_unit(&self) -> Result<isize, MessageRejectErrorEnum> {
857 let mut fld = field::ContractMultiplierUnitField::new(0);
858 self.message.body.get_field(tag::CONTRACT_MULTIPLIER_UNIT, &mut fld.0)?;
859 Ok(fld.value())
860 }
861
862
863 pub fn has_contract_multiplier_unit(&self) -> bool {
865 self.message.body.has(tag::CONTRACT_MULTIPLIER_UNIT)
866 }
867
868
869
870
871 pub fn set_contract_settl_month(&mut self, v: String) {
873 self.message.body.set_field(tag::CONTRACT_SETTL_MONTH, FIXString::from(v));
874 }
875
876 pub fn get_contract_settl_month(&self) -> Result<String, MessageRejectErrorEnum> {
878 let mut fld = field::ContractSettlMonthField::new(String::new());
879 self.message.body.get_field(tag::CONTRACT_SETTL_MONTH, &mut fld.0)?;
880 Ok(fld.value().to_string())
881 }
882
883
884 pub fn has_contract_settl_month(&self) -> bool {
886 self.message.body.has(tag::CONTRACT_SETTL_MONTH)
887 }
888
889
890
891
892 pub fn set_copy_msg_indicator(&mut self, v: bool) {
894 self.message.body.set_field(tag::COPY_MSG_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
895 }
896
897 pub fn get_copy_msg_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
899 let mut fld = field::CopyMsgIndicatorField::new(false);
900 self.message.body.get_field(tag::COPY_MSG_INDICATOR, &mut fld.0)?;
901 Ok(fld.value())
902 }
903
904
905 pub fn has_copy_msg_indicator(&self) -> bool {
907 self.message.body.has(tag::COPY_MSG_INDICATOR)
908 }
909
910
911
912
913 pub fn set_country_of_issue(&mut self, v: String) {
915 self.message.body.set_field(tag::COUNTRY_OF_ISSUE, FIXString::from(v));
916 }
917
918 pub fn get_country_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
920 let mut fld = field::CountryOfIssueField::new(String::new());
921 self.message.body.get_field(tag::COUNTRY_OF_ISSUE, &mut fld.0)?;
922 Ok(fld.value().to_string())
923 }
924
925
926 pub fn has_country_of_issue(&self) -> bool {
928 self.message.body.has(tag::COUNTRY_OF_ISSUE)
929 }
930
931
932
933
934 pub fn set_coupon_payment_date(&mut self, v: String) {
936 self.message.body.set_field(tag::COUPON_PAYMENT_DATE, FIXString::from(v));
937 }
938
939 pub fn get_coupon_payment_date(&self) -> Result<String, MessageRejectErrorEnum> {
941 let mut fld = field::CouponPaymentDateField::new(String::new());
942 self.message.body.get_field(tag::COUPON_PAYMENT_DATE, &mut fld.0)?;
943 Ok(fld.value().to_string())
944 }
945
946
947 pub fn has_coupon_payment_date(&self) -> bool {
949 self.message.body.has(tag::COUPON_PAYMENT_DATE)
950 }
951
952
953
954
955 pub fn set_coupon_rate(&mut self, val: Decimal, scale: i32) {
957 self.message.body.set_field(tag::COUPON_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
958 }
959
960 pub fn get_coupon_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
962 let mut fld = field::CouponRateField::new(Decimal::ZERO, 0);
963 self.message.body.get_field(tag::COUPON_RATE, &mut fld.0)?;
964 Ok(fld.value())
965 }
966
967
968 pub fn has_coupon_rate(&self) -> bool {
970 self.message.body.has(tag::COUPON_RATE)
971 }
972
973
974
975
976 pub fn set_credit_rating(&mut self, v: String) {
978 self.message.body.set_field(tag::CREDIT_RATING, FIXString::from(v));
979 }
980
981 pub fn get_credit_rating(&self) -> Result<String, MessageRejectErrorEnum> {
983 let mut fld = field::CreditRatingField::new(String::new());
984 self.message.body.get_field(tag::CREDIT_RATING, &mut fld.0)?;
985 Ok(fld.value().to_string())
986 }
987
988
989 pub fn has_credit_rating(&self) -> bool {
991 self.message.body.has(tag::CREDIT_RATING)
992 }
993
994
995
996
997 pub fn set_currency(&mut self, v: String) {
999 self.message.body.set_field(tag::CURRENCY, FIXString::from(v));
1000 }
1001
1002 pub fn get_currency(&self) -> Result<String, MessageRejectErrorEnum> {
1004 let mut fld = field::CurrencyField::new(String::new());
1005 self.message.body.get_field(tag::CURRENCY, &mut fld.0)?;
1006 Ok(fld.value().to_string())
1007 }
1008
1009
1010 pub fn has_currency(&self) -> bool {
1012 self.message.body.has(tag::CURRENCY)
1013 }
1014
1015
1016
1017
1018 pub fn set_dated_date(&mut self, v: String) {
1020 self.message.body.set_field(tag::DATED_DATE, FIXString::from(v));
1021 }
1022
1023 pub fn get_dated_date(&self) -> Result<String, MessageRejectErrorEnum> {
1025 let mut fld = field::DatedDateField::new(String::new());
1026 self.message.body.get_field(tag::DATED_DATE, &mut fld.0)?;
1027 Ok(fld.value().to_string())
1028 }
1029
1030
1031 pub fn has_dated_date(&self) -> bool {
1033 self.message.body.has(tag::DATED_DATE)
1034 }
1035
1036
1037
1038
1039 pub fn set_delivery_form(&mut self, v: isize) {
1041 self.message.body.set_field(tag::DELIVERY_FORM, fixer::fix_int::FIXInt::from(v));
1042 }
1043
1044 pub fn get_delivery_form(&self) -> Result<isize, MessageRejectErrorEnum> {
1046 let mut fld = field::DeliveryFormField::new(0);
1047 self.message.body.get_field(tag::DELIVERY_FORM, &mut fld.0)?;
1048 Ok(fld.value())
1049 }
1050
1051
1052 pub fn has_delivery_form(&self) -> bool {
1054 self.message.body.has(tag::DELIVERY_FORM)
1055 }
1056
1057
1058
1059
1060 pub fn set_delivery_type(&mut self, v: isize) {
1062 self.message.body.set_field(tag::DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
1063 }
1064
1065 pub fn get_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1067 let mut fld = field::DeliveryTypeField::new(0);
1068 self.message.body.get_field(tag::DELIVERY_TYPE, &mut fld.0)?;
1069 Ok(fld.value())
1070 }
1071
1072
1073 pub fn has_delivery_type(&self) -> bool {
1075 self.message.body.has(tag::DELIVERY_TYPE)
1076 }
1077
1078
1079
1080
1081 pub fn set_detachment_point(&mut self, val: Decimal, scale: i32) {
1083 self.message.body.set_field(tag::DETACHMENT_POINT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1084 }
1085
1086 pub fn get_detachment_point(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1088 let mut fld = field::DetachmentPointField::new(Decimal::ZERO, 0);
1089 self.message.body.get_field(tag::DETACHMENT_POINT, &mut fld.0)?;
1090 Ok(fld.value())
1091 }
1092
1093
1094 pub fn has_detachment_point(&self) -> bool {
1096 self.message.body.has(tag::DETACHMENT_POINT)
1097 }
1098
1099
1100
1101
1102 pub fn set_encoded_issuer(&mut self, v: String) {
1104 self.message.body.set_field(tag::ENCODED_ISSUER, FIXString::from(v));
1105 }
1106
1107 pub fn get_encoded_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1109 let mut fld = field::EncodedIssuerField::new(String::new());
1110 self.message.body.get_field(tag::ENCODED_ISSUER, &mut fld.0)?;
1111 Ok(fld.value().to_string())
1112 }
1113
1114
1115 pub fn has_encoded_issuer(&self) -> bool {
1117 self.message.body.has(tag::ENCODED_ISSUER)
1118 }
1119
1120
1121
1122
1123 pub fn set_encoded_issuer_len(&mut self, v: isize) {
1125 self.message.body.set_field(tag::ENCODED_ISSUER_LEN, fixer::fix_int::FIXInt::from(v));
1126 }
1127
1128 pub fn get_encoded_issuer_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1130 let mut fld = field::EncodedIssuerLenField::new(0);
1131 self.message.body.get_field(tag::ENCODED_ISSUER_LEN, &mut fld.0)?;
1132 Ok(fld.value())
1133 }
1134
1135
1136 pub fn has_encoded_issuer_len(&self) -> bool {
1138 self.message.body.has(tag::ENCODED_ISSUER_LEN)
1139 }
1140
1141
1142
1143
1144 pub fn set_encoded_security_desc(&mut self, v: String) {
1146 self.message.body.set_field(tag::ENCODED_SECURITY_DESC, FIXString::from(v));
1147 }
1148
1149 pub fn get_encoded_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
1151 let mut fld = field::EncodedSecurityDescField::new(String::new());
1152 self.message.body.get_field(tag::ENCODED_SECURITY_DESC, &mut fld.0)?;
1153 Ok(fld.value().to_string())
1154 }
1155
1156
1157 pub fn has_encoded_security_desc(&self) -> bool {
1159 self.message.body.has(tag::ENCODED_SECURITY_DESC)
1160 }
1161
1162
1163
1164
1165 pub fn set_encoded_security_desc_len(&mut self, v: isize) {
1167 self.message.body.set_field(tag::ENCODED_SECURITY_DESC_LEN, fixer::fix_int::FIXInt::from(v));
1168 }
1169
1170 pub fn get_encoded_security_desc_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1172 let mut fld = field::EncodedSecurityDescLenField::new(0);
1173 self.message.body.get_field(tag::ENCODED_SECURITY_DESC_LEN, &mut fld.0)?;
1174 Ok(fld.value())
1175 }
1176
1177
1178 pub fn has_encoded_security_desc_len(&self) -> bool {
1180 self.message.body.has(tag::ENCODED_SECURITY_DESC_LEN)
1181 }
1182
1183
1184
1185
1186 pub fn set_encoded_text(&mut self, v: String) {
1188 self.message.body.set_field(tag::ENCODED_TEXT, FIXString::from(v));
1189 }
1190
1191 pub fn get_encoded_text(&self) -> Result<String, MessageRejectErrorEnum> {
1193 let mut fld = field::EncodedTextField::new(String::new());
1194 self.message.body.get_field(tag::ENCODED_TEXT, &mut fld.0)?;
1195 Ok(fld.value().to_string())
1196 }
1197
1198
1199 pub fn has_encoded_text(&self) -> bool {
1201 self.message.body.has(tag::ENCODED_TEXT)
1202 }
1203
1204
1205
1206
1207 pub fn set_encoded_text_len(&mut self, v: isize) {
1209 self.message.body.set_field(tag::ENCODED_TEXT_LEN, fixer::fix_int::FIXInt::from(v));
1210 }
1211
1212 pub fn get_encoded_text_len(&self) -> Result<isize, MessageRejectErrorEnum> {
1214 let mut fld = field::EncodedTextLenField::new(0);
1215 self.message.body.get_field(tag::ENCODED_TEXT_LEN, &mut fld.0)?;
1216 Ok(fld.value())
1217 }
1218
1219
1220 pub fn has_encoded_text_len(&self) -> bool {
1222 self.message.body.has(tag::ENCODED_TEXT_LEN)
1223 }
1224
1225
1226
1227
1228 pub fn set_end_accrued_interest_amt(&mut self, val: Decimal, scale: i32) {
1230 self.message.body.set_field(tag::END_ACCRUED_INTEREST_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1231 }
1232
1233 pub fn get_end_accrued_interest_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1235 let mut fld = field::EndAccruedInterestAmtField::new(Decimal::ZERO, 0);
1236 self.message.body.get_field(tag::END_ACCRUED_INTEREST_AMT, &mut fld.0)?;
1237 Ok(fld.value())
1238 }
1239
1240
1241 pub fn has_end_accrued_interest_amt(&self) -> bool {
1243 self.message.body.has(tag::END_ACCRUED_INTEREST_AMT)
1244 }
1245
1246
1247
1248
1249 pub fn set_end_cash(&mut self, val: Decimal, scale: i32) {
1251 self.message.body.set_field(tag::END_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1252 }
1253
1254 pub fn get_end_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1256 let mut fld = field::EndCashField::new(Decimal::ZERO, 0);
1257 self.message.body.get_field(tag::END_CASH, &mut fld.0)?;
1258 Ok(fld.value())
1259 }
1260
1261
1262 pub fn has_end_cash(&self) -> bool {
1264 self.message.body.has(tag::END_CASH)
1265 }
1266
1267
1268
1269
1270 pub fn set_end_date(&mut self, v: String) {
1272 self.message.body.set_field(tag::END_DATE, FIXString::from(v));
1273 }
1274
1275 pub fn get_end_date(&self) -> Result<String, MessageRejectErrorEnum> {
1277 let mut fld = field::EndDateField::new(String::new());
1278 self.message.body.get_field(tag::END_DATE, &mut fld.0)?;
1279 Ok(fld.value().to_string())
1280 }
1281
1282
1283 pub fn has_end_date(&self) -> bool {
1285 self.message.body.has(tag::END_DATE)
1286 }
1287
1288
1289
1290
1291 pub fn set_ex_date(&mut self, v: String) {
1293 self.message.body.set_field(tag::EX_DATE, FIXString::from(v));
1294 }
1295
1296 pub fn get_ex_date(&self) -> Result<String, MessageRejectErrorEnum> {
1298 let mut fld = field::ExDateField::new(String::new());
1299 self.message.body.get_field(tag::EX_DATE, &mut fld.0)?;
1300 Ok(fld.value().to_string())
1301 }
1302
1303
1304 pub fn has_ex_date(&self) -> bool {
1306 self.message.body.has(tag::EX_DATE)
1307 }
1308
1309
1310
1311
1312 pub fn set_exercise_style(&mut self, v: isize) {
1314 self.message.body.set_field(tag::EXERCISE_STYLE, fixer::fix_int::FIXInt::from(v));
1315 }
1316
1317 pub fn get_exercise_style(&self) -> Result<isize, MessageRejectErrorEnum> {
1319 let mut fld = field::ExerciseStyleField::new(0);
1320 self.message.body.get_field(tag::EXERCISE_STYLE, &mut fld.0)?;
1321 Ok(fld.value())
1322 }
1323
1324
1325 pub fn has_exercise_style(&self) -> bool {
1327 self.message.body.has(tag::EXERCISE_STYLE)
1328 }
1329
1330
1331
1332
1333 pub fn set_factor(&mut self, val: Decimal, scale: i32) {
1335 self.message.body.set_field(tag::FACTOR, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1336 }
1337
1338 pub fn get_factor(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1340 let mut fld = field::FactorField::new(Decimal::ZERO, 0);
1341 self.message.body.get_field(tag::FACTOR, &mut fld.0)?;
1342 Ok(fld.value())
1343 }
1344
1345
1346 pub fn has_factor(&self) -> bool {
1348 self.message.body.has(tag::FACTOR)
1349 }
1350
1351
1352
1353
1354 pub fn set_flex_product_eligibility_indicator(&mut self, v: bool) {
1356 self.message.body.set_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
1357 }
1358
1359 pub fn get_flex_product_eligibility_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
1361 let mut fld = field::FlexProductEligibilityIndicatorField::new(false);
1362 self.message.body.get_field(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR, &mut fld.0)?;
1363 Ok(fld.value())
1364 }
1365
1366
1367 pub fn has_flex_product_eligibility_indicator(&self) -> bool {
1369 self.message.body.has(tag::FLEX_PRODUCT_ELIGIBILITY_INDICATOR)
1370 }
1371
1372
1373
1374
1375 pub fn set_flexible_indicator(&mut self, v: bool) {
1377 self.message.body.set_field(tag::FLEXIBLE_INDICATOR, fixer::fix_boolean::FIXBoolean::from(v));
1378 }
1379
1380 pub fn get_flexible_indicator(&self) -> Result<bool, MessageRejectErrorEnum> {
1382 let mut fld = field::FlexibleIndicatorField::new(false);
1383 self.message.body.get_field(tag::FLEXIBLE_INDICATOR, &mut fld.0)?;
1384 Ok(fld.value())
1385 }
1386
1387
1388 pub fn has_flexible_indicator(&self) -> bool {
1390 self.message.body.has(tag::FLEXIBLE_INDICATOR)
1391 }
1392
1393
1394
1395
1396 pub fn set_floor_price(&mut self, val: Decimal, scale: i32) {
1398 self.message.body.set_field(tag::FLOOR_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1399 }
1400
1401 pub fn get_floor_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1403 let mut fld = field::FloorPriceField::new(Decimal::ZERO, 0);
1404 self.message.body.get_field(tag::FLOOR_PRICE, &mut fld.0)?;
1405 Ok(fld.value())
1406 }
1407
1408
1409 pub fn has_floor_price(&self) -> bool {
1411 self.message.body.has(tag::FLOOR_PRICE)
1412 }
1413
1414
1415
1416
1417 pub fn set_flow_schedule_type(&mut self, v: isize) {
1419 self.message.body.set_field(tag::FLOW_SCHEDULE_TYPE, fixer::fix_int::FIXInt::from(v));
1420 }
1421
1422 pub fn get_flow_schedule_type(&self) -> Result<isize, MessageRejectErrorEnum> {
1424 let mut fld = field::FlowScheduleTypeField::new(0);
1425 self.message.body.get_field(tag::FLOW_SCHEDULE_TYPE, &mut fld.0)?;
1426 Ok(fld.value())
1427 }
1428
1429
1430 pub fn has_flow_schedule_type(&self) -> bool {
1432 self.message.body.has(tag::FLOW_SCHEDULE_TYPE)
1433 }
1434
1435
1436
1437
1438 pub fn set_fund_renew_waiv(&mut self, v: String) {
1440 self.message.body.set_field(tag::FUND_RENEW_WAIV, FIXString::from(v));
1441 }
1442
1443 pub fn get_fund_renew_waiv(&self) -> Result<String, MessageRejectErrorEnum> {
1445 let mut fld = field::FundRenewWaivField::new(String::new());
1446 self.message.body.get_field(tag::FUND_RENEW_WAIV, &mut fld.0)?;
1447 Ok(fld.value().to_string())
1448 }
1449
1450
1451 pub fn has_fund_renew_waiv(&self) -> bool {
1453 self.message.body.has(tag::FUND_RENEW_WAIV)
1454 }
1455
1456
1457
1458
1459 pub fn set_gross_trade_amt(&mut self, val: Decimal, scale: i32) {
1461 self.message.body.set_field(tag::GROSS_TRADE_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1462 }
1463
1464 pub fn get_gross_trade_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1466 let mut fld = field::GrossTradeAmtField::new(Decimal::ZERO, 0);
1467 self.message.body.get_field(tag::GROSS_TRADE_AMT, &mut fld.0)?;
1468 Ok(fld.value())
1469 }
1470
1471
1472 pub fn has_gross_trade_amt(&self) -> bool {
1474 self.message.body.has(tag::GROSS_TRADE_AMT)
1475 }
1476
1477
1478
1479
1480 pub fn set_individual_alloc_id(&mut self, v: String) {
1482 self.message.body.set_field(tag::INDIVIDUAL_ALLOC_ID, FIXString::from(v));
1483 }
1484
1485 pub fn get_individual_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
1487 let mut fld = field::IndividualAllocIDField::new(String::new());
1488 self.message.body.get_field(tag::INDIVIDUAL_ALLOC_ID, &mut fld.0)?;
1489 Ok(fld.value().to_string())
1490 }
1491
1492
1493 pub fn has_individual_alloc_id(&self) -> bool {
1495 self.message.body.has(tag::INDIVIDUAL_ALLOC_ID)
1496 }
1497
1498
1499
1500
1501 pub fn set_instr_registry(&mut self, v: String) {
1503 self.message.body.set_field(tag::INSTR_REGISTRY, FIXString::from(v));
1504 }
1505
1506 pub fn get_instr_registry(&self) -> Result<String, MessageRejectErrorEnum> {
1508 let mut fld = field::InstrRegistryField::new(String::new());
1509 self.message.body.get_field(tag::INSTR_REGISTRY, &mut fld.0)?;
1510 Ok(fld.value().to_string())
1511 }
1512
1513
1514 pub fn has_instr_registry(&self) -> bool {
1516 self.message.body.has(tag::INSTR_REGISTRY)
1517 }
1518
1519
1520
1521
1522 pub fn set_instrmt_assignment_method(&mut self, v: String) {
1524 self.message.body.set_field(tag::INSTRMT_ASSIGNMENT_METHOD, FIXString::from(v));
1525 }
1526
1527 pub fn get_instrmt_assignment_method(&self) -> Result<String, MessageRejectErrorEnum> {
1529 let mut fld = field::InstrmtAssignmentMethodField::new(String::new());
1530 self.message.body.get_field(tag::INSTRMT_ASSIGNMENT_METHOD, &mut fld.0)?;
1531 Ok(fld.value().to_string())
1532 }
1533
1534
1535 pub fn has_instrmt_assignment_method(&self) -> bool {
1537 self.message.body.has(tag::INSTRMT_ASSIGNMENT_METHOD)
1538 }
1539
1540
1541
1542
1543 pub fn set_interest_accrual_date(&mut self, v: String) {
1545 self.message.body.set_field(tag::INTEREST_ACCRUAL_DATE, FIXString::from(v));
1546 }
1547
1548 pub fn get_interest_accrual_date(&self) -> Result<String, MessageRejectErrorEnum> {
1550 let mut fld = field::InterestAccrualDateField::new(String::new());
1551 self.message.body.get_field(tag::INTEREST_ACCRUAL_DATE, &mut fld.0)?;
1552 Ok(fld.value().to_string())
1553 }
1554
1555
1556 pub fn has_interest_accrual_date(&self) -> bool {
1558 self.message.body.has(tag::INTEREST_ACCRUAL_DATE)
1559 }
1560
1561
1562
1563
1564 pub fn set_interest_at_maturity(&mut self, val: Decimal, scale: i32) {
1566 self.message.body.set_field(tag::INTEREST_AT_MATURITY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1567 }
1568
1569 pub fn get_interest_at_maturity(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1571 let mut fld = field::InterestAtMaturityField::new(Decimal::ZERO, 0);
1572 self.message.body.get_field(tag::INTEREST_AT_MATURITY, &mut fld.0)?;
1573 Ok(fld.value())
1574 }
1575
1576
1577 pub fn has_interest_at_maturity(&self) -> bool {
1579 self.message.body.has(tag::INTEREST_AT_MATURITY)
1580 }
1581
1582
1583
1584
1585 pub fn set_issue_date(&mut self, v: String) {
1587 self.message.body.set_field(tag::ISSUE_DATE, FIXString::from(v));
1588 }
1589
1590 pub fn get_issue_date(&self) -> Result<String, MessageRejectErrorEnum> {
1592 let mut fld = field::IssueDateField::new(String::new());
1593 self.message.body.get_field(tag::ISSUE_DATE, &mut fld.0)?;
1594 Ok(fld.value().to_string())
1595 }
1596
1597
1598 pub fn has_issue_date(&self) -> bool {
1600 self.message.body.has(tag::ISSUE_DATE)
1601 }
1602
1603
1604
1605
1606 pub fn set_issuer(&mut self, v: String) {
1608 self.message.body.set_field(tag::ISSUER, FIXString::from(v));
1609 }
1610
1611 pub fn get_issuer(&self) -> Result<String, MessageRejectErrorEnum> {
1613 let mut fld = field::IssuerField::new(String::new());
1614 self.message.body.get_field(tag::ISSUER, &mut fld.0)?;
1615 Ok(fld.value().to_string())
1616 }
1617
1618
1619 pub fn has_issuer(&self) -> bool {
1621 self.message.body.has(tag::ISSUER)
1622 }
1623
1624
1625
1626
1627 pub fn set_last_mkt(&mut self, v: String) {
1629 self.message.body.set_field(tag::LAST_MKT, FIXString::from(v));
1630 }
1631
1632 pub fn get_last_mkt(&self) -> Result<String, MessageRejectErrorEnum> {
1634 let mut fld = field::LastMktField::new(String::new());
1635 self.message.body.get_field(tag::LAST_MKT, &mut fld.0)?;
1636 Ok(fld.value().to_string())
1637 }
1638
1639
1640 pub fn has_last_mkt(&self) -> bool {
1642 self.message.body.has(tag::LAST_MKT)
1643 }
1644
1645
1646
1647
1648 pub fn set_legal_confirm(&mut self, v: bool) {
1650 self.message.body.set_field(tag::LEGAL_CONFIRM, fixer::fix_boolean::FIXBoolean::from(v));
1651 }
1652
1653 pub fn get_legal_confirm(&self) -> Result<bool, MessageRejectErrorEnum> {
1655 let mut fld = field::LegalConfirmField::new(false);
1656 self.message.body.get_field(tag::LEGAL_CONFIRM, &mut fld.0)?;
1657 Ok(fld.value())
1658 }
1659
1660
1661 pub fn has_legal_confirm(&self) -> bool {
1663 self.message.body.has(tag::LEGAL_CONFIRM)
1664 }
1665
1666
1667
1668
1669 pub fn set_list_method(&mut self, v: isize) {
1671 self.message.body.set_field(tag::LIST_METHOD, fixer::fix_int::FIXInt::from(v));
1672 }
1673
1674 pub fn get_list_method(&self) -> Result<isize, MessageRejectErrorEnum> {
1676 let mut fld = field::ListMethodField::new(0);
1677 self.message.body.get_field(tag::LIST_METHOD, &mut fld.0)?;
1678 Ok(fld.value())
1679 }
1680
1681
1682 pub fn has_list_method(&self) -> bool {
1684 self.message.body.has(tag::LIST_METHOD)
1685 }
1686
1687
1688
1689
1690 pub fn set_locale_of_issue(&mut self, v: String) {
1692 self.message.body.set_field(tag::LOCALE_OF_ISSUE, FIXString::from(v));
1693 }
1694
1695 pub fn get_locale_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
1697 let mut fld = field::LocaleOfIssueField::new(String::new());
1698 self.message.body.get_field(tag::LOCALE_OF_ISSUE, &mut fld.0)?;
1699 Ok(fld.value().to_string())
1700 }
1701
1702
1703 pub fn has_locale_of_issue(&self) -> bool {
1705 self.message.body.has(tag::LOCALE_OF_ISSUE)
1706 }
1707
1708
1709
1710
1711 pub fn set_margin_ratio(&mut self, val: Decimal, scale: i32) {
1713 self.message.body.set_field(tag::MARGIN_RATIO, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1714 }
1715
1716 pub fn get_margin_ratio(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1718 let mut fld = field::MarginRatioField::new(Decimal::ZERO, 0);
1719 self.message.body.get_field(tag::MARGIN_RATIO, &mut fld.0)?;
1720 Ok(fld.value())
1721 }
1722
1723
1724 pub fn has_margin_ratio(&self) -> bool {
1726 self.message.body.has(tag::MARGIN_RATIO)
1727 }
1728
1729
1730
1731
1732 pub fn set_maturity_date(&mut self, v: String) {
1734 self.message.body.set_field(tag::MATURITY_DATE, FIXString::from(v));
1735 }
1736
1737 pub fn get_maturity_date(&self) -> Result<String, MessageRejectErrorEnum> {
1739 let mut fld = field::MaturityDateField::new(String::new());
1740 self.message.body.get_field(tag::MATURITY_DATE, &mut fld.0)?;
1741 Ok(fld.value().to_string())
1742 }
1743
1744
1745 pub fn has_maturity_date(&self) -> bool {
1747 self.message.body.has(tag::MATURITY_DATE)
1748 }
1749
1750
1751
1752
1753 pub fn set_maturity_month_year(&mut self, v: String) {
1755 self.message.body.set_field(tag::MATURITY_MONTH_YEAR, FIXString::from(v));
1756 }
1757
1758 pub fn get_maturity_month_year(&self) -> Result<String, MessageRejectErrorEnum> {
1760 let mut fld = field::MaturityMonthYearField::new(String::new());
1761 self.message.body.get_field(tag::MATURITY_MONTH_YEAR, &mut fld.0)?;
1762 Ok(fld.value().to_string())
1763 }
1764
1765
1766 pub fn has_maturity_month_year(&self) -> bool {
1768 self.message.body.has(tag::MATURITY_MONTH_YEAR)
1769 }
1770
1771
1772
1773
1774 pub fn set_maturity_net_money(&mut self, val: Decimal, scale: i32) {
1776 self.message.body.set_field(tag::MATURITY_NET_MONEY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1777 }
1778
1779 pub fn get_maturity_net_money(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1781 let mut fld = field::MaturityNetMoneyField::new(Decimal::ZERO, 0);
1782 self.message.body.get_field(tag::MATURITY_NET_MONEY, &mut fld.0)?;
1783 Ok(fld.value())
1784 }
1785
1786
1787 pub fn has_maturity_net_money(&self) -> bool {
1789 self.message.body.has(tag::MATURITY_NET_MONEY)
1790 }
1791
1792
1793
1794
1795 pub fn set_maturity_time(&mut self, v: String) {
1797 self.message.body.set_field(tag::MATURITY_TIME, FIXString::from(v));
1798 }
1799
1800 pub fn get_maturity_time(&self) -> Result<String, MessageRejectErrorEnum> {
1802 let mut fld = field::MaturityTimeField::new(String::new());
1803 self.message.body.get_field(tag::MATURITY_TIME, &mut fld.0)?;
1804 Ok(fld.value().to_string())
1805 }
1806
1807
1808 pub fn has_maturity_time(&self) -> bool {
1810 self.message.body.has(tag::MATURITY_TIME)
1811 }
1812
1813
1814
1815
1816 pub fn set_min_price_increment(&mut self, val: Decimal, scale: i32) {
1818 self.message.body.set_field(tag::MIN_PRICE_INCREMENT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1819 }
1820
1821 pub fn get_min_price_increment(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1823 let mut fld = field::MinPriceIncrementField::new(Decimal::ZERO, 0);
1824 self.message.body.get_field(tag::MIN_PRICE_INCREMENT, &mut fld.0)?;
1825 Ok(fld.value())
1826 }
1827
1828
1829 pub fn has_min_price_increment(&self) -> bool {
1831 self.message.body.has(tag::MIN_PRICE_INCREMENT)
1832 }
1833
1834
1835
1836
1837 pub fn set_min_price_increment_amount(&mut self, val: Decimal, scale: i32) {
1839 self.message.body.set_field(tag::MIN_PRICE_INCREMENT_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1840 }
1841
1842 pub fn get_min_price_increment_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1844 let mut fld = field::MinPriceIncrementAmountField::new(Decimal::ZERO, 0);
1845 self.message.body.get_field(tag::MIN_PRICE_INCREMENT_AMOUNT, &mut fld.0)?;
1846 Ok(fld.value())
1847 }
1848
1849
1850 pub fn has_min_price_increment_amount(&self) -> bool {
1852 self.message.body.has(tag::MIN_PRICE_INCREMENT_AMOUNT)
1853 }
1854
1855
1856
1857
1858 pub fn set_nt_position_limit(&mut self, v: isize) {
1860 self.message.body.set_field(tag::NT_POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
1861 }
1862
1863 pub fn get_nt_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
1865 let mut fld = field::NTPositionLimitField::new(0);
1866 self.message.body.get_field(tag::NT_POSITION_LIMIT, &mut fld.0)?;
1867 Ok(fld.value())
1868 }
1869
1870
1871 pub fn has_nt_position_limit(&self) -> bool {
1873 self.message.body.has(tag::NT_POSITION_LIMIT)
1874 }
1875
1876
1877
1878
1879 pub fn set_net_money(&mut self, val: Decimal, scale: i32) {
1881 self.message.body.set_field(tag::NET_MONEY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
1882 }
1883
1884 pub fn get_net_money(&self) -> Result<Decimal, MessageRejectErrorEnum> {
1886 let mut fld = field::NetMoneyField::new(Decimal::ZERO, 0);
1887 self.message.body.get_field(tag::NET_MONEY, &mut fld.0)?;
1888 Ok(fld.value())
1889 }
1890
1891
1892 pub fn has_net_money(&self) -> bool {
1894 self.message.body.has(tag::NET_MONEY)
1895 }
1896
1897
1898
1899
1900 pub fn set_no_capacities(&mut self, v: isize) {
1902 self.message.body.set_field(tag::NO_CAPACITIES, fixer::fix_int::FIXInt::from(v));
1903 }
1904
1905 pub fn get_no_capacities(&self) -> Result<isize, MessageRejectErrorEnum> {
1907 let mut fld = field::NoCapacitiesField::new(0);
1908 self.message.body.get_field(tag::NO_CAPACITIES, &mut fld.0)?;
1909 Ok(fld.value())
1910 }
1911
1912
1913 pub fn has_no_capacities(&self) -> bool {
1915 self.message.body.has(tag::NO_CAPACITIES)
1916 }
1917
1918
1919
1920
1921 pub fn set_no_complex_events(&mut self, v: isize) {
1923 self.message.body.set_field(tag::NO_COMPLEX_EVENTS, fixer::fix_int::FIXInt::from(v));
1924 }
1925
1926 pub fn get_no_complex_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1928 let mut fld = field::NoComplexEventsField::new(0);
1929 self.message.body.get_field(tag::NO_COMPLEX_EVENTS, &mut fld.0)?;
1930 Ok(fld.value())
1931 }
1932
1933
1934 pub fn has_no_complex_events(&self) -> bool {
1936 self.message.body.has(tag::NO_COMPLEX_EVENTS)
1937 }
1938
1939
1940
1941
1942 pub fn set_no_dlvy_inst(&mut self, v: isize) {
1944 self.message.body.set_field(tag::NO_DLVY_INST, fixer::fix_int::FIXInt::from(v));
1945 }
1946
1947 pub fn get_no_dlvy_inst(&self) -> Result<isize, MessageRejectErrorEnum> {
1949 let mut fld = field::NoDlvyInstField::new(0);
1950 self.message.body.get_field(tag::NO_DLVY_INST, &mut fld.0)?;
1951 Ok(fld.value())
1952 }
1953
1954
1955 pub fn has_no_dlvy_inst(&self) -> bool {
1957 self.message.body.has(tag::NO_DLVY_INST)
1958 }
1959
1960
1961
1962
1963 pub fn set_no_events(&mut self, v: isize) {
1965 self.message.body.set_field(tag::NO_EVENTS, fixer::fix_int::FIXInt::from(v));
1966 }
1967
1968 pub fn get_no_events(&self) -> Result<isize, MessageRejectErrorEnum> {
1970 let mut fld = field::NoEventsField::new(0);
1971 self.message.body.get_field(tag::NO_EVENTS, &mut fld.0)?;
1972 Ok(fld.value())
1973 }
1974
1975
1976 pub fn has_no_events(&self) -> bool {
1978 self.message.body.has(tag::NO_EVENTS)
1979 }
1980
1981
1982
1983
1984 pub fn set_no_instr_attrib(&mut self, v: isize) {
1986 self.message.body.set_field(tag::NO_INSTR_ATTRIB, fixer::fix_int::FIXInt::from(v));
1987 }
1988
1989 pub fn get_no_instr_attrib(&self) -> Result<isize, MessageRejectErrorEnum> {
1991 let mut fld = field::NoInstrAttribField::new(0);
1992 self.message.body.get_field(tag::NO_INSTR_ATTRIB, &mut fld.0)?;
1993 Ok(fld.value())
1994 }
1995
1996
1997 pub fn has_no_instr_attrib(&self) -> bool {
1999 self.message.body.has(tag::NO_INSTR_ATTRIB)
2000 }
2001
2002
2003
2004
2005 pub fn set_no_instrument_parties(&mut self, v: isize) {
2007 self.message.body.set_field(tag::NO_INSTRUMENT_PARTIES, fixer::fix_int::FIXInt::from(v));
2008 }
2009
2010 pub fn get_no_instrument_parties(&self) -> Result<isize, MessageRejectErrorEnum> {
2012 let mut fld = field::NoInstrumentPartiesField::new(0);
2013 self.message.body.get_field(tag::NO_INSTRUMENT_PARTIES, &mut fld.0)?;
2014 Ok(fld.value())
2015 }
2016
2017
2018 pub fn has_no_instrument_parties(&self) -> bool {
2020 self.message.body.has(tag::NO_INSTRUMENT_PARTIES)
2021 }
2022
2023
2024
2025
2026 pub fn set_no_legs(&mut self, v: isize) {
2028 self.message.body.set_field(tag::NO_LEGS, fixer::fix_int::FIXInt::from(v));
2029 }
2030
2031 pub fn get_no_legs(&self) -> Result<isize, MessageRejectErrorEnum> {
2033 let mut fld = field::NoLegsField::new(0);
2034 self.message.body.get_field(tag::NO_LEGS, &mut fld.0)?;
2035 Ok(fld.value())
2036 }
2037
2038
2039 pub fn has_no_legs(&self) -> bool {
2041 self.message.body.has(tag::NO_LEGS)
2042 }
2043
2044
2045
2046
2047 pub fn set_no_misc_fees(&mut self, v: isize) {
2049 self.message.body.set_field(tag::NO_MISC_FEES, fixer::fix_int::FIXInt::from(v));
2050 }
2051
2052 pub fn get_no_misc_fees(&self) -> Result<isize, MessageRejectErrorEnum> {
2054 let mut fld = field::NoMiscFeesField::new(0);
2055 self.message.body.get_field(tag::NO_MISC_FEES, &mut fld.0)?;
2056 Ok(fld.value())
2057 }
2058
2059
2060 pub fn has_no_misc_fees(&self) -> bool {
2062 self.message.body.has(tag::NO_MISC_FEES)
2063 }
2064
2065
2066
2067
2068 pub fn set_no_orders(&mut self, v: isize) {
2070 self.message.body.set_field(tag::NO_ORDERS, fixer::fix_int::FIXInt::from(v));
2071 }
2072
2073 pub fn get_no_orders(&self) -> Result<isize, MessageRejectErrorEnum> {
2075 let mut fld = field::NoOrdersField::new(0);
2076 self.message.body.get_field(tag::NO_ORDERS, &mut fld.0)?;
2077 Ok(fld.value())
2078 }
2079
2080
2081 pub fn has_no_orders(&self) -> bool {
2083 self.message.body.has(tag::NO_ORDERS)
2084 }
2085
2086
2087
2088
2089 pub fn set_no_party_i_ds(&mut self, v: isize) {
2091 self.message.body.set_field(tag::NO_PARTY_I_DS, fixer::fix_int::FIXInt::from(v));
2092 }
2093
2094 pub fn get_no_party_i_ds(&self) -> Result<isize, MessageRejectErrorEnum> {
2096 let mut fld = field::NoPartyIDsField::new(0);
2097 self.message.body.get_field(tag::NO_PARTY_I_DS, &mut fld.0)?;
2098 Ok(fld.value())
2099 }
2100
2101
2102 pub fn has_no_party_i_ds(&self) -> bool {
2104 self.message.body.has(tag::NO_PARTY_I_DS)
2105 }
2106
2107
2108
2109
2110 pub fn set_no_security_alt_id(&mut self, v: isize) {
2112 self.message.body.set_field(tag::NO_SECURITY_ALT_ID, fixer::fix_int::FIXInt::from(v));
2113 }
2114
2115 pub fn get_no_security_alt_id(&self) -> Result<isize, MessageRejectErrorEnum> {
2117 let mut fld = field::NoSecurityAltIDField::new(0);
2118 self.message.body.get_field(tag::NO_SECURITY_ALT_ID, &mut fld.0)?;
2119 Ok(fld.value())
2120 }
2121
2122
2123 pub fn has_no_security_alt_id(&self) -> bool {
2125 self.message.body.has(tag::NO_SECURITY_ALT_ID)
2126 }
2127
2128
2129
2130
2131 pub fn set_no_stipulations(&mut self, v: isize) {
2133 self.message.body.set_field(tag::NO_STIPULATIONS, fixer::fix_int::FIXInt::from(v));
2134 }
2135
2136 pub fn get_no_stipulations(&self) -> Result<isize, MessageRejectErrorEnum> {
2138 let mut fld = field::NoStipulationsField::new(0);
2139 self.message.body.get_field(tag::NO_STIPULATIONS, &mut fld.0)?;
2140 Ok(fld.value())
2141 }
2142
2143
2144 pub fn has_no_stipulations(&self) -> bool {
2146 self.message.body.has(tag::NO_STIPULATIONS)
2147 }
2148
2149
2150
2151
2152 pub fn set_no_trd_reg_timestamps(&mut self, v: isize) {
2154 self.message.body.set_field(tag::NO_TRD_REG_TIMESTAMPS, fixer::fix_int::FIXInt::from(v));
2155 }
2156
2157 pub fn get_no_trd_reg_timestamps(&self) -> Result<isize, MessageRejectErrorEnum> {
2159 let mut fld = field::NoTrdRegTimestampsField::new(0);
2160 self.message.body.get_field(tag::NO_TRD_REG_TIMESTAMPS, &mut fld.0)?;
2161 Ok(fld.value())
2162 }
2163
2164
2165 pub fn has_no_trd_reg_timestamps(&self) -> bool {
2167 self.message.body.has(tag::NO_TRD_REG_TIMESTAMPS)
2168 }
2169
2170
2171
2172
2173 pub fn set_no_underlyings(&mut self, v: isize) {
2175 self.message.body.set_field(tag::NO_UNDERLYINGS, fixer::fix_int::FIXInt::from(v));
2176 }
2177
2178 pub fn get_no_underlyings(&self) -> Result<isize, MessageRejectErrorEnum> {
2180 let mut fld = field::NoUnderlyingsField::new(0);
2181 self.message.body.get_field(tag::NO_UNDERLYINGS, &mut fld.0)?;
2182 Ok(fld.value())
2183 }
2184
2185
2186 pub fn has_no_underlyings(&self) -> bool {
2188 self.message.body.has(tag::NO_UNDERLYINGS)
2189 }
2190
2191
2192
2193
2194 pub fn set_notional_percentage_outstanding(&mut self, val: Decimal, scale: i32) {
2196 self.message.body.set_field(tag::NOTIONAL_PERCENTAGE_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2197 }
2198
2199 pub fn get_notional_percentage_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2201 let mut fld = field::NotionalPercentageOutstandingField::new(Decimal::ZERO, 0);
2202 self.message.body.get_field(tag::NOTIONAL_PERCENTAGE_OUTSTANDING, &mut fld.0)?;
2203 Ok(fld.value())
2204 }
2205
2206
2207 pub fn has_notional_percentage_outstanding(&self) -> bool {
2209 self.message.body.has(tag::NOTIONAL_PERCENTAGE_OUTSTANDING)
2210 }
2211
2212
2213
2214
2215 pub fn set_num_days_interest(&mut self, v: isize) {
2217 self.message.body.set_field(tag::NUM_DAYS_INTEREST, fixer::fix_int::FIXInt::from(v));
2218 }
2219
2220 pub fn get_num_days_interest(&self) -> Result<isize, MessageRejectErrorEnum> {
2222 let mut fld = field::NumDaysInterestField::new(0);
2223 self.message.body.get_field(tag::NUM_DAYS_INTEREST, &mut fld.0)?;
2224 Ok(fld.value())
2225 }
2226
2227
2228 pub fn has_num_days_interest(&self) -> bool {
2230 self.message.body.has(tag::NUM_DAYS_INTEREST)
2231 }
2232
2233
2234
2235
2236 pub fn set_opt_attribute(&mut self, v: String) {
2238 self.message.body.set_field(tag::OPT_ATTRIBUTE, FIXString::from(v));
2239 }
2240
2241 pub fn get_opt_attribute(&self) -> Result<String, MessageRejectErrorEnum> {
2243 let mut fld = field::OptAttributeField::new(String::new());
2244 self.message.body.get_field(tag::OPT_ATTRIBUTE, &mut fld.0)?;
2245 Ok(fld.value().to_string())
2246 }
2247
2248
2249 pub fn has_opt_attribute(&self) -> bool {
2251 self.message.body.has(tag::OPT_ATTRIBUTE)
2252 }
2253
2254
2255
2256
2257 pub fn set_opt_payout_amount(&mut self, val: Decimal, scale: i32) {
2259 self.message.body.set_field(tag::OPT_PAYOUT_AMOUNT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2260 }
2261
2262 pub fn get_opt_payout_amount(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2264 let mut fld = field::OptPayoutAmountField::new(Decimal::ZERO, 0);
2265 self.message.body.get_field(tag::OPT_PAYOUT_AMOUNT, &mut fld.0)?;
2266 Ok(fld.value())
2267 }
2268
2269
2270 pub fn has_opt_payout_amount(&self) -> bool {
2272 self.message.body.has(tag::OPT_PAYOUT_AMOUNT)
2273 }
2274
2275
2276
2277
2278 pub fn set_opt_payout_type(&mut self, v: isize) {
2280 self.message.body.set_field(tag::OPT_PAYOUT_TYPE, fixer::fix_int::FIXInt::from(v));
2281 }
2282
2283 pub fn get_opt_payout_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2285 let mut fld = field::OptPayoutTypeField::new(0);
2286 self.message.body.get_field(tag::OPT_PAYOUT_TYPE, &mut fld.0)?;
2287 Ok(fld.value())
2288 }
2289
2290
2291 pub fn has_opt_payout_type(&self) -> bool {
2293 self.message.body.has(tag::OPT_PAYOUT_TYPE)
2294 }
2295
2296
2297
2298
2299 pub fn set_original_notional_percentage_outstanding(&mut self, val: Decimal, scale: i32) {
2301 self.message.body.set_field(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2302 }
2303
2304 pub fn get_original_notional_percentage_outstanding(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2306 let mut fld = field::OriginalNotionalPercentageOutstandingField::new(Decimal::ZERO, 0);
2307 self.message.body.get_field(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING, &mut fld.0)?;
2308 Ok(fld.value())
2309 }
2310
2311
2312 pub fn has_original_notional_percentage_outstanding(&self) -> bool {
2314 self.message.body.has(tag::ORIGINAL_NOTIONAL_PERCENTAGE_OUTSTANDING)
2315 }
2316
2317
2318
2319
2320 pub fn set_pct_at_risk(&mut self, val: Decimal, scale: i32) {
2322 self.message.body.set_field(tag::PCT_AT_RISK, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2323 }
2324
2325 pub fn get_pct_at_risk(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2327 let mut fld = field::PctAtRiskField::new(Decimal::ZERO, 0);
2328 self.message.body.get_field(tag::PCT_AT_RISK, &mut fld.0)?;
2329 Ok(fld.value())
2330 }
2331
2332
2333 pub fn has_pct_at_risk(&self) -> bool {
2335 self.message.body.has(tag::PCT_AT_RISK)
2336 }
2337
2338
2339
2340
2341 pub fn set_pool(&mut self, v: String) {
2343 self.message.body.set_field(tag::POOL, FIXString::from(v));
2344 }
2345
2346 pub fn get_pool(&self) -> Result<String, MessageRejectErrorEnum> {
2348 let mut fld = field::PoolField::new(String::new());
2349 self.message.body.get_field(tag::POOL, &mut fld.0)?;
2350 Ok(fld.value().to_string())
2351 }
2352
2353
2354 pub fn has_pool(&self) -> bool {
2356 self.message.body.has(tag::POOL)
2357 }
2358
2359
2360
2361
2362 pub fn set_position_limit(&mut self, v: isize) {
2364 self.message.body.set_field(tag::POSITION_LIMIT, fixer::fix_int::FIXInt::from(v));
2365 }
2366
2367 pub fn get_position_limit(&self) -> Result<isize, MessageRejectErrorEnum> {
2369 let mut fld = field::PositionLimitField::new(0);
2370 self.message.body.get_field(tag::POSITION_LIMIT, &mut fld.0)?;
2371 Ok(fld.value())
2372 }
2373
2374
2375 pub fn has_position_limit(&self) -> bool {
2377 self.message.body.has(tag::POSITION_LIMIT)
2378 }
2379
2380
2381
2382
2383 pub fn set_price_quote_method(&mut self, v: String) {
2385 self.message.body.set_field(tag::PRICE_QUOTE_METHOD, FIXString::from(v));
2386 }
2387
2388 pub fn get_price_quote_method(&self) -> Result<String, MessageRejectErrorEnum> {
2390 let mut fld = field::PriceQuoteMethodField::new(String::new());
2391 self.message.body.get_field(tag::PRICE_QUOTE_METHOD, &mut fld.0)?;
2392 Ok(fld.value().to_string())
2393 }
2394
2395
2396 pub fn has_price_quote_method(&self) -> bool {
2398 self.message.body.has(tag::PRICE_QUOTE_METHOD)
2399 }
2400
2401
2402
2403
2404 pub fn set_price_type(&mut self, v: isize) {
2406 self.message.body.set_field(tag::PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
2407 }
2408
2409 pub fn get_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2411 let mut fld = field::PriceTypeField::new(0);
2412 self.message.body.get_field(tag::PRICE_TYPE, &mut fld.0)?;
2413 Ok(fld.value())
2414 }
2415
2416
2417 pub fn has_price_type(&self) -> bool {
2419 self.message.body.has(tag::PRICE_TYPE)
2420 }
2421
2422
2423
2424
2425 pub fn set_price_unit_of_measure(&mut self, v: String) {
2427 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE, FIXString::from(v));
2428 }
2429
2430 pub fn get_price_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
2432 let mut fld = field::PriceUnitOfMeasureField::new(String::new());
2433 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE, &mut fld.0)?;
2434 Ok(fld.value().to_string())
2435 }
2436
2437
2438 pub fn has_price_unit_of_measure(&self) -> bool {
2440 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE)
2441 }
2442
2443
2444
2445
2446 pub fn set_price_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
2448 self.message.body.set_field(tag::PRICE_UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2449 }
2450
2451 pub fn get_price_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2453 let mut fld = field::PriceUnitOfMeasureQtyField::new(Decimal::ZERO, 0);
2454 self.message.body.get_field(tag::PRICE_UNIT_OF_MEASURE_QTY, &mut fld.0)?;
2455 Ok(fld.value())
2456 }
2457
2458
2459 pub fn has_price_unit_of_measure_qty(&self) -> bool {
2461 self.message.body.has(tag::PRICE_UNIT_OF_MEASURE_QTY)
2462 }
2463
2464
2465
2466
2467 pub fn set_process_code(&mut self, v: String) {
2469 self.message.body.set_field(tag::PROCESS_CODE, FIXString::from(v));
2470 }
2471
2472 pub fn get_process_code(&self) -> Result<String, MessageRejectErrorEnum> {
2474 let mut fld = field::ProcessCodeField::new(String::new());
2475 self.message.body.get_field(tag::PROCESS_CODE, &mut fld.0)?;
2476 Ok(fld.value().to_string())
2477 }
2478
2479
2480 pub fn has_process_code(&self) -> bool {
2482 self.message.body.has(tag::PROCESS_CODE)
2483 }
2484
2485
2486
2487
2488 pub fn set_product(&mut self, v: isize) {
2490 self.message.body.set_field(tag::PRODUCT, fixer::fix_int::FIXInt::from(v));
2491 }
2492
2493 pub fn get_product(&self) -> Result<isize, MessageRejectErrorEnum> {
2495 let mut fld = field::ProductField::new(0);
2496 self.message.body.get_field(tag::PRODUCT, &mut fld.0)?;
2497 Ok(fld.value())
2498 }
2499
2500
2501 pub fn has_product(&self) -> bool {
2503 self.message.body.has(tag::PRODUCT)
2504 }
2505
2506
2507
2508
2509 pub fn set_product_complex(&mut self, v: String) {
2511 self.message.body.set_field(tag::PRODUCT_COMPLEX, FIXString::from(v));
2512 }
2513
2514 pub fn get_product_complex(&self) -> Result<String, MessageRejectErrorEnum> {
2516 let mut fld = field::ProductComplexField::new(String::new());
2517 self.message.body.get_field(tag::PRODUCT_COMPLEX, &mut fld.0)?;
2518 Ok(fld.value().to_string())
2519 }
2520
2521
2522 pub fn has_product_complex(&self) -> bool {
2524 self.message.body.has(tag::PRODUCT_COMPLEX)
2525 }
2526
2527
2528
2529
2530 pub fn set_put_or_call(&mut self, v: isize) {
2532 self.message.body.set_field(tag::PUT_OR_CALL, fixer::fix_int::FIXInt::from(v));
2533 }
2534
2535 pub fn get_put_or_call(&self) -> Result<isize, MessageRejectErrorEnum> {
2537 let mut fld = field::PutOrCallField::new(0);
2538 self.message.body.get_field(tag::PUT_OR_CALL, &mut fld.0)?;
2539 Ok(fld.value())
2540 }
2541
2542
2543 pub fn has_put_or_call(&self) -> bool {
2545 self.message.body.has(tag::PUT_OR_CALL)
2546 }
2547
2548
2549
2550
2551 pub fn set_qty_type(&mut self, v: isize) {
2553 self.message.body.set_field(tag::QTY_TYPE, fixer::fix_int::FIXInt::from(v));
2554 }
2555
2556 pub fn get_qty_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2558 let mut fld = field::QtyTypeField::new(0);
2559 self.message.body.get_field(tag::QTY_TYPE, &mut fld.0)?;
2560 Ok(fld.value())
2561 }
2562
2563
2564 pub fn has_qty_type(&self) -> bool {
2566 self.message.body.has(tag::QTY_TYPE)
2567 }
2568
2569
2570
2571
2572 pub fn set_redemption_date(&mut self, v: String) {
2574 self.message.body.set_field(tag::REDEMPTION_DATE, FIXString::from(v));
2575 }
2576
2577 pub fn get_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
2579 let mut fld = field::RedemptionDateField::new(String::new());
2580 self.message.body.get_field(tag::REDEMPTION_DATE, &mut fld.0)?;
2581 Ok(fld.value().to_string())
2582 }
2583
2584
2585 pub fn has_redemption_date(&self) -> bool {
2587 self.message.body.has(tag::REDEMPTION_DATE)
2588 }
2589
2590
2591
2592
2593 pub fn set_repo_collateral_security_type(&mut self, v: isize) {
2595 self.message.body.set_field(tag::REPO_COLLATERAL_SECURITY_TYPE, fixer::fix_int::FIXInt::from(v));
2596 }
2597
2598 pub fn get_repo_collateral_security_type(&self) -> Result<isize, MessageRejectErrorEnum> {
2600 let mut fld = field::RepoCollateralSecurityTypeField::new(0);
2601 self.message.body.get_field(tag::REPO_COLLATERAL_SECURITY_TYPE, &mut fld.0)?;
2602 Ok(fld.value())
2603 }
2604
2605
2606 pub fn has_repo_collateral_security_type(&self) -> bool {
2608 self.message.body.has(tag::REPO_COLLATERAL_SECURITY_TYPE)
2609 }
2610
2611
2612
2613
2614 pub fn set_reported_px(&mut self, val: Decimal, scale: i32) {
2616 self.message.body.set_field(tag::REPORTED_PX, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2617 }
2618
2619 pub fn get_reported_px(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2621 let mut fld = field::ReportedPxField::new(Decimal::ZERO, 0);
2622 self.message.body.get_field(tag::REPORTED_PX, &mut fld.0)?;
2623 Ok(fld.value())
2624 }
2625
2626
2627 pub fn has_reported_px(&self) -> bool {
2629 self.message.body.has(tag::REPORTED_PX)
2630 }
2631
2632
2633
2634
2635 pub fn set_repurchase_rate(&mut self, val: Decimal, scale: i32) {
2637 self.message.body.set_field(tag::REPURCHASE_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2638 }
2639
2640 pub fn get_repurchase_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2642 let mut fld = field::RepurchaseRateField::new(Decimal::ZERO, 0);
2643 self.message.body.get_field(tag::REPURCHASE_RATE, &mut fld.0)?;
2644 Ok(fld.value())
2645 }
2646
2647
2648 pub fn has_repurchase_rate(&self) -> bool {
2650 self.message.body.has(tag::REPURCHASE_RATE)
2651 }
2652
2653
2654
2655
2656 pub fn set_repurchase_term(&mut self, v: isize) {
2658 self.message.body.set_field(tag::REPURCHASE_TERM, fixer::fix_int::FIXInt::from(v));
2659 }
2660
2661 pub fn get_repurchase_term(&self) -> Result<isize, MessageRejectErrorEnum> {
2663 let mut fld = field::RepurchaseTermField::new(0);
2664 self.message.body.get_field(tag::REPURCHASE_TERM, &mut fld.0)?;
2665 Ok(fld.value())
2666 }
2667
2668
2669 pub fn has_repurchase_term(&self) -> bool {
2671 self.message.body.has(tag::REPURCHASE_TERM)
2672 }
2673
2674
2675
2676
2677 pub fn set_restructuring_type(&mut self, v: String) {
2679 self.message.body.set_field(tag::RESTRUCTURING_TYPE, FIXString::from(v));
2680 }
2681
2682 pub fn get_restructuring_type(&self) -> Result<String, MessageRejectErrorEnum> {
2684 let mut fld = field::RestructuringTypeField::new(String::new());
2685 self.message.body.get_field(tag::RESTRUCTURING_TYPE, &mut fld.0)?;
2686 Ok(fld.value().to_string())
2687 }
2688
2689
2690 pub fn has_restructuring_type(&self) -> bool {
2692 self.message.body.has(tag::RESTRUCTURING_TYPE)
2693 }
2694
2695
2696
2697
2698 pub fn set_secondary_alloc_id(&mut self, v: String) {
2700 self.message.body.set_field(tag::SECONDARY_ALLOC_ID, FIXString::from(v));
2701 }
2702
2703 pub fn get_secondary_alloc_id(&self) -> Result<String, MessageRejectErrorEnum> {
2705 let mut fld = field::SecondaryAllocIDField::new(String::new());
2706 self.message.body.get_field(tag::SECONDARY_ALLOC_ID, &mut fld.0)?;
2707 Ok(fld.value().to_string())
2708 }
2709
2710
2711 pub fn has_secondary_alloc_id(&self) -> bool {
2713 self.message.body.has(tag::SECONDARY_ALLOC_ID)
2714 }
2715
2716
2717
2718
2719 pub fn set_security_desc(&mut self, v: String) {
2721 self.message.body.set_field(tag::SECURITY_DESC, FIXString::from(v));
2722 }
2723
2724 pub fn get_security_desc(&self) -> Result<String, MessageRejectErrorEnum> {
2726 let mut fld = field::SecurityDescField::new(String::new());
2727 self.message.body.get_field(tag::SECURITY_DESC, &mut fld.0)?;
2728 Ok(fld.value().to_string())
2729 }
2730
2731
2732 pub fn has_security_desc(&self) -> bool {
2734 self.message.body.has(tag::SECURITY_DESC)
2735 }
2736
2737
2738
2739
2740 pub fn set_security_exchange(&mut self, v: String) {
2742 self.message.body.set_field(tag::SECURITY_EXCHANGE, FIXString::from(v));
2743 }
2744
2745 pub fn get_security_exchange(&self) -> Result<String, MessageRejectErrorEnum> {
2747 let mut fld = field::SecurityExchangeField::new(String::new());
2748 self.message.body.get_field(tag::SECURITY_EXCHANGE, &mut fld.0)?;
2749 Ok(fld.value().to_string())
2750 }
2751
2752
2753 pub fn has_security_exchange(&self) -> bool {
2755 self.message.body.has(tag::SECURITY_EXCHANGE)
2756 }
2757
2758
2759
2760
2761 pub fn set_security_group(&mut self, v: String) {
2763 self.message.body.set_field(tag::SECURITY_GROUP, FIXString::from(v));
2764 }
2765
2766 pub fn get_security_group(&self) -> Result<String, MessageRejectErrorEnum> {
2768 let mut fld = field::SecurityGroupField::new(String::new());
2769 self.message.body.get_field(tag::SECURITY_GROUP, &mut fld.0)?;
2770 Ok(fld.value().to_string())
2771 }
2772
2773
2774 pub fn has_security_group(&self) -> bool {
2776 self.message.body.has(tag::SECURITY_GROUP)
2777 }
2778
2779
2780
2781
2782 pub fn set_security_id(&mut self, v: String) {
2784 self.message.body.set_field(tag::SECURITY_ID, FIXString::from(v));
2785 }
2786
2787 pub fn get_security_id(&self) -> Result<String, MessageRejectErrorEnum> {
2789 let mut fld = field::SecurityIDField::new(String::new());
2790 self.message.body.get_field(tag::SECURITY_ID, &mut fld.0)?;
2791 Ok(fld.value().to_string())
2792 }
2793
2794
2795 pub fn has_security_id(&self) -> bool {
2797 self.message.body.has(tag::SECURITY_ID)
2798 }
2799
2800
2801
2802
2803 pub fn set_security_id_source(&mut self, v: String) {
2805 self.message.body.set_field(tag::SECURITY_ID_SOURCE, FIXString::from(v));
2806 }
2807
2808 pub fn get_security_id_source(&self) -> Result<String, MessageRejectErrorEnum> {
2810 let mut fld = field::SecurityIDSourceField::new(String::new());
2811 self.message.body.get_field(tag::SECURITY_ID_SOURCE, &mut fld.0)?;
2812 Ok(fld.value().to_string())
2813 }
2814
2815
2816 pub fn has_security_id_source(&self) -> bool {
2818 self.message.body.has(tag::SECURITY_ID_SOURCE)
2819 }
2820
2821
2822
2823
2824 pub fn set_security_status(&mut self, v: String) {
2826 self.message.body.set_field(tag::SECURITY_STATUS, FIXString::from(v));
2827 }
2828
2829 pub fn get_security_status(&self) -> Result<String, MessageRejectErrorEnum> {
2831 let mut fld = field::SecurityStatusField::new(String::new());
2832 self.message.body.get_field(tag::SECURITY_STATUS, &mut fld.0)?;
2833 Ok(fld.value().to_string())
2834 }
2835
2836
2837 pub fn has_security_status(&self) -> bool {
2839 self.message.body.has(tag::SECURITY_STATUS)
2840 }
2841
2842
2843
2844
2845 pub fn set_security_sub_type(&mut self, v: String) {
2847 self.message.body.set_field(tag::SECURITY_SUB_TYPE, FIXString::from(v));
2848 }
2849
2850 pub fn get_security_sub_type(&self) -> Result<String, MessageRejectErrorEnum> {
2852 let mut fld = field::SecuritySubTypeField::new(String::new());
2853 self.message.body.get_field(tag::SECURITY_SUB_TYPE, &mut fld.0)?;
2854 Ok(fld.value().to_string())
2855 }
2856
2857
2858 pub fn has_security_sub_type(&self) -> bool {
2860 self.message.body.has(tag::SECURITY_SUB_TYPE)
2861 }
2862
2863
2864
2865
2866 pub fn set_security_type(&mut self, v: String) {
2868 self.message.body.set_field(tag::SECURITY_TYPE, FIXString::from(v));
2869 }
2870
2871 pub fn get_security_type(&self) -> Result<String, MessageRejectErrorEnum> {
2873 let mut fld = field::SecurityTypeField::new(String::new());
2874 self.message.body.get_field(tag::SECURITY_TYPE, &mut fld.0)?;
2875 Ok(fld.value().to_string())
2876 }
2877
2878
2879 pub fn has_security_type(&self) -> bool {
2881 self.message.body.has(tag::SECURITY_TYPE)
2882 }
2883
2884
2885
2886
2887 pub fn set_security_xml(&mut self, v: String) {
2889 self.message.body.set_field(tag::SECURITY_XML, FIXString::from(v));
2890 }
2891
2892 pub fn get_security_xml(&self) -> Result<String, MessageRejectErrorEnum> {
2894 let mut fld = field::SecurityXMLField::new(String::new());
2895 self.message.body.get_field(tag::SECURITY_XML, &mut fld.0)?;
2896 Ok(fld.value().to_string())
2897 }
2898
2899
2900 pub fn has_security_xml(&self) -> bool {
2902 self.message.body.has(tag::SECURITY_XML)
2903 }
2904
2905
2906
2907
2908 pub fn set_security_xml_len(&mut self, v: isize) {
2910 self.message.body.set_field(tag::SECURITY_XML_LEN, fixer::fix_int::FIXInt::from(v));
2911 }
2912
2913 pub fn get_security_xml_len(&self) -> Result<isize, MessageRejectErrorEnum> {
2915 let mut fld = field::SecurityXMLLenField::new(0);
2916 self.message.body.get_field(tag::SECURITY_XML_LEN, &mut fld.0)?;
2917 Ok(fld.value())
2918 }
2919
2920
2921 pub fn has_security_xml_len(&self) -> bool {
2923 self.message.body.has(tag::SECURITY_XML_LEN)
2924 }
2925
2926
2927
2928
2929 pub fn set_security_xml_schema(&mut self, v: String) {
2931 self.message.body.set_field(tag::SECURITY_XML_SCHEMA, FIXString::from(v));
2932 }
2933
2934 pub fn get_security_xml_schema(&self) -> Result<String, MessageRejectErrorEnum> {
2936 let mut fld = field::SecurityXMLSchemaField::new(String::new());
2937 self.message.body.get_field(tag::SECURITY_XML_SCHEMA, &mut fld.0)?;
2938 Ok(fld.value().to_string())
2939 }
2940
2941
2942 pub fn has_security_xml_schema(&self) -> bool {
2944 self.message.body.has(tag::SECURITY_XML_SCHEMA)
2945 }
2946
2947
2948
2949
2950 pub fn set_seniority(&mut self, v: String) {
2952 self.message.body.set_field(tag::SENIORITY, FIXString::from(v));
2953 }
2954
2955 pub fn get_seniority(&self) -> Result<String, MessageRejectErrorEnum> {
2957 let mut fld = field::SeniorityField::new(String::new());
2958 self.message.body.get_field(tag::SENIORITY, &mut fld.0)?;
2959 Ok(fld.value().to_string())
2960 }
2961
2962
2963 pub fn has_seniority(&self) -> bool {
2965 self.message.body.has(tag::SENIORITY)
2966 }
2967
2968
2969
2970
2971 pub fn set_settl_curr_amt(&mut self, val: Decimal, scale: i32) {
2973 self.message.body.set_field(tag::SETTL_CURR_AMT, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2974 }
2975
2976 pub fn get_settl_curr_amt(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2978 let mut fld = field::SettlCurrAmtField::new(Decimal::ZERO, 0);
2979 self.message.body.get_field(tag::SETTL_CURR_AMT, &mut fld.0)?;
2980 Ok(fld.value())
2981 }
2982
2983
2984 pub fn has_settl_curr_amt(&self) -> bool {
2986 self.message.body.has(tag::SETTL_CURR_AMT)
2987 }
2988
2989
2990
2991
2992 pub fn set_settl_curr_fx_rate(&mut self, val: Decimal, scale: i32) {
2994 self.message.body.set_field(tag::SETTL_CURR_FX_RATE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
2995 }
2996
2997 pub fn get_settl_curr_fx_rate(&self) -> Result<Decimal, MessageRejectErrorEnum> {
2999 let mut fld = field::SettlCurrFxRateField::new(Decimal::ZERO, 0);
3000 self.message.body.get_field(tag::SETTL_CURR_FX_RATE, &mut fld.0)?;
3001 Ok(fld.value())
3002 }
3003
3004
3005 pub fn has_settl_curr_fx_rate(&self) -> bool {
3007 self.message.body.has(tag::SETTL_CURR_FX_RATE)
3008 }
3009
3010
3011
3012
3013 pub fn set_settl_curr_fx_rate_calc(&mut self, v: String) {
3015 self.message.body.set_field(tag::SETTL_CURR_FX_RATE_CALC, FIXString::from(v));
3016 }
3017
3018 pub fn get_settl_curr_fx_rate_calc(&self) -> Result<String, MessageRejectErrorEnum> {
3020 let mut fld = field::SettlCurrFxRateCalcField::new(String::new());
3021 self.message.body.get_field(tag::SETTL_CURR_FX_RATE_CALC, &mut fld.0)?;
3022 Ok(fld.value().to_string())
3023 }
3024
3025
3026 pub fn has_settl_curr_fx_rate_calc(&self) -> bool {
3028 self.message.body.has(tag::SETTL_CURR_FX_RATE_CALC)
3029 }
3030
3031
3032
3033
3034 pub fn set_settl_currency(&mut self, v: String) {
3036 self.message.body.set_field(tag::SETTL_CURRENCY, FIXString::from(v));
3037 }
3038
3039 pub fn get_settl_currency(&self) -> Result<String, MessageRejectErrorEnum> {
3041 let mut fld = field::SettlCurrencyField::new(String::new());
3042 self.message.body.get_field(tag::SETTL_CURRENCY, &mut fld.0)?;
3043 Ok(fld.value().to_string())
3044 }
3045
3046
3047 pub fn has_settl_currency(&self) -> bool {
3049 self.message.body.has(tag::SETTL_CURRENCY)
3050 }
3051
3052
3053
3054
3055 pub fn set_settl_date(&mut self, v: String) {
3057 self.message.body.set_field(tag::SETTL_DATE, FIXString::from(v));
3058 }
3059
3060 pub fn get_settl_date(&self) -> Result<String, MessageRejectErrorEnum> {
3062 let mut fld = field::SettlDateField::new(String::new());
3063 self.message.body.get_field(tag::SETTL_DATE, &mut fld.0)?;
3064 Ok(fld.value().to_string())
3065 }
3066
3067
3068 pub fn has_settl_date(&self) -> bool {
3070 self.message.body.has(tag::SETTL_DATE)
3071 }
3072
3073
3074
3075
3076 pub fn set_settl_delivery_type(&mut self, v: isize) {
3078 self.message.body.set_field(tag::SETTL_DELIVERY_TYPE, fixer::fix_int::FIXInt::from(v));
3079 }
3080
3081 pub fn get_settl_delivery_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3083 let mut fld = field::SettlDeliveryTypeField::new(0);
3084 self.message.body.get_field(tag::SETTL_DELIVERY_TYPE, &mut fld.0)?;
3085 Ok(fld.value())
3086 }
3087
3088
3089 pub fn has_settl_delivery_type(&self) -> bool {
3091 self.message.body.has(tag::SETTL_DELIVERY_TYPE)
3092 }
3093
3094
3095
3096
3097 pub fn set_settl_method(&mut self, v: String) {
3099 self.message.body.set_field(tag::SETTL_METHOD, FIXString::from(v));
3100 }
3101
3102 pub fn get_settl_method(&self) -> Result<String, MessageRejectErrorEnum> {
3104 let mut fld = field::SettlMethodField::new(String::new());
3105 self.message.body.get_field(tag::SETTL_METHOD, &mut fld.0)?;
3106 Ok(fld.value().to_string())
3107 }
3108
3109
3110 pub fn has_settl_method(&self) -> bool {
3112 self.message.body.has(tag::SETTL_METHOD)
3113 }
3114
3115
3116
3117
3118 pub fn set_settl_type(&mut self, v: String) {
3120 self.message.body.set_field(tag::SETTL_TYPE, FIXString::from(v));
3121 }
3122
3123 pub fn get_settl_type(&self) -> Result<String, MessageRejectErrorEnum> {
3125 let mut fld = field::SettlTypeField::new(String::new());
3126 self.message.body.get_field(tag::SETTL_TYPE, &mut fld.0)?;
3127 Ok(fld.value().to_string())
3128 }
3129
3130
3131 pub fn has_settl_type(&self) -> bool {
3133 self.message.body.has(tag::SETTL_TYPE)
3134 }
3135
3136
3137
3138
3139 pub fn set_settle_on_open_flag(&mut self, v: String) {
3141 self.message.body.set_field(tag::SETTLE_ON_OPEN_FLAG, FIXString::from(v));
3142 }
3143
3144 pub fn get_settle_on_open_flag(&self) -> Result<String, MessageRejectErrorEnum> {
3146 let mut fld = field::SettleOnOpenFlagField::new(String::new());
3147 self.message.body.get_field(tag::SETTLE_ON_OPEN_FLAG, &mut fld.0)?;
3148 Ok(fld.value().to_string())
3149 }
3150
3151
3152 pub fn has_settle_on_open_flag(&self) -> bool {
3154 self.message.body.has(tag::SETTLE_ON_OPEN_FLAG)
3155 }
3156
3157
3158
3159
3160 pub fn set_shared_commission(&mut self, val: Decimal, scale: i32) {
3162 self.message.body.set_field(tag::SHARED_COMMISSION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3163 }
3164
3165 pub fn get_shared_commission(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3167 let mut fld = field::SharedCommissionField::new(Decimal::ZERO, 0);
3168 self.message.body.get_field(tag::SHARED_COMMISSION, &mut fld.0)?;
3169 Ok(fld.value())
3170 }
3171
3172
3173 pub fn has_shared_commission(&self) -> bool {
3175 self.message.body.has(tag::SHARED_COMMISSION)
3176 }
3177
3178
3179
3180
3181 pub fn set_side(&mut self, v: String) {
3183 self.message.body.set_field(tag::SIDE, FIXString::from(v));
3184 }
3185
3186 pub fn get_side(&self) -> Result<String, MessageRejectErrorEnum> {
3188 let mut fld = field::SideField::new(String::new());
3189 self.message.body.get_field(tag::SIDE, &mut fld.0)?;
3190 Ok(fld.value().to_string())
3191 }
3192
3193
3194 pub fn has_side(&self) -> bool {
3196 self.message.body.has(tag::SIDE)
3197 }
3198
3199
3200
3201
3202 pub fn set_spread(&mut self, val: Decimal, scale: i32) {
3204 self.message.body.set_field(tag::SPREAD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3205 }
3206
3207 pub fn get_spread(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3209 let mut fld = field::SpreadField::new(Decimal::ZERO, 0);
3210 self.message.body.get_field(tag::SPREAD, &mut fld.0)?;
3211 Ok(fld.value())
3212 }
3213
3214
3215 pub fn has_spread(&self) -> bool {
3217 self.message.body.has(tag::SPREAD)
3218 }
3219
3220
3221
3222
3223 pub fn set_stand_inst_db_id(&mut self, v: String) {
3225 self.message.body.set_field(tag::STAND_INST_DB_ID, FIXString::from(v));
3226 }
3227
3228 pub fn get_stand_inst_db_id(&self) -> Result<String, MessageRejectErrorEnum> {
3230 let mut fld = field::StandInstDbIDField::new(String::new());
3231 self.message.body.get_field(tag::STAND_INST_DB_ID, &mut fld.0)?;
3232 Ok(fld.value().to_string())
3233 }
3234
3235
3236 pub fn has_stand_inst_db_id(&self) -> bool {
3238 self.message.body.has(tag::STAND_INST_DB_ID)
3239 }
3240
3241
3242
3243
3244 pub fn set_stand_inst_db_name(&mut self, v: String) {
3246 self.message.body.set_field(tag::STAND_INST_DB_NAME, FIXString::from(v));
3247 }
3248
3249 pub fn get_stand_inst_db_name(&self) -> Result<String, MessageRejectErrorEnum> {
3251 let mut fld = field::StandInstDbNameField::new(String::new());
3252 self.message.body.get_field(tag::STAND_INST_DB_NAME, &mut fld.0)?;
3253 Ok(fld.value().to_string())
3254 }
3255
3256
3257 pub fn has_stand_inst_db_name(&self) -> bool {
3259 self.message.body.has(tag::STAND_INST_DB_NAME)
3260 }
3261
3262
3263
3264
3265 pub fn set_stand_inst_db_type(&mut self, v: isize) {
3267 self.message.body.set_field(tag::STAND_INST_DB_TYPE, fixer::fix_int::FIXInt::from(v));
3268 }
3269
3270 pub fn get_stand_inst_db_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3272 let mut fld = field::StandInstDbTypeField::new(0);
3273 self.message.body.get_field(tag::STAND_INST_DB_TYPE, &mut fld.0)?;
3274 Ok(fld.value())
3275 }
3276
3277
3278 pub fn has_stand_inst_db_type(&self) -> bool {
3280 self.message.body.has(tag::STAND_INST_DB_TYPE)
3281 }
3282
3283
3284
3285
3286 pub fn set_start_cash(&mut self, val: Decimal, scale: i32) {
3288 self.message.body.set_field(tag::START_CASH, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3289 }
3290
3291 pub fn get_start_cash(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3293 let mut fld = field::StartCashField::new(Decimal::ZERO, 0);
3294 self.message.body.get_field(tag::START_CASH, &mut fld.0)?;
3295 Ok(fld.value())
3296 }
3297
3298
3299 pub fn has_start_cash(&self) -> bool {
3301 self.message.body.has(tag::START_CASH)
3302 }
3303
3304
3305
3306
3307 pub fn set_start_date(&mut self, v: String) {
3309 self.message.body.set_field(tag::START_DATE, FIXString::from(v));
3310 }
3311
3312 pub fn get_start_date(&self) -> Result<String, MessageRejectErrorEnum> {
3314 let mut fld = field::StartDateField::new(String::new());
3315 self.message.body.get_field(tag::START_DATE, &mut fld.0)?;
3316 Ok(fld.value().to_string())
3317 }
3318
3319
3320 pub fn has_start_date(&self) -> bool {
3322 self.message.body.has(tag::START_DATE)
3323 }
3324
3325
3326
3327
3328 pub fn set_state_or_province_of_issue(&mut self, v: String) {
3330 self.message.body.set_field(tag::STATE_OR_PROVINCE_OF_ISSUE, FIXString::from(v));
3331 }
3332
3333 pub fn get_state_or_province_of_issue(&self) -> Result<String, MessageRejectErrorEnum> {
3335 let mut fld = field::StateOrProvinceOfIssueField::new(String::new());
3336 self.message.body.get_field(tag::STATE_OR_PROVINCE_OF_ISSUE, &mut fld.0)?;
3337 Ok(fld.value().to_string())
3338 }
3339
3340
3341 pub fn has_state_or_province_of_issue(&self) -> bool {
3343 self.message.body.has(tag::STATE_OR_PROVINCE_OF_ISSUE)
3344 }
3345
3346
3347
3348
3349 pub fn set_strike_currency(&mut self, v: String) {
3351 self.message.body.set_field(tag::STRIKE_CURRENCY, FIXString::from(v));
3352 }
3353
3354 pub fn get_strike_currency(&self) -> Result<String, MessageRejectErrorEnum> {
3356 let mut fld = field::StrikeCurrencyField::new(String::new());
3357 self.message.body.get_field(tag::STRIKE_CURRENCY, &mut fld.0)?;
3358 Ok(fld.value().to_string())
3359 }
3360
3361
3362 pub fn has_strike_currency(&self) -> bool {
3364 self.message.body.has(tag::STRIKE_CURRENCY)
3365 }
3366
3367
3368
3369
3370 pub fn set_strike_multiplier(&mut self, val: Decimal, scale: i32) {
3372 self.message.body.set_field(tag::STRIKE_MULTIPLIER, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3373 }
3374
3375 pub fn get_strike_multiplier(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3377 let mut fld = field::StrikeMultiplierField::new(Decimal::ZERO, 0);
3378 self.message.body.get_field(tag::STRIKE_MULTIPLIER, &mut fld.0)?;
3379 Ok(fld.value())
3380 }
3381
3382
3383 pub fn has_strike_multiplier(&self) -> bool {
3385 self.message.body.has(tag::STRIKE_MULTIPLIER)
3386 }
3387
3388
3389
3390
3391 pub fn set_strike_price(&mut self, val: Decimal, scale: i32) {
3393 self.message.body.set_field(tag::STRIKE_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3394 }
3395
3396 pub fn get_strike_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3398 let mut fld = field::StrikePriceField::new(Decimal::ZERO, 0);
3399 self.message.body.get_field(tag::STRIKE_PRICE, &mut fld.0)?;
3400 Ok(fld.value())
3401 }
3402
3403
3404 pub fn has_strike_price(&self) -> bool {
3406 self.message.body.has(tag::STRIKE_PRICE)
3407 }
3408
3409
3410
3411
3412 pub fn set_strike_price_boundary_method(&mut self, v: isize) {
3414 self.message.body.set_field(tag::STRIKE_PRICE_BOUNDARY_METHOD, fixer::fix_int::FIXInt::from(v));
3415 }
3416
3417 pub fn get_strike_price_boundary_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3419 let mut fld = field::StrikePriceBoundaryMethodField::new(0);
3420 self.message.body.get_field(tag::STRIKE_PRICE_BOUNDARY_METHOD, &mut fld.0)?;
3421 Ok(fld.value())
3422 }
3423
3424
3425 pub fn has_strike_price_boundary_method(&self) -> bool {
3427 self.message.body.has(tag::STRIKE_PRICE_BOUNDARY_METHOD)
3428 }
3429
3430
3431
3432
3433 pub fn set_strike_price_boundary_precision(&mut self, val: Decimal, scale: i32) {
3435 self.message.body.set_field(tag::STRIKE_PRICE_BOUNDARY_PRECISION, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3436 }
3437
3438 pub fn get_strike_price_boundary_precision(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3440 let mut fld = field::StrikePriceBoundaryPrecisionField::new(Decimal::ZERO, 0);
3441 self.message.body.get_field(tag::STRIKE_PRICE_BOUNDARY_PRECISION, &mut fld.0)?;
3442 Ok(fld.value())
3443 }
3444
3445
3446 pub fn has_strike_price_boundary_precision(&self) -> bool {
3448 self.message.body.has(tag::STRIKE_PRICE_BOUNDARY_PRECISION)
3449 }
3450
3451
3452
3453
3454 pub fn set_strike_price_determination_method(&mut self, v: isize) {
3456 self.message.body.set_field(tag::STRIKE_PRICE_DETERMINATION_METHOD, fixer::fix_int::FIXInt::from(v));
3457 }
3458
3459 pub fn get_strike_price_determination_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3461 let mut fld = field::StrikePriceDeterminationMethodField::new(0);
3462 self.message.body.get_field(tag::STRIKE_PRICE_DETERMINATION_METHOD, &mut fld.0)?;
3463 Ok(fld.value())
3464 }
3465
3466
3467 pub fn has_strike_price_determination_method(&self) -> bool {
3469 self.message.body.has(tag::STRIKE_PRICE_DETERMINATION_METHOD)
3470 }
3471
3472
3473
3474
3475 pub fn set_strike_value(&mut self, val: Decimal, scale: i32) {
3477 self.message.body.set_field(tag::STRIKE_VALUE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3478 }
3479
3480 pub fn get_strike_value(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3482 let mut fld = field::StrikeValueField::new(Decimal::ZERO, 0);
3483 self.message.body.get_field(tag::STRIKE_VALUE, &mut fld.0)?;
3484 Ok(fld.value())
3485 }
3486
3487
3488 pub fn has_strike_value(&self) -> bool {
3490 self.message.body.has(tag::STRIKE_VALUE)
3491 }
3492
3493
3494
3495
3496 pub fn set_symbol(&mut self, v: String) {
3498 self.message.body.set_field(tag::SYMBOL, FIXString::from(v));
3499 }
3500
3501 pub fn get_symbol(&self) -> Result<String, MessageRejectErrorEnum> {
3503 let mut fld = field::SymbolField::new(String::new());
3504 self.message.body.get_field(tag::SYMBOL, &mut fld.0)?;
3505 Ok(fld.value().to_string())
3506 }
3507
3508
3509 pub fn has_symbol(&self) -> bool {
3511 self.message.body.has(tag::SYMBOL)
3512 }
3513
3514
3515
3516
3517 pub fn set_symbol_sfx(&mut self, v: String) {
3519 self.message.body.set_field(tag::SYMBOL_SFX, FIXString::from(v));
3520 }
3521
3522 pub fn get_symbol_sfx(&self) -> Result<String, MessageRejectErrorEnum> {
3524 let mut fld = field::SymbolSfxField::new(String::new());
3525 self.message.body.get_field(tag::SYMBOL_SFX, &mut fld.0)?;
3526 Ok(fld.value().to_string())
3527 }
3528
3529
3530 pub fn has_symbol_sfx(&self) -> bool {
3532 self.message.body.has(tag::SYMBOL_SFX)
3533 }
3534
3535
3536
3537
3538 pub fn set_termination_type(&mut self, v: isize) {
3540 self.message.body.set_field(tag::TERMINATION_TYPE, fixer::fix_int::FIXInt::from(v));
3541 }
3542
3543 pub fn get_termination_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3545 let mut fld = field::TerminationTypeField::new(0);
3546 self.message.body.get_field(tag::TERMINATION_TYPE, &mut fld.0)?;
3547 Ok(fld.value())
3548 }
3549
3550
3551 pub fn has_termination_type(&self) -> bool {
3553 self.message.body.has(tag::TERMINATION_TYPE)
3554 }
3555
3556
3557
3558
3559 pub fn set_text(&mut self, v: String) {
3561 self.message.body.set_field(tag::TEXT, FIXString::from(v));
3562 }
3563
3564 pub fn get_text(&self) -> Result<String, MessageRejectErrorEnum> {
3566 let mut fld = field::TextField::new(String::new());
3567 self.message.body.get_field(tag::TEXT, &mut fld.0)?;
3568 Ok(fld.value().to_string())
3569 }
3570
3571
3572 pub fn has_text(&self) -> bool {
3574 self.message.body.has(tag::TEXT)
3575 }
3576
3577
3578
3579
3580 pub fn set_time_unit(&mut self, v: String) {
3582 self.message.body.set_field(tag::TIME_UNIT, FIXString::from(v));
3583 }
3584
3585 pub fn get_time_unit(&self) -> Result<String, MessageRejectErrorEnum> {
3587 let mut fld = field::TimeUnitField::new(String::new());
3588 self.message.body.get_field(tag::TIME_UNIT, &mut fld.0)?;
3589 Ok(fld.value().to_string())
3590 }
3591
3592
3593 pub fn has_time_unit(&self) -> bool {
3595 self.message.body.has(tag::TIME_UNIT)
3596 }
3597
3598
3599
3600
3601 pub fn set_total_takedown(&mut self, val: Decimal, scale: i32) {
3603 self.message.body.set_field(tag::TOTAL_TAKEDOWN, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3604 }
3605
3606 pub fn get_total_takedown(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3608 let mut fld = field::TotalTakedownField::new(Decimal::ZERO, 0);
3609 self.message.body.get_field(tag::TOTAL_TAKEDOWN, &mut fld.0)?;
3610 Ok(fld.value())
3611 }
3612
3613
3614 pub fn has_total_takedown(&self) -> bool {
3616 self.message.body.has(tag::TOTAL_TAKEDOWN)
3617 }
3618
3619
3620
3621
3622 pub fn set_trade_date(&mut self, v: String) {
3624 self.message.body.set_field(tag::TRADE_DATE, FIXString::from(v));
3625 }
3626
3627 pub fn get_trade_date(&self) -> Result<String, MessageRejectErrorEnum> {
3629 let mut fld = field::TradeDateField::new(String::new());
3630 self.message.body.get_field(tag::TRADE_DATE, &mut fld.0)?;
3631 Ok(fld.value().to_string())
3632 }
3633
3634
3635 pub fn has_trade_date(&self) -> bool {
3637 self.message.body.has(tag::TRADE_DATE)
3638 }
3639
3640
3641
3642
3643 pub fn set_transact_time(&mut self, v: Timestamp) {
3645 self.message.body.set_field(tag::TRANSACT_TIME, fixer::fix_utc_timestamp::FIXUTCTimestamp {
3646 time: v,
3647 precision: fixer::fix_utc_timestamp::TimestampPrecision::Millis,
3648 });
3649 }
3650
3651 pub fn get_transact_time(&self) -> Result<Timestamp, MessageRejectErrorEnum> {
3653 let mut fld = field::TransactTimeField::new(Timestamp::UNIX_EPOCH);
3654 self.message.body.get_field(tag::TRANSACT_TIME, &mut fld.0)?;
3655 Ok(fld.value())
3656 }
3657
3658
3659 pub fn has_transact_time(&self) -> bool {
3661 self.message.body.has(tag::TRANSACT_TIME)
3662 }
3663
3664
3665
3666
3667 pub fn set_underlying_price_determination_method(&mut self, v: isize) {
3669 self.message.body.set_field(tag::UNDERLYING_PRICE_DETERMINATION_METHOD, fixer::fix_int::FIXInt::from(v));
3670 }
3671
3672 pub fn get_underlying_price_determination_method(&self) -> Result<isize, MessageRejectErrorEnum> {
3674 let mut fld = field::UnderlyingPriceDeterminationMethodField::new(0);
3675 self.message.body.get_field(tag::UNDERLYING_PRICE_DETERMINATION_METHOD, &mut fld.0)?;
3676 Ok(fld.value())
3677 }
3678
3679
3680 pub fn has_underlying_price_determination_method(&self) -> bool {
3682 self.message.body.has(tag::UNDERLYING_PRICE_DETERMINATION_METHOD)
3683 }
3684
3685
3686
3687
3688 pub fn set_unit_of_measure(&mut self, v: String) {
3690 self.message.body.set_field(tag::UNIT_OF_MEASURE, FIXString::from(v));
3691 }
3692
3693 pub fn get_unit_of_measure(&self) -> Result<String, MessageRejectErrorEnum> {
3695 let mut fld = field::UnitOfMeasureField::new(String::new());
3696 self.message.body.get_field(tag::UNIT_OF_MEASURE, &mut fld.0)?;
3697 Ok(fld.value().to_string())
3698 }
3699
3700
3701 pub fn has_unit_of_measure(&self) -> bool {
3703 self.message.body.has(tag::UNIT_OF_MEASURE)
3704 }
3705
3706
3707
3708
3709 pub fn set_unit_of_measure_qty(&mut self, val: Decimal, scale: i32) {
3711 self.message.body.set_field(tag::UNIT_OF_MEASURE_QTY, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3712 }
3713
3714 pub fn get_unit_of_measure_qty(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3716 let mut fld = field::UnitOfMeasureQtyField::new(Decimal::ZERO, 0);
3717 self.message.body.get_field(tag::UNIT_OF_MEASURE_QTY, &mut fld.0)?;
3718 Ok(fld.value())
3719 }
3720
3721
3722 pub fn has_unit_of_measure_qty(&self) -> bool {
3724 self.message.body.has(tag::UNIT_OF_MEASURE_QTY)
3725 }
3726
3727
3728
3729
3730 pub fn set_valuation_method(&mut self, v: String) {
3732 self.message.body.set_field(tag::VALUATION_METHOD, FIXString::from(v));
3733 }
3734
3735 pub fn get_valuation_method(&self) -> Result<String, MessageRejectErrorEnum> {
3737 let mut fld = field::ValuationMethodField::new(String::new());
3738 self.message.body.get_field(tag::VALUATION_METHOD, &mut fld.0)?;
3739 Ok(fld.value().to_string())
3740 }
3741
3742
3743 pub fn has_valuation_method(&self) -> bool {
3745 self.message.body.has(tag::VALUATION_METHOD)
3746 }
3747
3748
3749
3750
3751 pub fn set_yield(&mut self, val: Decimal, scale: i32) {
3753 self.message.body.set_field(tag::YIELD, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3754 }
3755
3756 pub fn get_yield(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3758 let mut fld = field::YieldField::new(Decimal::ZERO, 0);
3759 self.message.body.get_field(tag::YIELD, &mut fld.0)?;
3760 Ok(fld.value())
3761 }
3762
3763
3764 pub fn has_yield(&self) -> bool {
3766 self.message.body.has(tag::YIELD)
3767 }
3768
3769
3770
3771
3772 pub fn set_yield_calc_date(&mut self, v: String) {
3774 self.message.body.set_field(tag::YIELD_CALC_DATE, FIXString::from(v));
3775 }
3776
3777 pub fn get_yield_calc_date(&self) -> Result<String, MessageRejectErrorEnum> {
3779 let mut fld = field::YieldCalcDateField::new(String::new());
3780 self.message.body.get_field(tag::YIELD_CALC_DATE, &mut fld.0)?;
3781 Ok(fld.value().to_string())
3782 }
3783
3784
3785 pub fn has_yield_calc_date(&self) -> bool {
3787 self.message.body.has(tag::YIELD_CALC_DATE)
3788 }
3789
3790
3791
3792
3793 pub fn set_yield_redemption_date(&mut self, v: String) {
3795 self.message.body.set_field(tag::YIELD_REDEMPTION_DATE, FIXString::from(v));
3796 }
3797
3798 pub fn get_yield_redemption_date(&self) -> Result<String, MessageRejectErrorEnum> {
3800 let mut fld = field::YieldRedemptionDateField::new(String::new());
3801 self.message.body.get_field(tag::YIELD_REDEMPTION_DATE, &mut fld.0)?;
3802 Ok(fld.value().to_string())
3803 }
3804
3805
3806 pub fn has_yield_redemption_date(&self) -> bool {
3808 self.message.body.has(tag::YIELD_REDEMPTION_DATE)
3809 }
3810
3811
3812
3813
3814 pub fn set_yield_redemption_price(&mut self, val: Decimal, scale: i32) {
3816 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE, fixer::fix_decimal::FIXDecimal { decimal: val, scale });
3817 }
3818
3819 pub fn get_yield_redemption_price(&self) -> Result<Decimal, MessageRejectErrorEnum> {
3821 let mut fld = field::YieldRedemptionPriceField::new(Decimal::ZERO, 0);
3822 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE, &mut fld.0)?;
3823 Ok(fld.value())
3824 }
3825
3826
3827 pub fn has_yield_redemption_price(&self) -> bool {
3829 self.message.body.has(tag::YIELD_REDEMPTION_PRICE)
3830 }
3831
3832
3833
3834
3835 pub fn set_yield_redemption_price_type(&mut self, v: isize) {
3837 self.message.body.set_field(tag::YIELD_REDEMPTION_PRICE_TYPE, fixer::fix_int::FIXInt::from(v));
3838 }
3839
3840 pub fn get_yield_redemption_price_type(&self) -> Result<isize, MessageRejectErrorEnum> {
3842 let mut fld = field::YieldRedemptionPriceTypeField::new(0);
3843 self.message.body.get_field(tag::YIELD_REDEMPTION_PRICE_TYPE, &mut fld.0)?;
3844 Ok(fld.value())
3845 }
3846
3847
3848 pub fn has_yield_redemption_price_type(&self) -> bool {
3850 self.message.body.has(tag::YIELD_REDEMPTION_PRICE_TYPE)
3851 }
3852
3853
3854
3855
3856 pub fn set_yield_type(&mut self, v: String) {
3858 self.message.body.set_field(tag::YIELD_TYPE, FIXString::from(v));
3859 }
3860
3861 pub fn get_yield_type(&self) -> Result<String, MessageRejectErrorEnum> {
3863 let mut fld = field::YieldTypeField::new(String::new());
3864 self.message.body.get_field(tag::YIELD_TYPE, &mut fld.0)?;
3865 Ok(fld.value().to_string())
3866 }
3867
3868
3869 pub fn has_yield_type(&self) -> bool {
3871 self.message.body.has(tag::YIELD_TYPE)
3872 }
3873
3874
3875}
3876
3877pub type RouteOut = fn(msg: Confirmation, session_id: SessionID) -> Result<(), MessageRejectErrorEnum>;
3879
3880pub type Route = (&'static str, &'static str, Box<dyn Fn(&Message, SessionID) -> Result<(), MessageRejectErrorEnum> + Send>);
3882
3883pub fn route(router: RouteOut) -> Route {
3885 let r = move |msg: &Message, session_id: SessionID| -> Result<(), MessageRejectErrorEnum> {
3886 router(Confirmation::from_message(msg.clone()), session_id)
3887 };
3888 ("9", "AK", Box::new(r))
3889}