odoo-addon-l10n-br-fiscal 16.0.11.5.0__py3-none-any.whl → 16.0.12.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of odoo-addon-l10n-br-fiscal might be problematic. Click here for more details.

@@ -222,6 +222,7 @@ class FiscalDocumentLineMixin(models.AbstractModel):
222
222
  compute="_compute_uot_id",
223
223
  store=True,
224
224
  readonly=False,
225
+ precompute=True,
225
226
  )
226
227
 
227
228
  fiscal_quantity = fields.Float(
@@ -326,6 +327,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
326
327
  comodel_name="l10n_br_fiscal.tax",
327
328
  string="Tax ISSQN",
328
329
  domain=[("tax_domain", "=", TAX_DOMAIN_ISSQN)],
330
+ compute="_compute_tax_fields",
331
+ store=True,
332
+ precompute=True,
333
+ readonly=False,
329
334
  )
330
335
 
331
336
  issqn_fg_city_id = fields.Many2one(
@@ -359,33 +364,89 @@ class FiscalDocumentLineMixin(models.AbstractModel):
359
364
  default=ISSQN_INCENTIVE_DEFAULT,
360
365
  )
361
366
 
362
- issqn_base = fields.Monetary(string="ISSQN Base")
367
+ issqn_base = fields.Monetary(
368
+ string="ISSQN Base",
369
+ compute="_compute_tax_fields",
370
+ store=True,
371
+ precompute=True,
372
+ readonly=False,
373
+ )
363
374
 
364
- issqn_percent = fields.Float(string="ISSQN %")
375
+ issqn_percent = fields.Float(
376
+ string="ISSQN %",
377
+ compute="_compute_tax_fields",
378
+ store=True,
379
+ precompute=True,
380
+ readonly=False,
381
+ )
365
382
 
366
- issqn_reduction = fields.Float(string="ISSQN % Reduction")
383
+ issqn_reduction = fields.Float(
384
+ string="ISSQN % Reduction",
385
+ compute="_compute_tax_fields",
386
+ store=True,
387
+ precompute=True,
388
+ readonly=False,
389
+ )
367
390
 
368
- issqn_value = fields.Monetary(string="ISSQN Value")
391
+ issqn_value = fields.Monetary(
392
+ string="ISSQN Value",
393
+ compute="_compute_tax_fields",
394
+ store=True,
395
+ precompute=True,
396
+ readonly=False,
397
+ )
369
398
 
370
399
  issqn_wh_tax_id = fields.Many2one(
371
400
  comodel_name="l10n_br_fiscal.tax",
372
401
  string="Tax ISSQN RET",
373
402
  domain=[("tax_domain", "=", TAX_DOMAIN_ISSQN_WH)],
403
+ compute="_compute_tax_fields",
404
+ store=True,
405
+ precompute=True,
406
+ readonly=False,
374
407
  )
375
408
 
376
- issqn_wh_base = fields.Monetary(string="ISSQN RET Base")
409
+ issqn_wh_base = fields.Monetary(
410
+ string="ISSQN RET Base",
411
+ compute="_compute_tax_fields",
412
+ store=True,
413
+ precompute=True,
414
+ readonly=False,
415
+ )
377
416
 
378
- issqn_wh_percent = fields.Float(string="ISSQN RET %")
417
+ issqn_wh_percent = fields.Float(
418
+ string="ISSQN RET %",
419
+ compute="_compute_tax_fields",
420
+ store=True,
421
+ precompute=True,
422
+ readonly=False,
423
+ )
379
424
 
380
- issqn_wh_reduction = fields.Float(string="ISSQN RET % Reduction")
425
+ issqn_wh_reduction = fields.Float(
426
+ string="ISSQN RET % Reduction",
427
+ compute="_compute_tax_fields",
428
+ store=True,
429
+ precompute=True,
430
+ readonly=False,
431
+ )
381
432
 
382
- issqn_wh_value = fields.Monetary(string="ISSQN RET Value")
433
+ issqn_wh_value = fields.Monetary(
434
+ string="ISSQN RET Value",
435
+ compute="_compute_tax_fields",
436
+ store=True,
437
+ precompute=True,
438
+ readonly=False,
439
+ )
383
440
 
384
441
  # ICMS Fields
385
442
  icms_tax_id = fields.Many2one(
386
443
  comodel_name="l10n_br_fiscal.tax",
387
444
  string="Tax ICMS",
388
445
  domain=[("tax_domain", "=", TAX_DOMAIN_ICMS)],
446
+ compute="_compute_tax_fields",
447
+ store=True,
448
+ precompute=True,
449
+ readonly=False,
389
450
  )
390
451
 
391
452
  icms_cst_id = fields.Many2one(
@@ -393,6 +454,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
393
454
  string="CST ICMS",
394
455
  domain="[('tax_domain', '=', {'1': 'icmssn', '2': 'icmssn', "
395
456
  "'3': 'icms'}.get(tax_framework))]",
457
+ compute="_compute_tax_fields",
458
+ store=True,
459
+ precompute=True,
460
+ readonly=False,
396
461
  )
397
462
 
398
463
  icms_cst_code = fields.Char(
@@ -420,6 +485,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
420
485
  selection=ICMS_BASE_TYPE,
421
486
  string="ICMS Base Type",
422
487
  default=ICMS_BASE_TYPE_DEFAULT,
488
+ compute="_compute_tax_fields",
489
+ store=True,
490
+ precompute=True,
491
+ readonly=False,
423
492
  )
424
493
 
425
494
  icms_origin = fields.Selection(
@@ -427,16 +496,40 @@ class FiscalDocumentLineMixin(models.AbstractModel):
427
496
  )
428
497
 
429
498
  # vBC - Valor da base de cálculo do ICMS
430
- icms_base = fields.Monetary(string="ICMS Base")
499
+ icms_base = fields.Monetary(
500
+ string="ICMS Base",
501
+ compute="_compute_tax_fields",
502
+ store=True,
503
+ precompute=True,
504
+ readonly=False,
505
+ )
431
506
 
432
507
  # pICMS - Alíquota do IMCS
433
- icms_percent = fields.Float(string="ICMS %")
508
+ icms_percent = fields.Float(
509
+ string="ICMS %",
510
+ compute="_compute_tax_fields",
511
+ store=True,
512
+ precompute=True,
513
+ readonly=False,
514
+ )
434
515
 
435
516
  # pRedBC - Percentual de redução do ICMS
436
- icms_reduction = fields.Float(string="ICMS % Reduction")
517
+ icms_reduction = fields.Float(
518
+ string="ICMS % Reduction",
519
+ compute="_compute_tax_fields",
520
+ store=True,
521
+ precompute=True,
522
+ readonly=False,
523
+ )
437
524
 
438
525
  # vICMS - Valor do ICMS
439
- icms_value = fields.Monetary(string="ICMS Value")
526
+ icms_value = fields.Monetary(
527
+ string="ICMS Value",
528
+ compute="_compute_tax_fields",
529
+ store=True,
530
+ precompute=True,
531
+ readonly=False,
532
+ )
440
533
 
441
534
  # vICMSSubstituto - Valor do ICMS cobrado em operação anterior
442
535
  icms_substitute = fields.Monetary(
@@ -450,13 +543,23 @@ class FiscalDocumentLineMixin(models.AbstractModel):
450
543
  )
451
544
 
452
545
  # vICMSDeson - Valor do ICMS desonerado
453
- icms_relief_value = fields.Monetary(string="ICMS Relief Value")
546
+ icms_relief_value = fields.Monetary(
547
+ string="ICMS Relief Value",
548
+ compute="_compute_tax_fields",
549
+ store=True,
550
+ precompute=True,
551
+ readonly=False,
552
+ )
454
553
 
455
554
  # ICMS ST Fields
456
555
  icmsst_tax_id = fields.Many2one(
457
556
  comodel_name="l10n_br_fiscal.tax",
458
557
  string="Tax ICMS ST",
459
558
  domain=[("tax_domain", "=", TAX_DOMAIN_ICMS_ST)],
559
+ compute="_compute_tax_fields",
560
+ store=True,
561
+ precompute=True,
562
+ readonly=False,
460
563
  )
461
564
 
462
565
  # modBCST - Modalidade de determinação da BC do ICMS ST
@@ -464,22 +567,56 @@ class FiscalDocumentLineMixin(models.AbstractModel):
464
567
  selection=ICMS_ST_BASE_TYPE,
465
568
  string="ICMS ST Base Type",
466
569
  default=ICMS_ST_BASE_TYPE_DEFAULT,
570
+ compute="_compute_tax_fields",
571
+ store=True,
572
+ precompute=True,
573
+ readonly=False,
467
574
  )
468
575
 
469
576
  # pMVAST - Percentual da margem de valor Adicionado do ICMS ST
470
- icmsst_mva_percent = fields.Float(string="ICMS ST MVA %")
577
+ icmsst_mva_percent = fields.Float(
578
+ string="ICMS ST MVA %",
579
+ compute="_compute_tax_fields",
580
+ store=True,
581
+ precompute=True,
582
+ readonly=False,
583
+ )
471
584
 
472
585
  # pRedBCST - Percentual da Redução de BC do ICMS ST
473
- icmsst_reduction = fields.Float(string="ICMS ST % Reduction")
586
+ icmsst_reduction = fields.Float(
587
+ string="ICMS ST % Reduction",
588
+ compute="_compute_tax_fields",
589
+ store=True,
590
+ precompute=True,
591
+ readonly=False,
592
+ )
474
593
 
475
594
  # vBCST - Valor da BC do ICMS ST
476
- icmsst_base = fields.Monetary(string="ICMS ST Base")
595
+ icmsst_base = fields.Monetary(
596
+ string="ICMS ST Base",
597
+ compute="_compute_tax_fields",
598
+ store=True,
599
+ precompute=True,
600
+ readonly=False,
601
+ )
477
602
 
478
603
  # pICMSST - Alíquota do imposto do ICMS ST
479
- icmsst_percent = fields.Float(string="ICMS ST %")
604
+ icmsst_percent = fields.Float(
605
+ string="ICMS ST %",
606
+ compute="_compute_tax_fields",
607
+ store=True,
608
+ precompute=True,
609
+ readonly=False,
610
+ )
480
611
 
481
612
  # vICMSST - Valor do ICMS ST
482
- icmsst_value = fields.Monetary(string="ICMS ST Value")
613
+ icmsst_value = fields.Monetary(
614
+ string="ICMS ST Value",
615
+ compute="_compute_tax_fields",
616
+ store=True,
617
+ precompute=True,
618
+ readonly=False,
619
+ )
483
620
 
484
621
  # vBCSTRet - Valor da base de cálculo do ICMS ST retido
485
622
  icmsst_wh_base = fields.Monetary(string="ICMS ST WH Base")
@@ -495,58 +632,134 @@ class FiscalDocumentLineMixin(models.AbstractModel):
495
632
  comodel_name="l10n_br_fiscal.tax",
496
633
  string="Tax ICMS FCP",
497
634
  domain=[("tax_domain", "=", TAX_DOMAIN_ICMS_FCP)],
635
+ compute="_compute_tax_fields",
636
+ store=True,
637
+ precompute=True,
638
+ readonly=False,
498
639
  )
499
640
 
500
641
  # vBCFCPUFDest
501
642
  icmsfcp_base = fields.Monetary(
502
643
  string="ICMS FCP Base",
644
+ compute="_compute_tax_fields",
645
+ store=True,
646
+ precompute=True,
647
+ readonly=False,
503
648
  )
504
649
 
505
650
  # pFCPUFDest - Percentual do ICMS relativo ao Fundo de
506
651
  # Combate à Pobreza (FCP) na UF de destino
507
- icmsfcp_percent = fields.Float(string="ICMS FCP %")
652
+ icmsfcp_percent = fields.Float(
653
+ string="ICMS FCP %",
654
+ compute="_compute_tax_fields",
655
+ store=True,
656
+ precompute=True,
657
+ readonly=False,
658
+ )
508
659
 
509
660
  # vFCPUFDest - Valor do ICMS relativo ao Fundo
510
661
  # de Combate à Pobreza (FCP) da UF de destino
511
- icmsfcp_value = fields.Monetary(string="ICMS FCP Value")
662
+ icmsfcp_value = fields.Monetary(
663
+ string="ICMS FCP Value",
664
+ compute="_compute_tax_fields",
665
+ store=True,
666
+ precompute=True,
667
+ readonly=False,
668
+ )
512
669
 
513
670
  # ICMS FCP ST Fields
514
671
  icmsfcpst_tax_id = fields.Many2one(
515
672
  comodel_name="l10n_br_fiscal.tax",
516
673
  string="Tax ICMS FCP ST",
517
674
  domain=[("tax_domain", "=", TAX_DOMAIN_ICMS_FCP_ST)],
675
+ compute="_compute_tax_fields",
676
+ store=True,
677
+ precompute=True,
678
+ readonly=False,
518
679
  )
519
680
 
520
681
  # vBCFCPST
521
682
  icmsfcpst_base = fields.Monetary(
522
683
  string="ICMS FCP ST Base",
684
+ compute="_compute_tax_fields",
685
+ store=True,
686
+ precompute=True,
687
+ readonly=False,
523
688
  )
524
689
 
525
690
  # pFCPST - Percentual do FCP ST
526
- icmsfcpst_percent = fields.Float(string="ICMS FCP ST %")
691
+ icmsfcpst_percent = fields.Float(
692
+ string="ICMS FCP ST %",
693
+ compute="_compute_tax_fields",
694
+ store=True,
695
+ precompute=True,
696
+ readonly=False,
697
+ )
527
698
 
528
699
  # vFCPST - Valor do ICMS relativo ao
529
700
  # Fundo de Combate à Pobreza (FCP) por Substituição Tributária
530
- icmsfcpst_value = fields.Monetary(string="ICMS FCP ST Value")
701
+ icmsfcpst_value = fields.Monetary(
702
+ string="ICMS FCP ST Value",
703
+ compute="_compute_tax_fields",
704
+ store=True,
705
+ precompute=True,
706
+ readonly=False,
707
+ )
531
708
 
532
709
  # ICMS DIFAL Fields
533
710
  # vBCUFDest - Valor da BC do ICMS na UF de destino
534
- icms_destination_base = fields.Monetary(string="ICMS Destination Base")
711
+ icms_destination_base = fields.Monetary(
712
+ string="ICMS Destination Base",
713
+ compute="_compute_tax_fields",
714
+ store=True,
715
+ precompute=True,
716
+ readonly=False,
717
+ )
535
718
 
536
719
  # pICMSUFDest - Alíquota interna da UF de destino
537
- icms_origin_percent = fields.Float(string="ICMS Internal %")
720
+ icms_origin_percent = fields.Float(
721
+ string="ICMS Internal %",
722
+ compute="_compute_tax_fields",
723
+ store=True,
724
+ precompute=True,
725
+ readonly=False,
726
+ )
538
727
 
539
728
  # pICMSInter - Alíquota interestadual das UF envolvidas
540
- icms_destination_percent = fields.Float(string="ICMS External %")
729
+ icms_destination_percent = fields.Float(
730
+ string="ICMS External %",
731
+ compute="_compute_tax_fields",
732
+ store=True,
733
+ precompute=True,
734
+ readonly=False,
735
+ )
541
736
 
542
737
  # pICMSInterPart - Percentual provisório de partilha do ICMS Interestadual
543
- icms_sharing_percent = fields.Float(string="ICMS Sharing %")
738
+ icms_sharing_percent = fields.Float(
739
+ string="ICMS Sharing %",
740
+ compute="_compute_tax_fields",
741
+ store=True,
742
+ precompute=True,
743
+ readonly=False,
744
+ )
544
745
 
545
746
  # vICMSUFRemet - Valor do ICMS Interestadual para a UF do remetente
546
- icms_origin_value = fields.Monetary(string="ICMS Origin Value")
747
+ icms_origin_value = fields.Monetary(
748
+ string="ICMS Origin Value",
749
+ compute="_compute_tax_fields",
750
+ store=True,
751
+ precompute=True,
752
+ readonly=False,
753
+ )
547
754
 
548
755
  # vICMSUFDest - Valor do ICMS Interestadual para a UF de destino
549
- icms_destination_value = fields.Monetary(string="ICMS Dest. Value")
756
+ icms_destination_value = fields.Monetary(
757
+ string="ICMS Dest. Value",
758
+ compute="_compute_tax_fields",
759
+ store=True,
760
+ precompute=True,
761
+ readonly=False,
762
+ )
550
763
 
551
764
  # ICMS Simples Nacional Fields
552
765
  icmssn_range_id = fields.Many2one(
@@ -559,17 +772,45 @@ class FiscalDocumentLineMixin(models.AbstractModel):
559
772
  comodel_name="l10n_br_fiscal.tax",
560
773
  string="Tax ICMS SN",
561
774
  domain=[("tax_domain", "=", TAX_DOMAIN_ICMS_SN)],
775
+ compute="_compute_tax_fields",
776
+ store=True,
777
+ precompute=True,
778
+ readonly=False,
562
779
  )
563
780
 
564
- icmssn_base = fields.Monetary(string="ICMS SN Base")
781
+ icmssn_base = fields.Monetary(
782
+ string="ICMS SN Base",
783
+ compute="_compute_tax_fields",
784
+ store=True,
785
+ precompute=True,
786
+ readonly=False,
787
+ )
565
788
 
566
- icmssn_reduction = fields.Monetary(string="ICMS SN Reduction")
789
+ icmssn_reduction = fields.Monetary(
790
+ string="ICMS SN Reduction",
791
+ compute="_compute_tax_fields",
792
+ store=True,
793
+ precompute=True,
794
+ readonly=False,
795
+ )
567
796
 
568
797
  # pCredICMSSN - Alíquota aplicável de cálculo do crédito (Simples Nacional)
569
- icmssn_percent = fields.Float(string="ICMS SN %")
798
+ icmssn_percent = fields.Float(
799
+ string="ICMS SN %",
800
+ compute="_compute_tax_fields",
801
+ store=True,
802
+ precompute=True,
803
+ readonly=False,
804
+ )
570
805
 
571
806
  # vCredICMSSN - Valor do crédito do ICMS que pode ser aproveitado
572
- icmssn_credit_value = fields.Monetary(string="ICMS SN Credit")
807
+ icmssn_credit_value = fields.Monetary(
808
+ string="ICMS SN Credit",
809
+ compute="_compute_tax_fields",
810
+ store=True,
811
+ precompute=True,
812
+ readonly=False,
813
+ )
573
814
 
574
815
  # ICMS COBRADO ANTERIORMENTE POR ST
575
816
  # vBCFCPSTRet - Valor da base de cálculo do FCP retido anteriormente
@@ -598,12 +839,20 @@ class FiscalDocumentLineMixin(models.AbstractModel):
598
839
  comodel_name="l10n_br_fiscal.tax",
599
840
  string="Tax IPI",
600
841
  domain=[("tax_domain", "=", TAX_DOMAIN_IPI)],
842
+ compute="_compute_tax_fields",
843
+ store=True,
844
+ precompute=True,
845
+ readonly=False,
601
846
  )
602
847
 
603
848
  ipi_cst_id = fields.Many2one(
604
849
  comodel_name="l10n_br_fiscal.cst",
605
850
  string="CST IPI",
606
851
  domain="[('cst_type', '=', fiscal_operation_type),('tax_domain', '=', 'ipi')]",
852
+ compute="_compute_tax_fields",
853
+ store=True,
854
+ precompute=True,
855
+ readonly=False,
607
856
  )
608
857
 
609
858
  ipi_cst_code = fields.Char(
@@ -611,16 +860,46 @@ class FiscalDocumentLineMixin(models.AbstractModel):
611
860
  )
612
861
 
613
862
  ipi_base_type = fields.Selection(
614
- selection=TAX_BASE_TYPE, string="IPI Base Type", default=TAX_BASE_TYPE_PERCENT
863
+ selection=TAX_BASE_TYPE,
864
+ string="IPI Base Type",
865
+ default=TAX_BASE_TYPE_PERCENT,
866
+ compute="_compute_tax_fields",
867
+ store=True,
868
+ precompute=True,
869
+ readonly=False,
615
870
  )
616
871
 
617
- ipi_base = fields.Monetary(string="IPI Base")
872
+ ipi_base = fields.Monetary(
873
+ string="IPI Base",
874
+ compute="_compute_tax_fields",
875
+ store=True,
876
+ precompute=True,
877
+ readonly=False,
878
+ )
618
879
 
619
- ipi_percent = fields.Float(string="IPI %")
880
+ ipi_percent = fields.Float(
881
+ string="IPI %",
882
+ compute="_compute_tax_fields",
883
+ store=True,
884
+ precompute=True,
885
+ readonly=False,
886
+ )
620
887
 
621
- ipi_reduction = fields.Float(string="IPI % Reduction")
888
+ ipi_reduction = fields.Float(
889
+ string="IPI % Reduction",
890
+ compute="_compute_tax_fields",
891
+ store=True,
892
+ precompute=True,
893
+ readonly=False,
894
+ )
622
895
 
623
- ipi_value = fields.Monetary(string="IPI Value")
896
+ ipi_value = fields.Monetary(
897
+ string="IPI Value",
898
+ compute="_compute_tax_fields",
899
+ store=True,
900
+ precompute=True,
901
+ readonly=False,
902
+ )
624
903
 
625
904
  ipi_guideline_id = fields.Many2one(
626
905
  comodel_name="l10n_br_fiscal.tax.ipi.guideline",
@@ -642,13 +921,35 @@ class FiscalDocumentLineMixin(models.AbstractModel):
642
921
  comodel_name="l10n_br_fiscal.tax",
643
922
  string="Tax II",
644
923
  domain=[("tax_domain", "=", TAX_DOMAIN_II)],
924
+ compute="_compute_tax_fields",
925
+ store=True,
926
+ precompute=True,
927
+ readonly=False,
645
928
  )
646
929
 
647
- ii_base = fields.Monetary(string="II Base")
930
+ ii_base = fields.Monetary(
931
+ string="II Base",
932
+ compute="_compute_tax_fields",
933
+ store=True,
934
+ precompute=True,
935
+ readonly=False,
936
+ )
648
937
 
649
- ii_percent = fields.Float(string="II %")
938
+ ii_percent = fields.Float(
939
+ string="II %",
940
+ compute="_compute_tax_fields",
941
+ store=True,
942
+ precompute=True,
943
+ readonly=False,
944
+ )
650
945
 
651
- ii_value = fields.Monetary(string="II Value")
946
+ ii_value = fields.Monetary(
947
+ string="II Value",
948
+ compute="_compute_tax_fields",
949
+ store=True,
950
+ precompute=True,
951
+ readonly=False,
952
+ )
652
953
 
653
954
  ii_iof_value = fields.Monetary(string="IOF Value")
654
955
 
@@ -660,6 +961,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
660
961
  comodel_name="l10n_br_fiscal.tax",
661
962
  string="Tax COFINS",
662
963
  domain=[("tax_domain", "=", TAX_DOMAIN_COFINS)],
964
+ compute="_compute_tax_fields",
965
+ store=True,
966
+ precompute=True,
967
+ readonly=False,
663
968
  )
664
969
 
665
970
  cofins_cst_id = fields.Many2one(
@@ -668,6 +973,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
668
973
  domain="['|', ('cst_type', '=', fiscal_operation_type),"
669
974
  "('cst_type', '=', 'all'),"
670
975
  "('tax_domain', '=', 'cofins')]",
976
+ compute="_compute_tax_fields",
977
+ store=True,
978
+ precompute=True,
979
+ readonly=False,
671
980
  )
672
981
 
673
982
  cofins_cst_code = fields.Char(
@@ -678,15 +987,43 @@ class FiscalDocumentLineMixin(models.AbstractModel):
678
987
  selection=TAX_BASE_TYPE,
679
988
  string="COFINS Base Type",
680
989
  default=TAX_BASE_TYPE_PERCENT,
990
+ compute="_compute_tax_fields",
991
+ store=True,
992
+ precompute=True,
993
+ readonly=False,
681
994
  )
682
995
 
683
- cofins_base = fields.Monetary(string="COFINS Base")
996
+ cofins_base = fields.Monetary(
997
+ string="COFINS Base",
998
+ compute="_compute_tax_fields",
999
+ store=True,
1000
+ precompute=True,
1001
+ readonly=False,
1002
+ )
684
1003
 
685
- cofins_percent = fields.Float(string="COFINS %")
1004
+ cofins_percent = fields.Float(
1005
+ string="COFINS %",
1006
+ compute="_compute_tax_fields",
1007
+ store=True,
1008
+ precompute=True,
1009
+ readonly=False,
1010
+ )
686
1011
 
687
- cofins_reduction = fields.Float(string="COFINS % Reduction")
1012
+ cofins_reduction = fields.Float(
1013
+ string="COFINS % Reduction",
1014
+ compute="_compute_tax_fields",
1015
+ store=True,
1016
+ precompute=True,
1017
+ readonly=False,
1018
+ )
688
1019
 
689
- cofins_value = fields.Monetary(string="COFINS Value")
1020
+ cofins_value = fields.Monetary(
1021
+ string="COFINS Value",
1022
+ compute="_compute_tax_fields",
1023
+ store=True,
1024
+ precompute=True,
1025
+ readonly=False,
1026
+ )
690
1027
 
691
1028
  cofins_base_id = fields.Many2one(
692
1029
  comodel_name="l10n_br_fiscal.tax.pis.cofins.base", string="COFINS Base Code"
@@ -701,6 +1038,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
701
1038
  comodel_name="l10n_br_fiscal.tax",
702
1039
  string="Tax COFINS ST",
703
1040
  domain=[("tax_domain", "=", TAX_DOMAIN_COFINS_ST)],
1041
+ compute="_compute_tax_fields",
1042
+ store=True,
1043
+ precompute=True,
1044
+ readonly=False,
704
1045
  )
705
1046
 
706
1047
  cofinsst_cst_id = fields.Many2one(
@@ -709,6 +1050,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
709
1050
  domain="['|', ('cst_type', '=', fiscal_operation_type),"
710
1051
  "('cst_type', '=', 'all'),"
711
1052
  "('tax_domain', '=', 'cofinsst')]",
1053
+ compute="_compute_tax_fields",
1054
+ store=True,
1055
+ precompute=True,
1056
+ readonly=False,
712
1057
  )
713
1058
 
714
1059
  cofinsst_cst_code = fields.Char(
@@ -719,41 +1064,105 @@ class FiscalDocumentLineMixin(models.AbstractModel):
719
1064
  selection=TAX_BASE_TYPE,
720
1065
  string="COFINS ST Base Type",
721
1066
  default=TAX_BASE_TYPE_PERCENT,
1067
+ compute="_compute_tax_fields",
1068
+ store=True,
1069
+ precompute=True,
1070
+ readonly=False,
722
1071
  )
723
1072
 
724
- cofinsst_base = fields.Monetary(string="COFINS ST Base")
1073
+ cofinsst_base = fields.Monetary(
1074
+ string="COFINS ST Base",
1075
+ compute="_compute_tax_fields",
1076
+ store=True,
1077
+ precompute=True,
1078
+ readonly=False,
1079
+ )
725
1080
 
726
- cofinsst_percent = fields.Float(string="COFINS ST %")
1081
+ cofinsst_percent = fields.Float(
1082
+ string="COFINS ST %",
1083
+ compute="_compute_tax_fields",
1084
+ store=True,
1085
+ precompute=True,
1086
+ readonly=False,
1087
+ )
727
1088
 
728
- cofinsst_reduction = fields.Float(string="COFINS ST % Reduction")
1089
+ cofinsst_reduction = fields.Float(
1090
+ string="COFINS ST % Reduction",
1091
+ compute="_compute_tax_fields",
1092
+ store=True,
1093
+ precompute=True,
1094
+ readonly=False,
1095
+ )
729
1096
 
730
- cofinsst_value = fields.Monetary(string="COFINS ST Value")
1097
+ cofinsst_value = fields.Monetary(
1098
+ string="COFINS ST Value",
1099
+ compute="_compute_tax_fields",
1100
+ store=True,
1101
+ precompute=True,
1102
+ readonly=False,
1103
+ )
731
1104
 
732
1105
  cofins_wh_tax_id = fields.Many2one(
733
1106
  comodel_name="l10n_br_fiscal.tax",
734
1107
  string="Tax COFINS RET",
735
1108
  domain=[("tax_domain", "=", TAX_DOMAIN_COFINS_WH)],
1109
+ compute="_compute_tax_fields",
1110
+ store=True,
1111
+ precompute=True,
1112
+ readonly=False,
736
1113
  )
737
1114
 
738
1115
  cofins_wh_base_type = fields.Selection(
739
1116
  selection=TAX_BASE_TYPE,
740
1117
  string="COFINS WH Base Type",
741
1118
  default=TAX_BASE_TYPE_PERCENT,
1119
+ compute="_compute_tax_fields",
1120
+ store=True,
1121
+ precompute=True,
1122
+ readonly=False,
742
1123
  )
743
1124
 
744
- cofins_wh_base = fields.Monetary(string="COFINS RET Base")
1125
+ cofins_wh_base = fields.Monetary(
1126
+ string="COFINS RET Base",
1127
+ compute="_compute_tax_fields",
1128
+ store=True,
1129
+ precompute=True,
1130
+ readonly=False,
1131
+ )
745
1132
 
746
- cofins_wh_percent = fields.Float(string="COFINS RET %")
1133
+ cofins_wh_percent = fields.Float(
1134
+ string="COFINS RET %",
1135
+ compute="_compute_tax_fields",
1136
+ store=True,
1137
+ precompute=True,
1138
+ readonly=False,
1139
+ )
747
1140
 
748
- cofins_wh_reduction = fields.Float(string="COFINS RET % Reduction")
1141
+ cofins_wh_reduction = fields.Float(
1142
+ string="COFINS RET % Reduction",
1143
+ compute="_compute_tax_fields",
1144
+ store=True,
1145
+ precompute=True,
1146
+ readonly=False,
1147
+ )
749
1148
 
750
- cofins_wh_value = fields.Monetary(string="COFINS RET Value")
1149
+ cofins_wh_value = fields.Monetary(
1150
+ string="COFINS RET Value",
1151
+ compute="_compute_tax_fields",
1152
+ store=True,
1153
+ precompute=True,
1154
+ readonly=False,
1155
+ )
751
1156
 
752
1157
  # PIS
753
1158
  pis_tax_id = fields.Many2one(
754
1159
  comodel_name="l10n_br_fiscal.tax",
755
1160
  string="Tax PIS",
756
1161
  domain=[("tax_domain", "=", TAX_DOMAIN_PIS)],
1162
+ compute="_compute_tax_fields",
1163
+ store=True,
1164
+ precompute=True,
1165
+ readonly=False,
757
1166
  )
758
1167
 
759
1168
  pis_cst_id = fields.Many2one(
@@ -762,6 +1171,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
762
1171
  domain="['|', ('cst_type', '=', fiscal_operation_type),"
763
1172
  "('cst_type', '=', 'all'),"
764
1173
  "('tax_domain', '=', 'pis')]",
1174
+ compute="_compute_tax_fields",
1175
+ store=True,
1176
+ precompute=True,
1177
+ readonly=False,
765
1178
  )
766
1179
 
767
1180
  pis_cst_code = fields.Char(
@@ -769,16 +1182,46 @@ class FiscalDocumentLineMixin(models.AbstractModel):
769
1182
  )
770
1183
 
771
1184
  pis_base_type = fields.Selection(
772
- selection=TAX_BASE_TYPE, string="PIS Base Type", default=TAX_BASE_TYPE_PERCENT
1185
+ selection=TAX_BASE_TYPE,
1186
+ string="PIS Base Type",
1187
+ default=TAX_BASE_TYPE_PERCENT,
1188
+ compute="_compute_tax_fields",
1189
+ store=True,
1190
+ precompute=True,
1191
+ readonly=False,
773
1192
  )
774
1193
 
775
- pis_base = fields.Monetary(string="PIS Base")
1194
+ pis_base = fields.Monetary(
1195
+ string="PIS Base",
1196
+ compute="_compute_tax_fields",
1197
+ store=True,
1198
+ precompute=True,
1199
+ readonly=False,
1200
+ )
776
1201
 
777
- pis_percent = fields.Float(string="PIS %")
1202
+ pis_percent = fields.Float(
1203
+ string="PIS %",
1204
+ compute="_compute_tax_fields",
1205
+ store=True,
1206
+ precompute=True,
1207
+ readonly=False,
1208
+ )
778
1209
 
779
- pis_reduction = fields.Float(string="PIS % Reduction")
1210
+ pis_reduction = fields.Float(
1211
+ string="PIS % Reduction",
1212
+ compute="_compute_tax_fields",
1213
+ store=True,
1214
+ precompute=True,
1215
+ readonly=False,
1216
+ )
780
1217
 
781
- pis_value = fields.Monetary(string="PIS Value")
1218
+ pis_value = fields.Monetary(
1219
+ string="PIS Value",
1220
+ compute="_compute_tax_fields",
1221
+ store=True,
1222
+ precompute=True,
1223
+ readonly=False,
1224
+ )
782
1225
 
783
1226
  pis_base_id = fields.Many2one(
784
1227
  comodel_name="l10n_br_fiscal.tax.pis.cofins.base", string="PIS Base Code"
@@ -793,6 +1236,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
793
1236
  comodel_name="l10n_br_fiscal.tax",
794
1237
  string="Tax PIS ST",
795
1238
  domain=[("tax_domain", "=", TAX_DOMAIN_PIS_ST)],
1239
+ compute="_compute_tax_fields",
1240
+ store=True,
1241
+ precompute=True,
1242
+ readonly=False,
796
1243
  )
797
1244
 
798
1245
  pisst_cst_id = fields.Many2one(
@@ -801,6 +1248,10 @@ class FiscalDocumentLineMixin(models.AbstractModel):
801
1248
  domain="['|', ('cst_type', '=', fiscal_operation_type),"
802
1249
  "('cst_type', '=', 'all'),"
803
1250
  "('tax_domain', '=', 'pisst')]",
1251
+ compute="_compute_tax_fields",
1252
+ store=True,
1253
+ precompute=True,
1254
+ readonly=False,
804
1255
  )
805
1256
 
806
1257
  pisst_cst_code = fields.Char(
@@ -811,125 +1262,363 @@ class FiscalDocumentLineMixin(models.AbstractModel):
811
1262
  selection=TAX_BASE_TYPE,
812
1263
  string="PIS ST Base Type",
813
1264
  default=TAX_BASE_TYPE_PERCENT,
1265
+ compute="_compute_tax_fields",
1266
+ store=True,
1267
+ precompute=True,
1268
+ readonly=False,
814
1269
  )
815
1270
 
816
- pisst_base = fields.Monetary(string="PIS ST Base")
1271
+ pisst_base = fields.Monetary(
1272
+ string="PIS ST Base",
1273
+ compute="_compute_tax_fields",
1274
+ store=True,
1275
+ precompute=True,
1276
+ readonly=False,
1277
+ )
817
1278
 
818
- pisst_percent = fields.Float(string="PIS ST %")
1279
+ pisst_percent = fields.Float(
1280
+ string="PIS ST %",
1281
+ compute="_compute_tax_fields",
1282
+ store=True,
1283
+ precompute=True,
1284
+ readonly=False,
1285
+ )
819
1286
 
820
- pisst_reduction = fields.Float(string="PIS ST % Reduction")
1287
+ pisst_reduction = fields.Float(
1288
+ string="PIS ST % Reduction",
1289
+ compute="_compute_tax_fields",
1290
+ store=True,
1291
+ precompute=True,
1292
+ readonly=False,
1293
+ )
821
1294
 
822
- pisst_value = fields.Monetary(string="PIS ST Value")
1295
+ pisst_value = fields.Monetary(
1296
+ string="PIS ST Value",
1297
+ compute="_compute_tax_fields",
1298
+ store=True,
1299
+ precompute=True,
1300
+ readonly=False,
1301
+ )
823
1302
 
824
1303
  pis_wh_tax_id = fields.Many2one(
825
1304
  comodel_name="l10n_br_fiscal.tax",
826
1305
  string="Tax PIS RET",
827
1306
  domain=[("tax_domain", "=", TAX_DOMAIN_PIS_WH)],
1307
+ compute="_compute_tax_fields",
1308
+ store=True,
1309
+ precompute=True,
1310
+ readonly=False,
828
1311
  )
829
1312
 
830
1313
  pis_wh_base_type = fields.Selection(
831
1314
  selection=TAX_BASE_TYPE,
832
1315
  string="PIS WH Base Type",
833
1316
  default=TAX_BASE_TYPE_PERCENT,
1317
+ compute="_compute_tax_fields",
1318
+ store=True,
1319
+ precompute=True,
1320
+ readonly=False,
834
1321
  )
835
1322
 
836
- pis_wh_base = fields.Monetary(string="PIS RET Base")
1323
+ pis_wh_base = fields.Monetary(
1324
+ string="PIS RET Base",
1325
+ compute="_compute_tax_fields",
1326
+ store=True,
1327
+ precompute=True,
1328
+ readonly=False,
1329
+ )
837
1330
 
838
- pis_wh_percent = fields.Float(string="PIS RET %")
1331
+ pis_wh_percent = fields.Float(
1332
+ string="PIS RET %",
1333
+ compute="_compute_tax_fields",
1334
+ store=True,
1335
+ precompute=True,
1336
+ readonly=False,
1337
+ )
839
1338
 
840
- pis_wh_reduction = fields.Float(string="PIS RET % Reduction")
1339
+ pis_wh_reduction = fields.Float(
1340
+ string="PIS RET % Reduction",
1341
+ compute="_compute_tax_fields",
1342
+ store=True,
1343
+ precompute=True,
1344
+ readonly=False,
1345
+ )
841
1346
 
842
- pis_wh_value = fields.Monetary(string="PIS RET Value")
1347
+ pis_wh_value = fields.Monetary(
1348
+ string="PIS RET Value",
1349
+ compute="_compute_tax_fields",
1350
+ store=True,
1351
+ precompute=True,
1352
+ readonly=False,
1353
+ )
843
1354
 
844
1355
  # CSLL Fields
845
1356
  csll_tax_id = fields.Many2one(
846
1357
  comodel_name="l10n_br_fiscal.tax",
847
1358
  string="Tax CSLL",
848
1359
  domain=[("tax_domain", "=", TAX_DOMAIN_CSLL)],
1360
+ compute="_compute_tax_fields",
1361
+ store=True,
1362
+ precompute=True,
1363
+ readonly=False,
849
1364
  )
850
1365
 
851
- csll_base = fields.Monetary(string="CSLL Base")
1366
+ csll_base = fields.Monetary(
1367
+ string="CSLL Base",
1368
+ compute="_compute_tax_fields",
1369
+ store=True,
1370
+ precompute=True,
1371
+ readonly=False,
1372
+ )
852
1373
 
853
- csll_percent = fields.Float(string="CSLL %")
1374
+ csll_percent = fields.Float(
1375
+ string="CSLL %",
1376
+ compute="_compute_tax_fields",
1377
+ store=True,
1378
+ precompute=True,
1379
+ readonly=False,
1380
+ )
854
1381
 
855
- csll_reduction = fields.Float(string="CSLL % Reduction")
1382
+ csll_reduction = fields.Float(
1383
+ string="CSLL % Reduction",
1384
+ compute="_compute_tax_fields",
1385
+ store=True,
1386
+ precompute=True,
1387
+ readonly=False,
1388
+ )
856
1389
 
857
- csll_value = fields.Monetary(string="CSLL Value")
1390
+ csll_value = fields.Monetary(
1391
+ string="CSLL Value",
1392
+ compute="_compute_tax_fields",
1393
+ store=True,
1394
+ precompute=True,
1395
+ readonly=False,
1396
+ )
858
1397
 
859
1398
  csll_wh_tax_id = fields.Many2one(
860
1399
  comodel_name="l10n_br_fiscal.tax",
861
1400
  string="Tax CSLL RET",
862
1401
  domain=[("tax_domain", "=", TAX_DOMAIN_CSLL_WH)],
1402
+ compute="_compute_tax_fields",
1403
+ store=True,
1404
+ precompute=True,
1405
+ readonly=False,
863
1406
  )
864
1407
 
865
- csll_wh_base = fields.Monetary(string="CSLL RET Base")
1408
+ csll_wh_base = fields.Monetary(
1409
+ string="CSLL RET Base",
1410
+ compute="_compute_tax_fields",
1411
+ store=True,
1412
+ precompute=True,
1413
+ readonly=False,
1414
+ )
866
1415
 
867
- csll_wh_percent = fields.Float(string="CSLL RET %")
1416
+ csll_wh_percent = fields.Float(
1417
+ string="CSLL RET %",
1418
+ compute="_compute_tax_fields",
1419
+ store=True,
1420
+ precompute=True,
1421
+ readonly=False,
1422
+ )
868
1423
 
869
- csll_wh_reduction = fields.Float(string="CSLL RET % Reduction")
1424
+ csll_wh_reduction = fields.Float(
1425
+ string="CSLL RET % Reduction",
1426
+ compute="_compute_tax_fields",
1427
+ store=True,
1428
+ precompute=True,
1429
+ readonly=False,
1430
+ )
870
1431
 
871
- csll_wh_value = fields.Monetary(string="CSLL RET Value")
1432
+ csll_wh_value = fields.Monetary(
1433
+ string="CSLL RET Value",
1434
+ compute="_compute_tax_fields",
1435
+ store=True,
1436
+ precompute=True,
1437
+ readonly=False,
1438
+ )
872
1439
 
873
1440
  irpj_tax_id = fields.Many2one(
874
1441
  comodel_name="l10n_br_fiscal.tax",
875
1442
  string="Tax IRPJ",
876
1443
  domain=[("tax_domain", "=", TAX_DOMAIN_IRPJ)],
1444
+ compute="_compute_tax_fields",
1445
+ store=True,
1446
+ precompute=True,
1447
+ readonly=False,
877
1448
  )
878
1449
 
879
- irpj_base = fields.Monetary(string="IRPJ Base")
1450
+ irpj_base = fields.Monetary(
1451
+ string="IRPJ Base",
1452
+ compute="_compute_tax_fields",
1453
+ store=True,
1454
+ precompute=True,
1455
+ readonly=False,
1456
+ )
880
1457
 
881
- irpj_percent = fields.Float(string="IRPJ %")
1458
+ irpj_percent = fields.Float(
1459
+ string="IRPJ %",
1460
+ compute="_compute_tax_fields",
1461
+ store=True,
1462
+ precompute=True,
1463
+ readonly=False,
1464
+ )
882
1465
 
883
- irpj_reduction = fields.Float(string="IRPJ % Reduction")
1466
+ irpj_reduction = fields.Float(
1467
+ string="IRPJ % Reduction",
1468
+ compute="_compute_tax_fields",
1469
+ store=True,
1470
+ precompute=True,
1471
+ readonly=False,
1472
+ )
884
1473
 
885
- irpj_value = fields.Monetary(string="IRPJ Value")
1474
+ irpj_value = fields.Monetary(
1475
+ string="IRPJ Value",
1476
+ compute="_compute_tax_fields",
1477
+ store=True,
1478
+ precompute=True,
1479
+ readonly=False,
1480
+ )
886
1481
 
887
1482
  irpj_wh_tax_id = fields.Many2one(
888
1483
  comodel_name="l10n_br_fiscal.tax",
889
1484
  string="Tax IRPJ RET",
890
1485
  domain=[("tax_domain", "=", TAX_DOMAIN_IRPJ_WH)],
1486
+ compute="_compute_tax_fields",
1487
+ store=True,
1488
+ precompute=True,
1489
+ readonly=False,
891
1490
  )
892
1491
 
893
- irpj_wh_base = fields.Monetary(string="IRPJ RET Base")
1492
+ irpj_wh_base = fields.Monetary(
1493
+ string="IRPJ RET Base",
1494
+ compute="_compute_tax_fields",
1495
+ store=True,
1496
+ precompute=True,
1497
+ readonly=False,
1498
+ )
894
1499
 
895
- irpj_wh_percent = fields.Float(string="IRPJ RET %")
1500
+ irpj_wh_percent = fields.Float(
1501
+ string="IRPJ RET %",
1502
+ compute="_compute_tax_fields",
1503
+ store=True,
1504
+ precompute=True,
1505
+ readonly=False,
1506
+ )
896
1507
 
897
- irpj_wh_reduction = fields.Float(string="IRPJ RET % Reduction")
1508
+ irpj_wh_reduction = fields.Float(
1509
+ string="IRPJ RET % Reduction",
1510
+ compute="_compute_tax_fields",
1511
+ store=True,
1512
+ precompute=True,
1513
+ readonly=False,
1514
+ )
898
1515
 
899
- irpj_wh_value = fields.Monetary(string="IRPJ RET Value")
1516
+ irpj_wh_value = fields.Monetary(
1517
+ string="IRPJ RET Value",
1518
+ compute="_compute_tax_fields",
1519
+ store=True,
1520
+ precompute=True,
1521
+ readonly=False,
1522
+ )
900
1523
 
901
1524
  inss_tax_id = fields.Many2one(
902
1525
  comodel_name="l10n_br_fiscal.tax",
903
1526
  string="Tax INSS",
904
1527
  domain=[("tax_domain", "=", TAX_DOMAIN_INSS)],
1528
+ compute="_compute_tax_fields",
1529
+ store=True,
1530
+ precompute=True,
1531
+ readonly=False,
905
1532
  )
906
1533
 
907
- inss_base = fields.Monetary(string="INSS Base")
1534
+ inss_base = fields.Monetary(
1535
+ string="INSS Base",
1536
+ compute="_compute_tax_fields",
1537
+ store=True,
1538
+ precompute=True,
1539
+ readonly=False,
1540
+ )
908
1541
 
909
- inss_percent = fields.Float(string="INSS %")
1542
+ inss_percent = fields.Float(
1543
+ string="INSS %",
1544
+ compute="_compute_tax_fields",
1545
+ store=True,
1546
+ precompute=True,
1547
+ readonly=False,
1548
+ )
910
1549
 
911
- inss_reduction = fields.Float(string="INSS % Reduction")
1550
+ inss_reduction = fields.Float(
1551
+ string="INSS % Reduction",
1552
+ compute="_compute_tax_fields",
1553
+ store=True,
1554
+ precompute=True,
1555
+ readonly=False,
1556
+ )
912
1557
 
913
- inss_value = fields.Monetary(string="INSS Value")
1558
+ inss_value = fields.Monetary(
1559
+ string="INSS Value",
1560
+ compute="_compute_tax_fields",
1561
+ store=True,
1562
+ precompute=True,
1563
+ readonly=False,
1564
+ )
914
1565
 
915
1566
  inss_wh_tax_id = fields.Many2one(
916
1567
  comodel_name="l10n_br_fiscal.tax",
917
1568
  string="Tax INSS RET",
918
1569
  domain=[("tax_domain", "=", TAX_DOMAIN_INSS_WH)],
1570
+ compute="_compute_tax_fields",
1571
+ store=True,
1572
+ precompute=True,
1573
+ readonly=False,
919
1574
  )
920
1575
 
921
- inss_wh_base = fields.Monetary(string="INSS RET Base")
1576
+ inss_wh_base = fields.Monetary(
1577
+ string="INSS RET Base",
1578
+ compute="_compute_tax_fields",
1579
+ store=True,
1580
+ precompute=True,
1581
+ readonly=False,
1582
+ )
922
1583
 
923
- inss_wh_percent = fields.Float(string="INSS RET %")
1584
+ inss_wh_percent = fields.Float(
1585
+ string="INSS RET %",
1586
+ compute="_compute_tax_fields",
1587
+ store=True,
1588
+ precompute=True,
1589
+ readonly=False,
1590
+ )
924
1591
 
925
- inss_wh_reduction = fields.Float(string="INSS RET % Reduction")
1592
+ inss_wh_reduction = fields.Float(
1593
+ string="INSS RET % Reduction",
1594
+ compute="_compute_tax_fields",
1595
+ store=True,
1596
+ precompute=True,
1597
+ readonly=False,
1598
+ )
926
1599
 
927
- inss_wh_value = fields.Monetary(string="INSS RET Value")
1600
+ inss_wh_value = fields.Monetary(
1601
+ string="INSS RET Value",
1602
+ compute="_compute_tax_fields",
1603
+ store=True,
1604
+ precompute=True,
1605
+ readonly=False,
1606
+ )
928
1607
 
929
- simple_value = fields.Monetary(string="National Simple Taxes")
1608
+ simple_value = fields.Monetary(
1609
+ string="National Simple Taxes",
1610
+ compute="_compute_tax_fields",
1611
+ store=True,
1612
+ precompute=True,
1613
+ readonly=False,
1614
+ )
930
1615
 
931
1616
  simple_without_icms_value = fields.Monetary(
932
- string="National Simple Taxes without ICMS"
1617
+ string="National Simple Taxes without ICMS",
1618
+ compute="_compute_tax_fields",
1619
+ store=True,
1620
+ precompute=True,
1621
+ readonly=False,
933
1622
  )
934
1623
 
935
1624
  comment_ids = fields.Many2many(