From b3ce061a81872c3a45f2afdbe7e94982061f2bca Mon Sep 17 00:00:00 2001 From: robmachado Date: Tue, 4 Apr 2023 16:52:21 -0300 Subject: [PATCH 1/3] Ajustes para versionamento --- README.md | 21 +++- examples/ICMS_IPI/BlocoB.php | 19 ++++ examples/ICMS_IPI/BlocoC.php | 18 +++ examples/ICMS_IPI/BlocoD.php | 11 ++ examples/ICMS_IPI/BlocoE.php | 18 +++ examples/ICMS_IPI/BlocoG.php | 18 +++ examples/ICMS_IPI/BlocoH.php | 45 +++++--- examples/ICMS_IPI/BlocoK.php | 25 +++-- examples/ICMS_IPI/BlocoUm.php | 18 +++ examples/ICMS_IPI/BlocoZero.php | 39 ++++--- examples/ICMS_IPI/EFDICMS.php | 2 +- examples/ICMS_IPI/{ => elementos}/B001.php | 2 +- examples/ICMS_IPI/{ => elementos}/B020.php | 2 +- examples/ICMS_IPI/{ => elementos}/B025.php | 2 +- examples/ICMS_IPI/{ => elementos}/B030.php | 2 +- examples/ICMS_IPI/{ => elementos}/B035.php | 2 +- examples/ICMS_IPI/{ => elementos}/B350.php | 4 +- examples/ICMS_IPI/{ => elementos}/B420.php | 4 +- examples/ICMS_IPI/{ => elementos}/B440.php | 4 +- examples/ICMS_IPI/{ => elementos}/B460.php | 4 +- examples/ICMS_IPI/{ => elementos}/B470.php | 4 +- examples/ICMS_IPI/{ => elementos}/B500.php | 2 +- examples/ICMS_IPI/{ => elementos}/B510.php | 4 +- examples/ICMS_IPI/{ => elementos}/C001.php | 4 +- examples/ICMS_IPI/{ => elementos}/C100.php | 2 +- examples/ICMS_IPI/{ => elementos}/C101.php | 2 +- examples/ICMS_IPI/{ => elementos}/C105.php | 2 +- examples/ICMS_IPI/{ => elementos}/C110.php | 2 +- examples/ICMS_IPI/{ => elementos}/C111.php | 2 +- examples/ICMS_IPI/{ => elementos}/C112.php | 2 +- examples/ICMS_IPI/{ => elementos}/C113.php | 2 +- examples/ICMS_IPI/{ => elementos}/C114.php | 2 +- examples/ICMS_IPI/{ => elementos}/C115.php | 2 +- examples/ICMS_IPI/{ => elementos}/C116.php | 2 +- examples/ICMS_IPI/{ => elementos}/C120.php | 2 +- examples/ICMS_IPI/{ => elementos}/C130.php | 2 +- examples/ICMS_IPI/{ => elementos}/C140.php | 2 +- examples/ICMS_IPI/{ => elementos}/C141.php | 2 +- examples/ICMS_IPI/{ => elementos}/C160.php | 2 +- examples/ICMS_IPI/{ => elementos}/C165.php | 2 +- examples/ICMS_IPI/{ => elementos}/C170.php | 2 +- examples/ICMS_IPI/{ => elementos}/C171.php | 2 +- examples/ICMS_IPI/{ => elementos}/C172.php | 2 +- examples/ICMS_IPI/{ => elementos}/C173.php | 2 +- examples/ICMS_IPI/{ => elementos}/C174.php | 2 +- examples/ICMS_IPI/{ => elementos}/C175.php | 2 +- examples/ICMS_IPI/{ => elementos}/C176.php | 2 +- examples/ICMS_IPI/{ => elementos}/C177.php | 2 +- examples/ICMS_IPI/{ => elementos}/C178.php | 2 +- examples/ICMS_IPI/{ => elementos}/C179.php | 2 +- examples/ICMS_IPI/{ => elementos}/C190.php | 2 +- examples/ICMS_IPI/{ => elementos}/C191.php | 2 +- examples/ICMS_IPI/{ => elementos}/C195.php | 2 +- examples/ICMS_IPI/{ => elementos}/C197.php | 2 +- examples/ICMS_IPI/{ => elementos}/C300.php | 2 +- examples/ICMS_IPI/{ => elementos}/C310.php | 2 +- examples/ICMS_IPI/{ => elementos}/C320.php | 2 +- examples/ICMS_IPI/{ => elementos}/C321.php | 2 +- examples/ICMS_IPI/{ => elementos}/C350.php | 2 +- examples/ICMS_IPI/{ => elementos}/C370.php | 2 +- examples/ICMS_IPI/{ => elementos}/C390.php | 2 +- examples/ICMS_IPI/{ => elementos}/C400.php | 2 +- examples/ICMS_IPI/{ => elementos}/C405.php | 2 +- examples/ICMS_IPI/{ => elementos}/C410.php | 2 +- examples/ICMS_IPI/{ => elementos}/C420.php | 2 +- examples/ICMS_IPI/{ => elementos}/C425.php | 2 +- examples/ICMS_IPI/{ => elementos}/C460.php | 2 +- examples/ICMS_IPI/{ => elementos}/C465.php | 2 +- examples/ICMS_IPI/{ => elementos}/C470.php | 2 +- examples/ICMS_IPI/{ => elementos}/C490.php | 2 +- examples/ICMS_IPI/{ => elementos}/C495.php | 2 +- examples/ICMS_IPI/{ => elementos}/C500.php | 2 +- examples/ICMS_IPI/{ => elementos}/C510.php | 2 +- examples/ICMS_IPI/{ => elementos}/C590.php | 2 +- examples/ICMS_IPI/{ => elementos}/C600.php | 4 +- examples/ICMS_IPI/{ => elementos}/C601.php | 2 +- examples/ICMS_IPI/{ => elementos}/C610.php | 2 +- examples/ICMS_IPI/{ => elementos}/C690.php | 2 +- examples/ICMS_IPI/{ => elementos}/C700.php | 2 +- examples/ICMS_IPI/{ => elementos}/C790.php | 2 +- examples/ICMS_IPI/{ => elementos}/C791.php | 2 +- examples/ICMS_IPI/{ => elementos}/C800.php | 2 +- examples/ICMS_IPI/{ => elementos}/C850.php | 2 +- examples/ICMS_IPI/{ => elementos}/C860.php | 2 +- examples/ICMS_IPI/{ => elementos}/C890.php | 2 +- examples/ICMS_IPI/{ => elementos}/D001.php | 4 +- examples/ICMS_IPI/{ => elementos}/D100.php | 2 +- examples/ICMS_IPI/{ => elementos}/D190.php | 2 +- examples/ICMS_IPI/{ => elementos}/D500.php | 2 +- examples/ICMS_IPI/{ => elementos}/E001.php | 2 +- examples/ICMS_IPI/{ => elementos}/E100.php | 2 +- examples/ICMS_IPI/{ => elementos}/E110.php | 2 +- examples/ICMS_IPI/{ => elementos}/E111.php | 2 +- examples/ICMS_IPI/{ => elementos}/E112.php | 2 +- examples/ICMS_IPI/{ => elementos}/E113.php | 2 +- examples/ICMS_IPI/{ => elementos}/E115.php | 2 +- examples/ICMS_IPI/{ => elementos}/E116.php | 2 +- examples/ICMS_IPI/{ => elementos}/E200.php | 2 +- examples/ICMS_IPI/{ => elementos}/E210.php | 2 +- examples/ICMS_IPI/{ => elementos}/E220.php | 2 +- examples/ICMS_IPI/{ => elementos}/E230.php | 2 +- examples/ICMS_IPI/{ => elementos}/E240.php | 2 +- examples/ICMS_IPI/{ => elementos}/E250.php | 2 +- examples/ICMS_IPI/{ => elementos}/E300.php | 2 +- examples/ICMS_IPI/{ => elementos}/E310.php | 2 +- examples/ICMS_IPI/{ => elementos}/E311.php | 2 +- examples/ICMS_IPI/{ => elementos}/E312.php | 2 +- examples/ICMS_IPI/{ => elementos}/E313.php | 2 +- examples/ICMS_IPI/{ => elementos}/E316.php | 2 +- examples/ICMS_IPI/{ => elementos}/E500.php | 2 +- examples/ICMS_IPI/{ => elementos}/E510.php | 2 +- examples/ICMS_IPI/{ => elementos}/E520.php | 2 +- examples/ICMS_IPI/{ => elementos}/E530.php | 4 +- examples/ICMS_IPI/{ => elementos}/E531.php | 2 +- examples/ICMS_IPI/{ => elementos}/G001.php | 4 +- examples/ICMS_IPI/{ => elementos}/G110.php | 2 +- examples/ICMS_IPI/{ => elementos}/G125.php | 2 +- examples/ICMS_IPI/{ => elementos}/G126.php | 2 +- examples/ICMS_IPI/{ => elementos}/G140.php | 2 +- examples/ICMS_IPI/{ => elementos}/H001.php | 4 +- examples/ICMS_IPI/{ => elementos}/H005.php | 4 +- examples/ICMS_IPI/{ => elementos}/H010.php | 2 +- examples/ICMS_IPI/{ => elementos}/H020.php | 2 +- examples/ICMS_IPI/{ => elementos}/K001.php | 2 +- examples/ICMS_IPI/{ => elementos}/K010.php | 2 +- examples/ICMS_IPI/{ => elementos}/K100.php | 2 +- examples/ICMS_IPI/{ => elementos}/K200.php | 2 +- examples/ICMS_IPI/{ => elementos}/K210.php | 2 +- examples/ICMS_IPI/{ => elementos}/K215.php | 2 +- examples/ICMS_IPI/{ => elementos}/K220.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0000.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z0001.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0005.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0015.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0100.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0150.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0175.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0190.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0200.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0205.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0206.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0210.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0220.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0221.php | 0 examples/ICMS_IPI/{ => elementos}/Z0300.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0305.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0400.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0450.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0460.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0500.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z0600.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1001.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1010.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1100.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1105.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1110.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1200.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1210.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1300.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1310.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1320.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1350.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1360.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1370.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1390.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1391.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1400.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1500.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1510.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1600.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1601.php | 2 +- examples/ICMS_IPI/{ => elementos}/Z1700.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1710.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1800.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1900.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1910.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1920.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1921.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1922.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1923.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1925.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1926.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1960.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1970.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1975.php | 4 +- examples/ICMS_IPI/{ => elementos}/Z1980.php | 4 +- examples/contribuicoes/Bloco0.php | 18 +++ examples/contribuicoes/Bloco1.php | 18 +++ examples/contribuicoes/BlocoA.php | 18 +++ examples/contribuicoes/BlocoC.php | 18 +++ examples/contribuicoes/BlocoD.php | 18 +++ examples/contribuicoes/BlocoF.php | 18 +++ examples/contribuicoes/BlocoI.php | 18 +++ examples/contribuicoes/BlocoM.php | 18 +++ examples/contribuicoes/BlocoP.php | 18 +++ .../contribuicoes/{ => elementos}/A001.php | 2 +- .../contribuicoes/{ => elementos}/A010.php | 2 +- .../contribuicoes/{ => elementos}/A100.php | 2 +- .../contribuicoes/{ => elementos}/A110.php | 2 +- .../contribuicoes/{ => elementos}/A111.php | 2 +- .../contribuicoes/{ => elementos}/A120.php | 2 +- .../contribuicoes/{ => elementos}/A170.php | 2 +- .../contribuicoes/{ => elementos}/C001.php | 2 +- .../contribuicoes/{ => elementos}/C010.php | 2 +- .../contribuicoes/{ => elementos}/C100.php | 2 +- .../contribuicoes/{ => elementos}/C110.php | 2 +- .../contribuicoes/{ => elementos}/C111.php | 2 +- .../contribuicoes/{ => elementos}/C120.php | 2 +- .../contribuicoes/{ => elementos}/C170.php | 2 +- .../contribuicoes/{ => elementos}/C175.php | 2 +- .../contribuicoes/{ => elementos}/C180.php | 2 +- .../contribuicoes/{ => elementos}/C181.php | 2 +- .../contribuicoes/{ => elementos}/C185.php | 2 +- .../contribuicoes/{ => elementos}/C188.php | 2 +- .../contribuicoes/{ => elementos}/C190.php | 2 +- .../contribuicoes/{ => elementos}/C191.php | 2 +- .../contribuicoes/{ => elementos}/C195.php | 2 +- .../contribuicoes/{ => elementos}/C198.php | 2 +- .../contribuicoes/{ => elementos}/C199.php | 2 +- .../contribuicoes/{ => elementos}/C380.php | 2 +- .../contribuicoes/{ => elementos}/C381.php | 2 +- .../contribuicoes/{ => elementos}/C385.php | 2 +- .../contribuicoes/{ => elementos}/C395.php | 2 +- .../contribuicoes/{ => elementos}/C396.php | 2 +- .../contribuicoes/{ => elementos}/C400.php | 2 +- .../contribuicoes/{ => elementos}/C405.php | 2 +- .../contribuicoes/{ => elementos}/C481.php | 2 +- .../contribuicoes/{ => elementos}/C489.php | 2 +- .../contribuicoes/{ => elementos}/C491.php | 2 +- .../contribuicoes/{ => elementos}/C495.php | 2 +- .../contribuicoes/{ => elementos}/C499.php | 2 +- .../contribuicoes/{ => elementos}/C500.php | 2 +- .../contribuicoes/{ => elementos}/C501.php | 2 +- .../contribuicoes/{ => elementos}/C505.php | 2 +- .../contribuicoes/{ => elementos}/C509.php | 2 +- .../contribuicoes/{ => elementos}/C600.php | 2 +- .../contribuicoes/{ => elementos}/C601.php | 2 +- .../contribuicoes/{ => elementos}/C605.php | 2 +- .../contribuicoes/{ => elementos}/C609.php | 2 +- .../contribuicoes/{ => elementos}/C800.php | 2 +- .../contribuicoes/{ => elementos}/C810.php | 2 +- .../contribuicoes/{ => elementos}/C820.php | 2 +- .../contribuicoes/{ => elementos}/C830.php | 2 +- .../contribuicoes/{ => elementos}/C860.php | 2 +- .../contribuicoes/{ => elementos}/C870.php | 2 +- .../contribuicoes/{ => elementos}/C880.php | 2 +- .../contribuicoes/{ => elementos}/C890.php | 2 +- .../contribuicoes/{ => elementos}/D001.php | 2 +- .../contribuicoes/{ => elementos}/D010.php | 2 +- .../contribuicoes/{ => elementos}/D100.php | 2 +- .../contribuicoes/{ => elementos}/D101.php | 2 +- .../contribuicoes/{ => elementos}/D105.php | 2 +- .../contribuicoes/{ => elementos}/D111.php | 2 +- .../contribuicoes/{ => elementos}/D200.php | 2 +- .../contribuicoes/{ => elementos}/D201.php | 2 +- .../contribuicoes/{ => elementos}/D205.php | 2 +- .../contribuicoes/{ => elementos}/D209.php | 2 +- .../contribuicoes/{ => elementos}/D300.php | 2 +- .../contribuicoes/{ => elementos}/D309.php | 2 +- .../contribuicoes/{ => elementos}/D350.php | 2 +- .../contribuicoes/{ => elementos}/D359.php | 2 +- .../contribuicoes/{ => elementos}/D500.php | 2 +- .../contribuicoes/{ => elementos}/D501.php | 2 +- .../contribuicoes/{ => elementos}/D505.php | 2 +- .../contribuicoes/{ => elementos}/D509.php | 2 +- .../contribuicoes/{ => elementos}/D600.php | 2 +- .../contribuicoes/{ => elementos}/D601.php | 2 +- .../contribuicoes/{ => elementos}/D605.php | 2 +- .../contribuicoes/{ => elementos}/D609.php | 2 +- .../contribuicoes/{ => elementos}/M001.php | 2 +- .../contribuicoes/{ => elementos}/M100.php | 2 +- .../contribuicoes/{ => elementos}/M105.php | 2 +- .../contribuicoes/{ => elementos}/M110.php | 2 +- .../contribuicoes/{ => elementos}/M115.php | 2 +- .../contribuicoes/{ => elementos}/M200.php | 2 +- .../contribuicoes/{ => elementos}/M205.php | 2 +- .../contribuicoes/{ => elementos}/M210.php | 2 +- .../contribuicoes/{ => elementos}/M211.php | 2 +- .../contribuicoes/{ => elementos}/M220.php | 2 +- .../contribuicoes/{ => elementos}/M225.php | 2 +- .../contribuicoes/{ => elementos}/M230.php | 2 +- .../contribuicoes/{ => elementos}/M300.php | 2 +- .../contribuicoes/{ => elementos}/M350.php | 2 +- .../contribuicoes/{ => elementos}/M400.php | 2 +- .../contribuicoes/{ => elementos}/M410.php | 2 +- .../contribuicoes/{ => elementos}/M500.php | 2 +- .../contribuicoes/{ => elementos}/M505.php | 2 +- .../contribuicoes/{ => elementos}/M510.php | 2 +- .../contribuicoes/{ => elementos}/M515.php | 2 +- .../contribuicoes/{ => elementos}/M600.php | 2 +- .../contribuicoes/{ => elementos}/M605.php | 2 +- .../contribuicoes/{ => elementos}/M610.php | 2 +- .../contribuicoes/{ => elementos}/M611.php | 2 +- .../contribuicoes/{ => elementos}/M620.php | 2 +- .../contribuicoes/{ => elementos}/M625.php | 2 +- .../contribuicoes/{ => elementos}/M630.php | 2 +- .../contribuicoes/{ => elementos}/M700.php | 2 +- .../contribuicoes/{ => elementos}/M800.php | 2 +- .../contribuicoes/{ => elementos}/M810.php | 2 +- .../contribuicoes/{ => elementos}/P001.php | 2 +- .../contribuicoes/{ => elementos}/P010.php | 2 +- .../contribuicoes/{ => elementos}/P100.php | 2 +- .../contribuicoes/{ => elementos}/P110.php | 2 +- .../contribuicoes/{ => elementos}/P199.php | 2 +- .../contribuicoes/{ => elementos}/P200.php | 2 +- .../contribuicoes/{ => elementos}/P210.php | 2 +- .../contribuicoes/{ => elementos}/Z0000.php | 2 +- .../contribuicoes/{ => elementos}/Z0001.php | 2 +- .../contribuicoes/{ => elementos}/Z0035.php | 2 +- .../contribuicoes/{ => elementos}/Z0100.php | 2 +- .../contribuicoes/{ => elementos}/Z0110.php | 2 +- .../contribuicoes/{ => elementos}/Z0111.php | 2 +- .../contribuicoes/{ => elementos}/Z0120.php | 2 +- .../contribuicoes/{ => elementos}/Z0140.php | 2 +- .../contribuicoes/{ => elementos}/Z0145.php | 2 +- .../contribuicoes/{ => elementos}/Z0150.php | 2 +- .../contribuicoes/{ => elementos}/Z0190.php | 2 +- .../contribuicoes/{ => elementos}/Z0200.php | 2 +- .../contribuicoes/{ => elementos}/Z0205.php | 2 +- .../contribuicoes/{ => elementos}/Z0206.php | 2 +- .../contribuicoes/{ => elementos}/Z0208.php | 2 +- .../contribuicoes/{ => elementos}/Z0400.php | 2 +- .../contribuicoes/{ => elementos}/Z0450.php | 2 +- .../contribuicoes/{ => elementos}/Z0500.php | 2 +- .../contribuicoes/{ => elementos}/Z0600.php | 2 +- .../contribuicoes/{ => elementos}/Z1001.php | 2 +- .../contribuicoes/{ => elementos}/Z1010.php | 2 +- .../contribuicoes/{ => elementos}/Z1020.php | 2 +- .../contribuicoes/{ => elementos}/Z1100.php | 2 +- .../contribuicoes/{ => elementos}/Z1101.php | 2 +- .../contribuicoes/{ => elementos}/Z1102.php | 2 +- .../contribuicoes/{ => elementos}/Z1200.php | 2 +- .../contribuicoes/{ => elementos}/Z1210.php | 2 +- .../contribuicoes/{ => elementos}/Z1220.php | 2 +- .../contribuicoes/{ => elementos}/Z1300.php | 2 +- .../contribuicoes/{ => elementos}/Z1500.php | 2 +- .../contribuicoes/{ => elementos}/Z1501.php | 2 +- .../contribuicoes/{ => elementos}/Z1502.php | 2 +- .../contribuicoes/{ => elementos}/Z1600.php | 2 +- .../contribuicoes/{ => elementos}/Z1610.php | 2 +- .../contribuicoes/{ => elementos}/Z1620.php | 2 +- .../contribuicoes/{ => elementos}/Z1700.php | 2 +- .../contribuicoes/{ => elementos}/Z1800.php | 2 +- .../contribuicoes/{ => elementos}/Z1809.php | 2 +- .../contribuicoes/{ => elementos}/Z1900.php | 2 +- examples/cria_lista_layout_vigencia.php | 32 ++++++ src/Blocks/Contribuicoes/Block0.php | 27 ++++- src/Blocks/Contribuicoes/Block1.php | 29 ++++- src/Blocks/Contribuicoes/BlockA.php | 7 +- src/Blocks/Contribuicoes/BlockC.php | 7 +- src/Blocks/Contribuicoes/BlockD.php | 7 +- src/Blocks/Contribuicoes/BlockF.php | 7 +- src/Blocks/Contribuicoes/BlockI.php | 17 +-- src/Blocks/Contribuicoes/BlockM.php | 42 ++++++- src/Blocks/Contribuicoes/BlockP.php | 14 ++- src/Blocks/ICMSIPI/Block0.php | 7 +- src/Blocks/ICMSIPI/Block1.php | 7 +- src/Blocks/ICMSIPI/BlockB.php | 7 +- src/Blocks/ICMSIPI/BlockC.php | 7 +- src/Blocks/ICMSIPI/BlockD.php | 7 +- src/Blocks/ICMSIPI/BlockE.php | 7 +- src/Blocks/ICMSIPI/BlockG.php | 7 +- src/Blocks/ICMSIPI/BlockH.php | 14 ++- src/Blocks/ICMSIPI/BlockK.php | 7 +- src/Common/Block.php | 43 ++++++- src/Common/Element.php | 30 ++++- src/EFD.php | 2 +- src/EFDCont.php | 2 - src/EFDICMS.php | 2 - src/Elements/Contribuicoes/A001.php | 14 ++- src/Elements/Contribuicoes/A010.php | 15 +-- src/Elements/Contribuicoes/A100.php | 19 ++-- src/Elements/Contribuicoes/A110.php | 14 ++- src/Elements/Contribuicoes/A111.php | 20 ++-- src/Elements/Contribuicoes/A120.php | 18 +-- src/Elements/Contribuicoes/A170.php | 13 ++- src/Elements/Contribuicoes/C001.php | 14 ++- src/Elements/Contribuicoes/C010.php | 18 +-- src/Elements/Contribuicoes/C100.php | 13 ++- src/Elements/Contribuicoes/C110.php | 14 ++- src/Elements/Contribuicoes/C111.php | 16 +-- src/Elements/Contribuicoes/C120.php | 16 +-- src/Elements/Contribuicoes/C170.php | 13 ++- src/Elements/Contribuicoes/C175.php | 13 ++- src/Elements/Contribuicoes/C180.php | 14 ++- src/Elements/Contribuicoes/C181.php | 14 ++- src/Elements/Contribuicoes/C185.php | 13 ++- src/Elements/Contribuicoes/C188.php | 16 +-- src/Elements/Contribuicoes/C190.php | 14 ++- src/Elements/Contribuicoes/C191.php | 16 +-- src/Elements/Contribuicoes/C195.php | 13 ++- src/Elements/Contribuicoes/C198.php | 14 ++- src/Elements/Contribuicoes/C199.php | 14 ++- src/Elements/Contribuicoes/C380.php | 16 +-- src/Elements/Contribuicoes/C381.php | 14 ++- src/Elements/Contribuicoes/C385.php | 13 ++- src/Elements/Contribuicoes/C395.php | 14 ++- src/Elements/Contribuicoes/C396.php | 14 ++- src/Elements/Contribuicoes/C400.php | 13 ++- src/Elements/Contribuicoes/C405.php | 16 +-- src/Elements/Contribuicoes/C481.php | 14 ++- src/Elements/Contribuicoes/C489.php | 16 +-- src/Elements/Contribuicoes/C491.php | 13 ++- src/Elements/Contribuicoes/C495.php | 13 ++- src/Elements/Contribuicoes/C499.php | 16 +-- src/Elements/Contribuicoes/C500.php | 13 ++- src/Elements/Contribuicoes/C501.php | 14 ++- src/Elements/Contribuicoes/C505.php | 14 ++- src/Elements/Contribuicoes/C509.php | 16 +-- src/Elements/Contribuicoes/C600.php | 13 ++- src/Elements/Contribuicoes/C601.php | 13 ++- src/Elements/Contribuicoes/C605.php | 13 ++- src/Elements/Contribuicoes/C609.php | 16 +-- src/Elements/Contribuicoes/C800.php | 13 ++- src/Elements/Contribuicoes/C810.php | 13 ++- src/Elements/Contribuicoes/C820.php | 14 ++- src/Elements/Contribuicoes/C830.php | 16 +-- src/Elements/Contribuicoes/C860.php | 14 ++- src/Elements/Contribuicoes/C870.php | 14 ++- src/Elements/Contribuicoes/C880.php | 14 ++- src/Elements/Contribuicoes/C890.php | 14 ++- src/Elements/Contribuicoes/D001.php | 14 ++- src/Elements/Contribuicoes/D010.php | 13 ++- src/Elements/Contribuicoes/D100.php | 12 +- src/Elements/Contribuicoes/D101.php | 12 +- src/Elements/Contribuicoes/D105.php | 12 +- src/Elements/Contribuicoes/D111.php | 13 ++- src/Elements/Contribuicoes/D200.php | 13 ++- src/Elements/Contribuicoes/D201.php | 12 +- src/Elements/Contribuicoes/D205.php | 12 +- src/Elements/Contribuicoes/D209.php | 13 ++- src/Elements/Contribuicoes/D300.php | 12 +- src/Elements/Contribuicoes/D309.php | 13 ++- src/Elements/Contribuicoes/D350.php | 13 ++- src/Elements/Contribuicoes/D359.php | 13 ++- src/Elements/Contribuicoes/D500.php | 13 ++- src/Elements/Contribuicoes/D501.php | 12 +- src/Elements/Contribuicoes/D505.php | 13 ++- src/Elements/Contribuicoes/D509.php | 14 ++- src/Elements/Contribuicoes/D600.php | 13 ++- src/Elements/Contribuicoes/D601.php | 13 ++- src/Elements/Contribuicoes/D605.php | 13 ++- src/Elements/Contribuicoes/D609.php | 14 ++- src/Elements/Contribuicoes/F001.php | 15 +-- src/Elements/Contribuicoes/F010.php | 14 ++- src/Elements/Contribuicoes/F100.php | 13 ++- src/Elements/Contribuicoes/F550.php | 15 +-- src/Elements/Contribuicoes/I001.php | 13 ++- src/Elements/Contribuicoes/I010.php | 56 +++++++++ src/Elements/Contribuicoes/I100.php | 106 ++++++++++++++++++ src/Elements/Contribuicoes/I199.php | 46 ++++++++ src/Elements/Contribuicoes/I200.php | 65 +++++++++++ src/Elements/Contribuicoes/I299.php | 46 ++++++++ src/Elements/Contribuicoes/I300.php | 60 ++++++++++ src/Elements/Contribuicoes/I399.php | 46 ++++++++ src/Elements/Contribuicoes/M001.php | 15 +-- src/Elements/Contribuicoes/M100.php | 14 ++- src/Elements/Contribuicoes/M105.php | 14 ++- src/Elements/Contribuicoes/M110.php | 14 ++- src/Elements/Contribuicoes/M115.php | 14 ++- src/Elements/Contribuicoes/M200.php | 14 ++- src/Elements/Contribuicoes/M205.php | 14 ++- src/Elements/Contribuicoes/M210.php | 14 ++- src/Elements/Contribuicoes/M211.php | 14 ++- src/Elements/Contribuicoes/M215.php | 100 +++++++++++++++++ src/Elements/Contribuicoes/M220.php | 14 ++- src/Elements/Contribuicoes/M225.php | 14 ++- src/Elements/Contribuicoes/M230.php | 14 ++- src/Elements/Contribuicoes/M300.php | 14 ++- src/Elements/Contribuicoes/M350.php | 14 ++- src/Elements/Contribuicoes/M400.php | 14 ++- src/Elements/Contribuicoes/M410.php | 14 ++- src/Elements/Contribuicoes/M500.php | 14 ++- src/Elements/Contribuicoes/M505.php | 14 ++- src/Elements/Contribuicoes/M510.php | 14 ++- src/Elements/Contribuicoes/M515.php | 14 ++- src/Elements/Contribuicoes/M600.php | 14 ++- src/Elements/Contribuicoes/M605.php | 14 ++- src/Elements/Contribuicoes/M610.php | 14 ++- src/Elements/Contribuicoes/M611.php | 14 ++- src/Elements/Contribuicoes/M615.php | 92 +++++++++++++++ src/Elements/Contribuicoes/M620.php | 14 ++- src/Elements/Contribuicoes/M625.php | 14 ++- src/Elements/Contribuicoes/M630.php | 14 ++- src/Elements/Contribuicoes/M700.php | 14 ++- src/Elements/Contribuicoes/M800.php | 14 ++- src/Elements/Contribuicoes/M810.php | 14 ++- src/Elements/Contribuicoes/P001.php | 14 ++- src/Elements/Contribuicoes/P010.php | 14 ++- src/Elements/Contribuicoes/P100.php | 14 ++- src/Elements/Contribuicoes/P110.php | 14 ++- src/Elements/Contribuicoes/P199.php | 14 ++- src/Elements/Contribuicoes/P200.php | 14 ++- src/Elements/Contribuicoes/P210.php | 14 ++- src/Elements/Contribuicoes/Z0000.php | 24 ++-- src/Elements/Contribuicoes/Z0001.php | 14 ++- src/Elements/Contribuicoes/Z0035.php | 14 ++- src/Elements/Contribuicoes/Z0100.php | 14 ++- src/Elements/Contribuicoes/Z0110.php | 13 ++- src/Elements/Contribuicoes/Z0111.php | 13 ++- src/Elements/Contribuicoes/Z0120.php | 42 +++---- src/Elements/Contribuicoes/Z0140.php | 14 ++- src/Elements/Contribuicoes/Z0145.php | 22 ++-- src/Elements/Contribuicoes/Z0150.php | 14 ++- src/Elements/Contribuicoes/Z0190.php | 13 ++- src/Elements/Contribuicoes/Z0200.php | 14 ++- src/Elements/Contribuicoes/Z0205.php | 14 ++- src/Elements/Contribuicoes/Z0206.php | 14 ++- src/Elements/Contribuicoes/Z0208.php | 20 ++-- src/Elements/Contribuicoes/Z0400.php | 14 ++- src/Elements/Contribuicoes/Z0450.php | 18 +-- src/Elements/Contribuicoes/Z0500.php | 20 ++-- src/Elements/Contribuicoes/Z0600.php | 14 ++- src/Elements/Contribuicoes/Z1001.php | 14 ++- src/Elements/Contribuicoes/Z1010.php | 14 ++- src/Elements/Contribuicoes/Z1020.php | 14 ++- src/Elements/Contribuicoes/Z1050.php | 14 ++- src/Elements/Contribuicoes/Z1100.php | 14 ++- src/Elements/Contribuicoes/Z1101.php | 13 ++- src/Elements/Contribuicoes/Z1102.php | 14 ++- src/Elements/Contribuicoes/Z1200.php | 14 ++- src/Elements/Contribuicoes/Z1210.php | 13 ++- src/Elements/Contribuicoes/Z1220.php | 14 ++- src/Elements/Contribuicoes/Z1300.php | 13 ++- src/Elements/Contribuicoes/Z1500.php | 13 ++- src/Elements/Contribuicoes/Z1501.php | 13 ++- src/Elements/Contribuicoes/Z1502.php | 14 ++- src/Elements/Contribuicoes/Z1600.php | 14 ++- src/Elements/Contribuicoes/Z1610.php | 13 ++- src/Elements/Contribuicoes/Z1620.php | 14 ++- src/Elements/Contribuicoes/Z1700.php | 13 ++- src/Elements/Contribuicoes/Z1800.php | 14 ++- src/Elements/Contribuicoes/Z1809.php | 14 ++- src/Elements/Contribuicoes/Z1900.php | 14 ++- src/Elements/ICMSIPI/B001.php | 14 ++- src/Elements/ICMSIPI/B020.php | 13 ++- src/Elements/ICMSIPI/B025.php | 13 ++- src/Elements/ICMSIPI/B030.php | 13 ++- src/Elements/ICMSIPI/B035.php | 13 ++- src/Elements/ICMSIPI/B350.php | 13 ++- src/Elements/ICMSIPI/B420.php | 14 ++- src/Elements/ICMSIPI/B440.php | 14 ++- src/Elements/ICMSIPI/B460.php | 14 ++- src/Elements/ICMSIPI/B470.php | 13 ++- src/Elements/ICMSIPI/B500.php | 14 ++- src/Elements/ICMSIPI/B510.php | 13 ++- src/Elements/ICMSIPI/C001.php | 14 ++- src/Elements/ICMSIPI/C100.php | 13 ++- src/Elements/ICMSIPI/C101.php | 14 ++- src/Elements/ICMSIPI/C105.php | 14 ++- src/Elements/ICMSIPI/C110.php | 14 ++- src/Elements/ICMSIPI/C111.php | 14 ++- src/Elements/ICMSIPI/C112.php | 13 ++- src/Elements/ICMSIPI/C113.php | 13 ++- src/Elements/ICMSIPI/C114.php | 14 ++- src/Elements/ICMSIPI/C115.php | 13 ++- src/Elements/ICMSIPI/C116.php | 13 ++- src/Elements/ICMSIPI/C120.php | 14 ++- src/Elements/ICMSIPI/C130.php | 14 ++- src/Elements/ICMSIPI/C140.php | 14 ++- src/Elements/ICMSIPI/C141.php | 14 ++- src/Elements/ICMSIPI/C160.php | 14 ++- src/Elements/ICMSIPI/C165.php | 14 ++- src/Elements/ICMSIPI/C170.php | 13 ++- src/Elements/ICMSIPI/C171.php | 14 ++- src/Elements/ICMSIPI/C172.php | 14 ++- src/Elements/ICMSIPI/C173.php | 13 ++- src/Elements/ICMSIPI/C174.php | 14 ++- src/Elements/ICMSIPI/C175.php | 14 ++- src/Elements/ICMSIPI/C176.php | 13 ++- src/Elements/ICMSIPI/C177.php | 14 ++- src/Elements/ICMSIPI/C178.php | 14 ++- src/Elements/ICMSIPI/C179.php | 14 ++- src/Elements/ICMSIPI/C180.php | 16 +-- src/Elements/ICMSIPI/C185.php | 17 +-- src/Elements/ICMSIPI/C190.php | 28 ++--- src/Elements/ICMSIPI/C191.php | 18 +-- src/Elements/ICMSIPI/C195.php | 14 ++- src/Elements/ICMSIPI/C197.php | 14 ++- src/Elements/ICMSIPI/C300.php | 14 ++- src/Elements/ICMSIPI/C310.php | 14 ++- src/Elements/ICMSIPI/C320.php | 14 ++- src/Elements/ICMSIPI/C321.php | 14 ++- src/Elements/ICMSIPI/C330.php | 17 +-- src/Elements/ICMSIPI/C350.php | 14 ++- src/Elements/ICMSIPI/C370.php | 14 ++- src/Elements/ICMSIPI/C380.php | 18 +-- src/Elements/ICMSIPI/C390.php | 20 ++-- src/Elements/ICMSIPI/C400.php | 14 ++- src/Elements/ICMSIPI/C405.php | 15 +-- src/Elements/ICMSIPI/C410.php | 14 ++- src/Elements/ICMSIPI/C420.php | 14 ++- src/Elements/ICMSIPI/C425.php | 13 ++- src/Elements/ICMSIPI/C430.php | 14 ++- src/Elements/ICMSIPI/C460.php | 14 ++- src/Elements/ICMSIPI/C465.php | 14 +-- src/Elements/ICMSIPI/C470.php | 13 ++- src/Elements/ICMSIPI/C480.php | 18 +-- src/Elements/ICMSIPI/C490.php | 13 ++- src/Elements/ICMSIPI/C495.php | 14 ++- src/Elements/ICMSIPI/C500.php | 14 ++- src/Elements/ICMSIPI/C510.php | 14 ++- src/Elements/ICMSIPI/C590.php | 14 ++- src/Elements/ICMSIPI/C591.php | 18 +-- src/Elements/ICMSIPI/C595.php | 18 +-- src/Elements/ICMSIPI/C597.php | 18 +-- src/Elements/ICMSIPI/C600.php | 14 ++- src/Elements/ICMSIPI/C601.php | 14 ++- src/Elements/ICMSIPI/C610.php | 13 ++- src/Elements/ICMSIPI/C690.php | 20 ++-- src/Elements/ICMSIPI/C700.php | 13 ++- src/Elements/ICMSIPI/C790.php | 20 ++-- src/Elements/ICMSIPI/C791.php | 14 ++- src/Elements/ICMSIPI/C800.php | 14 +-- src/Elements/ICMSIPI/C810.php | 15 +-- src/Elements/ICMSIPI/C815.php | 17 +-- src/Elements/ICMSIPI/C850.php | 13 ++- src/Elements/ICMSIPI/C860.php | 14 ++- src/Elements/ICMSIPI/C870.php | 14 ++- src/Elements/ICMSIPI/C880.php | 14 ++- src/Elements/ICMSIPI/C890.php | 19 ++-- src/Elements/ICMSIPI/D001.php | 14 ++- src/Elements/ICMSIPI/D100.php | 15 ++- src/Elements/ICMSIPI/D101.php | 16 +-- src/Elements/ICMSIPI/D110.php | 14 ++- src/Elements/ICMSIPI/D120.php | 14 ++- src/Elements/ICMSIPI/D130.php | 14 ++- src/Elements/ICMSIPI/D140.php | 14 ++- src/Elements/ICMSIPI/D150.php | 14 ++- src/Elements/ICMSIPI/D160.php | 14 ++- src/Elements/ICMSIPI/D161.php | 14 ++- src/Elements/ICMSIPI/D162.php | 16 +-- src/Elements/ICMSIPI/D170.php | 14 ++- src/Elements/ICMSIPI/D180.php | 14 ++- src/Elements/ICMSIPI/D190.php | 14 ++- src/Elements/ICMSIPI/D195.php | 14 ++- src/Elements/ICMSIPI/D197.php | 14 ++- src/Elements/ICMSIPI/D300.php | 14 ++- src/Elements/ICMSIPI/D301.php | 14 ++- src/Elements/ICMSIPI/D310.php | 14 ++- src/Elements/ICMSIPI/D350.php | 14 ++- src/Elements/ICMSIPI/D355.php | 16 +-- src/Elements/ICMSIPI/D360.php | 14 ++- src/Elements/ICMSIPI/D365.php | 14 ++- src/Elements/ICMSIPI/D370.php | 14 ++- src/Elements/ICMSIPI/D390.php | 14 ++- src/Elements/ICMSIPI/D400.php | 14 ++- src/Elements/ICMSIPI/D410.php | 14 ++- src/Elements/ICMSIPI/D411.php | 14 ++- src/Elements/ICMSIPI/D420.php | 14 ++- src/Elements/ICMSIPI/D500.php | 14 +-- src/Elements/ICMSIPI/D510.php | 14 ++- src/Elements/ICMSIPI/D530.php | 17 ++- src/Elements/ICMSIPI/D590.php | 24 ++-- src/Elements/ICMSIPI/D600.php | 14 ++- src/Elements/ICMSIPI/D610.php | 14 ++- src/Elements/ICMSIPI/D690.php | 14 ++- src/Elements/ICMSIPI/D695.php | 14 ++- src/Elements/ICMSIPI/D696.php | 26 +++-- src/Elements/ICMSIPI/D697.php | 14 ++- src/Elements/ICMSIPI/E001.php | 14 ++- src/Elements/ICMSIPI/E100.php | 14 ++- src/Elements/ICMSIPI/E110.php | 13 ++- src/Elements/ICMSIPI/E111.php | 14 ++- src/Elements/ICMSIPI/E112.php | 14 ++- src/Elements/ICMSIPI/E113.php | 14 ++- src/Elements/ICMSIPI/E115.php | 14 ++- src/Elements/ICMSIPI/E116.php | 13 ++- src/Elements/ICMSIPI/E200.php | 14 ++- src/Elements/ICMSIPI/E210.php | 14 +-- src/Elements/ICMSIPI/E220.php | 13 ++- src/Elements/ICMSIPI/E230.php | 14 ++- src/Elements/ICMSIPI/E240.php | 14 ++- src/Elements/ICMSIPI/E250.php | 13 ++- src/Elements/ICMSIPI/E300.php | 14 ++- src/Elements/ICMSIPI/E310.php | 13 ++- src/Elements/ICMSIPI/E311.php | 13 ++- src/Elements/ICMSIPI/E312.php | 14 ++- src/Elements/ICMSIPI/E313.php | 13 ++- src/Elements/ICMSIPI/E316.php | 13 ++- src/Elements/ICMSIPI/E500.php | 14 ++- src/Elements/ICMSIPI/E510.php | 14 ++- src/Elements/ICMSIPI/E520.php | 13 ++- src/Elements/ICMSIPI/E530.php | 14 ++- src/Elements/ICMSIPI/E531.php | 13 ++- src/Elements/ICMSIPI/G001.php | 14 ++- src/Elements/ICMSIPI/G110.php | 13 ++- src/Elements/ICMSIPI/G125.php | 14 ++- src/Elements/ICMSIPI/G126.php | 14 ++- src/Elements/ICMSIPI/G130.php | 13 ++- src/Elements/ICMSIPI/G140.php | 14 ++- src/Elements/ICMSIPI/H001.php | 21 ++-- src/Elements/ICMSIPI/H005.php | 17 +-- src/Elements/ICMSIPI/H010.php | 17 +-- src/Elements/ICMSIPI/H020.php | 17 +-- src/Elements/ICMSIPI/H030.php | 15 +-- src/Elements/ICMSIPI/K001.php | 16 +-- src/Elements/ICMSIPI/K010.php | 14 ++- src/Elements/ICMSIPI/K100.php | 16 +-- src/Elements/ICMSIPI/K200.php | 16 +-- src/Elements/ICMSIPI/K210.php | 18 +-- src/Elements/ICMSIPI/K215.php | 16 +-- src/Elements/ICMSIPI/K220.php | 16 +-- src/Elements/ICMSIPI/K230.php | 16 +-- src/Elements/ICMSIPI/K235.php | 16 +-- src/Elements/ICMSIPI/K250.php | 16 +-- src/Elements/ICMSIPI/K255.php | 16 +-- src/Elements/ICMSIPI/K260.php | 16 +-- src/Elements/ICMSIPI/K265.php | 16 +-- src/Elements/ICMSIPI/K270.php | 16 +-- src/Elements/ICMSIPI/K275.php | 16 +-- src/Elements/ICMSIPI/K280.php | 16 +-- src/Elements/ICMSIPI/K290.php | 16 +-- src/Elements/ICMSIPI/K291.php | 16 +-- src/Elements/ICMSIPI/K292.php | 16 +-- src/Elements/ICMSIPI/K300.php | 16 +-- src/Elements/ICMSIPI/K301.php | 16 +-- src/Elements/ICMSIPI/K302.php | 16 +-- src/Elements/ICMSIPI/Z0000.php | 13 ++- src/Elements/ICMSIPI/Z0001.php | 18 +-- src/Elements/ICMSIPI/Z0002.php | 18 +-- src/Elements/ICMSIPI/Z0005.php | 18 +-- src/Elements/ICMSIPI/Z0015.php | 18 +-- src/Elements/ICMSIPI/Z0100.php | 16 +-- src/Elements/ICMSIPI/Z0150.php | 13 ++- src/Elements/ICMSIPI/Z0175.php | 16 +-- src/Elements/ICMSIPI/Z0190.php | 15 ++- src/Elements/ICMSIPI/Z0200.php | 16 +-- src/Elements/ICMSIPI/Z0205.php | 16 +-- src/Elements/ICMSIPI/Z0206.php | 16 +-- src/Elements/ICMSIPI/Z0210.php | 16 +-- src/Elements/ICMSIPI/Z0220.php | 16 +-- src/Elements/ICMSIPI/Z0221.php | 12 +- src/Elements/ICMSIPI/Z0300.php | 12 +- src/Elements/ICMSIPI/Z0305.php | 16 +-- src/Elements/ICMSIPI/Z0400.php | 16 +-- src/Elements/ICMSIPI/Z0450.php | 16 +-- src/Elements/ICMSIPI/Z0460.php | 16 +-- src/Elements/ICMSIPI/Z0500.php | 16 +-- src/Elements/ICMSIPI/Z0600.php | 16 +-- src/Elements/ICMSIPI/Z1001.php | 14 ++- src/Elements/ICMSIPI/Z1010.php | 22 ++-- src/Elements/ICMSIPI/Z1100.php | 13 ++- src/Elements/ICMSIPI/Z1105.php | 14 ++- src/Elements/ICMSIPI/Z1110.php | 14 ++- src/Elements/ICMSIPI/Z1200.php | 13 ++- src/Elements/ICMSIPI/Z1210.php | 13 ++- src/Elements/ICMSIPI/Z1250.php | 14 ++- src/Elements/ICMSIPI/Z1255.php | 14 ++- src/Elements/ICMSIPI/Z1300.php | 13 ++- src/Elements/ICMSIPI/Z1310.php | 13 ++- src/Elements/ICMSIPI/Z1320.php | 13 ++- src/Elements/ICMSIPI/Z1350.php | 14 ++- src/Elements/ICMSIPI/Z1360.php | 14 ++- src/Elements/ICMSIPI/Z1370.php | 14 ++- src/Elements/ICMSIPI/Z1390.php | 14 ++- src/Elements/ICMSIPI/Z1391.php | 14 ++- src/Elements/ICMSIPI/Z1400.php | 13 ++- src/Elements/ICMSIPI/Z1500.php | 13 ++- src/Elements/ICMSIPI/Z1510.php | 14 ++- src/Elements/ICMSIPI/Z1600.php | 14 ++- src/Elements/ICMSIPI/Z1601.php | 14 ++- src/Elements/ICMSIPI/Z1700.php | 14 ++- src/Elements/ICMSIPI/Z1710.php | 14 ++- src/Elements/ICMSIPI/Z1800.php | 14 ++- src/Elements/ICMSIPI/Z1900.php | 14 ++- src/Elements/ICMSIPI/Z1910.php | 14 ++- src/Elements/ICMSIPI/Z1920.php | 13 ++- src/Elements/ICMSIPI/Z1921.php | 14 ++- src/Elements/ICMSIPI/Z1922.php | 14 ++- src/Elements/ICMSIPI/Z1923.php | 14 ++- src/Elements/ICMSIPI/Z1925.php | 14 ++- src/Elements/ICMSIPI/Z1926.php | 13 ++- src/Elements/ICMSIPI/Z1960.php | 14 ++- src/Elements/ICMSIPI/Z1970.php | 14 ++- src/Elements/ICMSIPI/Z1975.php | 14 ++- src/Elements/ICMSIPI/Z1980.php | 14 ++- storage/layouts/ICMSIPI/v017/H001.json | 9 ++ storage/structure_EFDICMS_310.txt | 0 779 files changed, 4870 insertions(+), 3032 deletions(-) create mode 100755 examples/ICMS_IPI/BlocoB.php create mode 100755 examples/ICMS_IPI/BlocoC.php create mode 100755 examples/ICMS_IPI/BlocoE.php create mode 100755 examples/ICMS_IPI/BlocoG.php create mode 100755 examples/ICMS_IPI/BlocoUm.php rename examples/ICMS_IPI/{ => elementos}/B001.php (89%) rename examples/ICMS_IPI/{ => elementos}/B020.php (96%) rename examples/ICMS_IPI/{ => elementos}/B025.php (91%) rename examples/ICMS_IPI/{ => elementos}/B030.php (94%) rename examples/ICMS_IPI/{ => elementos}/B035.php (91%) rename examples/ICMS_IPI/{ => elementos}/B350.php (93%) rename examples/ICMS_IPI/{ => elementos}/B420.php (92%) rename examples/ICMS_IPI/{ => elementos}/B440.php (90%) rename examples/ICMS_IPI/{ => elementos}/B460.php (93%) rename examples/ICMS_IPI/{ => elementos}/B470.php (94%) rename examples/ICMS_IPI/{ => elementos}/B500.php (89%) rename examples/ICMS_IPI/{ => elementos}/B510.php (90%) rename examples/ICMS_IPI/{ => elementos}/C001.php (81%) rename examples/ICMS_IPI/{ => elementos}/C100.php (96%) rename examples/ICMS_IPI/{ => elementos}/C101.php (90%) rename examples/ICMS_IPI/{ => elementos}/C105.php (88%) rename examples/ICMS_IPI/{ => elementos}/C110.php (89%) rename examples/ICMS_IPI/{ => elementos}/C111.php (89%) rename examples/ICMS_IPI/{ => elementos}/C112.php (91%) rename examples/ICMS_IPI/{ => elementos}/C113.php (94%) rename examples/ICMS_IPI/{ => elementos}/C114.php (92%) rename examples/ICMS_IPI/{ => elementos}/C115.php (93%) rename examples/ICMS_IPI/{ => elementos}/C116.php (92%) rename examples/ICMS_IPI/{ => elementos}/C120.php (91%) rename examples/ICMS_IPI/{ => elementos}/C130.php (92%) rename examples/ICMS_IPI/{ => elementos}/C140.php (92%) rename examples/ICMS_IPI/{ => elementos}/C141.php (90%) rename examples/ICMS_IPI/{ => elementos}/C160.php (93%) rename examples/ICMS_IPI/{ => elementos}/C165.php (95%) rename examples/ICMS_IPI/{ => elementos}/C170.php (97%) rename examples/ICMS_IPI/{ => elementos}/C171.php (89%) rename examples/ICMS_IPI/{ => elementos}/C172.php (90%) rename examples/ICMS_IPI/{ => elementos}/C173.php (92%) rename examples/ICMS_IPI/{ => elementos}/C174.php (90%) rename examples/ICMS_IPI/{ => elementos}/C175.php (89%) rename examples/ICMS_IPI/{ => elementos}/C176.php (97%) rename examples/ICMS_IPI/{ => elementos}/C177.php (89%) rename examples/ICMS_IPI/{ => elementos}/C178.php (90%) rename examples/ICMS_IPI/{ => elementos}/C179.php (91%) rename examples/ICMS_IPI/{ => elementos}/C190.php (93%) rename examples/ICMS_IPI/{ => elementos}/C191.php (90%) rename examples/ICMS_IPI/{ => elementos}/C195.php (89%) rename examples/ICMS_IPI/{ => elementos}/C197.php (92%) rename examples/ICMS_IPI/{ => elementos}/C300.php (93%) rename examples/ICMS_IPI/{ => elementos}/C310.php (88%) rename examples/ICMS_IPI/{ => elementos}/C320.php (92%) rename examples/ICMS_IPI/{ => elementos}/C321.php (93%) rename examples/ICMS_IPI/{ => elementos}/C350.php (93%) rename examples/ICMS_IPI/{ => elementos}/C370.php (92%) rename examples/ICMS_IPI/{ => elementos}/C390.php (92%) rename examples/ICMS_IPI/{ => elementos}/C400.php (90%) rename examples/ICMS_IPI/{ => elementos}/C405.php (91%) rename examples/ICMS_IPI/{ => elementos}/C410.php (89%) rename examples/ICMS_IPI/{ => elementos}/C420.php (91%) rename examples/ICMS_IPI/{ => elementos}/C425.php (92%) rename examples/ICMS_IPI/{ => elementos}/C460.php (93%) rename examples/ICMS_IPI/{ => elementos}/C465.php (91%) rename examples/ICMS_IPI/{ => elementos}/C470.php (93%) rename examples/ICMS_IPI/{ => elementos}/C490.php (92%) rename examples/ICMS_IPI/{ => elementos}/C495.php (94%) rename examples/ICMS_IPI/{ => elementos}/C500.php (96%) rename examples/ICMS_IPI/{ => elementos}/C510.php (95%) rename examples/ICMS_IPI/{ => elementos}/C590.php (93%) rename examples/ICMS_IPI/{ => elementos}/C600.php (92%) rename examples/ICMS_IPI/{ => elementos}/C601.php (88%) rename examples/ICMS_IPI/{ => elementos}/C610.php (95%) rename examples/ICMS_IPI/{ => elementos}/C690.php (93%) rename examples/ICMS_IPI/{ => elementos}/C700.php (93%) rename examples/ICMS_IPI/{ => elementos}/C790.php (93%) rename examples/ICMS_IPI/{ => elementos}/C791.php (89%) rename examples/ICMS_IPI/{ => elementos}/C800.php (95%) rename examples/ICMS_IPI/{ => elementos}/C850.php (92%) rename examples/ICMS_IPI/{ => elementos}/C860.php (91%) rename examples/ICMS_IPI/{ => elementos}/C890.php (92%) rename examples/ICMS_IPI/{ => elementos}/D001.php (81%) rename examples/ICMS_IPI/{ => elementos}/D100.php (96%) rename examples/ICMS_IPI/{ => elementos}/D190.php (92%) rename examples/ICMS_IPI/{ => elementos}/D500.php (95%) rename examples/ICMS_IPI/{ => elementos}/E001.php (88%) rename examples/ICMS_IPI/{ => elementos}/E100.php (89%) rename examples/ICMS_IPI/{ => elementos}/E110.php (95%) rename examples/ICMS_IPI/{ => elementos}/E111.php (90%) rename examples/ICMS_IPI/{ => elementos}/E112.php (93%) rename examples/ICMS_IPI/{ => elementos}/E113.php (94%) rename examples/ICMS_IPI/{ => elementos}/E115.php (91%) rename examples/ICMS_IPI/{ => elementos}/E116.php (95%) rename examples/ICMS_IPI/{ => elementos}/E200.php (89%) rename examples/ICMS_IPI/{ => elementos}/E210.php (95%) rename examples/ICMS_IPI/{ => elementos}/E220.php (92%) rename examples/ICMS_IPI/{ => elementos}/E230.php (93%) rename examples/ICMS_IPI/{ => elementos}/E240.php (94%) rename examples/ICMS_IPI/{ => elementos}/E250.php (95%) rename examples/ICMS_IPI/{ => elementos}/E300.php (89%) rename examples/ICMS_IPI/{ => elementos}/E310.php (96%) rename examples/ICMS_IPI/{ => elementos}/E311.php (92%) rename examples/ICMS_IPI/{ => elementos}/E312.php (93%) rename examples/ICMS_IPI/{ => elementos}/E313.php (94%) rename examples/ICMS_IPI/{ => elementos}/E316.php (95%) rename examples/ICMS_IPI/{ => elementos}/E500.php (90%) rename examples/ICMS_IPI/{ => elementos}/E510.php (91%) rename examples/ICMS_IPI/{ => elementos}/E520.php (92%) rename examples/ICMS_IPI/{ => elementos}/E530.php (90%) rename examples/ICMS_IPI/{ => elementos}/E531.php (94%) rename examples/ICMS_IPI/{ => elementos}/G001.php (81%) rename examples/ICMS_IPI/{ => elementos}/G110.php (94%) rename examples/ICMS_IPI/{ => elementos}/G125.php (93%) rename examples/ICMS_IPI/{ => elementos}/G126.php (93%) rename examples/ICMS_IPI/{ => elementos}/G140.php (89%) rename examples/ICMS_IPI/{ => elementos}/H001.php (82%) rename examples/ICMS_IPI/{ => elementos}/H005.php (84%) rename examples/ICMS_IPI/{ => elementos}/H010.php (94%) rename examples/ICMS_IPI/{ => elementos}/H020.php (90%) rename examples/ICMS_IPI/{ => elementos}/K001.php (88%) rename examples/ICMS_IPI/{ => elementos}/K010.php (88%) rename examples/ICMS_IPI/{ => elementos}/K100.php (90%) rename examples/ICMS_IPI/{ => elementos}/K200.php (91%) rename examples/ICMS_IPI/{ => elementos}/K210.php (92%) rename examples/ICMS_IPI/{ => elementos}/K215.php (90%) rename examples/ICMS_IPI/{ => elementos}/K220.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z0000.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z0001.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z0005.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z0015.php (90%) rename examples/ICMS_IPI/{ => elementos}/Z0100.php (95%) rename examples/ICMS_IPI/{ => elementos}/Z0150.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z0175.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z0190.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z0200.php (95%) rename examples/ICMS_IPI/{ => elementos}/Z0205.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z0206.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z0210.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z0220.php (90%) rename examples/ICMS_IPI/{ => elementos}/Z0221.php (100%) rename examples/ICMS_IPI/{ => elementos}/Z0300.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z0305.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z0400.php (88%) rename examples/ICMS_IPI/{ => elementos}/Z0450.php (88%) rename examples/ICMS_IPI/{ => elementos}/Z0460.php (88%) rename examples/ICMS_IPI/{ => elementos}/Z0500.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z0600.php (88%) rename examples/ICMS_IPI/{ => elementos}/Z1001.php (87%) rename examples/ICMS_IPI/{ => elementos}/Z1010.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z1100.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1105.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1110.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1200.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1210.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z1300.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1310.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1320.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1350.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1360.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z1370.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z1390.php (87%) rename examples/ICMS_IPI/{ => elementos}/Z1391.php (95%) rename examples/ICMS_IPI/{ => elementos}/Z1400.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1500.php (95%) rename examples/ICMS_IPI/{ => elementos}/Z1510.php (95%) rename examples/ICMS_IPI/{ => elementos}/Z1600.php (90%) rename examples/ICMS_IPI/{ => elementos}/Z1601.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1700.php (92%) rename examples/ICMS_IPI/{ => elementos}/Z1710.php (89%) rename examples/ICMS_IPI/{ => elementos}/Z1800.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1900.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1910.php (88%) rename examples/ICMS_IPI/{ => elementos}/Z1920.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1921.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1922.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1923.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1925.php (91%) rename examples/ICMS_IPI/{ => elementos}/Z1926.php (94%) rename examples/ICMS_IPI/{ => elementos}/Z1960.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1970.php (93%) rename examples/ICMS_IPI/{ => elementos}/Z1975.php (90%) rename examples/ICMS_IPI/{ => elementos}/Z1980.php (93%) create mode 100755 examples/contribuicoes/Bloco0.php create mode 100755 examples/contribuicoes/Bloco1.php create mode 100755 examples/contribuicoes/BlocoA.php create mode 100755 examples/contribuicoes/BlocoC.php create mode 100755 examples/contribuicoes/BlocoD.php create mode 100755 examples/contribuicoes/BlocoF.php create mode 100755 examples/contribuicoes/BlocoI.php create mode 100755 examples/contribuicoes/BlocoM.php create mode 100755 examples/contribuicoes/BlocoP.php rename examples/contribuicoes/{ => elementos}/A001.php (89%) rename examples/contribuicoes/{ => elementos}/A010.php (88%) rename examples/contribuicoes/{ => elementos}/A100.php (96%) rename examples/contribuicoes/{ => elementos}/A110.php (89%) rename examples/contribuicoes/{ => elementos}/A111.php (89%) rename examples/contribuicoes/{ => elementos}/A120.php (93%) rename examples/contribuicoes/{ => elementos}/A170.php (95%) rename examples/contribuicoes/{ => elementos}/C001.php (87%) rename examples/contribuicoes/{ => elementos}/C010.php (89%) rename examples/contribuicoes/{ => elementos}/C100.php (96%) rename examples/contribuicoes/{ => elementos}/C110.php (89%) rename examples/contribuicoes/{ => elementos}/C111.php (89%) rename examples/contribuicoes/{ => elementos}/C120.php (91%) rename examples/contribuicoes/{ => elementos}/C170.php (97%) rename examples/contribuicoes/{ => elementos}/C175.php (95%) rename examples/contribuicoes/{ => elementos}/C180.php (92%) rename examples/contribuicoes/{ => elementos}/C181.php (93%) rename examples/contribuicoes/{ => elementos}/C185.php (93%) rename examples/contribuicoes/{ => elementos}/C188.php (89%) rename examples/contribuicoes/{ => elementos}/C190.php (92%) rename examples/contribuicoes/{ => elementos}/C191.php (94%) rename examples/contribuicoes/{ => elementos}/C195.php (94%) rename examples/contribuicoes/{ => elementos}/C198.php (89%) rename examples/contribuicoes/{ => elementos}/C199.php (92%) rename examples/contribuicoes/{ => elementos}/C380.php (92%) rename examples/contribuicoes/{ => elementos}/C381.php (93%) rename examples/contribuicoes/{ => elementos}/C385.php (93%) rename examples/contribuicoes/{ => elementos}/C395.php (92%) rename examples/contribuicoes/{ => elementos}/C396.php (94%) rename examples/contribuicoes/{ => elementos}/C400.php (94%) rename examples/contribuicoes/{ => elementos}/C405.php (91%) rename examples/contribuicoes/{ => elementos}/C481.php (93%) rename examples/contribuicoes/{ => elementos}/C489.php (89%) rename examples/contribuicoes/{ => elementos}/C491.php (94%) rename examples/contribuicoes/{ => elementos}/C495.php (94%) rename examples/contribuicoes/{ => elementos}/C499.php (89%) rename examples/contribuicoes/{ => elementos}/C500.php (94%) rename examples/contribuicoes/{ => elementos}/C501.php (92%) rename examples/contribuicoes/{ => elementos}/C505.php (92%) rename examples/contribuicoes/{ => elementos}/C509.php (89%) rename examples/contribuicoes/{ => elementos}/C600.php (95%) rename examples/contribuicoes/{ => elementos}/C601.php (91%) rename examples/contribuicoes/{ => elementos}/C605.php (92%) rename examples/contribuicoes/{ => elementos}/C609.php (89%) rename examples/contribuicoes/{ => elementos}/C800.php (95%) rename examples/contribuicoes/{ => elementos}/C810.php (94%) rename examples/contribuicoes/{ => elementos}/C820.php (94%) rename examples/contribuicoes/{ => elementos}/C830.php (89%) rename examples/contribuicoes/{ => elementos}/C860.php (91%) rename examples/contribuicoes/{ => elementos}/C870.php (94%) rename examples/contribuicoes/{ => elementos}/C880.php (94%) rename examples/contribuicoes/{ => elementos}/C890.php (89%) rename examples/contribuicoes/{ => elementos}/D001.php (87%) rename examples/contribuicoes/{ => elementos}/D010.php (88%) rename examples/contribuicoes/{ => elementos}/D100.php (96%) rename examples/contribuicoes/{ => elementos}/D101.php (92%) rename examples/contribuicoes/{ => elementos}/D105.php (93%) rename examples/contribuicoes/{ => elementos}/D111.php (89%) rename examples/contribuicoes/{ => elementos}/D200.php (92%) rename examples/contribuicoes/{ => elementos}/D201.php (92%) rename examples/contribuicoes/{ => elementos}/D205.php (92%) rename examples/contribuicoes/{ => elementos}/D209.php (89%) rename examples/contribuicoes/{ => elementos}/D300.php (95%) rename examples/contribuicoes/{ => elementos}/D309.php (89%) rename examples/contribuicoes/{ => elementos}/D350.php (96%) rename examples/contribuicoes/{ => elementos}/D359.php (89%) rename examples/contribuicoes/{ => elementos}/D500.php (95%) rename examples/contribuicoes/{ => elementos}/D501.php (92%) rename examples/contribuicoes/{ => elementos}/D505.php (92%) rename examples/contribuicoes/{ => elementos}/D509.php (89%) rename examples/contribuicoes/{ => elementos}/D600.php (95%) rename examples/contribuicoes/{ => elementos}/D601.php (92%) rename examples/contribuicoes/{ => elementos}/D605.php (93%) rename examples/contribuicoes/{ => elementos}/D609.php (89%) rename examples/contribuicoes/{ => elementos}/M001.php (87%) rename examples/contribuicoes/{ => elementos}/M100.php (94%) rename examples/contribuicoes/{ => elementos}/M105.php (94%) rename examples/contribuicoes/{ => elementos}/M110.php (91%) rename examples/contribuicoes/{ => elementos}/M115.php (93%) rename examples/contribuicoes/{ => elementos}/M200.php (94%) rename examples/contribuicoes/{ => elementos}/M205.php (89%) rename examples/contribuicoes/{ => elementos}/M210.php (95%) rename examples/contribuicoes/{ => elementos}/M211.php (91%) rename examples/contribuicoes/{ => elementos}/M220.php (91%) rename examples/contribuicoes/{ => elementos}/M225.php (93%) rename examples/contribuicoes/{ => elementos}/M230.php (92%) rename examples/contribuicoes/{ => elementos}/M300.php (92%) rename examples/contribuicoes/{ => elementos}/M350.php (91%) rename examples/contribuicoes/{ => elementos}/M400.php (91%) rename examples/contribuicoes/{ => elementos}/M410.php (91%) rename examples/contribuicoes/{ => elementos}/M500.php (94%) rename examples/contribuicoes/{ => elementos}/M505.php (94%) rename examples/contribuicoes/{ => elementos}/M510.php (91%) rename examples/contribuicoes/{ => elementos}/M515.php (93%) rename examples/contribuicoes/{ => elementos}/M600.php (94%) rename examples/contribuicoes/{ => elementos}/M605.php (89%) rename examples/contribuicoes/{ => elementos}/M610.php (94%) rename examples/contribuicoes/{ => elementos}/M611.php (91%) rename examples/contribuicoes/{ => elementos}/M620.php (91%) rename examples/contribuicoes/{ => elementos}/M625.php (93%) rename examples/contribuicoes/{ => elementos}/M630.php (92%) rename examples/contribuicoes/{ => elementos}/M700.php (93%) rename examples/contribuicoes/{ => elementos}/M800.php (91%) rename examples/contribuicoes/{ => elementos}/M810.php (90%) rename examples/contribuicoes/{ => elementos}/P001.php (87%) rename examples/contribuicoes/{ => elementos}/P010.php (88%) rename examples/contribuicoes/{ => elementos}/P100.php (95%) rename examples/contribuicoes/{ => elementos}/P110.php (90%) rename examples/contribuicoes/{ => elementos}/P199.php (89%) rename examples/contribuicoes/{ => elementos}/P200.php (92%) rename examples/contribuicoes/{ => elementos}/P210.php (91%) rename examples/contribuicoes/{ => elementos}/Z0000.php (95%) rename examples/contribuicoes/{ => elementos}/Z0001.php (87%) rename examples/contribuicoes/{ => elementos}/Z0035.php (91%) rename examples/contribuicoes/{ => elementos}/Z0100.php (95%) rename examples/contribuicoes/{ => elementos}/Z0110.php (90%) rename examples/contribuicoes/{ => elementos}/Z0111.php (92%) rename examples/contribuicoes/{ => elementos}/Z0120.php (90%) rename examples/contribuicoes/{ => elementos}/Z0140.php (93%) rename examples/contribuicoes/{ => elementos}/Z0145.php (91%) rename examples/contribuicoes/{ => elementos}/Z0150.php (94%) rename examples/contribuicoes/{ => elementos}/Z0190.php (89%) rename examples/contribuicoes/{ => elementos}/Z0200.php (93%) rename examples/contribuicoes/{ => elementos}/Z0205.php (91%) rename examples/contribuicoes/{ => elementos}/Z0206.php (88%) rename examples/contribuicoes/{ => elementos}/Z0208.php (90%) rename examples/contribuicoes/{ => elementos}/Z0400.php (89%) rename examples/contribuicoes/{ => elementos}/Z0450.php (89%) rename examples/contribuicoes/{ => elementos}/Z0500.php (93%) rename examples/contribuicoes/{ => elementos}/Z0600.php (90%) rename examples/contribuicoes/{ => elementos}/Z1001.php (87%) rename examples/contribuicoes/{ => elementos}/Z1010.php (92%) rename examples/contribuicoes/{ => elementos}/Z1020.php (90%) rename examples/contribuicoes/{ => elementos}/Z1100.php (95%) rename examples/contribuicoes/{ => elementos}/Z1101.php (96%) rename examples/contribuicoes/{ => elementos}/Z1102.php (90%) rename examples/contribuicoes/{ => elementos}/Z1200.php (93%) rename examples/contribuicoes/{ => elementos}/Z1210.php (94%) rename examples/contribuicoes/{ => elementos}/Z1220.php (90%) rename examples/contribuicoes/{ => elementos}/Z1300.php (92%) rename examples/contribuicoes/{ => elementos}/Z1500.php (95%) rename examples/contribuicoes/{ => elementos}/Z1501.php (96%) rename examples/contribuicoes/{ => elementos}/Z1502.php (90%) rename examples/contribuicoes/{ => elementos}/Z1600.php (93%) rename examples/contribuicoes/{ => elementos}/Z1610.php (94%) rename examples/contribuicoes/{ => elementos}/Z1620.php (90%) rename examples/contribuicoes/{ => elementos}/Z1700.php (92%) rename examples/contribuicoes/{ => elementos}/Z1800.php (93%) rename examples/contribuicoes/{ => elementos}/Z1809.php (89%) rename examples/contribuicoes/{ => elementos}/Z1900.php (94%) create mode 100644 examples/cria_lista_layout_vigencia.php create mode 100755 src/Elements/Contribuicoes/I010.php create mode 100755 src/Elements/Contribuicoes/I100.php create mode 100755 src/Elements/Contribuicoes/I199.php create mode 100755 src/Elements/Contribuicoes/I200.php create mode 100755 src/Elements/Contribuicoes/I299.php create mode 100755 src/Elements/Contribuicoes/I300.php create mode 100755 src/Elements/Contribuicoes/I399.php create mode 100755 src/Elements/Contribuicoes/M215.php create mode 100755 src/Elements/Contribuicoes/M615.php create mode 100755 storage/layouts/ICMSIPI/v017/H001.json mode change 100644 => 100755 storage/structure_EFDICMS_310.txt diff --git a/README.md b/README.md index 80d8cddc..889f16d6 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,9 @@ # sped-efd +https://stackoverflow.com/questions/8549496/how-can-i-create-a-function-dynamically + +- Contrib/M215 +- Contrib/M615 +- Contrib/Z1601 ## EM DESENVOLVIMENTO @@ -15,7 +20,21 @@ Classes para a geração do SPED EFD (fiscal ICMS IPI) e para o SPED EFD contrib ## Controle de Versões de Layouts do EFD -A ser estabelecido ! +O controle de versões é feito com jsons na pasta storage. + +#### storage/layouts/ICMSIPI/vigencias.json + +Este json contêm o codigo de leyout, versão, data inicial e a data final de vigência, obtido nas tabelas do Sped (vide portal Sped) + +Deve ser passado uma string com o codigo do layaut no construtor de cada bloco, este por sua vez irão passar esse codigo e os demais dados de vigencia para cada elemento que pertença a esse bloco. + +As estruturas construtivas de cada elemento e versão, deverão ser salvos como json na pasta denominada pelo codigo da versão. por exemplo: + +- storage/layouts/ICMSIPI/v017 + +Ao ser criado ou editado o elemento internamente ele deve conter a estrutura referente a ultima versão existente. + +Caso se necessite de versões anteriores a 017, estas deverão ser criadas como json elemente por elemento na pasta adequada. ## DETALHES diff --git a/examples/ICMS_IPI/BlocoB.php b/examples/ICMS_IPI/BlocoB.php new file mode 100755 index 00000000..b6eece7e --- /dev/null +++ b/examples/ICMS_IPI/BlocoB.php @@ -0,0 +1,19 @@ +elements as $key => $element) { + try { + $bC->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/ICMS_IPI/BlocoC.php b/examples/ICMS_IPI/BlocoC.php new file mode 100755 index 00000000..d9a8dcac --- /dev/null +++ b/examples/ICMS_IPI/BlocoC.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $bC->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/ICMS_IPI/BlocoD.php b/examples/ICMS_IPI/BlocoD.php index ff7b52ef..a06bb45f 100644 --- a/examples/ICMS_IPI/BlocoD.php +++ b/examples/ICMS_IPI/BlocoD.php @@ -7,6 +7,17 @@ use \stdClass; use NFePHP\EFD\Blocks\ICMSIPI\BlockD; +$bD = new BlockD('017'); +$std = new stdClass(); + +foreach ($bD->elements as $key => $element) { + try { + $bD->$key($std); + } catch (\Exception $e) { + } +} + + try { $bD = new BlockD(); diff --git a/examples/ICMS_IPI/BlocoE.php b/examples/ICMS_IPI/BlocoE.php new file mode 100755 index 00000000..ffc83a53 --- /dev/null +++ b/examples/ICMS_IPI/BlocoE.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/ICMS_IPI/BlocoG.php b/examples/ICMS_IPI/BlocoG.php new file mode 100755 index 00000000..b93ec916 --- /dev/null +++ b/examples/ICMS_IPI/BlocoG.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/ICMS_IPI/BlocoH.php b/examples/ICMS_IPI/BlocoH.php index 5fb21b24..b8a86542 100755 --- a/examples/ICMS_IPI/BlocoH.php +++ b/examples/ICMS_IPI/BlocoH.php @@ -3,23 +3,32 @@ ini_set('display_errors', 'On'); require_once '../../bootstrap.php'; -use \stdClass; use NFePHP\EFD\Blocks\ICMSIPI\BlockH; +$b = new BlockH('017'); +$std = new stdClass(); + +foreach ($b->elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + try { - $bH = new BlockH(); - - $std = new stdClass(); - $std->IND_MOV = 0; + $bH = new BlockH('017'); + + $std = new \stdClass(); + $std->IND_MOV = 0; $bH->h001($std); - - $std = new stdClass(); - $std->DT_INV = '31102017'; + + $std = new \stdClass(); + $std->DT_INV = '31102017'; $std->VL_INV = 3457892.939392882; $std->MOT_INV = '01'; $bH->h005($std); - - $std = new stdClass(); + + $std = new \stdClass(); $std->COD_ITEM = 'ABC230'; $std->UNID = 'KG'; $std->QTD = 1234.50; @@ -31,14 +40,14 @@ //$std->COD_CTA = 'código da conta seilá'; //$std->VL_ITEM_IR = 12345.987; $bH->h010($std); - - $std = new stdClass(); + + $std = new \stdClass(); $std->CST_ICMS = '123'; $std->BC_ICMS = 36207.885; $std->VL_ICMS = 6517.4193; $bH->h020($std); - - $std = new stdClass(); + + $std = new \stdClass(); $std->COD_ITEM = '230KCC'; $std->UNID = 'KG'; $std->QTD = 2.50; @@ -50,9 +59,15 @@ $std->COD_CTA = 'código da conta seilá'; $std->VL_ITEM_IR = 12345.987; $bH->h010($std); - + $txt = str_replace("\n", "
", $bH->get()); echo $txt.'
'; + + echo "

Errors

"; + echo "
";
+    print_r($bH->errors);
+    echo "
"; + } catch (\Exception $e) { echo $e->getMessage(); } diff --git a/examples/ICMS_IPI/BlocoK.php b/examples/ICMS_IPI/BlocoK.php index f0c286e9..cc3d8a1a 100755 --- a/examples/ICMS_IPI/BlocoK.php +++ b/examples/ICMS_IPI/BlocoK.php @@ -6,18 +6,29 @@ use \stdClass; use NFePHP\EFD\Blocks\ICMSIPI\BlockK; +$b = new BlockK('017'); +$std = new stdClass(); + +foreach ($b->elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + try { $bK = new BlockK(); - + $std = new stdClass(); - $std->IND_MOV = 0; + $std->IND_MOV = 0; $bK->k001($std); - + $std = new stdClass(); - $std->DT_INI = '30062017'; + $std->DT_INI = '30062017'; $std->DT_FIN = '30112017'; $bK->k100($std); - + $std = new stdClass(); $std->DT_EST = '01112016'; $std->COD_ITEM = '123456'; @@ -25,8 +36,8 @@ $std->IND_EST = 0; $std->COD_PART = null; $bK->k200($std); - - + + $txt = str_replace("\n", "
", $bK->get()); echo $txt.'
'; } catch (\Exception $e) { diff --git a/examples/ICMS_IPI/BlocoUm.php b/examples/ICMS_IPI/BlocoUm.php new file mode 100755 index 00000000..3d5118a1 --- /dev/null +++ b/examples/ICMS_IPI/BlocoUm.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/ICMS_IPI/BlocoZero.php b/examples/ICMS_IPI/BlocoZero.php index d567e1f9..4674e0db 100755 --- a/examples/ICMS_IPI/BlocoZero.php +++ b/examples/ICMS_IPI/BlocoZero.php @@ -3,16 +3,27 @@ ini_set('display_errors', 'On'); require_once '../../bootstrap.php'; -use \stdClass; +use stdClass; use NFePHP\EFD\Blocks\ICMSIPI\Block0; +//grava json das propriedades dos elementos dos blocos para a versão 017 +$b = new Block0('017'); +$std = new stdClass(); +foreach ($b->elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + try { $b0 = new Block0(); - + //0000 Obrigatório [1:1] //Abertura do Arquivo Digital e Identificação da entidade $std = new stdClass(); - $std->cod_ver = '001'; + $std->cod_ver = '001'; $std->cod_fin = 0; $std->dt_ini = '01062008'; $std->dt_fin = '30062008'; @@ -27,13 +38,13 @@ $std->ind_perfil = 'B'; $std->ind_ativ = 0; $b0->z0000($std); - + //0001 Obrigatório //Abertura do Bloco 0 $std = new stdClass(); - $std->ind_mov = 1; + $std->ind_mov = 1; $b0->z0001($std); - + //0005 Obrigatório //Dados Complementares da entidade $std = new stdClass(); @@ -47,14 +58,14 @@ $std->FAX = '1155552222'; $std->EMAIL = 'ciclano@mail.com'; $b0->z0005($std); - + //0015 Opcional deve ser incluso apenas se existir //Dados do Contribuinte Substituto ou Responsável pelo ICMS Destino $std = new stdClass(); $std->uf_st = 'PR'; $std->ie_st = '12345678901234'; $b0->z0015($std); - + //0100 Obrigatório //Dados do Contabilista $std = new stdClass(); @@ -72,7 +83,7 @@ $std->EMAIL = 'ciclano@mail.com.br'; $std->COD_MUN = '0123456'; $b0->z0100($std); - + //0150 Opcional //Tabela de Cadastro do Participante $std = new stdClass(); @@ -89,13 +100,13 @@ $std->COMPL = 'Sala 1'; $std->BAIRRO = 'Um de Dois'; $b0->z0150($std); - + $std = new stdClass(); $std->DT_ALT = '12082018'; $std->NR_CAMPO = '08'; $std->CONT_ANT = '3514536'; //campo 8 COD_MUN do registro 0150 $b0->z0175($std); - + $std = new stdClass(); $std->UNID = 'mts'; $std->DESCR = 'metros'; @@ -108,7 +119,7 @@ $std->UNID = 'un'; $std->DESCR = 'unidade'; $b0->z0190($std); - + $std = new stdClass(); $std->COD_ITEM = '123456'; $std->DESCR_ITEM = 'Produto descrito na nota fiscal'; @@ -123,14 +134,14 @@ $std->ALIQ_ICMS = 18; $std->CEST = '1234567'; $b0->z0200($std); - + $std = new stdClass(); $std->DESCR_ANT_ITEM = 'Produto anterior descrito na nota fiscal'; $std->DT_INI = '01012005'; $std->DT_FIM = '01052008'; $std->COD_ANT_ITEM = '654321'; $b0->z0205($std); - + $txt = str_replace("\n", "
", $b0->get()); echo $txt.'
'; } catch (\Exception $e) { diff --git a/examples/ICMS_IPI/EFDICMS.php b/examples/ICMS_IPI/EFDICMS.php index 914625da..bf0e470f 100755 --- a/examples/ICMS_IPI/EFDICMS.php +++ b/examples/ICMS_IPI/EFDICMS.php @@ -16,7 +16,7 @@ //Construção do Bloco 0 - Bloco Inicial //IMPORTANTE: a ORDEM afeta o resultado portanto é muito importante //carregar os elementos na ordem correta - $b0 = new Block0(); + $b0 = new Block0('017'); //0000 Obrigatório [1:1] //Abertura do Arquivo Digital e Identificação da entidade diff --git a/examples/ICMS_IPI/B001.php b/examples/ICMS_IPI/elementos/B001.php similarity index 89% rename from examples/ICMS_IPI/B001.php rename to examples/ICMS_IPI/elementos/B001.php index ae1b70c6..79db1703 100755 --- a/examples/ICMS_IPI/B001.php +++ b/examples/ICMS_IPI/elementos/B001.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/B420.php b/examples/ICMS_IPI/elementos/B420.php similarity index 92% rename from examples/ICMS_IPI/B420.php rename to examples/ICMS_IPI/elementos/B420.php index 0435f12c..7f7c41be 100755 --- a/examples/ICMS_IPI/B420.php +++ b/examples/ICMS_IPI/elementos/B420.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/B440.php b/examples/ICMS_IPI/elementos/B440.php similarity index 90% rename from examples/ICMS_IPI/B440.php rename to examples/ICMS_IPI/elementos/B440.php index 2a469558..ef25de42 100755 --- a/examples/ICMS_IPI/B440.php +++ b/examples/ICMS_IPI/elementos/B440.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/B460.php b/examples/ICMS_IPI/elementos/B460.php similarity index 93% rename from examples/ICMS_IPI/B460.php rename to examples/ICMS_IPI/elementos/B460.php index 14b616bc..e3fa944c 100755 --- a/examples/ICMS_IPI/B460.php +++ b/examples/ICMS_IPI/elementos/B460.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/B470.php b/examples/ICMS_IPI/elementos/B470.php similarity index 94% rename from examples/ICMS_IPI/B470.php rename to examples/ICMS_IPI/elementos/B470.php index f8bf4b50..617fd8b2 100755 --- a/examples/ICMS_IPI/B470.php +++ b/examples/ICMS_IPI/elementos/B470.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/B500.php b/examples/ICMS_IPI/elementos/B500.php similarity index 89% rename from examples/ICMS_IPI/B500.php rename to examples/ICMS_IPI/elementos/B500.php index 5f791044..04229f47 100755 --- a/examples/ICMS_IPI/B500.php +++ b/examples/ICMS_IPI/elementos/B500.php @@ -1,7 +1,7 @@ '; } catch (\Exception $e) { echo $e->getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/C001.php b/examples/ICMS_IPI/elementos/C001.php similarity index 81% rename from examples/ICMS_IPI/C001.php rename to examples/ICMS_IPI/elementos/C001.php index e581cdeb..67f99693 100755 --- a/examples/ICMS_IPI/C001.php +++ b/examples/ICMS_IPI/elementos/C001.php @@ -1,12 +1,12 @@ IND_MOV = 0; +$std->IND_MOV = 0; try { $b0 = new C001($std); diff --git a/examples/ICMS_IPI/C100.php b/examples/ICMS_IPI/elementos/C100.php similarity index 96% rename from examples/ICMS_IPI/C100.php rename to examples/ICMS_IPI/elementos/C100.php index 6b41c6a3..ade84087 100755 --- a/examples/ICMS_IPI/C100.php +++ b/examples/ICMS_IPI/elementos/C100.php @@ -1,7 +1,7 @@ getMessage(); } -echo '|C600|
'; \ No newline at end of file +echo '|C600|
'; diff --git a/examples/ICMS_IPI/C601.php b/examples/ICMS_IPI/elementos/C601.php similarity index 88% rename from examples/ICMS_IPI/C601.php rename to examples/ICMS_IPI/elementos/C601.php index 81eaa194..68a6c0f9 100755 --- a/examples/ICMS_IPI/C601.php +++ b/examples/ICMS_IPI/elementos/C601.php @@ -1,7 +1,7 @@ IND_MOV = 0; +$std->IND_MOV = 0; try { $b0 = new D001($std); diff --git a/examples/ICMS_IPI/D100.php b/examples/ICMS_IPI/elementos/D100.php similarity index 96% rename from examples/ICMS_IPI/D100.php rename to examples/ICMS_IPI/elementos/D100.php index 19ed0ca2..98f8b5ad 100755 --- a/examples/ICMS_IPI/D100.php +++ b/examples/ICMS_IPI/elementos/D100.php @@ -1,7 +1,7 @@ IND_AJ = '0'; $std->VL_AJ = 0.80; -$std->COD_AJ = '001'; +$std->COD_AJ = '001'; $std->IND_DOC = '3'; $std->NUM_DOC = '23080234632701'; $std->DESCR_AJ = 'Descrição detalhada do ajuste, com citação dos documentos fiscais.'; diff --git a/examples/ICMS_IPI/E531.php b/examples/ICMS_IPI/elementos/E531.php similarity index 94% rename from examples/ICMS_IPI/E531.php rename to examples/ICMS_IPI/elementos/E531.php index 2f525628..dee5600d 100755 --- a/examples/ICMS_IPI/E531.php +++ b/examples/ICMS_IPI/elementos/E531.php @@ -1,7 +1,7 @@ IND_MOV = 0; +$std->IND_MOV = 0; try { $b0 = new G001($std); diff --git a/examples/ICMS_IPI/G110.php b/examples/ICMS_IPI/elementos/G110.php similarity index 94% rename from examples/ICMS_IPI/G110.php rename to examples/ICMS_IPI/elementos/G110.php index d134d9c0..8ce74bc5 100755 --- a/examples/ICMS_IPI/G110.php +++ b/examples/ICMS_IPI/elementos/G110.php @@ -1,7 +1,7 @@ IND_MOV = 0; +$std->IND_MOV = 0; try { $b0 = new H001($std); diff --git a/examples/ICMS_IPI/H005.php b/examples/ICMS_IPI/elementos/H005.php similarity index 84% rename from examples/ICMS_IPI/H005.php rename to examples/ICMS_IPI/elementos/H005.php index 97ea2279..002abfd8 100755 --- a/examples/ICMS_IPI/H005.php +++ b/examples/ICMS_IPI/elementos/H005.php @@ -1,13 +1,13 @@ DT_INV = '31102017'; +$std->DT_INV = '31102017'; $std->VL_INV = 3457892.939392882; $std->MOT_INV = '01'; diff --git a/examples/ICMS_IPI/H010.php b/examples/ICMS_IPI/elementos/H010.php similarity index 94% rename from examples/ICMS_IPI/H010.php rename to examples/ICMS_IPI/elementos/H010.php index c289f97c..cc4f7946 100755 --- a/examples/ICMS_IPI/H010.php +++ b/examples/ICMS_IPI/elementos/H010.php @@ -1,7 +1,7 @@ cod_ver = '001'; +$std->cod_ver = '001'; $std->cod_fin = 0; $std->dt_ini = '01062008'; $std->dt_fin = '30062008'; diff --git a/examples/ICMS_IPI/Z0001.php b/examples/ICMS_IPI/elementos/Z0001.php similarity index 89% rename from examples/ICMS_IPI/Z0001.php rename to examples/ICMS_IPI/elementos/Z0001.php index 9f2c439c..73f9025f 100755 --- a/examples/ICMS_IPI/Z0001.php +++ b/examples/ICMS_IPI/elementos/Z0001.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1210.php b/examples/ICMS_IPI/elementos/Z1210.php similarity index 92% rename from examples/ICMS_IPI/Z1210.php rename to examples/ICMS_IPI/elementos/Z1210.php index e91d6771..defe4886 100755 --- a/examples/ICMS_IPI/Z1210.php +++ b/examples/ICMS_IPI/elementos/Z1210.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1300.php b/examples/ICMS_IPI/elementos/Z1300.php similarity index 94% rename from examples/ICMS_IPI/Z1300.php rename to examples/ICMS_IPI/elementos/Z1300.php index 584c80e0..b30634fc 100755 --- a/examples/ICMS_IPI/Z1300.php +++ b/examples/ICMS_IPI/elementos/Z1300.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1310.php b/examples/ICMS_IPI/elementos/Z1310.php similarity index 93% rename from examples/ICMS_IPI/Z1310.php rename to examples/ICMS_IPI/elementos/Z1310.php index 2f6472d0..3f7c8a05 100755 --- a/examples/ICMS_IPI/Z1310.php +++ b/examples/ICMS_IPI/elementos/Z1310.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1320.php b/examples/ICMS_IPI/elementos/Z1320.php similarity index 94% rename from examples/ICMS_IPI/Z1320.php rename to examples/ICMS_IPI/elementos/Z1320.php index 31a9f4fb..b4e68692 100755 --- a/examples/ICMS_IPI/Z1320.php +++ b/examples/ICMS_IPI/elementos/Z1320.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1350.php b/examples/ICMS_IPI/elementos/Z1350.php similarity index 91% rename from examples/ICMS_IPI/Z1350.php rename to examples/ICMS_IPI/elementos/Z1350.php index ca63c04b..5af87130 100755 --- a/examples/ICMS_IPI/Z1350.php +++ b/examples/ICMS_IPI/elementos/Z1350.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1360.php b/examples/ICMS_IPI/elementos/Z1360.php similarity index 89% rename from examples/ICMS_IPI/Z1360.php rename to examples/ICMS_IPI/elementos/Z1360.php index f1ae2c84..c17cd16e 100755 --- a/examples/ICMS_IPI/Z1360.php +++ b/examples/ICMS_IPI/elementos/Z1360.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1370.php b/examples/ICMS_IPI/elementos/Z1370.php similarity index 89% rename from examples/ICMS_IPI/Z1370.php rename to examples/ICMS_IPI/elementos/Z1370.php index 2d3e3e37..b80a08da 100755 --- a/examples/ICMS_IPI/Z1370.php +++ b/examples/ICMS_IPI/elementos/Z1370.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1390.php b/examples/ICMS_IPI/elementos/Z1390.php similarity index 87% rename from examples/ICMS_IPI/Z1390.php rename to examples/ICMS_IPI/elementos/Z1390.php index 38879e1b..309daf17 100755 --- a/examples/ICMS_IPI/Z1390.php +++ b/examples/ICMS_IPI/elementos/Z1390.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1391.php b/examples/ICMS_IPI/elementos/Z1391.php similarity index 95% rename from examples/ICMS_IPI/Z1391.php rename to examples/ICMS_IPI/elementos/Z1391.php index afffc484..3667470a 100755 --- a/examples/ICMS_IPI/Z1391.php +++ b/examples/ICMS_IPI/elementos/Z1391.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1400.php b/examples/ICMS_IPI/elementos/Z1400.php similarity index 91% rename from examples/ICMS_IPI/Z1400.php rename to examples/ICMS_IPI/elementos/Z1400.php index 2f1b4bbb..9cecd734 100755 --- a/examples/ICMS_IPI/Z1400.php +++ b/examples/ICMS_IPI/elementos/Z1400.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1500.php b/examples/ICMS_IPI/elementos/Z1500.php similarity index 95% rename from examples/ICMS_IPI/Z1500.php rename to examples/ICMS_IPI/elementos/Z1500.php index a4487c0a..31a4e0e0 100755 --- a/examples/ICMS_IPI/Z1500.php +++ b/examples/ICMS_IPI/elementos/Z1500.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1510.php b/examples/ICMS_IPI/elementos/Z1510.php similarity index 95% rename from examples/ICMS_IPI/Z1510.php rename to examples/ICMS_IPI/elementos/Z1510.php index 3502761d..165ca04c 100755 --- a/examples/ICMS_IPI/Z1510.php +++ b/examples/ICMS_IPI/elementos/Z1510.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1600.php b/examples/ICMS_IPI/elementos/Z1600.php similarity index 90% rename from examples/ICMS_IPI/Z1600.php rename to examples/ICMS_IPI/elementos/Z1600.php index 5e3c36b9..a8d94a6c 100755 --- a/examples/ICMS_IPI/Z1600.php +++ b/examples/ICMS_IPI/elementos/Z1600.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1601.php b/examples/ICMS_IPI/elementos/Z1601.php similarity index 91% rename from examples/ICMS_IPI/Z1601.php rename to examples/ICMS_IPI/elementos/Z1601.php index 2f22ed9d..0714de9d 100644 --- a/examples/ICMS_IPI/Z1601.php +++ b/examples/ICMS_IPI/elementos/Z1601.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1710.php b/examples/ICMS_IPI/elementos/Z1710.php similarity index 89% rename from examples/ICMS_IPI/Z1710.php rename to examples/ICMS_IPI/elementos/Z1710.php index e66ac0d4..e93811a7 100755 --- a/examples/ICMS_IPI/Z1710.php +++ b/examples/ICMS_IPI/elementos/Z1710.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1800.php b/examples/ICMS_IPI/elementos/Z1800.php similarity index 93% rename from examples/ICMS_IPI/Z1800.php rename to examples/ICMS_IPI/elementos/Z1800.php index d95ffc4a..4ddc03d8 100755 --- a/examples/ICMS_IPI/Z1800.php +++ b/examples/ICMS_IPI/elementos/Z1800.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1900.php b/examples/ICMS_IPI/elementos/Z1900.php similarity index 91% rename from examples/ICMS_IPI/Z1900.php rename to examples/ICMS_IPI/elementos/Z1900.php index 1efabdaf..3a08f711 100755 --- a/examples/ICMS_IPI/Z1900.php +++ b/examples/ICMS_IPI/elementos/Z1900.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1910.php b/examples/ICMS_IPI/elementos/Z1910.php similarity index 88% rename from examples/ICMS_IPI/Z1910.php rename to examples/ICMS_IPI/elementos/Z1910.php index 177498c9..4b622355 100755 --- a/examples/ICMS_IPI/Z1910.php +++ b/examples/ICMS_IPI/elementos/Z1910.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1920.php b/examples/ICMS_IPI/elementos/Z1920.php similarity index 94% rename from examples/ICMS_IPI/Z1920.php rename to examples/ICMS_IPI/elementos/Z1920.php index feb741a6..3611c1aa 100755 --- a/examples/ICMS_IPI/Z1920.php +++ b/examples/ICMS_IPI/elementos/Z1920.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1921.php b/examples/ICMS_IPI/elementos/Z1921.php similarity index 91% rename from examples/ICMS_IPI/Z1921.php rename to examples/ICMS_IPI/elementos/Z1921.php index 29c8d263..34dfce41 100755 --- a/examples/ICMS_IPI/Z1921.php +++ b/examples/ICMS_IPI/elementos/Z1921.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1922.php b/examples/ICMS_IPI/elementos/Z1922.php similarity index 93% rename from examples/ICMS_IPI/Z1922.php rename to examples/ICMS_IPI/elementos/Z1922.php index 1553cbf4..7c63e9c8 100755 --- a/examples/ICMS_IPI/Z1922.php +++ b/examples/ICMS_IPI/elementos/Z1922.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1923.php b/examples/ICMS_IPI/elementos/Z1923.php similarity index 94% rename from examples/ICMS_IPI/Z1923.php rename to examples/ICMS_IPI/elementos/Z1923.php index e6f79659..c8ac94fc 100755 --- a/examples/ICMS_IPI/Z1923.php +++ b/examples/ICMS_IPI/elementos/Z1923.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1925.php b/examples/ICMS_IPI/elementos/Z1925.php similarity index 91% rename from examples/ICMS_IPI/Z1925.php rename to examples/ICMS_IPI/elementos/Z1925.php index 97ce4bfe..e36b8f55 100755 --- a/examples/ICMS_IPI/Z1925.php +++ b/examples/ICMS_IPI/elementos/Z1925.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1926.php b/examples/ICMS_IPI/elementos/Z1926.php similarity index 94% rename from examples/ICMS_IPI/Z1926.php rename to examples/ICMS_IPI/elementos/Z1926.php index 9d2685df..46eac1f7 100755 --- a/examples/ICMS_IPI/Z1926.php +++ b/examples/ICMS_IPI/elementos/Z1926.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1960.php b/examples/ICMS_IPI/elementos/Z1960.php similarity index 93% rename from examples/ICMS_IPI/Z1960.php rename to examples/ICMS_IPI/elementos/Z1960.php index 09c3c52a..170563d8 100755 --- a/examples/ICMS_IPI/Z1960.php +++ b/examples/ICMS_IPI/elementos/Z1960.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1970.php b/examples/ICMS_IPI/elementos/Z1970.php similarity index 93% rename from examples/ICMS_IPI/Z1970.php rename to examples/ICMS_IPI/elementos/Z1970.php index 0569c3ac..c723c522 100755 --- a/examples/ICMS_IPI/Z1970.php +++ b/examples/ICMS_IPI/elementos/Z1970.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1975.php b/examples/ICMS_IPI/elementos/Z1975.php similarity index 90% rename from examples/ICMS_IPI/Z1975.php rename to examples/ICMS_IPI/elementos/Z1975.php index 9352ff24..8ec39f0f 100755 --- a/examples/ICMS_IPI/Z1975.php +++ b/examples/ICMS_IPI/elementos/Z1975.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/ICMS_IPI/Z1980.php b/examples/ICMS_IPI/elementos/Z1980.php similarity index 93% rename from examples/ICMS_IPI/Z1980.php rename to examples/ICMS_IPI/elementos/Z1980.php index 9af9469d..4d6a07ad 100755 --- a/examples/ICMS_IPI/Z1980.php +++ b/examples/ICMS_IPI/elementos/Z1980.php @@ -1,7 +1,7 @@ getMessage(); -} \ No newline at end of file +} diff --git a/examples/contribuicoes/Bloco0.php b/examples/contribuicoes/Bloco0.php new file mode 100755 index 00000000..f7642011 --- /dev/null +++ b/examples/contribuicoes/Bloco0.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/Bloco1.php b/examples/contribuicoes/Bloco1.php new file mode 100755 index 00000000..9dfeed23 --- /dev/null +++ b/examples/contribuicoes/Bloco1.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoA.php b/examples/contribuicoes/BlocoA.php new file mode 100755 index 00000000..a3eec719 --- /dev/null +++ b/examples/contribuicoes/BlocoA.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoC.php b/examples/contribuicoes/BlocoC.php new file mode 100755 index 00000000..72379ff6 --- /dev/null +++ b/examples/contribuicoes/BlocoC.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoD.php b/examples/contribuicoes/BlocoD.php new file mode 100755 index 00000000..8b0b4ba8 --- /dev/null +++ b/examples/contribuicoes/BlocoD.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoF.php b/examples/contribuicoes/BlocoF.php new file mode 100755 index 00000000..6974307f --- /dev/null +++ b/examples/contribuicoes/BlocoF.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoI.php b/examples/contribuicoes/BlocoI.php new file mode 100755 index 00000000..7fa8df2f --- /dev/null +++ b/examples/contribuicoes/BlocoI.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoM.php b/examples/contribuicoes/BlocoM.php new file mode 100755 index 00000000..b090c96c --- /dev/null +++ b/examples/contribuicoes/BlocoM.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/BlocoP.php b/examples/contribuicoes/BlocoP.php new file mode 100755 index 00000000..73b0d5be --- /dev/null +++ b/examples/contribuicoes/BlocoP.php @@ -0,0 +1,18 @@ +elements as $key => $element) { + try { + $b->$key($std); + } catch (\Exception $e) { + } +} + + diff --git a/examples/contribuicoes/A001.php b/examples/contribuicoes/elementos/A001.php similarity index 89% rename from examples/contribuicoes/A001.php rename to examples/contribuicoes/elementos/A001.php index 195e5beb..5aa498a8 100644 --- a/examples/contribuicoes/A001.php +++ b/examples/contribuicoes/elementos/A001.php @@ -6,7 +6,7 @@ error_reporting(E_ALL); ini_set('display_errors', 'On'); -require_once '../../bootstrap.php'; +require_once '../../../bootstrap.php'; use NFePHP\EFD\Elements\Contribuicoes\A001; diff --git a/examples/contribuicoes/A010.php b/examples/contribuicoes/elementos/A010.php similarity index 88% rename from examples/contribuicoes/A010.php rename to examples/contribuicoes/elementos/A010.php index 098cfce9..2f667adb 100644 --- a/examples/contribuicoes/A010.php +++ b/examples/contribuicoes/elementos/A010.php @@ -1,7 +1,7 @@ ['versao' => '1.01', 'inicio' => '01012009', 'fim' => '31122009'], + '003' => ['versao' => '1.02', 'inicio' => '01012010', 'fim' => '31122010'], + '004' => ['versao' => '1.03', 'inicio' => '01012011', 'fim' => '31122011'], + '005' => ['versao' => '1.04', 'inicio' => '01012012', 'fim' => '30062012'], + '006' => ['versao' => '1.05', 'inicio' => '01072012', 'fim' => '31122012'], + '007' => ['versao' => '1.06', 'inicio' => '01012013', 'fim' => '31122013'], + '008' => ['versao' => '1.07', 'inicio' => '01012014', 'fim' => '31122014'], + '009' => ['versao' => '1.08', 'inicio' => '01012015', 'fim' => '31122015'], + '010' => ['versao' => '1.09', 'inicio' => '01012016', 'fim' => '31122016'], + '011' => ['versao' => '1.10', 'inicio' => '01012017', 'fim' => '31122017'], + '012' => ['versao' => '1.11', 'inicio' => '01012018', 'fim' => '31122018'], + '013' => ['versao' => '1.12', 'inicio' => '01012019', 'fim' => '31122019'], + '014' => ['versao' => '1.13', 'inicio' => '01012020', 'fim' => '31122020'], + '015' => ['versao' => '1.14', 'inicio' => '01012021', 'fim' => '31122021'], + '016' => ['versao' => '1.15', 'inicio' => '01012022', 'fim' => '31122022'], + '017' => ['versao' => '1.16', 'inicio' => '01012023', 'fim' => ''], +]; + +file_put_contents(__DIR__.'/../storage/layouts/ICMSIPI/vigencias.json', json_encode($layouts, JSON_PRETTY_PRINT)); + +$layouts = [ + '002' => ['versao' => '101', 'inicio' => '01012011', 'fim' => '30062012'], + '003' => ['versao' => '101', 'inicio' => '01072012', 'fim' => '31052018'], + '004' => ['versao' => '101', 'inicio' => '01062018', 'fim' => '31122018'], + '005' => ['versao' => '101', 'inicio' => '01012019', 'fim' => '31122019'], + '006' => ['versao' => '101', 'inicio' => '01012020', 'fim' => ''] +]; + +file_put_contents(__DIR__.'/../storage/layouts/Contribuicoes/vigencias.json', json_encode($layouts, JSON_PRETTY_PRINT)); diff --git a/src/Blocks/Contribuicoes/Block0.php b/src/Blocks/Contribuicoes/Block0.php index de9b6d4b..06f9d257 100755 --- a/src/Blocks/Contribuicoes/Block0.php +++ b/src/Blocks/Contribuicoes/Block0.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco 0 (inicial) EFD Contribuições @@ -13,8 +12,28 @@ * constituintes listados. * NOTA: usada a letra z no inicio do elemento devido ao fato de não poder chamar classes * apenas com numeros e também para não confundir com os elementos do bloco B + * + * @method Elements\Z0000 z0000(\stdClass $std) Constructor element 0000 + * @method Elements\Z0001 z0001(\stdClass $std) Constructor element 0001 + * @method Elements\Z0035 z0035(\stdClass $std) Constructor element 0035 + * @method Elements\Z0100 z0100(\stdClass $std) Constructor element 0100 + * @method Elements\Z0110 z0110(\stdClass $std) Constructor element 0110 + * @method Elements\Z0111 z0111(\stdClass $std) Constructor element 0111 + * @method Elements\Z0120 z0120(\stdClass $std) Constructor element 0120 + * @method Elements\Z0140 z0140(\stdClass $std) Constructor element 0140 + * @method Elements\Z0145 z0145(\stdClass $std) Constructor element 0145 + * @method Elements\Z0150 z0150(\stdClass $std) Constructor element 0150 + * @method Elements\Z0190 z0190(\stdClass $std) Constructor element 0190 + * @method Elements\Z0200 z0200(\stdClass $std) Constructor element 0200 + * @method Elements\Z0205 z0205(\stdClass $std) Constructor element 0205 + * @method Elements\Z0206 z0206(\stdClass $std) Constructor element 0206 + * @method Elements\Z0208 z0208(\stdClass $std) Constructor element 0208 + * @method Elements\Z0400 z0400(\stdClass $std) Constructor element 0400 + * @method Elements\Z0450 z0450(\stdClass $std) Constructor element 0450 + * @method Elements\Z0500 z0500(\stdClass $std) Constructor element 0500 + * @method Elements\Z0600 z0600(\stdClass $std) Constructor element 0600 */ -final class Block0 extends Block implements BlockInterface +final class Block0 extends Block { const TOTAL = '0990'; @@ -40,8 +59,10 @@ final class Block0 extends Block implements BlockInterface 'z0600' => ['class' => Elements\Z0600::class, 'level' => 2, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = '0990'; } } diff --git a/src/Blocks/Contribuicoes/Block1.php b/src/Blocks/Contribuicoes/Block1.php index 426f3a24..a4e502c8 100755 --- a/src/Blocks/Contribuicoes/Block1.php +++ b/src/Blocks/Contribuicoes/Block1.php @@ -4,13 +4,33 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco 1 EFD Contribuições * + * @method Elements\Z1001 z1001(\stdClass $std) Constructor element 1001 + * @method Elements\Z1010 z1010(\stdClass $std) Constructor element 1010 + * @method Elements\Z1020 z1020(\stdClass $std) Constructor element 1020 + * @method Elements\Z1050 z1050(\stdClass $std) Constructor element 1050 + * @method Elements\Z1100 z1100(\stdClass $std) Constructor element 1100 + * @method Elements\Z1101 z1101(\stdClass $std) Constructor element 1101 + * @method Elements\Z1102 z1102(\stdClass $std) Constructor element 1102 + * @method Elements\Z1200 z1200(\stdClass $std) Constructor element 1200 + * @method Elements\Z1210 z1210(\stdClass $std) Constructor element 1210 + * @method Elements\Z1220 z1220(\stdClass $std) Constructor element 1220 + * @method Elements\Z1300 z1300(\stdClass $std) Constructor element 1300 + * @method Elements\Z1500 z1500(\stdClass $std) Constructor element 1500 + * @method Elements\Z1501 z1501(\stdClass $std) Constructor element 1501 + * @method Elements\Z1502 z1502(\stdClass $std) Constructor element 1502 + * @method Elements\Z1600 z1600(\stdClass $std) Constructor element 1600 + * @method Elements\Z1610 z1610(\stdClass $std) Constructor element 1610 + * @method Elements\Z1620 z1620(\stdClass $std) Constructor element 1620 + * @method Elements\Z1700 z1700(\stdClass $std) Constructor element 1700 + * @method Elements\Z1800 z1800(\stdClass $std) Constructor element 1800 + * @method Elements\Z1809 z1809(\stdClass $std) Constructor element 1809 + * @method Elements\Z1900 z1900(\stdClass $std) Constructor element 1900 */ -final class Block1 extends Block implements BlockInterface +final class Block1 extends Block { const TOTAL = '1990'; @@ -30,7 +50,6 @@ final class Block1 extends Block implements BlockInterface 'z1501' => ['class' => Elements\Z1501::class, 'level' => 3, 'type' => 'multiple'], 'z1502' => ['class' => Elements\Z1502::class, 'level' => 4, 'type' => 'multiple'], 'z1600' => ['class' => Elements\Z1600::class, 'level' => 2, 'type' => 'multiple'], - 'z1601' => ['class' => Elements\Z1601::class, 'level' => 2, 'type' => 'multiple'], 'z1610' => ['class' => Elements\Z1610::class, 'level' => 3, 'type' => 'multiple'], 'z1620' => ['class' => Elements\Z1620::class, 'level' => 3, 'type' => 'multiple'], 'z1700' => ['class' => Elements\Z1700::class, 'level' => 2, 'type' => 'multiple'], @@ -39,8 +58,10 @@ final class Block1 extends Block implements BlockInterface 'z1900' => ['class' => Elements\Z1900::class, 'level' => 2, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = '1990'; } } diff --git a/src/Blocks/Contribuicoes/BlockA.php b/src/Blocks/Contribuicoes/BlockA.php index 00093e5e..309c294b 100755 --- a/src/Blocks/Contribuicoes/BlockA.php +++ b/src/Blocks/Contribuicoes/BlockA.php @@ -4,13 +4,12 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco A EFD Contribuições * */ -final class BlockA extends Block implements BlockInterface +final class BlockA extends Block { const TOTAL = 'A990'; @@ -24,8 +23,10 @@ final class BlockA extends Block implements BlockInterface 'a170' => ['class' => Elements\A170::class, 'level' => 4, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'A990'; } } diff --git a/src/Blocks/Contribuicoes/BlockC.php b/src/Blocks/Contribuicoes/BlockC.php index 6bd424fc..1f74d8ff 100755 --- a/src/Blocks/Contribuicoes/BlockC.php +++ b/src/Blocks/Contribuicoes/BlockC.php @@ -4,13 +4,12 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco C EFD Contribuições * */ -final class BlockC extends Block implements BlockInterface +final class BlockC extends Block { const TOTAL = 'C990'; @@ -65,8 +64,10 @@ final class BlockC extends Block implements BlockInterface 'c990' => ['class' => Elements\C990::class, 'level' => 1, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'C990'; } } diff --git a/src/Blocks/Contribuicoes/BlockD.php b/src/Blocks/Contribuicoes/BlockD.php index b4909518..3df36a5f 100755 --- a/src/Blocks/Contribuicoes/BlockD.php +++ b/src/Blocks/Contribuicoes/BlockD.php @@ -4,13 +4,12 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco D EFD Contribuições * */ -final class BlockD extends Block implements BlockInterface +final class BlockD extends Block { const TOTAL = 'D990'; @@ -39,8 +38,10 @@ final class BlockD extends Block implements BlockInterface 'd609' => ['class' => Elements\D609::class, 'level' => 4, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'D990'; } } diff --git a/src/Blocks/Contribuicoes/BlockF.php b/src/Blocks/Contribuicoes/BlockF.php index 79994e67..f5565812 100755 --- a/src/Blocks/Contribuicoes/BlockF.php +++ b/src/Blocks/Contribuicoes/BlockF.php @@ -4,13 +4,12 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco F EFD Contribuições * */ -final class BlockF extends Block implements BlockInterface +final class BlockF extends Block { const TOTAL = 'F990'; @@ -42,8 +41,10 @@ final class BlockF extends Block implements BlockInterface 'f800' => ['class' => Elements\F800::class, 'level' => 3, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'F990'; } } diff --git a/src/Blocks/Contribuicoes/BlockI.php b/src/Blocks/Contribuicoes/BlockI.php index 11cb52d4..c272ba54 100755 --- a/src/Blocks/Contribuicoes/BlockI.php +++ b/src/Blocks/Contribuicoes/BlockI.php @@ -4,13 +4,12 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco I EFD Contribuições * */ -final class BlockI extends Block implements BlockInterface +final class BlockI extends Block { const TOTAL = 'I990'; @@ -18,15 +17,17 @@ final class BlockI extends Block implements BlockInterface 'i001' => ['class' => Elements\I001::class, 'level' => 1, 'type' => 'single'], 'i010' => ['class' => Elements\I010::class, 'level' => 2, 'type' => 'single'], 'i100' => ['class' => Elements\I100::class, 'level' => 3, 'type' => 'multiple'], - 'i199' => ['class' => Elements\I199::class, 'level' => 5, 'type' => 'multiple'], - 'i200' => ['class' => Elements\I200::class, 'level' => 5, 'type' => 'multiple'], - 'i299' => ['class' => Elements\I299::class, 'level' => 5, 'type' => 'multiple'], - 'i300' => ['class' => Elements\I300::class, 'level' => 5, 'type' => 'multiple'], - 'i399' => ['class' => Elements\I399::class, 'level' => 6, 'type' => 'multiple'], + 'i199' => ['class' => Elements\I199::class, 'level' => 4, 'type' => 'multiple'], + 'i200' => ['class' => Elements\I200::class, 'level' => 3, 'type' => 'multiple'], + 'i299' => ['class' => Elements\I299::class, 'level' => 4, 'type' => 'multiple'], + 'i300' => ['class' => Elements\I300::class, 'level' => 3, 'type' => 'multiple'], + 'i399' => ['class' => Elements\I399::class, 'level' => 4, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'I990'; } } diff --git a/src/Blocks/Contribuicoes/BlockM.php b/src/Blocks/Contribuicoes/BlockM.php index 4de14a0f..5bb5692e 100755 --- a/src/Blocks/Contribuicoes/BlockM.php +++ b/src/Blocks/Contribuicoes/BlockM.php @@ -4,13 +4,43 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco M EFD Contribuições * + * @method Elements\M001 m001(\stdClass $std) Constructor element M001 + * @method Elements\M100 m100(\stdClass $std) Constructor element M100 + * @method Elements\M105 m105(\stdClass $std) Constructor element M105 + * @method Elements\M110 m110(\stdClass $std) Constructor element M110 + * @method Elements\M115 m115(\stdClass $std) Constructor element M115 + * @method Elements\M200 m200(\stdClass $std) Constructor element M200 + * @method Elements\M205 m205(\stdClass $std) Constructor element M205 + * @method Elements\M210 m210(\stdClass $std) Constructor element M210 + * @method Elements\M211 m211(\stdClass $std) Constructor element M211 + * @method Elements\M215 m215(\stdClass $std) Constructor element M215 + * @method Elements\M220 m220(\stdClass $std) Constructor element M220 + * @method Elements\M225 m225(\stdClass $std) Constructor element M225 + * @method Elements\M230 m230(\stdClass $std) Constructor element M230 + * @method Elements\M300 m300(\stdClass $std) Constructor element M300 + * @method Elements\M350 m350(\stdClass $std) Constructor element M350 + * @method Elements\M400 m400(\stdClass $std) Constructor element M400 + * @method Elements\M410 m410(\stdClass $std) Constructor element M410 + * @method Elements\M500 m500(\stdClass $std) Constructor element M500 + * @method Elements\M505 m505(\stdClass $std) Constructor element M505 + * @method Elements\M510 m510(\stdClass $std) Constructor element M510 + * @method Elements\M515 m515(\stdClass $std) Constructor element M515 + * @method Elements\M600 m600(\stdClass $std) Constructor element M600 + * @method Elements\M605 m605(\stdClass $std) Constructor element M605 + * @method Elements\M610 m610(\stdClass $std) Constructor element M610 + * @method Elements\M615 m615(\stdClass $std) Constructor element M615 + * @method Elements\M620 m620(\stdClass $std) Constructor element M620 + * @method Elements\M625 m625(\stdClass $std) Constructor element M625 + * @method Elements\M630 m630(\stdClass $std) Constructor element M630 + * @method Elements\M700 m700(\stdClass $std) Constructor element M700 + * @method Elements\M800 m800(\stdClass $std) Constructor element M800 + * @method Elements\M810 m810(\stdClass $std) Constructor element M810 */ -final class BlockM extends Block implements BlockInterface +final class BlockM extends Block { const TOTAL = 'M990'; @@ -24,7 +54,7 @@ final class BlockM extends Block implements BlockInterface 'm205' => ['class' => Elements\M205::class, 'level' => 3, 'type' => 'multiple'], 'm210' => ['class' => Elements\M210::class, 'level' => 3, 'type' => 'single'], 'm211' => ['class' => Elements\M211::class, 'level' => 4, 'type' => 'multiple'], - 'm215' => ['class' => Elements\M215::class, 'level' => 4, 'type' => 'multiple'], + 'm215' => ['class' => Elements\M215::class, 'level' => 4, 'type' => 'multiple'], //@todo 'm220' => ['class' => Elements\M220::class, 'level' => 4, 'type' => 'multiple'], 'm225' => ['class' => Elements\M225::class, 'level' => 5, 'type' => 'multiple'], 'm230' => ['class' => Elements\M230::class, 'level' => 4, 'type' => 'multiple'], @@ -40,7 +70,7 @@ final class BlockM extends Block implements BlockInterface 'm605' => ['class' => Elements\M605::class, 'level' => 3, 'type' => 'multiple'], 'm610' => ['class' => Elements\M610::class, 'level' => 3, 'type' => 'multiple'], 'm611' => ['class' => Elements\M611::class, 'level' => 4, 'type' => 'single'], - 'm615' => ['class' => Elements\M615::class, 'level' => 4, 'type' => 'single'], + 'm615' => ['class' => Elements\M615::class, 'level' => 4, 'type' => 'single'], //@todo 'm620' => ['class' => Elements\M620::class, 'level' => 4, 'type' => 'multiple'], 'm625' => ['class' => Elements\M625::class, 'level' => 5, 'type' => 'multiple'], 'm630' => ['class' => Elements\M630::class, 'level' => 4, 'type' => 'multiple'], @@ -49,8 +79,10 @@ final class BlockM extends Block implements BlockInterface 'm810' => ['class' => Elements\M810::class, 'level' => 3, 'type' => 'single'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'M990'; } } diff --git a/src/Blocks/Contribuicoes/BlockP.php b/src/Blocks/Contribuicoes/BlockP.php index f1884331..69ffa445 100755 --- a/src/Blocks/Contribuicoes/BlockP.php +++ b/src/Blocks/Contribuicoes/BlockP.php @@ -4,13 +4,19 @@ use NFePHP\EFD\Elements\Contribuicoes as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco P EFD Contribuições * + * @method Elements\P001 p001(\stdClass $std) Constructor element P001 + * @method Elements\P010 p010(\stdClass $std) Constructor element P010 + * @method Elements\P100 p100(\stdClass $std) Constructor element P100 + * @method Elements\P110 p110(\stdClass $std) Constructor element P110 + * @method Elements\P199 p199(\stdClass $std) Constructor element P199 + * @method Elements\P200 p200(\stdClass $std) Constructor element P200 + * @method Elements\P210 p210(\stdClass $std) Constructor element P210 */ -final class BlockP extends Block implements BlockInterface +final class BlockP extends Block { const TOTAL = 'P990'; @@ -24,8 +30,10 @@ final class BlockP extends Block implements BlockInterface 'p210' => ['class' => Elements\P210::class, 'level' => 3, 'type' => 'single'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'Contribuicoes'; + parent::__construct($layout); $this->elementTotal = 'P990'; } } diff --git a/src/Blocks/ICMSIPI/Block0.php b/src/Blocks/ICMSIPI/Block0.php index 3eaf07c2..ca684009 100755 --- a/src/Blocks/ICMSIPI/Block0.php +++ b/src/Blocks/ICMSIPI/Block0.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco 0 (inicial) @@ -38,7 +37,7 @@ * @method Elements\Z0500 z0500(\stdClass $std) Constructor element 0500 * @method Elements\Z0600 z0600(\stdClass $std) Constructor element 0600 */ -final class Block0 extends Block implements BlockInterface +final class Block0 extends Block { const TOTAL = '0990'; @@ -67,8 +66,10 @@ final class Block0 extends Block implements BlockInterface 'z0600' => ['class' => Elements\Z0600::class, 'level' => 2, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = '0990'; } } diff --git a/src/Blocks/ICMSIPI/Block1.php b/src/Blocks/ICMSIPI/Block1.php index 337164a1..992e5235 100755 --- a/src/Blocks/ICMSIPI/Block1.php +++ b/src/Blocks/ICMSIPI/Block1.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco 1 @@ -49,7 +48,7 @@ * @method Elements\z1975 z1975(\stdClass $std) Constructor element 1975 * @method Elements\z1980 z1980(\stdClass $std) Constructor element 1980 */ -final class Block1 extends Block implements BlockInterface +final class Block1 extends Block { const TOTAL = '1990'; @@ -93,8 +92,10 @@ final class Block1 extends Block implements BlockInterface 'z1980' => ['class' => Elements\Z1980::class, 'level' => 2, 'type' => 'single'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = '1990'; } } diff --git a/src/Blocks/ICMSIPI/BlockB.php b/src/Blocks/ICMSIPI/BlockB.php index 7ee07c60..80f53c1d 100755 --- a/src/Blocks/ICMSIPI/BlockB.php +++ b/src/Blocks/ICMSIPI/BlockB.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco B @@ -25,7 +24,7 @@ * @method Elements\B510 b510(\stdClass $std) Constructor element B510 * */ -final class BlockB extends Block implements BlockInterface +final class BlockB extends Block { const TOTAL = 'B990'; @@ -44,8 +43,10 @@ final class BlockB extends Block implements BlockInterface 'b510' => ['class' => Elements\B510::class, 'level' => 3, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'B990'; } } diff --git a/src/Blocks/ICMSIPI/BlockC.php b/src/Blocks/ICMSIPI/BlockC.php index 43d5944e..4e125a47 100755 --- a/src/Blocks/ICMSIPI/BlockC.php +++ b/src/Blocks/ICMSIPI/BlockC.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco C @@ -88,7 +87,7 @@ * @method Elements\C880 c880(\stdClass $std) Constructor element C880 * @method Elements\C890 c890(\stdClass $std) Constructor element C890 */ -final class BlockC extends Block implements BlockInterface +final class BlockC extends Block { const TOTAL = 'C990'; @@ -168,8 +167,10 @@ final class BlockC extends Block implements BlockInterface 'c890' => ['class' => Elements\C890::class, 'level' => 3, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'C990'; } } diff --git a/src/Blocks/ICMSIPI/BlockD.php b/src/Blocks/ICMSIPI/BlockD.php index 031f690a..50bf3eb8 100755 --- a/src/Blocks/ICMSIPI/BlockD.php +++ b/src/Blocks/ICMSIPI/BlockD.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco D @@ -52,7 +51,7 @@ * @method Elements\D696 d696(\stdClass $std) Constructor element D696 * @method Elements\D697 d697(\stdClass $std) Constructor element D697 */ -final class BlockD extends Block implements BlockInterface +final class BlockD extends Block { const TOTAL = 'D990'; @@ -98,8 +97,10 @@ final class BlockD extends Block implements BlockInterface 'd697' => ['class' => Elements\D697::class, 'level' => 4, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'D990'; } } diff --git a/src/Blocks/ICMSIPI/BlockE.php b/src/Blocks/ICMSIPI/BlockE.php index cc456357..e045b242 100755 --- a/src/Blocks/ICMSIPI/BlockE.php +++ b/src/Blocks/ICMSIPI/BlockE.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco E @@ -38,7 +37,7 @@ * @method Elements\E530 e530(\stdClass $std) Constructor element E530 * @method Elements\E531 e531(\stdClass $std) Constructor element E531 */ -final class BlockE extends Block implements BlockInterface +final class BlockE extends Block { const TOTAL = 'E990'; @@ -70,8 +69,10 @@ final class BlockE extends Block implements BlockInterface 'e531' => ['class' => Elements\E531::class, 'level' => 5, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'E990'; } } diff --git a/src/Blocks/ICMSIPI/BlockG.php b/src/Blocks/ICMSIPI/BlockG.php index 0e1f773a..064ec4c9 100755 --- a/src/Blocks/ICMSIPI/BlockG.php +++ b/src/Blocks/ICMSIPI/BlockG.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco G @@ -19,7 +18,7 @@ * @method Elements\G130 g130(\stdClass $std) Constructor element G130 * @method Elements\G140 g140(\stdClass $std) Constructor element G140 */ -final class BlockG extends Block implements BlockInterface +final class BlockG extends Block { const TOTAL = 'G990'; @@ -32,8 +31,10 @@ final class BlockG extends Block implements BlockInterface 'g140' => ['class' => Elements\G140::class, 'level' => 5, 'type' => 'multiple'] ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'G990'; } } diff --git a/src/Blocks/ICMSIPI/BlockH.php b/src/Blocks/ICMSIPI/BlockH.php index aa4cc2ab..f17a4f15 100755 --- a/src/Blocks/ICMSIPI/BlockH.php +++ b/src/Blocks/ICMSIPI/BlockH.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco H @@ -18,10 +17,17 @@ * @method Elements\H020 h020(\stdClass $std) Constructor element H020 * @method Elements\H030 h030(\stdClass $std) Constructor element H030 */ -final class BlockH extends Block implements BlockInterface +final class BlockH extends Block { const TOTAL = 'H990'; + /** + * @var string + */ + + /** + * @var array[] + */ public $elements = [ 'h001' => ['class' => Elements\H001::class, 'level' => 1, 'type' => 'single'], 'h005' => ['class' => Elements\H005::class, 'level' => 2, 'type' => 'single'], @@ -30,8 +36,10 @@ final class BlockH extends Block implements BlockInterface 'h030' => ['class' => Elements\H030::class, 'level' => 4, 'type' => 'single'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'H990'; } } diff --git a/src/Blocks/ICMSIPI/BlockK.php b/src/Blocks/ICMSIPI/BlockK.php index 15d059f0..cf1e31ac 100755 --- a/src/Blocks/ICMSIPI/BlockK.php +++ b/src/Blocks/ICMSIPI/BlockK.php @@ -4,7 +4,6 @@ use NFePHP\EFD\Elements\ICMSIPI as Elements; use NFePHP\EFD\Common\Block; -use NFePHP\EFD\Common\BlockInterface; /** * Classe constutora do bloco K @@ -35,7 +34,7 @@ * @method Elements\K301 k301(\stdClass $std) Constructor element K301 * @method Elements\K302 k302(\stdClass $std) Constructor element K302 */ -final class BlockK extends Block implements BlockInterface +final class BlockK extends Block { const TOTAL = 'K990'; @@ -64,8 +63,10 @@ final class BlockK extends Block implements BlockInterface 'k302' => ['class' => Elements\K302::class, 'level' => 4, 'type' => 'multiple'], ]; - public function __construct() + public function __construct(string $layout = null) { + $this->grupo = 'ICMSIPI'; + parent::__construct($layout); $this->elementTotal = 'K990'; } } diff --git a/src/Common/Block.php b/src/Common/Block.php index 6824e687..dd194392 100644 --- a/src/Common/Block.php +++ b/src/Common/Block.php @@ -4,7 +4,7 @@ /** * Classe abstrata basica de onde cada bloco é cunstruido */ -abstract class Block +abstract class Block implements BlockInterface { /** * @var array @@ -22,7 +22,28 @@ abstract class Block * @var int */ protected $elementTotal; + /** + * @var string + */ + protected $layout; + /** + * @var \stdClass + */ + protected $vigencia; + /** + * @var string + */ + protected $grupo; + /** + * @param string|null $layout + */ + public function __construct(string $layout = null) + { + $layout = str_pad($layout ?? 0, 3, '0', STR_PAD_LEFT); + $this->vigencia = (object) $this->layoutPath($layout); + $this->layout = $this->vigencia->layout; + } /** * Call classes to build each EFD element @@ -42,8 +63,7 @@ public function __call($name, $arguments) if (empty($arguments[0])) { throw new \Exception("Sem dados passados para o método [$name]."); } - - $elclass = new $className($arguments[0]); + $elclass = new $className($arguments[0], $this->vigencia ?? null); foreach ($elclass->errors as $err) { $this->errors[] = $err; } @@ -62,4 +82,21 @@ public function get() $this->bloco .= "|" . $this->elementTotal . "|$n|\n"; return $this->bloco; } + + /** + * Procura e usa a ultima vigência registrada no json + * @param string|null $layout + * @return array + */ + protected function layoutPath(string $layout = null): array + { + $path = dirname(dirname(__DIR__)) . '/storage/layouts/'. $this->grupo; + $vigarray = json_decode(file_get_contents($path . '/vigencias.json'), true); + $vigencia = $vigarray[$layout] ?? null; + if (empty($vigencia)) { + $last = array_key_last($vigarray); + return ['path' => $path, 'layout' => (string) $last, 'vigencia' => (object) $vigarray[$last]]; + } + return ['path' => $path, 'layout' => (string) $layout, 'vigencia' => (object) $vigarray[$layout]]; + } } diff --git a/src/Common/Element.php b/src/Common/Element.php index 9e9fbb10..ab0733d1 100644 --- a/src/Common/Element.php +++ b/src/Common/Element.php @@ -2,10 +2,10 @@ namespace NFePHP\EFD\Common; -use \stdClass; +use stdClass; use NFePHP\Common\Strings; -abstract class Element +abstract class Element implements ElementInterface { /** @@ -28,14 +28,16 @@ abstract class Element * @var string */ private $reg; + protected $vigencia; /** * Constructor * @param string $reg */ - public function __construct($reg) + public function __construct(string $reg, stdClass $vigencia = null) { $this->reg = $reg; + $this->vigencia = $vigencia; $this->values = new stdClass(); } @@ -257,4 +259,26 @@ public function __toString() { return '|' . $this->reg . '|' . $this->build(); } + + /** + * Localiza os parâmetros de acordo com a vigencia passada + * e os substitui + * Caso a vigencia não seja passada será usada a regra contida na classe + * @param string $grupo + * @param string $registro + * @return void + */ + protected function replaceParams(string $registro) + { + if (!empty($this->vigencia)) { + $file = "{$this->vigencia->path}/v{$this->vigencia->layout}/$registro.json"; + if (is_file($file)) { + $json = file_get_contents($file); + $this->parameters = json_decode($json, true); + } else { + $json = json_encode($this->parameters, JSON_PRETTY_PRINT); + file_put_contents($file, $json); + } + } + } } diff --git a/src/EFD.php b/src/EFD.php index e04654bf..0e96c9be 100644 --- a/src/EFD.php +++ b/src/EFD.php @@ -25,7 +25,7 @@ public function add(BlockInterface $block = null) return; } $name = strtolower((new \ReflectionClass($block))->getShortName()); - if (key_exists($name, $this->possibles)) { + if (array_key_exists($name, $this->possibles)) { $this->{$name} = $block->get(); foreach ($block->errors as $err) { $this->errors[] = $err; diff --git a/src/EFDCont.php b/src/EFDCont.php index 8e6ea110..931e565f 100755 --- a/src/EFDCont.php +++ b/src/EFDCont.php @@ -2,8 +2,6 @@ namespace NFePHP\EFD; -use NFePHP\EFD\EFD; - /** * Classe construtora do arquivo EFD Contribuições * diff --git a/src/EFDICMS.php b/src/EFDICMS.php index da069f85..122db4dd 100755 --- a/src/EFDICMS.php +++ b/src/EFDICMS.php @@ -2,8 +2,6 @@ namespace NFePHP\EFD; -use NFePHP\EFD\EFD; - /** * Classe construtora do arquivo EFD ICMS/IPI * diff --git a/src/Elements/Contribuicoes/A001.php b/src/Elements/Contribuicoes/A001.php index 45435612..e5d2aec2 100755 --- a/src/Elements/Contribuicoes/A001.php +++ b/src/Elements/Contribuicoes/A001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A001 extends Element implements ElementInterface +class A001 extends Element { const REG = 'A001'; const LEVEL = 1; @@ -25,11 +24,14 @@ class A001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/A010.php b/src/Elements/Contribuicoes/A010.php index 9702e7eb..e4a1471b 100755 --- a/src/Elements/Contribuicoes/A010.php +++ b/src/Elements/Contribuicoes/A010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A010 extends Element implements ElementInterface +class A010 extends Element { const REG = 'A010'; const LEVEL = 2; @@ -20,16 +19,18 @@ class A010 extends Element implements ElementInterface 'info' => 'Número de inscrição do estabelecimento no CNPJ.', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/A100.php b/src/Elements/Contribuicoes/A100.php index a65c913f..0d4b7546 100755 --- a/src/Elements/Contribuicoes/A100.php +++ b/src/Elements/Contribuicoes/A100.php @@ -4,10 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A100 extends Element implements ElementInterface +class A100 extends Element { const REG = 'A100'; const LEVEL = 2; @@ -161,17 +160,15 @@ class A100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); - - /** - * O postValidation abaixo nao precisa ser aplicado para as notas de servico - */ - // $this->postValidation(); + //$this->postValidation(); } public function postValidation() diff --git a/src/Elements/Contribuicoes/A110.php b/src/Elements/Contribuicoes/A110.php index 91220cfd..0e18f8af 100755 --- a/src/Elements/Contribuicoes/A110.php +++ b/src/Elements/Contribuicoes/A110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A110 extends Element implements ElementInterface +class A110 extends Element { const REG = 'A110'; const LEVEL = 3; @@ -32,11 +31,14 @@ class A110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/A111.php b/src/Elements/Contribuicoes/A111.php index e897180c..ea30c052 100755 --- a/src/Elements/Contribuicoes/A111.php +++ b/src/Elements/Contribuicoes/A111.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A111 extends Element implements ElementInterface +class A111 extends Element { const REG = 'A111'; const LEVEL = 4; @@ -24,9 +23,9 @@ class A111 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: - 1 - Justiça Federal; - 3 – Secretaria da Receita Federal do Brasil + 'info' => 'Indicador da origem do processo: + 1 - Justiça Federal; + 3 – Secretaria da Receita Federal do Brasil 9 - Outros.', 'format' => '' ], @@ -35,11 +34,14 @@ class A111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/A120.php b/src/Elements/Contribuicoes/A120.php index 32f8f78e..c2bbb6dd 100755 --- a/src/Elements/Contribuicoes/A120.php +++ b/src/Elements/Contribuicoes/A120.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A120 extends Element implements ElementInterface +class A120 extends Element { const REG = 'A120'; const LEVEL = 4; @@ -66,8 +65,8 @@ class A120 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^.{1}$', 'required' => false, - 'info' => 'Local da execução do serviço: - 0 – Executado no País; + 'info' => 'Local da execução do serviço: + 0 – Executado no País; 1 – Executado no Exterior, cujo resultado se verifique no País.', 'format' => '' ], @@ -76,11 +75,14 @@ class A120 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/A170.php b/src/Elements/Contribuicoes/A170.php index 938403a6..639afbe1 100755 --- a/src/Elements/Contribuicoes/A170.php +++ b/src/Elements/Contribuicoes/A170.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class A170 extends Element implements ElementInterface +class A170 extends Element { const REG = 'A170'; const LEVEL = 4; @@ -139,11 +138,13 @@ class A170 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C001.php b/src/Elements/Contribuicoes/C001.php index b70cf56d..4f7b7df8 100755 --- a/src/Elements/Contribuicoes/C001.php +++ b/src/Elements/Contribuicoes/C001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C001 extends Element implements ElementInterface +class C001 extends Element { const REG = 'C001'; const LEVEL = 0; @@ -25,11 +24,14 @@ class C001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C010.php b/src/Elements/Contribuicoes/C010.php index 3e6ac8cf..f80da3cc 100755 --- a/src/Elements/Contribuicoes/C010.php +++ b/src/Elements/Contribuicoes/C010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C010 extends Element implements ElementInterface +class C010 extends Element { const REG = 'C010'; const LEVEL = 2; @@ -24,8 +23,8 @@ class C010 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^.{1}$', 'required' => false, - 'info' => 'Indicador da apuração das contribuições e créditos, na escrituração das - operações por NF-e e ECF, no período: 1 – Apuração com base nos registros de consolidação + 'info' => 'Indicador da apuração das contribuições e créditos, na escrituração das + operações por NF-e e ECF, no período: 1 – Apuração com base nos registros de consolidação das operações por NF-e (C180 e C190) e por ECF (C490);', 'format' => '' ], @@ -34,11 +33,14 @@ class C010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C100.php b/src/Elements/Contribuicoes/C100.php index 8baef917..5602a131 100755 --- a/src/Elements/Contribuicoes/C100.php +++ b/src/Elements/Contribuicoes/C100.php @@ -4,10 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C100 extends Element implements ElementInterface +class C100 extends Element { const REG = 'C100'; const LEVEL = 3; @@ -220,11 +219,13 @@ class C100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C110.php b/src/Elements/Contribuicoes/C110.php index d544679f..c792be8f 100755 --- a/src/Elements/Contribuicoes/C110.php +++ b/src/Elements/Contribuicoes/C110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C110 extends Element implements ElementInterface +class C110 extends Element { const REG = 'C110'; const LEVEL = 4; @@ -32,11 +31,14 @@ class C110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C111.php b/src/Elements/Contribuicoes/C111.php index d2813232..64215afc 100755 --- a/src/Elements/Contribuicoes/C111.php +++ b/src/Elements/Contribuicoes/C111.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C111 extends Element implements ElementInterface +class C111 extends Element { const REG = 'C111'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C111 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 – Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C120.php b/src/Elements/Contribuicoes/C120.php index ada6f68e..11763f13 100755 --- a/src/Elements/Contribuicoes/C120.php +++ b/src/Elements/Contribuicoes/C120.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C120 extends Element implements ElementInterface +class C120 extends Element { const REG = 'C120'; const LEVEL = 3; @@ -17,7 +16,7 @@ class C120 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|0)$', 'required' => false, - 'info' => 'Documento de importação: + 'info' => 'Documento de importação: 0 – Declaração de Importação; 1 – Declaração Simplificada de Importação.', 'format' => '' ], @@ -54,11 +53,14 @@ class C120 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C170.php b/src/Elements/Contribuicoes/C170.php index 81d7196d..a8eabce9 100755 --- a/src/Elements/Contribuicoes/C170.php +++ b/src/Elements/Contribuicoes/C170.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C170 extends Element implements ElementInterface +class C170 extends Element { const REG = 'C170'; const LEVEL = 3; @@ -270,11 +269,13 @@ class C170 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C175.php b/src/Elements/Contribuicoes/C175.php index 956973d3..21a49705 100755 --- a/src/Elements/Contribuicoes/C175.php +++ b/src/Elements/Contribuicoes/C175.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C175 extends Element implements ElementInterface +class C175 extends Element { const REG = 'C175'; const LEVEL = 4; @@ -139,11 +138,13 @@ class C175 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C180.php b/src/Elements/Contribuicoes/C180.php index 7b17d2e4..93ec6349 100755 --- a/src/Elements/Contribuicoes/C180.php +++ b/src/Elements/Contribuicoes/C180.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C180 extends Element implements ElementInterface +class C180 extends Element { const REG = 'C180'; const LEVEL = 3; @@ -67,11 +66,14 @@ class C180 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C181.php b/src/Elements/Contribuicoes/C181.php index 29e8e59a..c357dea2 100755 --- a/src/Elements/Contribuicoes/C181.php +++ b/src/Elements/Contribuicoes/C181.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C181 extends Element implements ElementInterface +class C181 extends Element { const REG = 'C181'; const LEVEL = 4; @@ -88,11 +87,14 @@ class C181 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C185.php b/src/Elements/Contribuicoes/C185.php index 1052fb65..89033cf8 100755 --- a/src/Elements/Contribuicoes/C185.php +++ b/src/Elements/Contribuicoes/C185.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C185 extends Element implements ElementInterface +class C185 extends Element { const REG = 'C185'; const LEVEL = 4; @@ -88,11 +87,13 @@ class C185 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C188.php b/src/Elements/Contribuicoes/C188.php index 64ccff11..3b16641b 100755 --- a/src/Elements/Contribuicoes/C188.php +++ b/src/Elements/Contribuicoes/C188.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C188 extends Element implements ElementInterface +class C188 extends Element { const REG = 'C188'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C188 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 - Secretaria da Receita Federal do Brasil; 9 – Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C188 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C190.php b/src/Elements/Contribuicoes/C190.php index d31e1cbb..30e73f44 100755 --- a/src/Elements/Contribuicoes/C190.php +++ b/src/Elements/Contribuicoes/C190.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C190 extends Element implements ElementInterface +class C190 extends Element { const REG = 'C190'; const LEVEL = 3; @@ -67,11 +66,14 @@ class C190 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C191.php b/src/Elements/Contribuicoes/C191.php index ebcb5331..9a192233 100755 --- a/src/Elements/Contribuicoes/C191.php +++ b/src/Elements/Contribuicoes/C191.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C191 extends Element implements ElementInterface +class C191 extends Element { const REG = 'C191'; const LEVEL = 4; @@ -17,7 +16,7 @@ class C191 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[0-9]{14}$', 'required' => false, - 'info' => 'CNPJ/CPF do Participante a que se referem as operações consolidadas neste + 'info' => 'CNPJ/CPF do Participante a que se referem as operações consolidadas neste registro (pessoa jurídica ou pessoa física vendedora/remetente)', 'format' => '' ], @@ -96,11 +95,14 @@ class C191 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C195.php b/src/Elements/Contribuicoes/C195.php index 9d6d1e8e..e5b5015a 100755 --- a/src/Elements/Contribuicoes/C195.php +++ b/src/Elements/Contribuicoes/C195.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C195 extends Element implements ElementInterface +class C195 extends Element { const REG = 'C195'; const LEVEL = 4; @@ -96,11 +95,13 @@ class C195 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C198.php b/src/Elements/Contribuicoes/C198.php index edc7d9cc..e3971a88 100755 --- a/src/Elements/Contribuicoes/C198.php +++ b/src/Elements/Contribuicoes/C198.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C198 extends Element implements ElementInterface +class C198 extends Element { const REG = 'C198'; const LEVEL = 4; @@ -32,11 +31,14 @@ class C198 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C199.php b/src/Elements/Contribuicoes/C199.php index 76143bb8..8e8f50be 100755 --- a/src/Elements/Contribuicoes/C199.php +++ b/src/Elements/Contribuicoes/C199.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C199 extends Element implements ElementInterface +class C199 extends Element { const REG = 'C199'; const LEVEL = 4; @@ -54,11 +53,14 @@ class C199 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C380.php b/src/Elements/Contribuicoes/C380.php index 2f5302bf..660ce103 100755 --- a/src/Elements/Contribuicoes/C380.php +++ b/src/Elements/Contribuicoes/C380.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C380 extends Element implements ElementInterface +class C380 extends Element { const REG = 'C380'; const LEVEL = 3; @@ -17,7 +16,7 @@ class C380 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(02)$', 'required' => false, - 'info' => 'Código do modelo do documento fiscal, conforme a + 'info' => 'Código do modelo do documento fiscal, conforme a Tabela 4.1.1 (Código 02 – Nota Fiscal de Venda a Consumidor)', 'format' => '' ], @@ -68,11 +67,14 @@ class C380 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C381.php b/src/Elements/Contribuicoes/C381.php index e3af7a7e..7211d52e 100755 --- a/src/Elements/Contribuicoes/C381.php +++ b/src/Elements/Contribuicoes/C381.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C381 extends Element implements ElementInterface +class C381 extends Element { const REG = 'C381'; const LEVEL = 4; @@ -81,11 +80,14 @@ class C381 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C385.php b/src/Elements/Contribuicoes/C385.php index 6a20b1dd..aac8e481 100755 --- a/src/Elements/Contribuicoes/C385.php +++ b/src/Elements/Contribuicoes/C385.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C385 extends Element implements ElementInterface +class C385 extends Element { const REG = 'C385'; const LEVEL = 4; @@ -81,11 +80,13 @@ class C385 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C395.php b/src/Elements/Contribuicoes/C395.php index 75e9d8c9..ac1bd692 100755 --- a/src/Elements/Contribuicoes/C395.php +++ b/src/Elements/Contribuicoes/C395.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C395 extends Element implements ElementInterface +class C395 extends Element { const REG = 'C395'; const LEVEL = 3; @@ -67,11 +66,14 @@ class C395 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C396.php b/src/Elements/Contribuicoes/C396.php index 9e093850..1b12fda5 100755 --- a/src/Elements/Contribuicoes/C396.php +++ b/src/Elements/Contribuicoes/C396.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C396 extends Element implements ElementInterface +class C396 extends Element { const REG = 'C396'; const LEVEL = 4; @@ -109,11 +108,14 @@ class C396 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C400.php b/src/Elements/Contribuicoes/C400.php index 5e512938..fb266caa 100755 --- a/src/Elements/Contribuicoes/C400.php +++ b/src/Elements/Contribuicoes/C400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C400 extends Element implements ElementInterface +class C400 extends Element { const REG = 'C400'; const LEVEL = 5; @@ -109,11 +108,13 @@ class C400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C405.php b/src/Elements/Contribuicoes/C405.php index 5a6f41fd..29bfe8f7 100755 --- a/src/Elements/Contribuicoes/C405.php +++ b/src/Elements/Contribuicoes/C405.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C405 extends Element implements ElementInterface +class C405 extends Element { const REG = 'C405'; const LEVEL = 4; @@ -38,7 +37,7 @@ class C405 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^([1-9]{1})(\d{0,5})?$', 'required' => false, - 'info' => 'Número do Contador de Ordem de Operação do último + 'info' => 'Número do Contador de Ordem de Operação do último documento emitido no dia (Número do COO na Redução Z)', 'format' => '' ], @@ -61,11 +60,14 @@ class C405 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C481.php b/src/Elements/Contribuicoes/C481.php index e170003f..fc13e9e0 100755 --- a/src/Elements/Contribuicoes/C481.php +++ b/src/Elements/Contribuicoes/C481.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C481 extends Element implements ElementInterface +class C481 extends Element { const REG = 'C481'; const LEVEL = 5; @@ -81,11 +80,14 @@ class C481 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C489.php b/src/Elements/Contribuicoes/C489.php index e83401d2..29dae556 100755 --- a/src/Elements/Contribuicoes/C489.php +++ b/src/Elements/Contribuicoes/C489.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C489 extends Element implements ElementInterface +class C489 extends Element { const REG = 'C489'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C489 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 - Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C489 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C491.php b/src/Elements/Contribuicoes/C491.php index 4b9364fd..5ffcd7fa 100755 --- a/src/Elements/Contribuicoes/C491.php +++ b/src/Elements/Contribuicoes/C491.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C491 extends Element implements ElementInterface +class C491 extends Element { const REG = 'C491'; const LEVEL = 4; @@ -88,11 +87,13 @@ class C491 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C495.php b/src/Elements/Contribuicoes/C495.php index 6222e361..035a6939 100755 --- a/src/Elements/Contribuicoes/C495.php +++ b/src/Elements/Contribuicoes/C495.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C495 extends Element implements ElementInterface +class C495 extends Element { const REG = 'C495'; const LEVEL = 4; @@ -88,11 +87,13 @@ class C495 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C499.php b/src/Elements/Contribuicoes/C499.php index bd9aaaa7..737683ca 100755 --- a/src/Elements/Contribuicoes/C499.php +++ b/src/Elements/Contribuicoes/C499.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C499 extends Element implements ElementInterface +class C499 extends Element { const REG = 'C499'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C499 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 - Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C499 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C500.php b/src/Elements/Contribuicoes/C500.php index ca3ed5d3..d0b27e60 100755 --- a/src/Elements/Contribuicoes/C500.php +++ b/src/Elements/Contribuicoes/C500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C500 extends Element implements ElementInterface +class C500 extends Element { const REG = 'C500'; const LEVEL = 3; @@ -109,11 +108,13 @@ class C500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C501.php b/src/Elements/Contribuicoes/C501.php index 525807c3..a3cb87de 100755 --- a/src/Elements/Contribuicoes/C501.php +++ b/src/Elements/Contribuicoes/C501.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C501 extends Element implements ElementInterface +class C501 extends Element { const REG = 'C501'; const LEVEL = 4; @@ -67,11 +66,14 @@ class C501 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C505.php b/src/Elements/Contribuicoes/C505.php index 15203873..bb8a38ef 100755 --- a/src/Elements/Contribuicoes/C505.php +++ b/src/Elements/Contribuicoes/C505.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C505 extends Element implements ElementInterface +class C505 extends Element { const REG = 'C505'; const LEVEL = 4; @@ -67,11 +66,14 @@ class C505 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C509.php b/src/Elements/Contribuicoes/C509.php index 5398d699..f3397c29 100755 --- a/src/Elements/Contribuicoes/C509.php +++ b/src/Elements/Contribuicoes/C509.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C509 extends Element implements ElementInterface +class C509 extends Element { const REG = 'C509'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C509 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 – Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C509 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C600.php b/src/Elements/Contribuicoes/C600.php index c8e0bb1b..fc6c589b 100755 --- a/src/Elements/Contribuicoes/C600.php +++ b/src/Elements/Contribuicoes/C600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C600 extends Element implements ElementInterface +class C600 extends Element { const REG = 'C600'; const LEVEL = 3; @@ -168,11 +167,13 @@ class C600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C601.php b/src/Elements/Contribuicoes/C601.php index f40e89a5..0730d73c 100755 --- a/src/Elements/Contribuicoes/C601.php +++ b/src/Elements/Contribuicoes/C601.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C601 extends Element implements ElementInterface +class C601 extends Element { const REG = 'C601'; const LEVEL = 4; @@ -60,11 +59,13 @@ class C601 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C605.php b/src/Elements/Contribuicoes/C605.php index 509506cf..d51f1a70 100755 --- a/src/Elements/Contribuicoes/C605.php +++ b/src/Elements/Contribuicoes/C605.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C605 extends Element implements ElementInterface +class C605 extends Element { const REG = 'C605'; const LEVEL = 4; @@ -60,11 +59,13 @@ class C605 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C609.php b/src/Elements/Contribuicoes/C609.php index 62655bfc..30f4eb8c 100755 --- a/src/Elements/Contribuicoes/C609.php +++ b/src/Elements/Contribuicoes/C609.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C609 extends Element implements ElementInterface +class C609 extends Element { const REG = 'C609'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C609 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 – Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C609 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C800.php b/src/Elements/Contribuicoes/C800.php index aff6d038..3dedadbd 100755 --- a/src/Elements/Contribuicoes/C800.php +++ b/src/Elements/Contribuicoes/C800.php @@ -4,10 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C800 extends Element implements ElementInterface +class C800 extends Element { const REG = 'C800'; const LEVEL = 3; @@ -131,11 +130,13 @@ class C800 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C810.php b/src/Elements/Contribuicoes/C810.php index b227c1ee..ab3ea358 100755 --- a/src/Elements/Contribuicoes/C810.php +++ b/src/Elements/Contribuicoes/C810.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C810 extends Element implements ElementInterface +class C810 extends Element { const REG = 'C810'; const LEVEL = 4; @@ -102,11 +101,13 @@ class C810 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/C820.php b/src/Elements/Contribuicoes/C820.php index 7741a5ae..d5236e50 100755 --- a/src/Elements/Contribuicoes/C820.php +++ b/src/Elements/Contribuicoes/C820.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C820 extends Element implements ElementInterface +class C820 extends Element { const REG = 'C820'; const LEVEL = 4; @@ -102,11 +101,14 @@ class C820 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C830.php b/src/Elements/Contribuicoes/C830.php index 7fd3a3a6..95a6e0a0 100755 --- a/src/Elements/Contribuicoes/C830.php +++ b/src/Elements/Contribuicoes/C830.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C830 extends Element implements ElementInterface +class C830 extends Element { const REG = 'C830'; const LEVEL = 4; @@ -24,7 +23,7 @@ class C830 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(1|3|9)$', 'required' => false, - 'info' => 'Indicador da origem do processo: + 'info' => 'Indicador da origem do processo: 1 - Justiça Federal; 3 – Secretaria da Receita Federal do Brasil 9 - Outros.', 'format' => '' ], @@ -33,11 +32,14 @@ class C830 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C860.php b/src/Elements/Contribuicoes/C860.php index a3ade29b..aeab83d7 100755 --- a/src/Elements/Contribuicoes/C860.php +++ b/src/Elements/Contribuicoes/C860.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C860 extends Element implements ElementInterface +class C860 extends Element { const REG = 'C860'; const LEVEL = 3; @@ -53,11 +52,14 @@ class C860 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C870.php b/src/Elements/Contribuicoes/C870.php index af6d1b6c..4a10b1f4 100755 --- a/src/Elements/Contribuicoes/C870.php +++ b/src/Elements/Contribuicoes/C870.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C870 extends Element implements ElementInterface +class C870 extends Element { const REG = 'C870'; const LEVEL = 4; @@ -109,11 +108,14 @@ class C870 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C880.php b/src/Elements/Contribuicoes/C880.php index b8d4e044..f1555ea4 100755 --- a/src/Elements/Contribuicoes/C880.php +++ b/src/Elements/Contribuicoes/C880.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C880 extends Element implements ElementInterface +class C880 extends Element { const REG = 'C880'; const LEVEL = 4; @@ -109,11 +108,14 @@ class C880 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/C890.php b/src/Elements/Contribuicoes/C890.php index 6f36793f..e829c3cf 100755 --- a/src/Elements/Contribuicoes/C890.php +++ b/src/Elements/Contribuicoes/C890.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C890 extends Element implements ElementInterface +class C890 extends Element { const REG = 'C890'; const LEVEL = 4; @@ -33,11 +32,14 @@ class C890 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D001.php b/src/Elements/Contribuicoes/D001.php index 9c963ff1..25e0cd25 100755 --- a/src/Elements/Contribuicoes/D001.php +++ b/src/Elements/Contribuicoes/D001.php @@ -3,9 +3,10 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D001 extends Element implements ElementInterface + +class D001 extends Element { const REG = 'D001'; const LEVEL = 1; @@ -26,11 +27,14 @@ class D001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D010.php b/src/Elements/Contribuicoes/D010.php index ca100f75..6f032d9e 100755 --- a/src/Elements/Contribuicoes/D010.php +++ b/src/Elements/Contribuicoes/D010.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D010 extends Element implements ElementInterface +class D010 extends Element { const REG = 'D010'; const LEVEL = 2; @@ -24,11 +24,14 @@ class D010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D100.php b/src/Elements/Contribuicoes/D100.php index b283034e..0eb92b8c 100755 --- a/src/Elements/Contribuicoes/D100.php +++ b/src/Elements/Contribuicoes/D100.php @@ -4,9 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D100 extends Element implements ElementInterface +class D100 extends Element { const REG = 'D100'; const LEVEL = 3; @@ -181,11 +181,13 @@ class D100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D101.php b/src/Elements/Contribuicoes/D101.php index 22d7f7ab..494ef7e3 100755 --- a/src/Elements/Contribuicoes/D101.php +++ b/src/Elements/Contribuicoes/D101.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D101 extends Element implements ElementInterface +class D101 extends Element { const REG = 'D101'; const LEVEL = 4; @@ -80,11 +80,13 @@ class D101 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D105.php b/src/Elements/Contribuicoes/D105.php index 0667abc0..5ce3540c 100755 --- a/src/Elements/Contribuicoes/D105.php +++ b/src/Elements/Contribuicoes/D105.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D105 extends Element implements ElementInterface +class D105 extends Element { const REG = 'D105'; const LEVEL = 4; @@ -82,11 +82,13 @@ class D105 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D111.php b/src/Elements/Contribuicoes/D111.php index 8b51af58..997c0e2c 100755 --- a/src/Elements/Contribuicoes/D111.php +++ b/src/Elements/Contribuicoes/D111.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D111 extends Element implements ElementInterface +class D111 extends Element { const REG = 'D111'; const LEVEL = 4; @@ -33,11 +33,14 @@ class D111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D200.php b/src/Elements/Contribuicoes/D200.php index 245056f7..6cf3fefa 100755 --- a/src/Elements/Contribuicoes/D200.php +++ b/src/Elements/Contribuicoes/D200.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D200 extends Element implements ElementInterface +class D200 extends Element { const REG = 'D200'; const LEVEL = 3; @@ -88,11 +88,14 @@ class D200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D201.php b/src/Elements/Contribuicoes/D201.php index d0a53ac7..e199e6af 100755 --- a/src/Elements/Contribuicoes/D201.php +++ b/src/Elements/Contribuicoes/D201.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D201 extends Element implements ElementInterface +class D201 extends Element { const REG = 'D201'; const LEVEL = 4; @@ -59,11 +59,13 @@ class D201 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D205.php b/src/Elements/Contribuicoes/D205.php index 1de0230f..a67d1c45 100755 --- a/src/Elements/Contribuicoes/D205.php +++ b/src/Elements/Contribuicoes/D205.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D205 extends Element implements ElementInterface +class D205 extends Element { const REG = 'D205'; const LEVEL = 4; @@ -59,11 +59,13 @@ class D205 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D209.php b/src/Elements/Contribuicoes/D209.php index 9f141ee3..3fe52cc0 100755 --- a/src/Elements/Contribuicoes/D209.php +++ b/src/Elements/Contribuicoes/D209.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D209 extends Element implements ElementInterface +class D209 extends Element { const REG = 'D209'; const LEVEL = 4; @@ -33,11 +33,14 @@ class D209 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D300.php b/src/Elements/Contribuicoes/D300.php index 2b9a4efb..7b03e34e 100755 --- a/src/Elements/Contribuicoes/D300.php +++ b/src/Elements/Contribuicoes/D300.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D300 extends Element implements ElementInterface +class D300 extends Element { const REG = 'D300'; const LEVEL = 3; @@ -144,11 +144,13 @@ class D300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D309.php b/src/Elements/Contribuicoes/D309.php index 570401a2..d588c115 100755 --- a/src/Elements/Contribuicoes/D309.php +++ b/src/Elements/Contribuicoes/D309.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D309 extends Element implements ElementInterface +class D309 extends Element { const REG = 'D309'; const LEVEL = 4; @@ -33,11 +33,14 @@ class D309 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D350.php b/src/Elements/Contribuicoes/D350.php index d90a9044..37483291 100755 --- a/src/Elements/Contribuicoes/D350.php +++ b/src/Elements/Contribuicoes/D350.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D350 extends Element implements ElementInterface +class D350 extends Element { const REG = 'D350'; const LEVEL = 3; @@ -167,16 +167,17 @@ class D350 extends Element implements ElementInterface 'info' => 'Código da conta analítica contábil debitada/creditada ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D359.php b/src/Elements/Contribuicoes/D359.php index 3dae944c..02a8306b 100755 --- a/src/Elements/Contribuicoes/D359.php +++ b/src/Elements/Contribuicoes/D359.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D359 extends Element implements ElementInterface +class D359 extends Element { const REG = 'D359'; const LEVEL = 4; @@ -33,11 +33,14 @@ class D359 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D500.php b/src/Elements/Contribuicoes/D500.php index fd80da80..848c81bf 100755 --- a/src/Elements/Contribuicoes/D500.php +++ b/src/Elements/Contribuicoes/D500.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D500 extends Element implements ElementInterface +class D500 extends Element { const REG = 'D500'; const LEVEL = 3; @@ -162,16 +162,17 @@ class D500 extends Element implements ElementInterface 'info' => 'Valor da COFINS ', 'format' => '15v2' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D501.php b/src/Elements/Contribuicoes/D501.php index 1728c88f..58cd3a1e 100755 --- a/src/Elements/Contribuicoes/D501.php +++ b/src/Elements/Contribuicoes/D501.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D501 extends Element implements ElementInterface +class D501 extends Element { const REG = 'D501'; const LEVEL = 4; @@ -66,11 +66,13 @@ class D501 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D505.php b/src/Elements/Contribuicoes/D505.php index 77ec51f6..da172c13 100755 --- a/src/Elements/Contribuicoes/D505.php +++ b/src/Elements/Contribuicoes/D505.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D505 extends Element implements ElementInterface +class D505 extends Element { const REG = 'D505'; const LEVEL = 4; @@ -61,16 +61,17 @@ class D505 extends Element implements ElementInterface 'info' => 'Código da conta analítica contábil debitada/creditada ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D509.php b/src/Elements/Contribuicoes/D509.php index bd67e6b4..6de52c37 100755 --- a/src/Elements/Contribuicoes/D509.php +++ b/src/Elements/Contribuicoes/D509.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D509 extends Element implements ElementInterface +class D509 extends Element { const REG = 'D509'; const LEVEL = 4; @@ -28,16 +28,18 @@ class D509 extends Element implements ElementInterface ' 3 – Secretaria da Receita Federal do Brasil 9 – Outros. ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/D600.php b/src/Elements/Contribuicoes/D600.php index c35dec3b..af3eccfe 100755 --- a/src/Elements/Contribuicoes/D600.php +++ b/src/Elements/Contribuicoes/D600.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D600 extends Element implements ElementInterface +class D600 extends Element { const REG = 'D600'; const LEVEL = 3; @@ -142,16 +142,17 @@ class D600 extends Element implements ElementInterface 'info' => 'Valor da COFINS ', 'format' => '15v2' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D601.php b/src/Elements/Contribuicoes/D601.php index 1136d561..3c72be32 100755 --- a/src/Elements/Contribuicoes/D601.php +++ b/src/Elements/Contribuicoes/D601.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D601 extends Element implements ElementInterface +class D601 extends Element { const REG = 'D601'; const LEVEL = 4; @@ -69,16 +69,17 @@ class D601 extends Element implements ElementInterface 'info' => 'Código da conta contábil debitada/creditada ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D605.php b/src/Elements/Contribuicoes/D605.php index 90b9353b..dc789537 100755 --- a/src/Elements/Contribuicoes/D605.php +++ b/src/Elements/Contribuicoes/D605.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D605 extends Element implements ElementInterface +class D605 extends Element { const REG = 'D605'; const LEVEL = 4; @@ -69,16 +69,17 @@ class D605 extends Element implements ElementInterface 'info' => 'Código da conta contábil debitada/creditada ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/D609.php b/src/Elements/Contribuicoes/D609.php index 00fb12b8..c4c6762c 100755 --- a/src/Elements/Contribuicoes/D609.php +++ b/src/Elements/Contribuicoes/D609.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D609 extends Element implements ElementInterface +class D609 extends Element { const REG = 'D609'; const LEVEL = 4; @@ -26,16 +26,18 @@ class D609 extends Element implements ElementInterface 'info' => 'Indicador da origem do processo', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/F001.php b/src/Elements/Contribuicoes/F001.php index 26bd2a74..3779b10a 100644 --- a/src/Elements/Contribuicoes/F001.php +++ b/src/Elements/Contribuicoes/F001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class F001 extends Element implements ElementInterface +class F001 extends Element { const REG = 'F001'; const LEVEL = 0; @@ -20,16 +19,18 @@ class F001 extends Element implements ElementInterface 'info' => 'Indicador de movimento: 0 - Bloco com dados informados; 1 - Bloco sem dados informados', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/F010.php b/src/Elements/Contribuicoes/F010.php index 7fc71ac3..582ddcd6 100644 --- a/src/Elements/Contribuicoes/F010.php +++ b/src/Elements/Contribuicoes/F010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class F010 extends Element implements ElementInterface +class F010 extends Element { const REG = 'F010'; const LEVEL = 0; @@ -24,11 +23,14 @@ class F010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/F100.php b/src/Elements/Contribuicoes/F100.php index f061f13f..64a82a1e 100755 --- a/src/Elements/Contribuicoes/F100.php +++ b/src/Elements/Contribuicoes/F100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class F100 extends Element implements ElementInterface +class F100 extends Element { const REG = 'F100'; const LEVEL = 3; @@ -153,11 +152,13 @@ class F100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/F550.php b/src/Elements/Contribuicoes/F550.php index 5df45c87..ca744ce5 100644 --- a/src/Elements/Contribuicoes/F550.php +++ b/src/Elements/Contribuicoes/F550.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class F550 extends Element implements ElementInterface +class F550 extends Element { const REG = 'F550'; const LEVEL = 0; @@ -119,16 +118,18 @@ class F550 extends Element implements ElementInterface 'info' => 'Informação complementar.', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/I001.php b/src/Elements/Contribuicoes/I001.php index 364010c8..400a364d 100755 --- a/src/Elements/Contribuicoes/I001.php +++ b/src/Elements/Contribuicoes/I001.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class I001 extends Element implements ElementInterface +class I001 extends Element { const REG = 'I001'; const LEVEL = 1; @@ -26,11 +26,14 @@ class I001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/I010.php b/src/Elements/Contribuicoes/I010.php new file mode 100755 index 00000000..0650beff --- /dev/null +++ b/src/Elements/Contribuicoes/I010.php @@ -0,0 +1,56 @@ + [ + 'type' => 'string', + 'regex' => '^[0-9]{14}$', + 'required' => true, + 'info' => 'Número de inscrição da pessoa jurídica no CNPJ', + 'format' => '' + ], + 'IND_ATIV' => [ + 'type' => 'string', + 'regex' => '^(01|02|03|04|05|06)$', + 'required' => false, + 'info' => 'Indicador de operações realizadas no período:' + . '01 – Exclusivamente operações de Instituições Financeiras e Assemelhadas' + . '02 – Exclusivamente operações de Seguros Privados' + . '03 – Exclusivamente operações de Previdência Complementar' + . '04 – Exclusivamente operações de Capitalização' + . '05 – Exclusivamente operações de Planos de Assistência à Saúde' + . '06 – Realizou operações referentes a mais de um dos indicadores acima', + 'format' => '' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação Complementar', + 'format' => '' + ], + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I100.php b/src/Elements/Contribuicoes/I100.php new file mode 100755 index 00000000..c238b1f2 --- /dev/null +++ b/src/Elements/Contribuicoes/I100.php @@ -0,0 +1,106 @@ + [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor Total do Faturamento/Receita Bruta no Período', + 'format' => '15v2' + ], + 'CST_PIS_COFINS' => [ + 'type' => 'string', + 'regex' => 'Código de Situação Tributária referente à Receita informada no Campo 02 (Tabelas 4.3.3 e 4.3.4)', + 'required' => true, + 'info' => 'Identificação do processo ou ato concessório', + 'format' => '' + ], + 'VL_TOT_DED_GER' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor Total das Deduções e Exclusões de Caráter Geral', + 'format' => '15v2' + ], + 'VL_TOT_DED_ESP' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor Total das Deduções e Exclusões de Caráter Específico', + 'format' => '15v2' + ], + 'VL_BC_PIS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor da base de cálculo do PIS/PASEP ', + 'format' => '15v2' + ], + 'ALIQ_PIS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Alíquota do PIS/PASEP (em percentual)', + 'format' => '15v2' + ], + 'VL_PIS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor do PIS/PASEP', + 'format' => '15v2' + ], + 'VL_BC_COFINS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor da base de cálculo da Cofins', + 'format' => '15v2' + ], + 'ALIQ_COFINS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Alíquota da COFINS (em percentual)', + 'format' => '15v2' + ], + 'VL_COFINS' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor da COFINS', + 'format' => '15v2' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação Complementar dos dados informados no registro', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I199.php b/src/Elements/Contribuicoes/I199.php new file mode 100755 index 00000000..b42a7622 --- /dev/null +++ b/src/Elements/Contribuicoes/I199.php @@ -0,0 +1,46 @@ + [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Identificação do processo ou ato concessório', + 'format' => '' + ], + 'IND_PROC' => [ + 'type' => 'string', + 'regex' => '^(1|3|9)$', + 'required' => true, + 'info' => 'Indicador da origem do processo: ' + . '1 - Justiça Federal; ' + . '3 – Secretaria da Receita Federal do Brasil; ' + . '9 – Outros.', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I200.php b/src/Elements/Contribuicoes/I200.php new file mode 100755 index 00000000..ec54384c --- /dev/null +++ b/src/Elements/Contribuicoes/I200.php @@ -0,0 +1,65 @@ + [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Informar o número do campo do registro “I100” (Campos 02, 04 ou 05), objeto de informação ' + . 'neste registro.', + 'format' => '' + ], + 'COD_DET' => [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código do tipo de detalhamento, conforme Tabelas 7.1.1 e/ou 7.1.2', + 'format' => '' + ], + 'DET_VALOR' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor detalhado referente ao campo 03 (COD_DET) deste registro', + 'format' => '15v2' + ], + 'COD_CTA' => [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código da conta contábil referente ao valor informado no campo 04 (DET_VALOR)', + 'format' => '' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação Complementar dos dados informados no registro', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I299.php b/src/Elements/Contribuicoes/I299.php new file mode 100755 index 00000000..feb3bf5d --- /dev/null +++ b/src/Elements/Contribuicoes/I299.php @@ -0,0 +1,46 @@ + [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Identificação do processo ou ato concessório', + 'format' => '' + ], + 'IND_PROC' => [ + 'type' => 'string', + 'regex' => '^(1|3|9)$', + 'required' => true, + 'info' => 'Indicador da origem do processo: ' + . '1 - Justiça Federal; ' + . '3 – Secretaria da Receita Federal do Brasil; ' + . '9 – Outros.', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I300.php b/src/Elements/Contribuicoes/I300.php new file mode 100755 index 00000000..7d36f563 --- /dev/null +++ b/src/Elements/Contribuicoes/I300.php @@ -0,0 +1,60 @@ + [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código das Tabelas 7.1.3 (Receitas – Visão Analítica/Referenciada) e/ou ' + . '7.1.4 (Deduções e exclusões – Visão Analítica/Referenciada), objeto de complemento neste registro', + 'format' => '' + ], + 'DET_VALOR' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => false, + 'info' => 'Valor da receita, dedução ou exclusão, objeto de complemento/detalhamento neste registro, ' + . 'conforme código informado no campo 02 (especificados nas tabelas analíticas 7.1.3 e 7.1.4) ou ' + . 'no campo 04 (código da conta contábil)', + 'format' => '15v2' + ], + 'COD_CTA' => [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código da conta contábil referente ao valor informado no campo 03', + 'format' => '' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação Complementar dos dados informados no registro', + 'format' => '' + ], + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/I399.php b/src/Elements/Contribuicoes/I399.php new file mode 100755 index 00000000..f7ed8134 --- /dev/null +++ b/src/Elements/Contribuicoes/I399.php @@ -0,0 +1,46 @@ + [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Identificação do processo ou ato concessório', + 'format' => '' + ], + 'IND_PROC' => [ + 'type' => 'string', + 'regex' => '^(1|3|9)$', + 'required' => true, + 'info' => 'Indicador da origem do processo: ' + . '1 - Justiça Federal; ' + . '3 – Secretaria da Receita Federal do Brasil; ' + . '9 – Outros.', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/M001.php b/src/Elements/Contribuicoes/M001.php index 0f27b456..4160a8d1 100755 --- a/src/Elements/Contribuicoes/M001.php +++ b/src/Elements/Contribuicoes/M001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M001 extends Element implements ElementInterface +class M001 extends Element { const REG = 'M001'; const LEVEL = 2; @@ -22,16 +21,18 @@ class M001 extends Element implements ElementInterface ' 1- Bloco sem dados informados ', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M100.php b/src/Elements/Contribuicoes/M100.php index 183abbf2..58588053 100755 --- a/src/Elements/Contribuicoes/M100.php +++ b/src/Elements/Contribuicoes/M100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M100 extends Element implements ElementInterface +class M100 extends Element { const REG = 'M100'; const LEVEL = 3; @@ -123,12 +122,15 @@ class M100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/Contribuicoes/M105.php b/src/Elements/Contribuicoes/M105.php index dc21b315..23a037d4 100755 --- a/src/Elements/Contribuicoes/M105.php +++ b/src/Elements/Contribuicoes/M105.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M105 extends Element implements ElementInterface +class M105 extends Element { const REG = 'M105'; const LEVEL = 3; @@ -102,11 +101,14 @@ class M105 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M110.php b/src/Elements/Contribuicoes/M110.php index 74788ccb..e0c6319c 100755 --- a/src/Elements/Contribuicoes/M110.php +++ b/src/Elements/Contribuicoes/M110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M110 extends Element implements ElementInterface +class M110 extends Element { const REG = 'M110'; const LEVEL = 3; @@ -63,11 +62,14 @@ class M110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M115.php b/src/Elements/Contribuicoes/M115.php index 7970dd92..3e67fa9d 100755 --- a/src/Elements/Contribuicoes/M115.php +++ b/src/Elements/Contribuicoes/M115.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M115 extends Element implements ElementInterface +class M115 extends Element { const REG = 'M115'; const LEVEL = 4; @@ -76,11 +75,14 @@ class M115 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M200.php b/src/Elements/Contribuicoes/M200.php index 29b9a4f2..446e6f09 100755 --- a/src/Elements/Contribuicoes/M200.php +++ b/src/Elements/Contribuicoes/M200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M200 extends Element implements ElementInterface +class M200 extends Element { const REG = 'M200'; const LEVEL = 2; @@ -106,11 +105,14 @@ class M200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M205.php b/src/Elements/Contribuicoes/M205.php index 8f9736b0..ab6bc178 100755 --- a/src/Elements/Contribuicoes/M205.php +++ b/src/Elements/Contribuicoes/M205.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M205 extends Element implements ElementInterface +class M205 extends Element { const REG = 'M205'; const LEVEL = 3; @@ -40,11 +39,14 @@ class M205 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M210.php b/src/Elements/Contribuicoes/M210.php index e2f75fb4..8d4cd0be 100755 --- a/src/Elements/Contribuicoes/M210.php +++ b/src/Elements/Contribuicoes/M210.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M210 extends Element implements ElementInterface +class M210 extends Element { const REG = 'M210'; const LEVEL = 3; @@ -126,11 +125,14 @@ class M210 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M211.php b/src/Elements/Contribuicoes/M211.php index 4f92522b..e68ec210 100755 --- a/src/Elements/Contribuicoes/M211.php +++ b/src/Elements/Contribuicoes/M211.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M211 extends Element implements ElementInterface +class M211 extends Element { const REG = 'M211'; const LEVEL = 4; @@ -64,11 +63,14 @@ class M211 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M215.php b/src/Elements/Contribuicoes/M215.php new file mode 100755 index 00000000..92141f4f --- /dev/null +++ b/src/Elements/Contribuicoes/M215.php @@ -0,0 +1,100 @@ + [ + 'type' => 'string', + 'regex' => '^(1|2)$', + 'required' => true, + 'info' => 'Indicador do tipo de ajuste da base de cálculo: 0 - Ajuste de redução; 1 - Ajuste de acréscimo.', + 'format' => '' + ], + 'VL_AJ_BC' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor do ajuste de base de cálculo', + 'format' => '15v2' + ], + 'COD_AJ_BC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código do ajuste, conforme a Tabela indicada no item 4.3.18', + 'format' => '' + ], + 'NUM_DOC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Número do processo, documento ou ato concessório ao qual o ajuste está vinculado, se houver', + 'format' => '' + ], + 'DESCR_AJ_BC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Descrição resumida do ajuste na base de cálculo.', + 'format' => '' + ], + 'DT_REF' => [ + 'type' => 'string', + 'regex' => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$', + 'required' => false, + 'info' => 'Data de referência do ajuste (ddmmaaaa) ', + 'format' => '' + ], + 'COD_CTA' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Código da conta analítica contábil debitada/creditada', + 'format' => '' + ], + 'CNPJ' => [ + 'type' => 'string', + 'regex' => '^[0-9]{14}$', + 'required' => true, + 'info' => 'CNPJ do estabelecimento a que se refere o ajuste', + 'format' => '' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação complementar do registro', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/M220.php b/src/Elements/Contribuicoes/M220.php index bee8788f..6bf0e520 100755 --- a/src/Elements/Contribuicoes/M220.php +++ b/src/Elements/Contribuicoes/M220.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M220 extends Element implements ElementInterface +class M220 extends Element { const REG = 'M220'; const LEVEL = 4; @@ -63,11 +62,14 @@ class M220 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M225.php b/src/Elements/Contribuicoes/M225.php index 2c2ff7b7..41654296 100755 --- a/src/Elements/Contribuicoes/M225.php +++ b/src/Elements/Contribuicoes/M225.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M225 extends Element implements ElementInterface +class M225 extends Element { const REG = 'M225'; const LEVEL = 5; @@ -76,11 +75,14 @@ class M225 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M230.php b/src/Elements/Contribuicoes/M230.php index f37d9db5..7dce7e76 100755 --- a/src/Elements/Contribuicoes/M230.php +++ b/src/Elements/Contribuicoes/M230.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M230 extends Element implements ElementInterface +class M230 extends Element { const REG = 'M230'; const LEVEL = 4; @@ -61,11 +60,14 @@ class M230 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M300.php b/src/Elements/Contribuicoes/M300.php index fada0f70..8ba28785 100755 --- a/src/Elements/Contribuicoes/M300.php +++ b/src/Elements/Contribuicoes/M300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M300 extends Element implements ElementInterface +class M300 extends Element { const REG = 'M300'; const LEVEL = 2; @@ -74,11 +73,14 @@ class M300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M350.php b/src/Elements/Contribuicoes/M350.php index ca441a62..cc7d82ab 100755 --- a/src/Elements/Contribuicoes/M350.php +++ b/src/Elements/Contribuicoes/M350.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M350 extends Element implements ElementInterface +class M350 extends Element { const REG = 'M350'; const LEVEL = 2; @@ -53,11 +52,14 @@ class M350 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M400.php b/src/Elements/Contribuicoes/M400.php index ce4c6a4a..ecd77eb8 100755 --- a/src/Elements/Contribuicoes/M400.php +++ b/src/Elements/Contribuicoes/M400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M400 extends Element implements ElementInterface +class M400 extends Element { const REG = 'M400'; const LEVEL = 2; @@ -48,11 +47,14 @@ class M400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M410.php b/src/Elements/Contribuicoes/M410.php index 5ebc4275..e184d7a2 100755 --- a/src/Elements/Contribuicoes/M410.php +++ b/src/Elements/Contribuicoes/M410.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M410 extends Element implements ElementInterface +class M410 extends Element { const REG = 'M410'; const LEVEL = 3; @@ -59,11 +58,14 @@ class M410 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M500.php b/src/Elements/Contribuicoes/M500.php index 58cff44f..bb1e30fa 100755 --- a/src/Elements/Contribuicoes/M500.php +++ b/src/Elements/Contribuicoes/M500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M500 extends Element implements ElementInterface +class M500 extends Element { const REG = 'M500'; const LEVEL = 2; @@ -123,11 +122,14 @@ class M500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M505.php b/src/Elements/Contribuicoes/M505.php index c357368d..9a617c70 100755 --- a/src/Elements/Contribuicoes/M505.php +++ b/src/Elements/Contribuicoes/M505.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M505 extends Element implements ElementInterface +class M505 extends Element { const REG = 'M505'; const LEVEL = 3; @@ -101,11 +100,14 @@ class M505 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M510.php b/src/Elements/Contribuicoes/M510.php index 1074fbfc..81a0e7a9 100755 --- a/src/Elements/Contribuicoes/M510.php +++ b/src/Elements/Contribuicoes/M510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M510 extends Element implements ElementInterface +class M510 extends Element { const REG = 'M510'; const LEVEL = 3; @@ -63,11 +62,14 @@ class M510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M515.php b/src/Elements/Contribuicoes/M515.php index da6f9247..018142f0 100755 --- a/src/Elements/Contribuicoes/M515.php +++ b/src/Elements/Contribuicoes/M515.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M515 extends Element implements ElementInterface +class M515 extends Element { const REG = 'M515'; const LEVEL = 4; @@ -76,11 +75,14 @@ class M515 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M600.php b/src/Elements/Contribuicoes/M600.php index 86c1daac..e0bccc39 100755 --- a/src/Elements/Contribuicoes/M600.php +++ b/src/Elements/Contribuicoes/M600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M600 extends Element implements ElementInterface +class M600 extends Element { const REG = 'M600'; const LEVEL = 2; @@ -106,11 +105,14 @@ class M600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M605.php b/src/Elements/Contribuicoes/M605.php index f0597e65..a570b9c0 100755 --- a/src/Elements/Contribuicoes/M605.php +++ b/src/Elements/Contribuicoes/M605.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M605 extends Element implements ElementInterface +class M605 extends Element { const REG = 'M605'; const LEVEL = 3; @@ -42,11 +41,14 @@ class M605 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M610.php b/src/Elements/Contribuicoes/M610.php index 0aea92c3..3eeebb30 100755 --- a/src/Elements/Contribuicoes/M610.php +++ b/src/Elements/Contribuicoes/M610.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M610 extends Element implements ElementInterface +class M610 extends Element { const REG = 'M610'; const LEVEL = 3; @@ -125,11 +124,14 @@ class M610 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M611.php b/src/Elements/Contribuicoes/M611.php index 550e45d0..970b0615 100755 --- a/src/Elements/Contribuicoes/M611.php +++ b/src/Elements/Contribuicoes/M611.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M611 extends Element implements ElementInterface +class M611 extends Element { const REG = 'M611'; const LEVEL = 4; @@ -60,11 +59,14 @@ class M611 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M615.php b/src/Elements/Contribuicoes/M615.php new file mode 100755 index 00000000..e9ed16d0 --- /dev/null +++ b/src/Elements/Contribuicoes/M615.php @@ -0,0 +1,92 @@ + [ + 'type' => 'string', + 'regex' => '^(1|2)$', + 'required' => true, + 'info' => 'Indicador do tipo de ajuste da base de cálculo: 0 - Ajuste de redução; 1 - Ajuste de acréscimo.', + 'format' => '' + ], + 'VL_AJ_BC' => [ + 'type' => 'numeric', + 'regex' => '^\d+(\.\d*)?|\.\d+$', + 'required' => true, + 'info' => 'Valor do ajuste de base de cálculo', + 'format' => '15v2' + ], + 'COD_AJ_BC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => true, + 'info' => 'Código do ajuste, conforme a Tabela indicada no item 4.3.18', + 'format' => '' + ], + 'NUM_DOC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Número do processo, documento ou ato concessório ao qual o ajuste está vinculado, se houver', + 'format' => '' + ], + 'DESCR_AJ_BC' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Descrição resumida do ajuste na base de cálculo.', + 'format' => '' + ], + 'DT_REF' => [ + 'type' => 'string', + 'regex' => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$', + 'required' => false, + 'info' => 'Data de referência do ajuste (ddmmaaaa) ', + 'format' => '' + ], + 'COD_CTA' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Código da conta analítica contábil debitada/creditada', + 'format' => '' + ], + 'CNPJ' => [ + 'type' => 'string', + 'regex' => '^[0-9]{14}$', + 'required' => true, + 'info' => 'CNPJ do estabelecimento a que se refere o ajuste', + 'format' => '' + ], + 'INFO_COMPL' => [ + 'type' => 'string', + 'regex' => '', + 'required' => false, + 'info' => 'Informação complementar do registro', + 'format' => '' + ] + ]; + + /** + * Constructor + * @param stdClass $std + * @param stdClass $vigencia + */ + public function __construct(stdClass $std, stdClass $vigencia = null) + { + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); + $this->std = $this->standarize($std); + $this->postValidation(); + } +} diff --git a/src/Elements/Contribuicoes/M620.php b/src/Elements/Contribuicoes/M620.php index a1937ea8..adba8105 100755 --- a/src/Elements/Contribuicoes/M620.php +++ b/src/Elements/Contribuicoes/M620.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M620 extends Element implements ElementInterface +class M620 extends Element { const REG = 'M620'; const LEVEL = 4; @@ -63,11 +62,14 @@ class M620 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M625.php b/src/Elements/Contribuicoes/M625.php index cf6577db..ec893f3f 100755 --- a/src/Elements/Contribuicoes/M625.php +++ b/src/Elements/Contribuicoes/M625.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M625 extends Element implements ElementInterface +class M625 extends Element { const REG = 'M625'; const LEVEL = 5; @@ -76,11 +75,14 @@ class M625 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M630.php b/src/Elements/Contribuicoes/M630.php index 4877d810..b7b830e7 100755 --- a/src/Elements/Contribuicoes/M630.php +++ b/src/Elements/Contribuicoes/M630.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M630 extends Element implements ElementInterface +class M630 extends Element { const REG = 'M630'; const LEVEL = 4; @@ -61,11 +60,14 @@ class M630 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M700.php b/src/Elements/Contribuicoes/M700.php index cb8ee731..82651255 100755 --- a/src/Elements/Contribuicoes/M700.php +++ b/src/Elements/Contribuicoes/M700.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M700 extends Element implements ElementInterface +class M700 extends Element { const REG = 'M700'; const LEVEL = 2; @@ -81,11 +80,14 @@ class M700 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M800.php b/src/Elements/Contribuicoes/M800.php index 816f9efc..092fcfac 100755 --- a/src/Elements/Contribuicoes/M800.php +++ b/src/Elements/Contribuicoes/M800.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M800 extends Element implements ElementInterface +class M800 extends Element { const REG = 'M800'; const LEVEL = 2; @@ -48,11 +47,14 @@ class M800 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/M810.php b/src/Elements/Contribuicoes/M810.php index f096b6f8..b3820bf2 100755 --- a/src/Elements/Contribuicoes/M810.php +++ b/src/Elements/Contribuicoes/M810.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class M810 extends Element implements ElementInterface +class M810 extends Element { const REG = 'M810'; const LEVEL = 3; @@ -59,11 +58,14 @@ class M810 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P001.php b/src/Elements/Contribuicoes/P001.php index c15fa729..cee3afbd 100755 --- a/src/Elements/Contribuicoes/P001.php +++ b/src/Elements/Contribuicoes/P001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P001 extends Element implements ElementInterface +class P001 extends Element { const REG = 'P001'; const LEVEL = 1; @@ -27,11 +26,14 @@ class P001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P010.php b/src/Elements/Contribuicoes/P010.php index f32f4b2b..1ebefa3e 100755 --- a/src/Elements/Contribuicoes/P010.php +++ b/src/Elements/Contribuicoes/P010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P010 extends Element implements ElementInterface +class P010 extends Element { const REG = 'P010'; const LEVEL = 2; @@ -25,11 +24,14 @@ class P010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P100.php b/src/Elements/Contribuicoes/P100.php index 4b40668f..b02cf84d 100755 --- a/src/Elements/Contribuicoes/P100.php +++ b/src/Elements/Contribuicoes/P100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P100 extends Element implements ElementInterface +class P100 extends Element { const REG = 'P100'; const LEVEL = 3; @@ -127,12 +126,15 @@ class P100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/Contribuicoes/P110.php b/src/Elements/Contribuicoes/P110.php index 84c9a97e..7db81886 100755 --- a/src/Elements/Contribuicoes/P110.php +++ b/src/Elements/Contribuicoes/P110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P110 extends Element implements ElementInterface +class P110 extends Element { const REG = 'P110'; const LEVEL = 4; @@ -46,11 +45,14 @@ class P110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P199.php b/src/Elements/Contribuicoes/P199.php index 71e38ce2..3b069ec8 100755 --- a/src/Elements/Contribuicoes/P199.php +++ b/src/Elements/Contribuicoes/P199.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P199 extends Element implements ElementInterface +class P199 extends Element { const REG = 'P199'; const LEVEL = 4; @@ -34,11 +33,14 @@ class P199 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P200.php b/src/Elements/Contribuicoes/P200.php index fc8788c3..8d51aed7 100755 --- a/src/Elements/Contribuicoes/P200.php +++ b/src/Elements/Contribuicoes/P200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P200 extends Element implements ElementInterface +class P200 extends Element { const REG = 'P200'; const LEVEL = 3; @@ -64,11 +63,14 @@ class P200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/P210.php b/src/Elements/Contribuicoes/P210.php index a8f71c88..575ce36b 100755 --- a/src/Elements/Contribuicoes/P210.php +++ b/src/Elements/Contribuicoes/P210.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class P210 extends Element implements ElementInterface +class P210 extends Element { const REG = 'P210'; const LEVEL = 4; @@ -63,11 +62,14 @@ class P210 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0000.php b/src/Elements/Contribuicoes/Z0000.php index 2f93be01..cc5c9e02 100755 --- a/src/Elements/Contribuicoes/Z0000.php +++ b/src/Elements/Contribuicoes/Z0000.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0000 extends Element implements ElementInterface +class Z0000 extends Element { const REG = '0000'; const LEVEL = 0; @@ -31,7 +30,7 @@ class Z0000 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^([0-4]{1})$', 'required' => false, - 'info' => 'Indicador de situação especial: 0 - Abertura 1 - Cisão + 'info' => 'Indicador de situação especial: 0 - Abertura 1 - Cisão 2 - Fusão 3 - Incorporação 4 – Encerramento', 'format' => '' ], @@ -39,7 +38,7 @@ class Z0000 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^.{41}$', 'required' => false, - 'info' => 'Número do Recibo da Escrituração anterior + 'info' => 'Número do Recibo da Escrituração anterior a ser retificada, utilizado quando TIPO_ESCRIT for igual a 1', 'format' => '' ], @@ -96,8 +95,8 @@ class Z0000 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^(0)([0-5]{1})$', 'required' => false, - 'info' => 'Indicador da natureza da pessoa jurídica: - 00 – Pessoa jurídica em geral 01 – Sociedade cooperativa 02 – Entidade sujeita ao PIS/Pasep + 'info' => 'Indicador da natureza da pessoa jurídica: + 00 – Pessoa jurídica em geral 01 – Sociedade cooperativa 02 – Entidade sujeita ao PIS/Pasep exclusivamente com base na Folha de Salários', 'format' => '' ], @@ -105,7 +104,7 @@ class Z0000 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^(0|1|2|3|4|9)$', 'required' => false, - 'info' => 'Indicador de tipo de atividade preponderante: + 'info' => 'Indicador de tipo de atividade preponderante: 0 – Industrial ou equiparado a industrial; 1 – Prestador de serviços; 2 - Atividade de comércio; 3 – Pessoas jurídicas referidas nos §§ 6º, 8º e 9º do art. 3º da Lei nº 9.718, de 1998; 4 – Atividade imobiliária; 9 – Outros.', @@ -116,11 +115,14 @@ class Z0000 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0001.php b/src/Elements/Contribuicoes/Z0001.php index c4b95b10..76fb541a 100755 --- a/src/Elements/Contribuicoes/Z0001.php +++ b/src/Elements/Contribuicoes/Z0001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0001 extends Element implements ElementInterface +class Z0001 extends Element { const REG = '0001'; const LEVEL = 1; @@ -25,11 +24,14 @@ class Z0001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0035.php b/src/Elements/Contribuicoes/Z0035.php index 3f80bf5f..55b00360 100755 --- a/src/Elements/Contribuicoes/Z0035.php +++ b/src/Elements/Contribuicoes/Z0035.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0035 extends Element implements ElementInterface +class Z0035 extends Element { const REG = '0035'; const LEVEL = 0; @@ -39,11 +38,14 @@ class Z0035 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0100.php b/src/Elements/Contribuicoes/Z0100.php index 202c8ae5..90d9e3aa 100755 --- a/src/Elements/Contribuicoes/Z0100.php +++ b/src/Elements/Contribuicoes/Z0100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0100 extends Element implements ElementInterface +class Z0100 extends Element { const REG = '0100'; const LEVEL = 2; @@ -109,11 +108,14 @@ class Z0100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0110.php b/src/Elements/Contribuicoes/Z0110.php index 8e64c164..289d5bd7 100755 --- a/src/Elements/Contribuicoes/Z0110.php +++ b/src/Elements/Contribuicoes/Z0110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0110 extends Element implements ElementInterface +class Z0110 extends Element { const REG = '0110'; const LEVEL = 2; @@ -60,11 +59,13 @@ class Z0110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z0111.php b/src/Elements/Contribuicoes/Z0111.php index 3816190c..93669bee 100755 --- a/src/Elements/Contribuicoes/Z0111.php +++ b/src/Elements/Contribuicoes/Z0111.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0111 extends Element implements ElementInterface +class Z0111 extends Element { const REG = '0111'; const LEVEL = 3; @@ -54,11 +53,13 @@ class Z0111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z0120.php b/src/Elements/Contribuicoes/Z0120.php index 947ac704..014dcb2c 100755 --- a/src/Elements/Contribuicoes/Z0120.php +++ b/src/Elements/Contribuicoes/Z0120.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0120 extends Element implements ElementInterface +class Z0120 extends Element { const REG = '0120'; const LEVEL = 2; @@ -17,7 +16,7 @@ class Z0120 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^.{6}$', 'required' => false, - 'info' => 'Mês de referência do ano-calendário da escrituração sem dados, + 'info' => 'Mês de referência do ano-calendário da escrituração sem dados, dispensada da entrega. Campo a ser preenchido no formato “mmaaaa”', 'format' => '' ], @@ -25,20 +24,20 @@ class Z0120 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^.{0,90}$', 'required' => false, - 'info' => 'Informação complementar do registro. No caso de escrituração sem dados, - deve ser informado o real motivo dessa situação, conforme indicadores abaixo: - 01 - Pessoa jurídica imune ou isenta do IRPJ - 02 - Órgãos públicos, autarquias e fundações públicas - 03 - Pessoa jurídica inativa - 04 - Pessoa jurídica em geral, que não realizou operações geradoras de receitas + 'info' => 'Informação complementar do registro. No caso de escrituração sem dados, + deve ser informado o real motivo dessa situação, conforme indicadores abaixo: + 01 - Pessoa jurídica imune ou isenta do IRPJ + 02 - Órgãos públicos, autarquias e fundações públicas + 03 - Pessoa jurídica inativa + 04 - Pessoa jurídica em geral, que não realizou operações geradoras de receitas (tributáveis ou não) ou de créditos - 05 - Sociedade em Conta de Participação - SCP, que não realizou operações - geradoras de receitas (tributáveis ou não) ou de créditos - 06 - Sociedade Cooperativa, que não realizou operações - geradoras de receitas (tributáveis ou não) ou de créditos - 07 - Escrituração decorrente de incorporação, fusão ou cisão, sem operações geradoras - de receitas (tributáveis ou não) ou de créditos - 99 - Demais hipóteses de dispensa de escrituração, relacionadas no art. 5º, + 05 - Sociedade em Conta de Participação - SCP, que não realizou operações + geradoras de receitas (tributáveis ou não) ou de créditos + 06 - Sociedade Cooperativa, que não realizou operações + geradoras de receitas (tributáveis ou não) ou de créditos + 07 - Escrituração decorrente de incorporação, fusão ou cisão, sem operações geradoras + de receitas (tributáveis ou não) ou de créditos + 99 - Demais hipóteses de dispensa de escrituração, relacionadas no art. 5º, da IN RFB nº 1.252, de 2012', 'format' => '' ], @@ -47,11 +46,14 @@ class Z0120 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0140.php b/src/Elements/Contribuicoes/Z0140.php index aa94c167..a3d160d8 100755 --- a/src/Elements/Contribuicoes/Z0140.php +++ b/src/Elements/Contribuicoes/Z0140.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0140 extends Element implements ElementInterface +class Z0140 extends Element { const REG = '0140'; const LEVEL = 2; @@ -74,11 +73,14 @@ class Z0140 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0145.php b/src/Elements/Contribuicoes/Z0145.php index 55775fce..bd1426b9 100755 --- a/src/Elements/Contribuicoes/Z0145.php +++ b/src/Elements/Contribuicoes/Z0145.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0145 extends Element implements ElementInterface +class Z0145 extends Element { const REG = '0145'; const LEVEL = 3; @@ -17,9 +16,9 @@ class Z0145 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^(1|2)$', 'required' => false, - 'info' => 'Código indicador da incidência tributária no período: - 1 – Contribuição Previdenciária apurada no período, exclusivamente com base na Receita Bruta; - 2 – Contribuição Previdenciária apurada no período, com base na Receita Bruta e com base nas + 'info' => 'Código indicador da incidência tributária no período: + 1 – Contribuição Previdenciária apurada no período, exclusivamente com base na Receita Bruta; + 2 – Contribuição Previdenciária apurada no período, com base na Receita Bruta e com base nas Remunerações pagas, na forma dos nos incisos I e III do art. 22 da Lei no 8.212, de 1991.', 'format' => '' ], @@ -42,7 +41,7 @@ class Z0145 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor da Receita Bruta da(s) Atividade(s) não Sujeita(s) à + 'info' => 'Valor da Receita Bruta da(s) Atividade(s) não Sujeita(s) à Contribuição Previdenciária sobre a Receita Bruta', 'format' => '15v2' ], @@ -58,11 +57,14 @@ class Z0145 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0150.php b/src/Elements/Contribuicoes/Z0150.php index 2db3aa59..c80ae242 100755 --- a/src/Elements/Contribuicoes/Z0150.php +++ b/src/Elements/Contribuicoes/Z0150.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0150 extends Element implements ElementInterface +class Z0150 extends Element { const REG = '0150'; const LEVEL = 3; @@ -102,11 +101,14 @@ class Z0150 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0190.php b/src/Elements/Contribuicoes/Z0190.php index b1785f0b..a2dd13b2 100755 --- a/src/Elements/Contribuicoes/Z0190.php +++ b/src/Elements/Contribuicoes/Z0190.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0190 extends Element implements ElementInterface +class Z0190 extends Element { const REG = '0190'; const LEVEL = 3; @@ -32,11 +31,13 @@ class Z0190 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z0200.php b/src/Elements/Contribuicoes/Z0200.php index b633a751..4f54b750 100755 --- a/src/Elements/Contribuicoes/Z0200.php +++ b/src/Elements/Contribuicoes/Z0200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0200 extends Element implements ElementInterface +class Z0200 extends Element { const REG = '0200'; const LEVEL = 3; @@ -95,11 +94,14 @@ class Z0200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0205.php b/src/Elements/Contribuicoes/Z0205.php index 2819a008..713237f9 100755 --- a/src/Elements/Contribuicoes/Z0205.php +++ b/src/Elements/Contribuicoes/Z0205.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0205 extends Element implements ElementInterface +class Z0205 extends Element { const REG = '0205'; const LEVEL = 4; @@ -46,11 +45,14 @@ class Z0205 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0206.php b/src/Elements/Contribuicoes/Z0206.php index 78559336..48d5d3cc 100755 --- a/src/Elements/Contribuicoes/Z0206.php +++ b/src/Elements/Contribuicoes/Z0206.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0206 extends Element implements ElementInterface +class Z0206 extends Element { const REG = '0206'; const LEVEL = 4; @@ -25,11 +24,14 @@ class Z0206 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0208.php b/src/Elements/Contribuicoes/Z0208.php index 351a0abb..cbffa18c 100755 --- a/src/Elements/Contribuicoes/Z0208.php +++ b/src/Elements/Contribuicoes/Z0208.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0208 extends Element implements ElementInterface +class Z0208 extends Element { const REG = '0208'; const LEVEL = 4; @@ -17,9 +16,9 @@ class Z0208 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(0?[1-9]$)|(^1[0-3]$)$', 'required' => false, - 'info' => 'Código indicador da Tabela de Incidência, conforme Anexo III do Decreto nº - 6.707/08: 01 – Tabela I 02 – Tabela II 03 – Tabela III 04 – Tabela IV 05 – - Tabela V 06 – Tabela VI 07 – Tabela VII 08– Tabela VIII 09 – Tabela IX 10 – + 'info' => 'Código indicador da Tabela de Incidência, conforme Anexo III do Decreto nº + 6.707/08: 01 – Tabela I 02 – Tabela II 03 – Tabela III 04 – Tabela IV 05 – + Tabela V 06 – Tabela VI 07 – Tabela VII 08– Tabela VIII 09 – Tabela IX 10 – Tabela X 11 – Tabela XI 12 – Tabela XII', 'format' => '' ], @@ -42,11 +41,14 @@ class Z0208 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0400.php b/src/Elements/Contribuicoes/Z0400.php index 9e70e5d0..37d6272a 100755 --- a/src/Elements/Contribuicoes/Z0400.php +++ b/src/Elements/Contribuicoes/Z0400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0400 extends Element implements ElementInterface +class Z0400 extends Element { const REG = '0400'; const LEVEL = 3; @@ -32,11 +31,14 @@ class Z0400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0450.php b/src/Elements/Contribuicoes/Z0450.php index fab8c514..43567c07 100755 --- a/src/Elements/Contribuicoes/Z0450.php +++ b/src/Elements/Contribuicoes/Z0450.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0450 extends Element implements ElementInterface +class Z0450 extends Element { const REG = '0450'; const LEVEL = 3; @@ -24,8 +23,8 @@ class Z0450 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(.*)$', 'required' => false, - 'info' => 'Texto livre da informação complementar existente no documento fiscal, - inclusive espécie de normas legais, poder normativo, número, capitulação, data e + 'info' => 'Texto livre da informação complementar existente no documento fiscal, + inclusive espécie de normas legais, poder normativo, número, capitulação, data e demais referências pertinentes com indicação referentes ao tributo.', 'format' => '' ], @@ -34,11 +33,14 @@ class Z0450 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0500.php b/src/Elements/Contribuicoes/Z0500.php index 969a9c41..7baed8ed 100755 --- a/src/Elements/Contribuicoes/Z0500.php +++ b/src/Elements/Contribuicoes/Z0500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0500 extends Element implements ElementInterface +class Z0500 extends Element { const REG = '0500'; const LEVEL = 2; @@ -24,8 +23,8 @@ class Z0500 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^(01|02|03|04|05|09)$', 'required' => false, - 'info' => 'Código da natureza da conta/grupo de contas: - 01 - Contas de ativo 02 - Contas de passivo; 03 - Patrimônio líquido; + 'info' => 'Código da natureza da conta/grupo de contas: + 01 - Contas de ativo 02 - Contas de passivo; 03 - Patrimônio líquido; 04 - Contas de resultado; 05 - Contas de compensação; 09 - Outras.', 'format' => '' ], @@ -68,7 +67,7 @@ class Z0500 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[0-9]{14}$', 'required' => false, - 'info' => 'CNPJ do estabelecimento, no caso da conta informada no + 'info' => 'CNPJ do estabelecimento, no caso da conta informada no campo COD_CTA ser específica de um estabelecimento.', 'format' => '' ], @@ -77,11 +76,14 @@ class Z0500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z0600.php b/src/Elements/Contribuicoes/Z0600.php index e2687c95..c93d91be 100755 --- a/src/Elements/Contribuicoes/Z0600.php +++ b/src/Elements/Contribuicoes/Z0600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z0600 extends Element implements ElementInterface +class Z0600 extends Element { const REG = '0600'; const LEVEL = 2; @@ -39,11 +38,14 @@ class Z0600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1001.php b/src/Elements/Contribuicoes/Z1001.php index 74553b0b..9f247c1b 100755 --- a/src/Elements/Contribuicoes/Z1001.php +++ b/src/Elements/Contribuicoes/Z1001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1001 extends Element implements ElementInterface +class Z1001 extends Element { const REG = '1001'; const LEVEL = 2; @@ -27,11 +26,14 @@ class Z1001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1010.php b/src/Elements/Contribuicoes/Z1010.php index 2382a6d2..d7c41f79 100755 --- a/src/Elements/Contribuicoes/Z1010.php +++ b/src/Elements/Contribuicoes/Z1010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1010 extends Element implements ElementInterface +class Z1010 extends Element { const REG = '1010'; const LEVEL = 3; @@ -65,11 +64,14 @@ class Z1010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1020.php b/src/Elements/Contribuicoes/Z1020.php index add1c880..2f3d2943 100755 --- a/src/Elements/Contribuicoes/Z1020.php +++ b/src/Elements/Contribuicoes/Z1020.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1020 extends Element implements ElementInterface +class Z1020 extends Element { const REG = '1020'; const LEVEL = 2; @@ -43,11 +42,14 @@ class Z1020 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1050.php b/src/Elements/Contribuicoes/Z1050.php index 96157dec..ab77bfa0 100755 --- a/src/Elements/Contribuicoes/Z1050.php +++ b/src/Elements/Contribuicoes/Z1050.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1050 extends Element implements ElementInterface +class Z1050 extends Element { const REG = '1050'; const LEVEL = 2; @@ -144,11 +143,14 @@ class Z1050 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1100.php b/src/Elements/Contribuicoes/Z1100.php index 558f0d73..7f10da10 100755 --- a/src/Elements/Contribuicoes/Z1100.php +++ b/src/Elements/Contribuicoes/Z1100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1100 extends Element implements ElementInterface +class Z1100 extends Element { const REG = '1100'; const LEVEL = 2; @@ -146,11 +145,14 @@ class Z1100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1101.php b/src/Elements/Contribuicoes/Z1101.php index c734c810..8aa919b3 100755 --- a/src/Elements/Contribuicoes/Z1101.php +++ b/src/Elements/Contribuicoes/Z1101.php @@ -3,11 +3,10 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; use NFePHP\Common\Keys; -class Z1101 extends Element implements ElementInterface +class Z1101 extends Element { const REG = '1101'; const LEVEL = 3; @@ -169,11 +168,13 @@ class Z1101 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1102.php b/src/Elements/Contribuicoes/Z1102.php index 816c7aaa..37628672 100755 --- a/src/Elements/Contribuicoes/Z1102.php +++ b/src/Elements/Contribuicoes/Z1102.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1102 extends Element implements ElementInterface +class Z1102 extends Element { const REG = '1102'; const LEVEL = 3; @@ -39,11 +38,14 @@ class Z1102 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1200.php b/src/Elements/Contribuicoes/Z1200.php index ffd7efbc..7d221a82 100755 --- a/src/Elements/Contribuicoes/Z1200.php +++ b/src/Elements/Contribuicoes/Z1200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1200 extends Element implements ElementInterface +class Z1200 extends Element { const REG = '1200'; const LEVEL = 2; @@ -88,11 +87,14 @@ class Z1200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1210.php b/src/Elements/Contribuicoes/Z1210.php index 828be980..bdb12c30 100755 --- a/src/Elements/Contribuicoes/Z1210.php +++ b/src/Elements/Contribuicoes/Z1210.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1210 extends Element implements ElementInterface +class Z1210 extends Element { const REG = '1210'; const LEVEL = 3; @@ -89,11 +88,13 @@ class Z1210 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1220.php b/src/Elements/Contribuicoes/Z1220.php index 90f8ee00..2a33a630 100755 --- a/src/Elements/Contribuicoes/Z1220.php +++ b/src/Elements/Contribuicoes/Z1220.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1220 extends Element implements ElementInterface +class Z1220 extends Element { const REG = '1220'; const LEVEL = 3; @@ -48,11 +47,14 @@ class Z1220 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1300.php b/src/Elements/Contribuicoes/Z1300.php index af266b54..5dda6d75 100755 --- a/src/Elements/Contribuicoes/Z1300.php +++ b/src/Elements/Contribuicoes/Z1300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1300 extends Element implements ElementInterface +class Z1300 extends Element { const REG = '1300'; const LEVEL = 2; @@ -68,11 +67,13 @@ class Z1300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1500.php b/src/Elements/Contribuicoes/Z1500.php index 29e6ad18..ebf42a76 100755 --- a/src/Elements/Contribuicoes/Z1500.php +++ b/src/Elements/Contribuicoes/Z1500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1500 extends Element implements ElementInterface +class Z1500 extends Element { const REG = '1500'; const LEVEL = 2; @@ -144,11 +143,13 @@ class Z1500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1501.php b/src/Elements/Contribuicoes/Z1501.php index cde4dbaf..00fd220b 100755 --- a/src/Elements/Contribuicoes/Z1501.php +++ b/src/Elements/Contribuicoes/Z1501.php @@ -3,11 +3,10 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; use NFePHP\Common\Keys; -class Z1501 extends Element implements ElementInterface +class Z1501 extends Element { const REG = '1501'; const LEVEL = 3; @@ -169,11 +168,13 @@ class Z1501 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1502.php b/src/Elements/Contribuicoes/Z1502.php index c14c0b42..e228f7cb 100755 --- a/src/Elements/Contribuicoes/Z1502.php +++ b/src/Elements/Contribuicoes/Z1502.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1502 extends Element implements ElementInterface +class Z1502 extends Element { const REG = '1502'; const LEVEL = 4; @@ -39,11 +38,14 @@ class Z1502 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1600.php b/src/Elements/Contribuicoes/Z1600.php index db3748ea..def17997 100755 --- a/src/Elements/Contribuicoes/Z1600.php +++ b/src/Elements/Contribuicoes/Z1600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1600 extends Element implements ElementInterface +class Z1600 extends Element { const REG = '1600'; const LEVEL = 2; @@ -87,11 +86,14 @@ class Z1600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1610.php b/src/Elements/Contribuicoes/Z1610.php index dcc5575f..c4e5d12e 100755 --- a/src/Elements/Contribuicoes/Z1610.php +++ b/src/Elements/Contribuicoes/Z1610.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1610 extends Element implements ElementInterface +class Z1610 extends Element { const REG = '1610'; const LEVEL = 3; @@ -89,11 +88,13 @@ class Z1610 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1620.php b/src/Elements/Contribuicoes/Z1620.php index efa5b104..b9e311b8 100755 --- a/src/Elements/Contribuicoes/Z1620.php +++ b/src/Elements/Contribuicoes/Z1620.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1620 extends Element implements ElementInterface +class Z1620 extends Element { const REG = '1620'; const LEVEL = 3; @@ -48,11 +47,14 @@ class Z1620 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1700.php b/src/Elements/Contribuicoes/Z1700.php index cc189a5b..7874a5d6 100755 --- a/src/Elements/Contribuicoes/Z1700.php +++ b/src/Elements/Contribuicoes/Z1700.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1700 extends Element implements ElementInterface +class Z1700 extends Element { const REG = '1700'; const LEVEL = 2; @@ -72,11 +71,13 @@ class Z1700 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/Contribuicoes/Z1800.php b/src/Elements/Contribuicoes/Z1800.php index 6da6ed7c..80328a31 100755 --- a/src/Elements/Contribuicoes/Z1800.php +++ b/src/Elements/Contribuicoes/Z1800.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1800 extends Element implements ElementInterface +class Z1800 extends Element { const REG = '1800'; const LEVEL = 2; @@ -75,11 +74,14 @@ class Z1800 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1809.php b/src/Elements/Contribuicoes/Z1809.php index ce842e77..25edd048 100755 --- a/src/Elements/Contribuicoes/Z1809.php +++ b/src/Elements/Contribuicoes/Z1809.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1809 extends Element implements ElementInterface +class Z1809 extends Element { const REG = '1809'; const LEVEL = 3; @@ -34,11 +33,14 @@ class Z1809 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/Contribuicoes/Z1900.php b/src/Elements/Contribuicoes/Z1900.php index c65cfe2e..2be69d36 100755 --- a/src/Elements/Contribuicoes/Z1900.php +++ b/src/Elements/Contribuicoes/Z1900.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\Contribuicoes; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1900 extends Element implements ElementInterface +class Z1900 extends Element { const REG = '1900'; const LEVEL = 2; @@ -105,11 +104,14 @@ class Z1900 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B001.php b/src/Elements/ICMSIPI/B001.php index 9e9126f3..2960cbd0 100755 --- a/src/Elements/ICMSIPI/B001.php +++ b/src/Elements/ICMSIPI/B001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B001 extends Element implements ElementInterface +class B001 extends Element { const REG = 'B001'; const LEVEL = 1; @@ -26,11 +25,14 @@ class B001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B020.php b/src/Elements/ICMSIPI/B020.php index e8d55a95..69a2129b 100755 --- a/src/Elements/ICMSIPI/B020.php +++ b/src/Elements/ICMSIPI/B020.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B020 extends Element implements ElementInterface +class B020 extends Element { const REG = 'B020'; const LEVEL = 2; @@ -163,11 +162,13 @@ class B020 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B025.php b/src/Elements/ICMSIPI/B025.php index 0e66bdc4..9d17a6c4 100755 --- a/src/Elements/ICMSIPI/B025.php +++ b/src/Elements/ICMSIPI/B025.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B025 extends Element implements ElementInterface +class B025 extends Element { const REG = 'B025'; const LEVEL = 3; @@ -63,11 +62,13 @@ class B025 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B030.php b/src/Elements/ICMSIPI/B030.php index c22fe746..9eeeef80 100755 --- a/src/Elements/ICMSIPI/B030.php +++ b/src/Elements/ICMSIPI/B030.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B030 extends Element implements ElementInterface +class B030 extends Element { const REG = 'B030'; const LEVEL = 2; @@ -94,11 +93,13 @@ class B030 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B035.php b/src/Elements/ICMSIPI/B035.php index 804b03c1..0fbaa346 100755 --- a/src/Elements/ICMSIPI/B035.php +++ b/src/Elements/ICMSIPI/B035.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B035 extends Element implements ElementInterface +class B035 extends Element { const REG = 'B035'; const LEVEL = 3; @@ -63,11 +62,13 @@ class B035 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B350.php b/src/Elements/ICMSIPI/B350.php index f349ae25..28410dc9 100755 --- a/src/Elements/ICMSIPI/B350.php +++ b/src/Elements/ICMSIPI/B350.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B350 extends Element implements ElementInterface +class B350 extends Element { const REG = 'B350'; const LEVEL = 2; @@ -87,11 +86,13 @@ class B350 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B420.php b/src/Elements/ICMSIPI/B420.php index a26a67e3..f71c83fc 100755 --- a/src/Elements/ICMSIPI/B420.php +++ b/src/Elements/ICMSIPI/B420.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B420 extends Element implements ElementInterface +class B420 extends Element { const REG = 'B420'; const LEVEL = 2; @@ -62,11 +61,14 @@ class B420 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B440.php b/src/Elements/ICMSIPI/B440.php index c27f1add..3aded4c2 100755 --- a/src/Elements/ICMSIPI/B440.php +++ b/src/Elements/ICMSIPI/B440.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B440 extends Element implements ElementInterface +class B440 extends Element { const REG = 'B440'; const LEVEL = 2; @@ -59,11 +58,14 @@ class B440 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B460.php b/src/Elements/ICMSIPI/B460.php index 0cd9eb13..e5461be1 100755 --- a/src/Elements/ICMSIPI/B460.php +++ b/src/Elements/ICMSIPI/B460.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B460 extends Element implements ElementInterface +class B460 extends Element { const REG = 'B460'; const LEVEL = 2; @@ -74,11 +73,14 @@ class B460 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B470.php b/src/Elements/ICMSIPI/B470.php index 94231813..4152371f 100755 --- a/src/Elements/ICMSIPI/B470.php +++ b/src/Elements/ICMSIPI/B470.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B470 extends Element implements ElementInterface +class B470 extends Element { const REG = 'B470'; const LEVEL = 2; @@ -116,11 +115,13 @@ class B470 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/B500.php b/src/Elements/ICMSIPI/B500.php index f038204c..24f8b2a2 100755 --- a/src/Elements/ICMSIPI/B500.php +++ b/src/Elements/ICMSIPI/B500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B500 extends Element implements ElementInterface +class B500 extends Element { const REG = 'B500'; const LEVEL = 2; @@ -38,11 +37,14 @@ class B500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/B510.php b/src/Elements/ICMSIPI/B510.php index f1c5e38b..d67df9ed 100755 --- a/src/Elements/ICMSIPI/B510.php +++ b/src/Elements/ICMSIPI/B510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class B510 extends Element implements ElementInterface +class B510 extends Element { const REG = 'B510'; const LEVEL = 3; @@ -58,11 +57,13 @@ class B510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C001.php b/src/Elements/ICMSIPI/C001.php index 785569f4..8e517e82 100755 --- a/src/Elements/ICMSIPI/C001.php +++ b/src/Elements/ICMSIPI/C001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C001 extends Element implements ElementInterface +class C001 extends Element { const REG = 'C001'; const LEVEL = 1; @@ -26,11 +25,14 @@ class C001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C100.php b/src/Elements/ICMSIPI/C100.php index 244b48ec..c6296884 100644 --- a/src/Elements/ICMSIPI/C100.php +++ b/src/Elements/ICMSIPI/C100.php @@ -4,15 +4,14 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C100: NOTA FISCAL (CÓDIGO 01), NOTA FISCAL AVULSA (CÓDIGO 1B), * NOTA FISCAL DE PRODUTOR (CÓDIGO 04), NF-e (CÓDIGO 55) e NFC-e (CÓDIGO 65). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C100 extends Element implements ElementInterface +class C100 extends Element { const REG = 'C100'; const LEVEL = 2; @@ -219,11 +218,13 @@ class C100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C101.php b/src/Elements/ICMSIPI/C101.php index 372b32fd..7280f93d 100755 --- a/src/Elements/ICMSIPI/C101.php +++ b/src/Elements/ICMSIPI/C101.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C101: INFORMAÇÃO COMPLEMENTAR DOS DOCUMENTOS FISCAIS @@ -12,7 +11,7 @@ * NÃO CONTRIBUINTE EC 87/15 (CÓDIGO 55) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C101 extends Element implements ElementInterface +class C101 extends Element { const REG = 'C101'; const LEVEL = 3; @@ -44,11 +43,14 @@ class C101 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C105.php b/src/Elements/ICMSIPI/C105.php index f80c04ab..76c2d94d 100755 --- a/src/Elements/ICMSIPI/C105.php +++ b/src/Elements/ICMSIPI/C105.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C105: OPERAÇÕES COM ICMS ST RECOLHIDO PARA UF DIVERSA DO * DESTINATÁRIO DO DOCUMENTO FISCAL (CÓDIGO 55). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C105 extends Element implements ElementInterface +class C105 extends Element { const REG = 'C105'; const LEVEL = 3; @@ -36,11 +35,14 @@ class C105 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C110.php b/src/Elements/ICMSIPI/C110.php index dc90b867..88607458 100755 --- a/src/Elements/ICMSIPI/C110.php +++ b/src/Elements/ICMSIPI/C110.php @@ -3,14 +3,13 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C110: INFORMAÇÃO COMPLEMENTAR DA NOTA FISCAL (CÓDIGO 01, 1B, 04 e 55). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C110 extends Element implements ElementInterface +class C110 extends Element { const REG = 'C110'; const LEVEL = 3; @@ -35,11 +34,14 @@ class C110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C111.php b/src/Elements/ICMSIPI/C111.php index abb5d02f..397033cd 100755 --- a/src/Elements/ICMSIPI/C111.php +++ b/src/Elements/ICMSIPI/C111.php @@ -3,14 +3,13 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C111: PROCESSO REFERENCIADO * @package NFePHP\EFD\Elements\ICMSIPI */ -class C111 extends Element implements ElementInterface +class C111 extends Element { const REG = 'C111'; const LEVEL = 4; @@ -35,11 +34,14 @@ class C111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C112.php b/src/Elements/ICMSIPI/C112.php index 1d279ec6..860fb184 100755 --- a/src/Elements/ICMSIPI/C112.php +++ b/src/Elements/ICMSIPI/C112.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C112: DOCUMENTO DE ARRECADAÇÃO REFERENCIADO @@ -13,7 +12,7 @@ * fiscal - constar a identificação de um documento de arrecadação. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C112 extends Element implements ElementInterface +class C112 extends Element { const REG = 'C112'; const LEVEL = 4; @@ -73,11 +72,13 @@ class C112 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C113.php b/src/Elements/ICMSIPI/C113.php index bcd4af3d..9bcd941f 100755 --- a/src/Elements/ICMSIPI/C113.php +++ b/src/Elements/ICMSIPI/C113.php @@ -4,8 +4,7 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C113: DOCUMENTO FISCAL REFERENCIADO @@ -15,7 +14,7 @@ * de mercadoria originária de venda para entrega futura e nota fiscal de devolução de compras. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C113 extends Element implements ElementInterface +class C113 extends Element { const REG = 'C113'; const LEVEL = 4; @@ -89,11 +88,13 @@ class C113 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C114.php b/src/Elements/ICMSIPI/C114.php index 0bc46ff7..e255529d 100755 --- a/src/Elements/ICMSIPI/C114.php +++ b/src/Elements/ICMSIPI/C114.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C114: CUPOM FISCAL REFERENCIADO @@ -13,7 +12,7 @@ * entradas, somente informar quando o emitente do cupom fiscal for o próprio informante do arquivo. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C114 extends Element implements ElementInterface +class C114 extends Element { const REG = 'C114'; const LEVEL = 4; @@ -59,11 +58,14 @@ class C114 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C115.php b/src/Elements/ICMSIPI/C115.php index 8a0ab59a..716ac925 100755 --- a/src/Elements/ICMSIPI/C115.php +++ b/src/Elements/ICMSIPI/C115.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C115 extends Element implements ElementInterface +class C115 extends Element { const REG = 'C115'; const LEVEL = 4; @@ -80,11 +79,13 @@ class C115 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C116.php b/src/Elements/ICMSIPI/C116.php index 488dfccb..109c5994 100755 --- a/src/Elements/ICMSIPI/C116.php +++ b/src/Elements/ICMSIPI/C116.php @@ -4,10 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C116 extends Element implements ElementInterface +class C116 extends Element { const REG = 'C116'; const LEVEL = 4; @@ -53,11 +52,13 @@ class C116 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C120.php b/src/Elements/ICMSIPI/C120.php index 02a95871..0cc5d0a9 100755 --- a/src/Elements/ICMSIPI/C120.php +++ b/src/Elements/ICMSIPI/C120.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C120: COMPLEMENTO DE DOCUMENTO - OPERAÇÕES DE IMPORTAÇÃO (CÓDIGOS 01 e 55) @@ -13,7 +12,7 @@ * indicando operação de entrada. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C120 extends Element implements ElementInterface +class C120 extends Element { const REG = 'C120'; const LEVEL = 3; @@ -59,11 +58,14 @@ class C120 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C130.php b/src/Elements/ICMSIPI/C130.php index a84d9de0..acf6e86e 100755 --- a/src/Elements/ICMSIPI/C130.php +++ b/src/Elements/ICMSIPI/C130.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C130 extends Element implements ElementInterface +class C130 extends Element { const REG = 'C130'; const LEVEL = 3; @@ -66,11 +65,14 @@ class C130 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C140.php b/src/Elements/ICMSIPI/C140.php index ef9f278a..a10d4223 100755 --- a/src/Elements/ICMSIPI/C140.php +++ b/src/Elements/ICMSIPI/C140.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C140 extends Element implements ElementInterface +class C140 extends Element { const REG = 'C140'; const LEVEL = 3; @@ -60,11 +59,14 @@ class C140 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C141.php b/src/Elements/ICMSIPI/C141.php index eac067c0..970dd9fa 100755 --- a/src/Elements/ICMSIPI/C141.php +++ b/src/Elements/ICMSIPI/C141.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C141 extends Element implements ElementInterface +class C141 extends Element { const REG = 'C141'; const LEVEL = 4; @@ -38,11 +37,14 @@ class C141 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C160.php b/src/Elements/ICMSIPI/C160.php index c6f65a21..f4a7a606 100755 --- a/src/Elements/ICMSIPI/C160.php +++ b/src/Elements/ICMSIPI/C160.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C160 extends Element implements ElementInterface +class C160 extends Element { const REG = 'C160'; const LEVEL = 3; @@ -59,11 +58,14 @@ class C160 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C165.php b/src/Elements/ICMSIPI/C165.php index 61f8c9ce..bedd58e0 100755 --- a/src/Elements/ICMSIPI/C165.php +++ b/src/Elements/ICMSIPI/C165.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C165: OPERAÇÕES COM COMBUSTÍVEIS (CÓDIGO 01). @@ -12,7 +11,7 @@ * revendedoras) em operações de saída. Postos de combustíveis não devem apresentar este registro. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C165 extends Element implements ElementInterface +class C165 extends Element { const REG = 'C165'; const LEVEL = 3; @@ -108,11 +107,14 @@ class C165 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C170.php b/src/Elements/ICMSIPI/C170.php index 82255eea..71652c03 100755 --- a/src/Elements/ICMSIPI/C170.php +++ b/src/Elements/ICMSIPI/C170.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C170: ITENS DO DOCUMENTO (CÓDIGO 01, 1B, 04 e 55). @@ -13,7 +12,7 @@ * de Nota Fiscal Eletrônica (NF-e) de emissão de terceiros. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C170 extends Element implements ElementInterface +class C170 extends Element { const REG = 'C170'; const LEVEL = 3; @@ -283,11 +282,13 @@ class C170 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C171.php b/src/Elements/ICMSIPI/C171.php index 471c0353..efc43ab6 100755 --- a/src/Elements/ICMSIPI/C171.php +++ b/src/Elements/ICMSIPI/C171.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C171: ARMAZENAMENTO DE COMBUSTÍVEIS (código 01, 55). @@ -13,7 +12,7 @@ * Combustíveis (LMC), Ajuste SINIEF 01/92. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C171 extends Element implements ElementInterface +class C171 extends Element { const REG = 'C171'; const LEVEL = 4; @@ -38,11 +37,14 @@ class C171 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C172.php b/src/Elements/ICMSIPI/C172.php index 20a25e15..c31f3650 100755 --- a/src/Elements/ICMSIPI/C172.php +++ b/src/Elements/ICMSIPI/C172.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C172: OPERAÇÕES COM ISSQN (CÓDIGO 01) * Este registro tem por objetivo informar dados da prestação de serviços * @package NFePHP\EFD\Elements\ICMSIPI */ -class C172 extends Element implements ElementInterface +class C172 extends Element { const REG = 'C172'; const LEVEL = 4; @@ -43,11 +42,14 @@ class C172 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C173.php b/src/Elements/ICMSIPI/C173.php index 81c3966f..8bad1772 100755 --- a/src/Elements/ICMSIPI/C173.php +++ b/src/Elements/ICMSIPI/C173.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C173: OPERAÇÕES COM MEDICAMENTOS (CÓDIGO 01 e 55). @@ -13,7 +12,7 @@ * A obrigatoriedade deriva do §26 do art. 19 do Convênio S/N de 1970 * @package NFePHP\EFD\Elements\ICMSIPI */ -class C173 extends Element implements ElementInterface +class C173 extends Element { const REG = 'C173'; const LEVEL = 4; @@ -73,11 +72,13 @@ class C173 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C174.php b/src/Elements/ICMSIPI/C174.php index 15a09f44..d50ee10d 100755 --- a/src/Elements/ICMSIPI/C174.php +++ b/src/Elements/ICMSIPI/C174.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C174: OPERAÇÕES COM ARMAS DE FOGO (CÓDIGO 01) @@ -12,7 +11,7 @@ * demais) e deve ser fornecido apenas para operações de saída. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C174 extends Element implements ElementInterface +class C174 extends Element { const REG = 'C174'; const LEVEL = 4; @@ -44,11 +43,14 @@ class C174 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C175.php b/src/Elements/ICMSIPI/C175.php index cd509ac1..04d66f45 100755 --- a/src/Elements/ICMSIPI/C175.php +++ b/src/Elements/ICMSIPI/C175.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C175: OPERAÇÕES COM VEÍCULOS NOVOS (CÓDIGO 01 e 55) @@ -14,7 +13,7 @@ * entrada e saída (exceto pelos contribuintes emissores de NF-e), exceto quando se tratar de operações de exportação. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C175 extends Element implements ElementInterface +class C175 extends Element { const REG = 'C175'; const LEVEL = 4; @@ -53,11 +52,14 @@ class C175 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C176.php b/src/Elements/ICMSIPI/C176.php index 4b0a0705..a354438b 100755 --- a/src/Elements/ICMSIPI/C176.php +++ b/src/Elements/ICMSIPI/C176.php @@ -4,8 +4,7 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C176: RESSARCIMENTO DE ICMS E FUNDO DE COMBATE À POBREZA @@ -14,7 +13,7 @@ * desfazimento de substituição tributária realizada em operações anteriores. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C176 extends Element implements ElementInterface +class C176 extends Element { const REG = 'C176'; const LEVEL = 4; @@ -208,11 +207,13 @@ class C176 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C177.php b/src/Elements/ICMSIPI/C177.php index 0e5febce..3a73beeb 100755 --- a/src/Elements/ICMSIPI/C177.php +++ b/src/Elements/ICMSIPI/C177.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C177: COMPLEMENTO DE ITEM - OUTRAS INFORMAÇÕES (código 01, 55) - @@ -14,7 +13,7 @@ * objetivo de agregar informações adicionais ao item, de acordo com tabela a ser publicada pela UF. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C177 extends Element implements ElementInterface +class C177 extends Element { const REG = 'C177'; const LEVEL = 4; @@ -32,11 +31,14 @@ class C177 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C178.php b/src/Elements/ICMSIPI/C178.php index bb1045d2..452ef99d 100755 --- a/src/Elements/ICMSIPI/C178.php +++ b/src/Elements/ICMSIPI/C178.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C178: OPERAÇÕES COM PRODUTOS SUJEITOS À TRIBUTAÇÃO DE IPI POR @@ -14,7 +13,7 @@ * valores. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C178 extends Element implements ElementInterface +class C178 extends Element { const REG = 'C178'; const LEVEL = 4; @@ -46,11 +45,14 @@ class C178 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C179.php b/src/Elements/ICMSIPI/C179.php index d0ed3ea3..42a39abc 100755 --- a/src/Elements/ICMSIPI/C179.php +++ b/src/Elements/ICMSIPI/C179.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C179: INFORMAÇÕES COMPLEMENTARES ST (CÓDIGO 01) @@ -12,7 +11,7 @@ * operações interestaduais e nas operações com substituído intermediário. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C179 extends Element implements ElementInterface +class C179 extends Element { const REG = 'C179'; const LEVEL = 4; @@ -58,11 +57,14 @@ class C179 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C180.php b/src/Elements/ICMSIPI/C180.php index d9ac0ee9..a281e1e7 100644 --- a/src/Elements/ICMSIPI/C180.php +++ b/src/Elements/ICMSIPI/C180.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C180: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE ENTRADA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 01, 1B, 04 e 55). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C180 extends Element implements ElementInterface +class C180 extends Element { const REG = 'C180'; const LEVEL = 4; const PARENT = 'C170'; - + protected $parameters = [ 'COD_RESP_RET' => [ 'type' => 'numeric', @@ -93,11 +92,14 @@ class C180 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C185.php b/src/Elements/ICMSIPI/C185.php index ffa854fd..e1979ef6 100644 --- a/src/Elements/ICMSIPI/C185.php +++ b/src/Elements/ICMSIPI/C185.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C185: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 01, 1B, 04, 55 e 65). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C185 extends Element implements ElementInterface +class C185 extends Element { const REG = 'C185'; const LEVEL = 3; const PARENT = 'C100'; - + protected $parameters = [ 'NUM_ITEM' => [ 'type' => 'numeric', @@ -145,13 +144,17 @@ class C185 extends Element implements ElementInterface 'format' => '15v6' ], ]; + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C190.php b/src/Elements/ICMSIPI/C190.php index 86fa2364..e9f3d3fd 100755 --- a/src/Elements/ICMSIPI/C190.php +++ b/src/Elements/ICMSIPI/C190.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C190: REGISTRO ANALÍTICO DO DOCUMENTO (CÓDIGO 01, 1B, 04, 55 e 65) @@ -12,7 +11,7 @@ * Alíquota de ICMS. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C190 extends Element implements ElementInterface +class C190 extends Element { const REG = 'C190'; const LEVEL = 3; @@ -51,7 +50,7 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -59,7 +58,7 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS", incluindo o FCP, quando aplicável, + 'info' => 'Parcela correspondente ao "Valor do ICMS", incluindo o FCP, quando aplicável, referente à combinação de CST_ICMS, CFOP e alíquota doICMS.', 'format' => '15v2' ], @@ -67,7 +66,7 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" da substituição + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" da substituição tributária referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -75,8 +74,8 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao valor creditado/debitado do ICMS da substituição - tributária, incluindo o FCP_ ST, quando aplicável, referente à + 'info' => 'Parcela correspondente ao valor creditado/debitado do ICMS da substituição + tributária, incluindo o FCP_ ST, quando aplicável, referente à combinação de CST_ICMS, CFOP, e alíquota do ICMS.', 'format' => '15v2' ], @@ -84,7 +83,7 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -92,7 +91,7 @@ class C190 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do IPI" referente à combinação + 'info' => 'Parcela correspondente ao "Valor do IPI" referente à combinação CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -107,11 +106,14 @@ class C190 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C191.php b/src/Elements/ICMSIPI/C191.php index fb8b43ea..0ac732c6 100755 --- a/src/Elements/ICMSIPI/C191.php +++ b/src/Elements/ICMSIPI/C191.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C191: INFORMAÇÕES DO FUNDO DE COMBATE À POBREZA – FCP – NA NFe (CÓDIGO 55) @@ -14,7 +13,7 @@ * registro deve ser verificada junto às unidades federativas. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C191 extends Element implements ElementInterface +class C191 extends Element { const REG = 'C191'; const LEVEL = 4; @@ -25,7 +24,7 @@ class C191 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor do Fundo de Combate à Pobreza (FCP) vinculado à operação própria, + 'info' => 'Valor do Fundo de Combate à Pobreza (FCP) vinculado à operação própria, na combinação de CST_ICMS, CFOP e alíquota do ICMS', 'format' => '15v2' ], @@ -33,7 +32,7 @@ class C191 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor do Fundo de Combate à Pobreza (FCP) vinculado à operação de substituição + 'info' => 'Valor do Fundo de Combate à Pobreza (FCP) vinculado à operação de substituição tributária, na combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -49,11 +48,14 @@ class C191 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C195.php b/src/Elements/ICMSIPI/C195.php index 79c7ecfd..982c49f6 100755 --- a/src/Elements/ICMSIPI/C195.php +++ b/src/Elements/ICMSIPI/C195.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C195: OBSERVAÇÕES DO LANÇAMENTO FISCAL (CÓDIGO 01, 1B, 04, 55 E 65) @@ -17,7 +16,7 @@ * a IV. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C195 extends Element implements ElementInterface +class C195 extends Element { const REG = 'C195'; const LEVEL = 3; @@ -42,11 +41,14 @@ class C195 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C197.php b/src/Elements/ICMSIPI/C197.php index 2da0e92b..9264a854 100755 --- a/src/Elements/ICMSIPI/C197.php +++ b/src/Elements/ICMSIPI/C197.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C197 extends Element implements ElementInterface +class C197 extends Element { const REG = 'C197'; const LEVEL = 4; @@ -66,11 +65,14 @@ class C197 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C300.php b/src/Elements/ICMSIPI/C300.php index e294c8af..f50db7c6 100755 --- a/src/Elements/ICMSIPI/C300.php +++ b/src/Elements/ICMSIPI/C300.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C300: RESUMO DIÁRIO DAS NOTAS FISCAIS DE VENDA A CONSUMIDOR (CÓDIGO 02) @@ -16,7 +15,7 @@ * Os valores de documentos fiscais cancelados não devem ser computados no valor total dos documentos (campo VL_DOC). * @package NFePHP\EFD\Elements\ICMSIPI */ -class C300 extends Element implements ElementInterface +class C300 extends Element { const REG = 'C300'; const LEVEL = 2; @@ -97,11 +96,14 @@ class C300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C310.php b/src/Elements/ICMSIPI/C310.php index 14dd4555..a1893fff 100755 --- a/src/Elements/ICMSIPI/C310.php +++ b/src/Elements/ICMSIPI/C310.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C310: DOCUMENTOS CANCELADOS DE NOTAS FISCAIS DE VENDA A CONSUMIDOR (CÓDIGO 02). * Este registro tem por objetivo informar os números dos documentos fiscais cancelados. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C310 extends Element implements ElementInterface +class C310 extends Element { const REG = 'C310'; const LEVEL = 3; @@ -29,11 +28,14 @@ class C310 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C320.php b/src/Elements/ICMSIPI/C320.php index 516d4751..ba78f784 100755 --- a/src/Elements/ICMSIPI/C320.php +++ b/src/Elements/ICMSIPI/C320.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C320: REGISTRO ANALÍTICO DO RESUMO DIÁRIO DAS NOTAS FISCAIS DE VENDA A CONSUMIDOR (CÓDIGO 02). @@ -12,7 +11,7 @@ * não emitidas por ECF, e deve ser apresentado de forma agrupada na combinação CST_ICMS, CFOP e Alíquota de ICMS. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C320 extends Element implements ElementInterface +class C320 extends Element { const REG = 'C320'; const LEVEL = 3; @@ -83,11 +82,14 @@ class C320 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C321.php b/src/Elements/ICMSIPI/C321.php index 25e97eb8..ff1360c9 100755 --- a/src/Elements/ICMSIPI/C321.php +++ b/src/Elements/ICMSIPI/C321.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C321: ITENS DO RESUMO DIÁRIO DOS DOCUMENTOS (CÓDIGO 02). @@ -13,7 +12,7 @@ * ao consumidor, não emitidas por ECF. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C321 extends Element implements ElementInterface +class C321 extends Element { const REG = 'C321'; const LEVEL = 4; @@ -87,11 +86,14 @@ class C321 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C330.php b/src/Elements/ICMSIPI/C330.php index 4164bd88..d9b539ce 100644 --- a/src/Elements/ICMSIPI/C330.php +++ b/src/Elements/ICMSIPI/C330.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C330: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 02) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C330 extends Element implements ElementInterface +class C330 extends Element { const REG = 'C330'; const LEVEL = 5; const PARENT = 'C321'; - + protected $parameters = [ 'COD_MOT_REST_COMPL' => [ 'type' => 'string', @@ -116,13 +115,17 @@ class C330 extends Element implements ElementInterface 'format' => '15v6' ] ]; + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C350.php b/src/Elements/ICMSIPI/C350.php index 6d54cc78..a4775e22 100755 --- a/src/Elements/ICMSIPI/C350.php +++ b/src/Elements/ICMSIPI/C350.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C350: NOTA FISCAL DE VENDA A CONSUMIDOR (CÓDIGO 02) @@ -13,7 +12,7 @@ * @package NFePHP\EFD\Elements\ICMSIPI */ -class C350 extends Element implements ElementInterface +class C350 extends Element { const REG = 'C350'; const LEVEL = 2; @@ -101,11 +100,14 @@ class C350 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C370.php b/src/Elements/ICMSIPI/C370.php index f4770dce..0dd498b4 100755 --- a/src/Elements/ICMSIPI/C370.php +++ b/src/Elements/ICMSIPI/C370.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C370: ITENS DO DOCUMENTO (CÓDIGO 02) * Este registro é o detalhamento por itens das notas fiscais de venda ao consumidor, modelo 2. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C370 extends Element implements ElementInterface +class C370 extends Element { const REG = 'C370'; const LEVEL = 3; @@ -64,11 +63,14 @@ class C370 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C380.php b/src/Elements/ICMSIPI/C380.php index 952fe0d0..12a31459 100644 --- a/src/Elements/ICMSIPI/C380.php +++ b/src/Elements/ICMSIPI/C380.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C380: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 02) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C380 extends Element implements ElementInterface +class C380 extends Element { const REG = 'C380'; const LEVEL = 4; const PARENT = 'C370'; - + protected $parameters = [ 'COD_MOT_REST_COMPL' => [ 'type' => 'string', @@ -130,14 +129,17 @@ class C380 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C390.php b/src/Elements/ICMSIPI/C390.php index 97773ae3..b502bd90 100755 --- a/src/Elements/ICMSIPI/C390.php +++ b/src/Elements/ICMSIPI/C390.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C390: REGISTRO ANALÍTICO DAS NOTAS FISCAIS DE VENDA A @@ -13,7 +12,7 @@ * apresentado de forma agrupada na combinação CST_ICMS, CFOP e Alíquota de ICMS. * @package NFePHP\EFD\Elements\ICMSIPI */ -class C390 extends Element implements ElementInterface +class C390 extends Element { const REG = 'C390'; const LEVEL = 3; @@ -45,7 +44,7 @@ class C390 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor total acumulado das operações correspondentes à combinação de CST_ICMS, + 'info' => 'Valor total acumulado das operações correspondentes à combinação de CST_ICMS, CFOP e alíquota do ICMS, incluídas as despesas acessórias e acréscimos.', 'format' => '15v2' ], @@ -53,7 +52,7 @@ class C390 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor acumulado da base de cálculo do ICMS, referente à combinação de CST_ICMS, + 'info' => 'Valor acumulado da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP, e alíquota do ICMS.', 'format' => '15v2' ], @@ -68,7 +67,7 @@ class C390 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => false, - 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP, e alíquota do ICMS.', 'format' => '15v2' ], @@ -83,11 +82,14 @@ class C390 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C400.php b/src/Elements/ICMSIPI/C400.php index aae18769..a2bedd21 100755 --- a/src/Elements/ICMSIPI/C400.php +++ b/src/Elements/ICMSIPI/C400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C400 extends Element implements ElementInterface +class C400 extends Element { const REG = 'C400'; const LEVEL = 2; @@ -45,11 +44,14 @@ class C400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C405.php b/src/Elements/ICMSIPI/C405.php index 0f04ca9a..c66a813b 100755 --- a/src/Elements/ICMSIPI/C405.php +++ b/src/Elements/ICMSIPI/C405.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C405 extends Element implements ElementInterface +class C405 extends Element { const REG = 'C405'; const LEVEL = 3; @@ -38,7 +37,7 @@ class C405 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^([1-9]{1})(\d{1,8})$', 'required' => false, - 'info' => 'Número do Contador de Ordem de Operação do último documento + 'info' => 'Número do Contador de Ordem de Operação do último documento emitido no dia. (Número do COO na Redução Z)', 'format' => '' ], @@ -60,11 +59,13 @@ class C405 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C410.php b/src/Elements/ICMSIPI/C410.php index 20813084..8d4808ab 100755 --- a/src/Elements/ICMSIPI/C410.php +++ b/src/Elements/ICMSIPI/C410.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C410 extends Element implements ElementInterface +class C410 extends Element { const REG = 'C410'; const LEVEL = 4; @@ -31,11 +30,14 @@ class C410 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C420.php b/src/Elements/ICMSIPI/C420.php index 9a7b1cb7..dc93d67b 100755 --- a/src/Elements/ICMSIPI/C420.php +++ b/src/Elements/ICMSIPI/C420.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C420 extends Element implements ElementInterface +class C420 extends Element { const REG = 'C420'; const LEVEL = 4; @@ -46,11 +45,14 @@ class C420 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C425.php b/src/Elements/ICMSIPI/C425.php index 41058434..7cf661a9 100755 --- a/src/Elements/ICMSIPI/C425.php +++ b/src/Elements/ICMSIPI/C425.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C425 extends Element implements ElementInterface +class C425 extends Element { const REG = 'C425'; const LEVEL = 5; @@ -59,11 +58,13 @@ class C425 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C430.php b/src/Elements/ICMSIPI/C430.php index ca6e9a45..95f0e12b 100644 --- a/src/Elements/ICMSIPI/C430.php +++ b/src/Elements/ICMSIPI/C430.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C430: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 02, 2D e 60) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C430 extends Element implements ElementInterface +class C430 extends Element { const REG = 'C430'; const LEVEL = 4; @@ -134,11 +133,14 @@ class C430 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C460.php b/src/Elements/ICMSIPI/C460.php index 168c50f4..cc5a59f2 100755 --- a/src/Elements/ICMSIPI/C460.php +++ b/src/Elements/ICMSIPI/C460.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C460 extends Element implements ElementInterface +class C460 extends Element { const REG = 'C460'; const LEVEL = 4; @@ -80,12 +79,15 @@ class C460 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C465.php b/src/Elements/ICMSIPI/C465.php index 01d5315d..3dd1cba7 100755 --- a/src/Elements/ICMSIPI/C465.php +++ b/src/Elements/ICMSIPI/C465.php @@ -4,10 +4,9 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C465 extends Element implements ElementInterface +class C465 extends Element { const REG = 'C465'; const LEVEL = 5; @@ -32,18 +31,19 @@ class C465 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } public function postValidation() { - /** * Verifica a chave cfe */ diff --git a/src/Elements/ICMSIPI/C470.php b/src/Elements/ICMSIPI/C470.php index ec709d54..42b1a9c9 100755 --- a/src/Elements/ICMSIPI/C470.php +++ b/src/Elements/ICMSIPI/C470.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C470 extends Element implements ElementInterface +class C470 extends Element { const REG = 'C470'; const LEVEL = 5; @@ -87,11 +86,13 @@ class C470 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C480.php b/src/Elements/ICMSIPI/C480.php index 9809b58f..b49033d5 100644 --- a/src/Elements/ICMSIPI/C480.php +++ b/src/Elements/ICMSIPI/C480.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C480:INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CÓDIGO 02, 2D e 60) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C480 extends Element implements ElementInterface +class C480 extends Element { const REG = 'C480'; const LEVEL = 6; const PARENT = 'C470'; - + protected $parameters = [ 'COD_MOT_REST_COMPL' => [ 'type' => 'string', @@ -130,14 +129,17 @@ class C480 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C490.php b/src/Elements/ICMSIPI/C490.php index c2bacad8..aa92ebf1 100755 --- a/src/Elements/ICMSIPI/C490.php +++ b/src/Elements/ICMSIPI/C490.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C490 extends Element implements ElementInterface +class C490 extends Element { const REG = 'C490'; const LEVEL = 4; @@ -68,11 +67,13 @@ class C490 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C495.php b/src/Elements/ICMSIPI/C495.php index 11581dea..727a9cd6 100755 --- a/src/Elements/ICMSIPI/C495.php +++ b/src/Elements/ICMSIPI/C495.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C495 extends Element implements ElementInterface +class C495 extends Element { const REG = 'C495'; const LEVEL = 2; @@ -115,12 +114,15 @@ class C495 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C500.php b/src/Elements/ICMSIPI/C500.php index f88623fb..4e032857 100755 --- a/src/Elements/ICMSIPI/C500.php +++ b/src/Elements/ICMSIPI/C500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C500 extends Element implements ElementInterface +class C500 extends Element { const REG = 'C500'; const LEVEL = 2; @@ -297,12 +296,15 @@ class C500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C510.php b/src/Elements/ICMSIPI/C510.php index bbd4dd6c..3c40f4de 100755 --- a/src/Elements/ICMSIPI/C510.php +++ b/src/Elements/ICMSIPI/C510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C510 extends Element implements ElementInterface +class C510 extends Element { const REG = 'C510'; const LEVEL = 3; @@ -157,12 +156,15 @@ class C510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C590.php b/src/Elements/ICMSIPI/C590.php index 284e2d72..94d30720 100755 --- a/src/Elements/ICMSIPI/C590.php +++ b/src/Elements/ICMSIPI/C590.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C590 extends Element implements ElementInterface +class C590 extends Element { const REG = 'C590'; const LEVEL = 3; @@ -94,12 +93,15 @@ class C590 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C591.php b/src/Elements/ICMSIPI/C591.php index a515b2e1..73c66f55 100644 --- a/src/Elements/ICMSIPI/C591.php +++ b/src/Elements/ICMSIPI/C591.php @@ -3,19 +3,18 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C591:INFORMAÇÕES DO FUNDO DE COMBATE À POBREZA – FCP NA NF3e (CÓDIGO 66) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C591 extends Element implements ElementInterface +class C591 extends Element { const REG = 'C591'; const LEVEL = 4; const PARENT = 'C590'; - + protected $parameters = [ 'VL_FCP_OP' => [ 'type' => 'numeric', @@ -34,14 +33,17 @@ class C591 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C595.php b/src/Elements/ICMSIPI/C595.php index 3f661f59..319c099a 100644 --- a/src/Elements/ICMSIPI/C595.php +++ b/src/Elements/ICMSIPI/C595.php @@ -3,19 +3,18 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C595:INFORMAÇÕES DO FUNDO DE COMBATE À POBREZA – FCP NA NF3e (CÓDIGO 66) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C595 extends Element implements ElementInterface +class C595 extends Element { const REG = 'C595'; const LEVEL = 3; const PARENT = 'C500'; - + protected $parameters = [ 'COD_OBS' => [ 'type' => 'string', @@ -32,14 +31,17 @@ class C595 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C597.php b/src/Elements/ICMSIPI/C597.php index 4beb0440..b8cea4a6 100644 --- a/src/Elements/ICMSIPI/C597.php +++ b/src/Elements/ICMSIPI/C597.php @@ -3,20 +3,19 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C597:OUTRAS OBRIGAÇÕES TRIBUTÁRIAS, AJUSTES E INFORMAÇÕES DE VALORES PROVENIENTES DE * DOCUMENTO FISCAL * @package NFePHP\EFD\Elements\ICMSIPI */ -class C597 extends Element implements ElementInterface +class C597 extends Element { const REG = 'C597'; const LEVEL = 4; const PARENT = 'C595'; - + protected $parameters = [ 'COD_AJ' => [ 'type' => 'string', @@ -68,14 +67,17 @@ class C597 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C600.php b/src/Elements/ICMSIPI/C600.php index 649c05dd..1492538e 100755 --- a/src/Elements/ICMSIPI/C600.php +++ b/src/Elements/ICMSIPI/C600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C600 extends Element implements ElementInterface +class C600 extends Element { const REG = 'C600'; const LEVEL = 2; @@ -165,12 +164,15 @@ class C600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } public function postValidation() diff --git a/src/Elements/ICMSIPI/C601.php b/src/Elements/ICMSIPI/C601.php index 877d7f56..033ce54b 100755 --- a/src/Elements/ICMSIPI/C601.php +++ b/src/Elements/ICMSIPI/C601.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C601 extends Element implements ElementInterface +class C601 extends Element { const REG = 'C601'; const LEVEL = 3; @@ -25,11 +24,14 @@ class C601 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C610.php b/src/Elements/ICMSIPI/C610.php index 6f748589..cc95b03e 100755 --- a/src/Elements/ICMSIPI/C610.php +++ b/src/Elements/ICMSIPI/C610.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C610 extends Element implements ElementInterface +class C610 extends Element { const REG = 'C610'; const LEVEL = 3; @@ -130,11 +129,13 @@ class C610 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C690.php b/src/Elements/ICMSIPI/C690.php index 5ee160e3..75f21118 100755 --- a/src/Elements/ICMSIPI/C690.php +++ b/src/Elements/ICMSIPI/C690.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C690 extends Element implements ElementInterface +class C690 extends Element { const REG = 'C690'; const LEVEL = 3; @@ -45,7 +44,7 @@ class C690 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à combinação CST_ICMS, CFOP e alíquota do ICMS', 'format' => '15v2' ], @@ -53,7 +52,7 @@ class C690 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à + 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação CST_ICMS, CFOP e alíquota do ICMS', 'format' => '15v2' ], @@ -61,7 +60,7 @@ class C690 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor não tributado em função da redução da base de + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -91,11 +90,14 @@ class C690 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C700.php b/src/Elements/ICMSIPI/C700.php index 0934f0fc..84ff7c6f 100755 --- a/src/Elements/ICMSIPI/C700.php +++ b/src/Elements/ICMSIPI/C700.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C700 extends Element implements ElementInterface +class C700 extends Element { const REG = 'C700'; const LEVEL = 2; @@ -74,11 +73,13 @@ class C700 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C790.php b/src/Elements/ICMSIPI/C790.php index 1d783c62..e2a54f45 100755 --- a/src/Elements/ICMSIPI/C790.php +++ b/src/Elements/ICMSIPI/C790.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C790 extends Element implements ElementInterface +class C790 extends Element { const REG = 'C790'; const LEVEL = 3; @@ -45,7 +44,7 @@ class C790 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à combinação CST_ICMS, CFOP, e alíquota do ICMS', 'format' => '15v2' ], @@ -53,7 +52,7 @@ class C790 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à + 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação CST_ICMS, CFOP e alíquota do ICMS', 'format' => '15v2' ], @@ -75,7 +74,7 @@ class C790 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS', 'format' => '15v2' ], @@ -91,11 +90,14 @@ class C790 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C791.php b/src/Elements/ICMSIPI/C791.php index 092b6779..161f8761 100755 --- a/src/Elements/ICMSIPI/C791.php +++ b/src/Elements/ICMSIPI/C791.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C791 extends Element implements ElementInterface +class C791 extends Element { const REG = 'C791'; const LEVEL = 4; @@ -39,11 +38,14 @@ class C791 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C800.php b/src/Elements/ICMSIPI/C800.php index 12ff6aa9..1caf1b87 100755 --- a/src/Elements/ICMSIPI/C800.php +++ b/src/Elements/ICMSIPI/C800.php @@ -4,14 +4,13 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C800:CUPOM FISCAL ELETRÔNICO - SAT (CF-e-SAT) (CÓDIGO 59) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C800 extends Element implements ElementInterface +class C800 extends Element { const REG = 'C800'; const LEVEL = 2; @@ -135,16 +134,17 @@ class C800 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } - public function postValidation() { if (!empty($this->std->chv_nfe) and !Keys::isValid($this->std->chv_nfe)) { diff --git a/src/Elements/ICMSIPI/C810.php b/src/Elements/ICMSIPI/C810.php index 7aab9a93..6711209d 100644 --- a/src/Elements/ICMSIPI/C810.php +++ b/src/Elements/ICMSIPI/C810.php @@ -2,16 +2,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; -use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C810: ITENS DO DOCUMENTO DO CUPOM FISCAL ELETRÔNICO – SAT (CF-E-SAT) (CÓDIGO 59): * @package NFePHP\EFD\Elements\ICMSIPI */ -class C810 extends Element implements ElementInterface +class C810 extends Element { const REG = 'C810'; const LEVEL = 3; @@ -71,11 +69,14 @@ class C810 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C815.php b/src/Elements/ICMSIPI/C815.php index a537105c..3844df67 100644 --- a/src/Elements/ICMSIPI/C815.php +++ b/src/Elements/ICMSIPI/C815.php @@ -2,22 +2,20 @@ namespace NFePHP\EFD\Elements\ICMSIPI; -use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C815: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À SUBSTITUIÇÃO * TRIBUTÁRIA (CF-E-SAT) (CÓDIGO 59) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C815 extends Element implements ElementInterface +class C815 extends Element { const REG = 'C815'; const LEVEL = 3; const PARENT = 'C800'; - + protected $parameters = [ 'COD_MOT_REST_COMPL' => [ 'type' => 'string', @@ -119,11 +117,14 @@ class C815 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C850.php b/src/Elements/ICMSIPI/C850.php index d8881fe1..4131d166 100755 --- a/src/Elements/ICMSIPI/C850.php +++ b/src/Elements/ICMSIPI/C850.php @@ -3,14 +3,13 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C850: REGISTRO ANALÍTICO DO CF-e-SAT (CODIGO 59) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C850 extends Element implements ElementInterface +class C850 extends Element { const REG = 'C850'; const LEVEL = 3; @@ -74,11 +73,13 @@ class C850 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/C860.php b/src/Elements/ICMSIPI/C860.php index ca680250..0654e51e 100755 --- a/src/Elements/ICMSIPI/C860.php +++ b/src/Elements/ICMSIPI/C860.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C860 extends Element implements ElementInterface +class C860 extends Element { const REG = 'C860'; const LEVEL = 4; @@ -53,11 +52,14 @@ class C860 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C870.php b/src/Elements/ICMSIPI/C870.php index 9a5970e3..0ea5315c 100644 --- a/src/Elements/ICMSIPI/C870.php +++ b/src/Elements/ICMSIPI/C870.php @@ -3,14 +3,13 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C870: ITENS DO RESUMO DIÁRIO DOS DOCUMENTOS (CF-E-SAT) (CÓDIGO 59) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C870 extends Element implements ElementInterface +class C870 extends Element { const REG = 'C870'; const LEVEL = 3; @@ -56,11 +55,14 @@ class C870 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C880.php b/src/Elements/ICMSIPI/C880.php index 1bbb286a..be59aee9 100644 --- a/src/Elements/ICMSIPI/C880.php +++ b/src/Elements/ICMSIPI/C880.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO C880: INFORMAÇÕES COMPLEMENTARES DAS OPERAÇÕES DE SAÍDA DE MERCADORIAS SUJEITAS À * SUBSTITUIÇÃO TRIBUTÁRIA (CF-E-SAT) (CÓDIGO 59) * @package NFePHP\EFD\Elements\ICMSIPI */ -class C880 extends Element implements ElementInterface +class C880 extends Element { const REG = 'C880'; const LEVEL = 4; @@ -119,11 +118,14 @@ class C880 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/C890.php b/src/Elements/ICMSIPI/C890.php index a3fde10f..33798c98 100755 --- a/src/Elements/ICMSIPI/C890.php +++ b/src/Elements/ICMSIPI/C890.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class C890 extends Element implements ElementInterface +class C890 extends Element { const REG = 'C890'; const LEVEL = 4; @@ -46,7 +45,7 @@ class C890 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor acumulado da base de cálculo do ICMS, + 'info' => 'Valor acumulado da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e ALÍQUOTA DO ICMS.', 'format' => '15v2' ], @@ -54,7 +53,7 @@ class C890 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS" + 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -65,16 +64,18 @@ class C890 extends Element implements ElementInterface 'info' => 'Código da observação do lançamento fiscal', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D001.php b/src/Elements/ICMSIPI/D001.php index 8beda6a2..16b0caa0 100755 --- a/src/Elements/ICMSIPI/D001.php +++ b/src/Elements/ICMSIPI/D001.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO D001: ABERTURA DO BLOCO D @@ -15,7 +14,7 @@ * Validação do Registro: registro obrigatório e único. Se o campo IND_MOV tiver valor igual a 1 (um), só devem * ser informados este registro de abertura e o registro D990, que é o registro de fechamento do Bloco D. */ -class D001 extends Element implements ElementInterface +class D001 extends Element { const REG = 'D001'; const LEVEL = 1; @@ -35,11 +34,14 @@ class D001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D100.php b/src/Elements/ICMSIPI/D100.php index 03a5eef8..5b33dcf3 100644 --- a/src/Elements/ICMSIPI/D100.php +++ b/src/Elements/ICMSIPI/D100.php @@ -4,8 +4,7 @@ use NFePHP\Common\Keys; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Este registro deve ser apresentado por todos os contribuintes adquirentes ou prestadores dos serviços que utilizem os @@ -20,7 +19,7 @@ * 2. emissão própria: IND_EMIT+NUM_DOC+COD_MOD+SER+SUB. * 3. A partir de 01/01/2014, foi incluído o campo CHV_CTE para compor a chave do registro */ -class D100 extends Element implements ElementInterface +class D100 extends Element { const REG = 'D100'; const LEVEL = 2; @@ -196,19 +195,19 @@ class D100 extends Element implements ElementInterface ], ]; - /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } - /** * Aqui são colocadas validações adicionais que requerem mais logica * e processamento diff --git a/src/Elements/ICMSIPI/D101.php b/src/Elements/ICMSIPI/D101.php index 5661957b..77a56d4e 100755 --- a/src/Elements/ICMSIPI/D101.php +++ b/src/Elements/ICMSIPI/D101.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D101 extends Element implements ElementInterface +class D101 extends Element { const REG = 'D101'; const LEVEL = 3; @@ -35,14 +34,17 @@ class D101 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D110.php b/src/Elements/ICMSIPI/D110.php index 71e56e84..76b385a9 100755 --- a/src/Elements/ICMSIPI/D110.php +++ b/src/Elements/ICMSIPI/D110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D110 extends Element implements ElementInterface +class D110 extends Element { const REG = 'D110'; const LEVEL = 3; @@ -45,11 +44,14 @@ class D110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D120.php b/src/Elements/ICMSIPI/D120.php index c6219698..544fd549 100755 --- a/src/Elements/ICMSIPI/D120.php +++ b/src/Elements/ICMSIPI/D120.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D120 extends Element implements ElementInterface +class D120 extends Element { const REG = 'D120'; const LEVEL = 4; @@ -45,11 +44,14 @@ class D120 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D130.php b/src/Elements/ICMSIPI/D130.php index 899b7f2f..03ace8aa 100755 --- a/src/Elements/ICMSIPI/D130.php +++ b/src/Elements/ICMSIPI/D130.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D130 extends Element implements ElementInterface +class D130 extends Element { const REG = 'D130'; const LEVEL = 3; @@ -112,11 +111,14 @@ class D130 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D140.php b/src/Elements/ICMSIPI/D140.php index 5cecae7f..ee16b45d 100755 --- a/src/Elements/ICMSIPI/D140.php +++ b/src/Elements/ICMSIPI/D140.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D140 extends Element implements ElementInterface +class D140 extends Element { const REG = 'D140'; const LEVEL = 3; @@ -111,11 +110,14 @@ class D140 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D150.php b/src/Elements/ICMSIPI/D150.php index eff18e10..5d095c11 100755 --- a/src/Elements/ICMSIPI/D150.php +++ b/src/Elements/ICMSIPI/D150.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D150 extends Element implements ElementInterface +class D150 extends Element { const REG = 'D150'; const LEVEL = 3; @@ -90,11 +89,14 @@ class D150 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D160.php b/src/Elements/ICMSIPI/D160.php index 07975020..e90c77b5 100755 --- a/src/Elements/ICMSIPI/D160.php +++ b/src/Elements/ICMSIPI/D160.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D160 extends Element implements ElementInterface +class D160 extends Element { const REG = 'D160'; const LEVEL = 3; @@ -66,11 +65,14 @@ class D160 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D161.php b/src/Elements/ICMSIPI/D161.php index fbdad6ce..b5dcfd56 100755 --- a/src/Elements/ICMSIPI/D161.php +++ b/src/Elements/ICMSIPI/D161.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D161 extends Element implements ElementInterface +class D161 extends Element { const REG = 'D161'; const LEVEL = 4; @@ -72,11 +71,14 @@ class D161 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D162.php b/src/Elements/ICMSIPI/D162.php index a38923d1..2a9804c3 100755 --- a/src/Elements/ICMSIPI/D162.php +++ b/src/Elements/ICMSIPI/D162.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D162 extends Element implements ElementInterface +class D162 extends Element { const REG = 'D162'; const LEVEL = 4; @@ -77,14 +76,17 @@ class D162 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D170.php b/src/Elements/ICMSIPI/D170.php index 2659a581..3871ad9c 100755 --- a/src/Elements/ICMSIPI/D170.php +++ b/src/Elements/ICMSIPI/D170.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D170 extends Element implements ElementInterface +class D170 extends Element { const REG = 'D170'; const LEVEL = 3; @@ -109,11 +108,14 @@ class D170 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D180.php b/src/Elements/ICMSIPI/D180.php index 12b42659..76f7d5c3 100755 --- a/src/Elements/ICMSIPI/D180.php +++ b/src/Elements/ICMSIPI/D180.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D180 extends Element implements ElementInterface +class D180 extends Element { const REG = 'D180'; const LEVEL = 3; @@ -130,11 +129,14 @@ class D180 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D190.php b/src/Elements/ICMSIPI/D190.php index c357b7ab..1d735b08 100644 --- a/src/Elements/ICMSIPI/D190.php +++ b/src/Elements/ICMSIPI/D190.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D190 extends Element implements ElementInterface +class D190 extends Element { const REG = 'D190'; const LEVEL = 3; @@ -73,11 +72,14 @@ class D190 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D195.php b/src/Elements/ICMSIPI/D195.php index 949521ad..1cfb9d08 100755 --- a/src/Elements/ICMSIPI/D195.php +++ b/src/Elements/ICMSIPI/D195.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D195 extends Element implements ElementInterface +class D195 extends Element { const REG = 'D195'; const LEVEL = 3; @@ -31,11 +30,14 @@ class D195 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D197.php b/src/Elements/ICMSIPI/D197.php index d8db1e7e..c6db8c04 100755 --- a/src/Elements/ICMSIPI/D197.php +++ b/src/Elements/ICMSIPI/D197.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D197 extends Element implements ElementInterface +class D197 extends Element { const REG = 'D197'; const LEVEL = 4; @@ -66,11 +65,14 @@ class D197 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D300.php b/src/Elements/ICMSIPI/D300.php index aa421698..e2019d7e 100755 --- a/src/Elements/ICMSIPI/D300.php +++ b/src/Elements/ICMSIPI/D300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D300 extends Element implements ElementInterface +class D300 extends Element { const REG = 'D300'; const LEVEL = 2; @@ -152,11 +151,14 @@ class D300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D301.php b/src/Elements/ICMSIPI/D301.php index 54bdab3b..a0cfd631 100755 --- a/src/Elements/ICMSIPI/D301.php +++ b/src/Elements/ICMSIPI/D301.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D301 extends Element implements ElementInterface +class D301 extends Element { const REG = 'D301'; const LEVEL = 3; @@ -24,11 +23,14 @@ class D301 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D310.php b/src/Elements/ICMSIPI/D310.php index 9d0f703a..d855d98f 100755 --- a/src/Elements/ICMSIPI/D310.php +++ b/src/Elements/ICMSIPI/D310.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D310 extends Element implements ElementInterface +class D310 extends Element { const REG = 'D310'; const LEVEL = 3; @@ -45,11 +44,14 @@ class D310 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D350.php b/src/Elements/ICMSIPI/D350.php index d52a4de6..293eaea3 100755 --- a/src/Elements/ICMSIPI/D350.php +++ b/src/Elements/ICMSIPI/D350.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D350 extends Element implements ElementInterface +class D350 extends Element { const REG = 'D350'; const LEVEL = 2; @@ -45,11 +44,14 @@ class D350 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D355.php b/src/Elements/ICMSIPI/D355.php index b27f7bde..f94926b5 100755 --- a/src/Elements/ICMSIPI/D355.php +++ b/src/Elements/ICMSIPI/D355.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D355 extends Element implements ElementInterface +class D355 extends Element { const REG = 'D355'; const LEVEL = 3; const PARENT = ''; - + protected $parameters = [ 'DT_DOC' => [ 'type' => 'numeric', @@ -60,11 +59,14 @@ class D355 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D360.php b/src/Elements/ICMSIPI/D360.php index 994566bd..781837a5 100755 --- a/src/Elements/ICMSIPI/D360.php +++ b/src/Elements/ICMSIPI/D360.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D360 extends Element implements ElementInterface +class D360 extends Element { const REG = 'D360'; const LEVEL = 4; @@ -31,11 +30,14 @@ class D360 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D365.php b/src/Elements/ICMSIPI/D365.php index 11d1b1c8..b36ac66a 100755 --- a/src/Elements/ICMSIPI/D365.php +++ b/src/Elements/ICMSIPI/D365.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D365 extends Element implements ElementInterface +class D365 extends Element { const REG = 'D365'; const LEVEL = 4; @@ -47,11 +46,14 @@ class D365 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D370.php b/src/Elements/ICMSIPI/D370.php index 7f48a735..8a7dd04f 100755 --- a/src/Elements/ICMSIPI/D370.php +++ b/src/Elements/ICMSIPI/D370.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D370 extends Element implements ElementInterface +class D370 extends Element { const REG = 'D370'; const LEVEL = 5; @@ -52,11 +51,14 @@ class D370 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D390.php b/src/Elements/ICMSIPI/D390.php index 30fda0cb..cf12d3a4 100755 --- a/src/Elements/ICMSIPI/D390.php +++ b/src/Elements/ICMSIPI/D390.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D390 extends Element implements ElementInterface +class D390 extends Element { const REG = 'D390'; const LEVEL = 4; @@ -88,11 +87,14 @@ class D390 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D400.php b/src/Elements/ICMSIPI/D400.php index 5828201f..41c5aaea 100755 --- a/src/Elements/ICMSIPI/D400.php +++ b/src/Elements/ICMSIPI/D400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D400 extends Element implements ElementInterface +class D400 extends Element { const REG = 'D400'; const LEVEL = 2; @@ -123,11 +122,14 @@ class D400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D410.php b/src/Elements/ICMSIPI/D410.php index 1f00c0fc..32558384 100755 --- a/src/Elements/ICMSIPI/D410.php +++ b/src/Elements/ICMSIPI/D410.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D410 extends Element implements ElementInterface +class D410 extends Element { const REG = 'D410'; const LEVEL = 3; @@ -116,11 +115,14 @@ class D410 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D411.php b/src/Elements/ICMSIPI/D411.php index 07e3f59c..4cc2567a 100755 --- a/src/Elements/ICMSIPI/D411.php +++ b/src/Elements/ICMSIPI/D411.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D411 extends Element implements ElementInterface +class D411 extends Element { const REG = 'D411'; const LEVEL = 4; @@ -24,11 +23,14 @@ class D411 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D420.php b/src/Elements/ICMSIPI/D420.php index dfc013bf..25d55b8c 100755 --- a/src/Elements/ICMSIPI/D420.php +++ b/src/Elements/ICMSIPI/D420.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D420 extends Element implements ElementInterface +class D420 extends Element { const REG = 'D420'; const LEVEL = 3; @@ -45,11 +44,14 @@ class D420 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D500.php b/src/Elements/ICMSIPI/D500.php index f5997b28..d4600274 100644 --- a/src/Elements/ICMSIPI/D500.php +++ b/src/Elements/ICMSIPI/D500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D500 extends Element implements ElementInterface +class D500 extends Element { const REG = 'D500'; const LEVEL = 2; @@ -176,14 +175,15 @@ class D500 extends Element implements ElementInterface ] ]; - /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/D510.php b/src/Elements/ICMSIPI/D510.php index b1047726..f23526bb 100755 --- a/src/Elements/ICMSIPI/D510.php +++ b/src/Elements/ICMSIPI/D510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D510 extends Element implements ElementInterface +class D510 extends Element { const REG = 'D510'; const LEVEL = 3; @@ -151,11 +150,14 @@ class D510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D530.php b/src/Elements/ICMSIPI/D530.php index a61ee170..019b19b1 100755 --- a/src/Elements/ICMSIPI/D530.php +++ b/src/Elements/ICMSIPI/D530.php @@ -3,18 +3,15 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D530 extends Element implements ElementInterface +class D530 extends Element { const REG = 'D530'; const LEVEL = 3; const PARENT = ''; protected $parameters = [ - - 'IND_SERV' => [ 'type' => 'string', 'regex' => '^(0|1|2|3|4|9)$', @@ -57,16 +54,18 @@ class D530 extends Element implements ElementInterface 'info' => 'Identificação do terminal faturado', 'format' => '' ], - ]; /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D590.php b/src/Elements/ICMSIPI/D590.php index c97ad053..d71683db 100755 --- a/src/Elements/ICMSIPI/D590.php +++ b/src/Elements/ICMSIPI/D590.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D590 extends Element implements ElementInterface +class D590 extends Element { const REG = 'D590'; const LEVEL = 3; @@ -45,7 +44,7 @@ class D590 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -53,7 +52,7 @@ class D590 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação + 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -61,7 +60,7 @@ class D590 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao valor da base de cálculo do ICMS de outras UFs, + 'info' => 'Parcela correspondente ao valor da base de cálculo do ICMS de outras UFs, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -69,7 +68,7 @@ class D590 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao valor do ICMS de outras UFs, referente à combinação + 'info' => 'Parcela correspondente ao valor do ICMS de outras UFs, referente à combinação de CST_ICMS, CFOP, e alíquota do ICMS.', 'format' => '15v2' ], @@ -77,7 +76,7 @@ class D590 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS.', 'format' => '15v2' ], @@ -93,11 +92,14 @@ class D590 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D600.php b/src/Elements/ICMSIPI/D600.php index 3d1ffafd..2e70e891 100755 --- a/src/Elements/ICMSIPI/D600.php +++ b/src/Elements/ICMSIPI/D600.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D600 extends Element implements ElementInterface +class D600 extends Element { const REG = 'D600'; const LEVEL = 2; @@ -144,11 +143,14 @@ class D600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D610.php b/src/Elements/ICMSIPI/D610.php index 5904f9c4..44174e32 100755 --- a/src/Elements/ICMSIPI/D610.php +++ b/src/Elements/ICMSIPI/D610.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D610 extends Element implements ElementInterface +class D610 extends Element { const REG = 'D610'; const LEVEL = 3; @@ -138,11 +137,14 @@ class D610 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D690.php b/src/Elements/ICMSIPI/D690.php index b4fada42..4fc91102 100755 --- a/src/Elements/ICMSIPI/D690.php +++ b/src/Elements/ICMSIPI/D690.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D690 extends Element implements ElementInterface +class D690 extends Element { const REG = 'D690'; const LEVEL = 3; @@ -92,11 +91,14 @@ class D690 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D695.php b/src/Elements/ICMSIPI/D695.php index 922f7f10..dda3c504 100755 --- a/src/Elements/ICMSIPI/D695.php +++ b/src/Elements/ICMSIPI/D695.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D695 extends Element implements ElementInterface +class D695 extends Element { const REG = 'D695'; const LEVEL = 2; @@ -73,11 +72,14 @@ class D695 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D696.php b/src/Elements/ICMSIPI/D696.php index 6a1f97fb..01234068 100755 --- a/src/Elements/ICMSIPI/D696.php +++ b/src/Elements/ICMSIPI/D696.php @@ -3,9 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; +use stdClass; -class D696 extends Element implements ElementInterface +class D696 extends Element { const REG = 'D696'; const LEVEL = 3; @@ -44,7 +44,7 @@ class D696 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" + 'info' => 'Parcela correspondente ao "Valor da base de cálculo do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS . ', 'format' => '15v2' ], @@ -52,7 +52,7 @@ class D696 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação + 'info' => 'Parcela correspondente ao "Valor do ICMS" referente à combinação de CST_ICMS, CFOP e alíquota do ICMS . ', 'format' => '15v2' ], @@ -60,7 +60,7 @@ class D696 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao valor da base de cálculo do ICMS de outras UFs, + 'info' => 'Parcela correspondente ao valor da base de cálculo do ICMS de outras UFs, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS . ', 'format' => '15v2' ], @@ -68,7 +68,7 @@ class D696 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Parcela correspondente ao valor do ICMS de outras UFs, referente à combinação + 'info' => 'Parcela correspondente ao valor do ICMS de outras UFs, referente à combinação de CST_ICMS, CFOP, e alíquota do ICMS . ', 'format' => '15v2' ], @@ -76,7 +76,7 @@ class D696 extends Element implements ElementInterface 'type' => 'numeric', 'regex' => '^\d+(\.\d*)?|\.\d+$', 'required' => true, - 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, + 'info' => 'Valor não tributado em função da redução da base de cálculo do ICMS, referente à combinação de CST_ICMS, CFOP e alíquota do ICMS . ', 'format' => '15v2' ], @@ -90,13 +90,15 @@ class D696 extends Element implements ElementInterface ]; /** - * D696 constructor. - * @param \stdClass $std - * @throws \Exception + * Constructor + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/D697.php b/src/Elements/ICMSIPI/D697.php index cc6dcaa4..dd64d5f4 100755 --- a/src/Elements/ICMSIPI/D697.php +++ b/src/Elements/ICMSIPI/D697.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class D697 extends Element implements ElementInterface +class D697 extends Element { const REG = 'D697'; const LEVEL = 4; @@ -38,11 +37,14 @@ class D697 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E001.php b/src/Elements/ICMSIPI/E001.php index 25cc819a..6691eec4 100755 --- a/src/Elements/ICMSIPI/E001.php +++ b/src/Elements/ICMSIPI/E001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E001 extends Element implements ElementInterface +class E001 extends Element { const REG = 'E001'; const LEVEL = 1; @@ -26,11 +25,14 @@ class E001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E100.php b/src/Elements/ICMSIPI/E100.php index 92460bec..d4326582 100755 --- a/src/Elements/ICMSIPI/E100.php +++ b/src/Elements/ICMSIPI/E100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E100 extends Element implements ElementInterface +class E100 extends Element { const REG = 'E100'; const LEVEL = 2; @@ -31,11 +30,14 @@ class E100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E110.php b/src/Elements/ICMSIPI/E110.php index eb14f51a..463cd74a 100755 --- a/src/Elements/ICMSIPI/E110.php +++ b/src/Elements/ICMSIPI/E110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E110 extends Element implements ElementInterface +class E110 extends Element { const REG = 'E110'; const LEVEL = 3; @@ -115,11 +114,13 @@ class E110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E111.php b/src/Elements/ICMSIPI/E111.php index 8c644295..d7a191ba 100755 --- a/src/Elements/ICMSIPI/E111.php +++ b/src/Elements/ICMSIPI/E111.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E111 extends Element implements ElementInterface +class E111 extends Element { const REG = 'E111'; const LEVEL = 4; @@ -38,11 +37,14 @@ class E111 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E112.php b/src/Elements/ICMSIPI/E112.php index 6f6d08b5..e6e74a51 100755 --- a/src/Elements/ICMSIPI/E112.php +++ b/src/Elements/ICMSIPI/E112.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E112 extends Element implements ElementInterface +class E112 extends Element { const REG = 'E112'; const LEVEL = 5; @@ -55,11 +54,14 @@ class E112 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E113.php b/src/Elements/ICMSIPI/E113.php index b506deb3..eade4b8f 100755 --- a/src/Elements/ICMSIPI/E113.php +++ b/src/Elements/ICMSIPI/E113.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E113 extends Element implements ElementInterface +class E113 extends Element { const REG = 'E113'; const LEVEL = 5; @@ -82,11 +81,14 @@ class E113 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E115.php b/src/Elements/ICMSIPI/E115.php index 09374116..b8cff138 100755 --- a/src/Elements/ICMSIPI/E115.php +++ b/src/Elements/ICMSIPI/E115.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E115 extends Element implements ElementInterface +class E115 extends Element { const REG = 'E115'; const LEVEL = 4; @@ -39,11 +38,14 @@ class E115 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E116.php b/src/Elements/ICMSIPI/E116.php index 837166cb..924b79c0 100755 --- a/src/Elements/ICMSIPI/E116.php +++ b/src/Elements/ICMSIPI/E116.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E116 extends Element implements ElementInterface +class E116 extends Element { const REG = 'E116'; const LEVEL = 4; @@ -85,11 +84,13 @@ class E116 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E200.php b/src/Elements/ICMSIPI/E200.php index dc3b69c2..383e90e5 100755 --- a/src/Elements/ICMSIPI/E200.php +++ b/src/Elements/ICMSIPI/E200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E200 extends Element implements ElementInterface +class E200 extends Element { const REG = 'E200'; const LEVEL = 2; @@ -38,11 +37,14 @@ class E200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E210.php b/src/Elements/ICMSIPI/E210.php index e1e63304..e7553c10 100644 --- a/src/Elements/ICMSIPI/E210.php +++ b/src/Elements/ICMSIPI/E210.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E210 extends Element implements ElementInterface +class E210 extends Element { const REG = 'E210'; const LEVEL = 3; @@ -116,13 +115,14 @@ class E210 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); - //TODO: essa validação posterior está incorreta //$this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E220.php b/src/Elements/ICMSIPI/E220.php index 89cba764..ba13c066 100755 --- a/src/Elements/ICMSIPI/E220.php +++ b/src/Elements/ICMSIPI/E220.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E220 extends Element implements ElementInterface +class E220 extends Element { const REG = 'E220'; const LEVEL = 4; @@ -39,11 +38,13 @@ class E220 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E230.php b/src/Elements/ICMSIPI/E230.php index 1ea90c9b..a12841bb 100755 --- a/src/Elements/ICMSIPI/E230.php +++ b/src/Elements/ICMSIPI/E230.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E230 extends Element implements ElementInterface +class E230 extends Element { const REG = 'E230'; const LEVEL = 5; @@ -56,11 +55,14 @@ class E230 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E240.php b/src/Elements/ICMSIPI/E240.php index c08169c6..d4841f6d 100755 --- a/src/Elements/ICMSIPI/E240.php +++ b/src/Elements/ICMSIPI/E240.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E240 extends Element implements ElementInterface +class E240 extends Element { const REG = 'E240'; const LEVEL = 5; @@ -82,11 +81,14 @@ class E240 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E250.php b/src/Elements/ICMSIPI/E250.php index 6e6a1aff..634c54ad 100755 --- a/src/Elements/ICMSIPI/E250.php +++ b/src/Elements/ICMSIPI/E250.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E250 extends Element implements ElementInterface +class E250 extends Element { const REG = 'E250'; const LEVEL = 4; @@ -85,11 +84,13 @@ class E250 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E300.php b/src/Elements/ICMSIPI/E300.php index c608c93d..3ef4c473 100755 --- a/src/Elements/ICMSIPI/E300.php +++ b/src/Elements/ICMSIPI/E300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E300 extends Element implements ElementInterface +class E300 extends Element { const REG = 'E300'; const LEVEL = 2; @@ -39,11 +38,14 @@ class E300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E310.php b/src/Elements/ICMSIPI/E310.php index 0e51d60e..836483f9 100755 --- a/src/Elements/ICMSIPI/E310.php +++ b/src/Elements/ICMSIPI/E310.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E310 extends Element implements ElementInterface +class E310 extends Element { const REG = 'E310'; const LEVEL = 3; @@ -175,11 +174,13 @@ class E310 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E311.php b/src/Elements/ICMSIPI/E311.php index 126684ed..c5dfb0f3 100755 --- a/src/Elements/ICMSIPI/E311.php +++ b/src/Elements/ICMSIPI/E311.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E311 extends Element implements ElementInterface +class E311 extends Element { const REG = 'E311'; const LEVEL = 4; @@ -38,11 +37,13 @@ class E311 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E312.php b/src/Elements/ICMSIPI/E312.php index daaff170..5651e00a 100755 --- a/src/Elements/ICMSIPI/E312.php +++ b/src/Elements/ICMSIPI/E312.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E312 extends Element implements ElementInterface +class E312 extends Element { const REG = 'E312'; const LEVEL = 5; @@ -56,11 +55,14 @@ class E312 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E313.php b/src/Elements/ICMSIPI/E313.php index 79ead993..3159ba96 100755 --- a/src/Elements/ICMSIPI/E313.php +++ b/src/Elements/ICMSIPI/E313.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E313 extends Element implements ElementInterface +class E313 extends Element { const REG = 'E313'; const LEVEL = 5; @@ -80,11 +79,13 @@ class E313 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E316.php b/src/Elements/ICMSIPI/E316.php index bde01763..459635af 100755 --- a/src/Elements/ICMSIPI/E316.php +++ b/src/Elements/ICMSIPI/E316.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E316 extends Element implements ElementInterface +class E316 extends Element { const REG = 'E316'; const LEVEL = 4; @@ -85,11 +84,13 @@ class E316 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E500.php b/src/Elements/ICMSIPI/E500.php index 2e857f48..2570a352 100755 --- a/src/Elements/ICMSIPI/E500.php +++ b/src/Elements/ICMSIPI/E500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E500 extends Element implements ElementInterface +class E500 extends Element { const REG = 'E500'; const LEVEL = 2; @@ -38,11 +37,14 @@ class E500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E510.php b/src/Elements/ICMSIPI/E510.php index 523c96a0..69fbcbf8 100755 --- a/src/Elements/ICMSIPI/E510.php +++ b/src/Elements/ICMSIPI/E510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E510 extends Element implements ElementInterface +class E510 extends Element { const REG = 'E510'; const LEVEL = 3; @@ -57,11 +56,14 @@ class E510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E520.php b/src/Elements/ICMSIPI/E520.php index 00b93a82..c67ce558 100755 --- a/src/Elements/ICMSIPI/E520.php +++ b/src/Elements/ICMSIPI/E520.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E520 extends Element implements ElementInterface +class E520 extends Element { const REG = 'E520'; const LEVEL = 3; @@ -66,11 +65,13 @@ class E520 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/E530.php b/src/Elements/ICMSIPI/E530.php index 52e8091b..a2488a24 100755 --- a/src/Elements/ICMSIPI/E530.php +++ b/src/Elements/ICMSIPI/E530.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E530 extends Element implements ElementInterface +class E530 extends Element { const REG = 'E530'; const LEVEL = 4; @@ -66,11 +65,14 @@ class E530 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/E531.php b/src/Elements/ICMSIPI/E531.php index 526b2977..75a808a4 100755 --- a/src/Elements/ICMSIPI/E531.php +++ b/src/Elements/ICMSIPI/E531.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class E531 extends Element implements ElementInterface +class E531 extends Element { const REG = 'E531'; const LEVEL = 5; @@ -82,11 +81,13 @@ class E531 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/G001.php b/src/Elements/ICMSIPI/G001.php index 400f28ee..4effa081 100755 --- a/src/Elements/ICMSIPI/G001.php +++ b/src/Elements/ICMSIPI/G001.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO G001: ABERTURA DO BLOCO G @@ -16,7 +15,7 @@ * caso apresente o inventário de 31/12 na EFD ICMS IPI de dezembro ou janeiro, * deve repetir a informação na escrituração de fevereiro. */ -class G001 extends Element implements ElementInterface +class G001 extends Element { const REG = 'G001'; const LEVEL = 1; @@ -36,11 +35,14 @@ class G001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/G110.php b/src/Elements/ICMSIPI/G110.php index 9f882654..e51cbe1d 100755 --- a/src/Elements/ICMSIPI/G110.php +++ b/src/Elements/ICMSIPI/G110.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO G110: ICMS – ATIVO PERMANENTE – CIAP @@ -32,7 +31,7 @@ * conteúdo nos campos DT_INI e DT_FIN e esta combinação deve ser igual à * informada em um registro E100. */ -class G110 extends Element implements ElementInterface +class G110 extends Element { const REG = 'G110'; const LEVEL = 2; @@ -115,11 +114,13 @@ class G110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/G125.php b/src/Elements/ICMSIPI/G125.php index 919e453c..536de911 100755 --- a/src/Elements/ICMSIPI/G125.php +++ b/src/Elements/ICMSIPI/G125.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class G125 extends Element implements ElementInterface +class G125 extends Element { const REG = 'G125'; const LEVEL = 3; @@ -94,11 +93,14 @@ class G125 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/G126.php b/src/Elements/ICMSIPI/G126.php index 04ab92a4..306838e9 100755 --- a/src/Elements/ICMSIPI/G126.php +++ b/src/Elements/ICMSIPI/G126.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class G126 extends Element implements ElementInterface +class G126 extends Element { const REG = 'G126'; const LEVEL = 4; @@ -79,11 +78,14 @@ class G126 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/G130.php b/src/Elements/ICMSIPI/G130.php index 18eb3ab9..a607bece 100755 --- a/src/Elements/ICMSIPI/G130.php +++ b/src/Elements/ICMSIPI/G130.php @@ -3,11 +3,10 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; use NFePHP\Common\Keys; -class G130 extends Element implements ElementInterface +class G130 extends Element { const REG = 'G130'; const LEVEL = 4; @@ -78,11 +77,13 @@ class G130 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/G140.php b/src/Elements/ICMSIPI/G140.php index c6238741..65fe5b1d 100755 --- a/src/Elements/ICMSIPI/G140.php +++ b/src/Elements/ICMSIPI/G140.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class G140 extends Element implements ElementInterface +class G140 extends Element { const REG = 'G140'; const LEVEL = 5; @@ -78,11 +77,14 @@ class G140 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/H001.php b/src/Elements/ICMSIPI/H001.php index 7a45117d..30bd5c57 100755 --- a/src/Elements/ICMSIPI/H001.php +++ b/src/Elements/ICMSIPI/H001.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO H001: ABERTURA DO BLOCO H @@ -16,12 +15,16 @@ * caso apresente o inventário de 31/12 na EFD ICMS IPI de dezembro ou janeiro, * deve repetir a informação na escrituração de fevereiro. */ -class H001 extends Element implements ElementInterface +class H001 extends Element { const REG = 'H001'; const LEVEL = 1; const PARENT = ''; - + + /** + * Estes parametros devem representar o layout atual do elemento + * @var array[] + */ protected $parameters = [ 'IND_MOV' => [ 'type' => 'numeric', @@ -33,14 +36,16 @@ class H001 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); } } diff --git a/src/Elements/ICMSIPI/H005.php b/src/Elements/ICMSIPI/H005.php index a57733cb..d37d355d 100755 --- a/src/Elements/ICMSIPI/H005.php +++ b/src/Elements/ICMSIPI/H005.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO H005: TOTAIS DO INVENTÁRIO @@ -26,12 +25,12 @@ * * Atribuir valor Zero ao inventário significa escriturar sem estoque. */ -class H005 extends Element implements ElementInterface +class H005 extends Element { const REG = 'H005'; const LEVEL = 2; const PARENT = 'H001'; - + protected $parameters = [ 'DT_INV' => [ 'type' => 'string', @@ -60,14 +59,16 @@ class H005 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); } } diff --git a/src/Elements/ICMSIPI/H010.php b/src/Elements/ICMSIPI/H010.php index 614f2474..8ed7b6dd 100755 --- a/src/Elements/ICMSIPI/H010.php +++ b/src/Elements/ICMSIPI/H010.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO H010: INVENTÁRIO. @@ -17,12 +16,12 @@ * informar neste registro, além dos itens exigidos pelas legislações do ICMS e * do IPI, aqueles bens exigidos pela legislação do Imposto de Renda. */ -class H010 extends Element implements ElementInterface +class H010 extends Element { const REG = 'H010'; const LEVEL = 3; const PARENT = 'H005'; - + protected $parameters = [ 'COD_ITEM' => [ 'type' => 'string', @@ -99,14 +98,16 @@ class H010 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); } } diff --git a/src/Elements/ICMSIPI/H020.php b/src/Elements/ICMSIPI/H020.php index 2927177a..fc2235db 100755 --- a/src/Elements/ICMSIPI/H020.php +++ b/src/Elements/ICMSIPI/H020.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO H020: INFORMAÇÃO COMPLEMENTAR DO INVENTÁRIO @@ -15,12 +14,12 @@ * (MOT_INV=2 do H005), somente deverá ser gerado esse registro para os itens * que sofreram alteração da tributação do ICMS. */ -class H020 extends Element implements ElementInterface +class H020 extends Element { const REG = 'H020'; const LEVEL = 4; const PARENT = 'H010'; - + protected $parameters = [ 'CST_ICMS' => [ 'type' => 'string', @@ -45,14 +44,16 @@ class H020 extends Element implements ElementInterface 'format' => '15v2' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); } } diff --git a/src/Elements/ICMSIPI/H030.php b/src/Elements/ICMSIPI/H030.php index 4b7bcf2b..cf63f23e 100644 --- a/src/Elements/ICMSIPI/H030.php +++ b/src/Elements/ICMSIPI/H030.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO H030: Informações complementares do inventário das mercadorias sujeitas ao *0 regime de substituição tributária * */ -class H030 extends Element implements ElementInterface +class H030 extends Element { const REG = 'H030'; const LEVEL = 4; @@ -47,14 +46,16 @@ class H030 extends Element implements ElementInterface 'format' => '15v6' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); } } diff --git a/src/Elements/ICMSIPI/K001.php b/src/Elements/ICMSIPI/K001.php index 8f95195e..846035cb 100755 --- a/src/Elements/ICMSIPI/K001.php +++ b/src/Elements/ICMSIPI/K001.php @@ -3,15 +3,14 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K001: ABERTURA DO BLOCO K * Este registro deve ser gerado para abertura do bloco K, indicando se há * registros de informações no bloco. */ -class K001 extends Element implements ElementInterface +class K001 extends Element { const REG = 'K001'; const LEVEL = 1; @@ -26,14 +25,17 @@ class K001 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K010.php b/src/Elements/ICMSIPI/K010.php index 52e4502c..c9ad21f1 100755 --- a/src/Elements/ICMSIPI/K010.php +++ b/src/Elements/ICMSIPI/K010.php @@ -3,14 +3,13 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K010: INFORMAÇÃO SOBRE O TIPO DE LEIAUTE (SIMPLIFICADO/COMPLETO) * Este registro deve ser gerado, indicando o tipo de layout informado */ -class K010 extends Element implements ElementInterface +class K010 extends Element { const REG = 'K010'; const LEVEL = 1; @@ -29,11 +28,14 @@ class K010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K100.php b/src/Elements/ICMSIPI/K100.php index bdc9b396..d2fa0c5e 100755 --- a/src/Elements/ICMSIPI/K100.php +++ b/src/Elements/ICMSIPI/K100.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K100: PERÍODO DE APURAÇÃO DO ICMS/IPI @@ -15,7 +14,7 @@ * Os períodos informados neste registro deverão abranger todo o período da escrituração, * conforme informado no Registro 0000. */ -class K100 extends Element implements ElementInterface +class K100 extends Element { const REG = 'K100'; const LEVEL = 2; @@ -37,14 +36,17 @@ class K100 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K200.php b/src/Elements/ICMSIPI/K200.php index 86c76852..ed58cffa 100755 --- a/src/Elements/ICMSIPI/K200.php +++ b/src/Elements/ICMSIPI/K200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K200 extends Element implements ElementInterface +class K200 extends Element { const REG = 'K200'; const LEVEL = 3; @@ -53,14 +52,17 @@ class K200 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K210.php b/src/Elements/ICMSIPI/K210.php index fa9a2df7..31055ef0 100755 --- a/src/Elements/ICMSIPI/K210.php +++ b/src/Elements/ICMSIPI/K210.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K210: DESMONTAGEM DE MERCADORIAS – ITEM DE ORIGEM @@ -17,7 +16,7 @@ * 04 – Produto Acabado; * 05 – Subproduto * e 10 – Outros Insumos – campo TIPO_ITEM do Registro 0200, - * no que se refere à saída do estoque do item de origem. + * no que se refere à saída do estoque do item de origem. * A quantidade deve ser expressa, obrigatoriamente, na unidade de medida de * controle de estoque constante no campo 06 do registro 0200, UNID_INV. * Validação do Registro: Quando houver identificação da ordem de serviço, @@ -25,7 +24,7 @@ * Nos casos em que a ordem de serviço não for identificada, o campo chave * passa a ser COD_ITEM_ORI. */ -class K210 extends Element implements ElementInterface +class K210 extends Element { const REG = 'K210'; const LEVEL = 3; @@ -68,14 +67,17 @@ class K210 extends Element implements ElementInterface 'format' => '15v6' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K215.php b/src/Elements/ICMSIPI/K215.php index df83527e..b932a52d 100755 --- a/src/Elements/ICMSIPI/K215.php +++ b/src/Elements/ICMSIPI/K215.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K215: DESMONTAGEM DE MERCADORIAS – ITENS DE DESTINO @@ -30,7 +29,7 @@ * de controle de estoque constante no campo 06 do registro 0200, UNID_INV. * Validação do Registro: A chave deste registro é o campo COD_ITEM_DES. */ -class K215 extends Element implements ElementInterface +class K215 extends Element { const REG = 'K215'; const LEVEL = 4; @@ -52,14 +51,17 @@ class K215 extends Element implements ElementInterface 'format' => '15v6' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K220.php b/src/Elements/ICMSIPI/K220.php index f06b0259..177da69b 100755 --- a/src/Elements/ICMSIPI/K220.php +++ b/src/Elements/ICMSIPI/K220.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * REGISTRO K220: OUTRAS MOVIMENTAÇÕES INTERNAS ENTRE MERCADORIAS @@ -41,7 +40,7 @@ * Validação do Registro: A chave deste registro são os campos DT_MOV, * COD_ITEM_ORI e COD_ITEM_DEST */ -class K220 extends Element implements ElementInterface +class K220 extends Element { const REG = 'K220'; const LEVEL = 3; @@ -84,14 +83,17 @@ class K220 extends Element implements ElementInterface 'format' => '15v6' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K230.php b/src/Elements/ICMSIPI/K230.php index 0ec39038..9c425015 100755 --- a/src/Elements/ICMSIPI/K230.php +++ b/src/Elements/ICMSIPI/K230.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K230 extends Element implements ElementInterface +class K230 extends Element { const REG = 'K230'; const LEVEL = 3; @@ -49,14 +48,17 @@ class K230 extends Element implements ElementInterface 'format' => '15v6' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K235.php b/src/Elements/ICMSIPI/K235.php index 5f1529e7..bfada413 100755 --- a/src/Elements/ICMSIPI/K235.php +++ b/src/Elements/ICMSIPI/K235.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K235 extends Element implements ElementInterface +class K235 extends Element { const REG = 'K235'; const LEVEL = 4; @@ -43,14 +42,17 @@ class K235 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K250.php b/src/Elements/ICMSIPI/K250.php index dbcd0a89..c2cbe760 100755 --- a/src/Elements/ICMSIPI/K250.php +++ b/src/Elements/ICMSIPI/K250.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K250 extends Element implements ElementInterface +class K250 extends Element { const REG = 'K250'; const LEVEL = 3; @@ -35,14 +34,17 @@ class K250 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K255.php b/src/Elements/ICMSIPI/K255.php index 2317e2cf..65147c37 100755 --- a/src/Elements/ICMSIPI/K255.php +++ b/src/Elements/ICMSIPI/K255.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K255 extends Element implements ElementInterface +class K255 extends Element { const REG = 'K255'; const LEVEL = 4; @@ -42,14 +41,17 @@ class K255 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K260.php b/src/Elements/ICMSIPI/K260.php index 82e8bf03..4dc05f1e 100755 --- a/src/Elements/ICMSIPI/K260.php +++ b/src/Elements/ICMSIPI/K260.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K260 extends Element implements ElementInterface +class K260 extends Element { const REG = 'K260'; const LEVEL = 3; @@ -56,14 +55,17 @@ class K260 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K265.php b/src/Elements/ICMSIPI/K265.php index d44fce35..733fb210 100755 --- a/src/Elements/ICMSIPI/K265.php +++ b/src/Elements/ICMSIPI/K265.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K265 extends Element implements ElementInterface +class K265 extends Element { const REG = 'K265'; const LEVEL = 4; @@ -35,14 +34,17 @@ class K265 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K270.php b/src/Elements/ICMSIPI/K270.php index 7f07d150..cda7748f 100755 --- a/src/Elements/ICMSIPI/K270.php +++ b/src/Elements/ICMSIPI/K270.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K270 extends Element implements ElementInterface +class K270 extends Element { const REG = 'K270'; const LEVEL = 3; @@ -63,14 +62,17 @@ class K270 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K275.php b/src/Elements/ICMSIPI/K275.php index 973316dc..ebb00e4e 100755 --- a/src/Elements/ICMSIPI/K275.php +++ b/src/Elements/ICMSIPI/K275.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K275 extends Element implements ElementInterface +class K275 extends Element { const REG = 'K275'; const LEVEL = 4; @@ -42,14 +41,17 @@ class K275 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K280.php b/src/Elements/ICMSIPI/K280.php index fe4a721d..df242c55 100755 --- a/src/Elements/ICMSIPI/K280.php +++ b/src/Elements/ICMSIPI/K280.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K280 extends Element implements ElementInterface +class K280 extends Element { const REG = 'K280'; const LEVEL = 3; @@ -60,14 +59,17 @@ class K280 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K290.php b/src/Elements/ICMSIPI/K290.php index 1aa0dafe..c9633ea9 100644 --- a/src/Elements/ICMSIPI/K290.php +++ b/src/Elements/ICMSIPI/K290.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K290 extends Element implements ElementInterface +class K290 extends Element { const REG = 'K290'; const LEVEL = 3; @@ -35,14 +34,17 @@ class K290 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K291.php b/src/Elements/ICMSIPI/K291.php index 76ba7148..daec67a1 100644 --- a/src/Elements/ICMSIPI/K291.php +++ b/src/Elements/ICMSIPI/K291.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K291 extends Element implements ElementInterface +class K291 extends Element { const REG = 'K291'; const LEVEL = 4; @@ -28,14 +27,17 @@ class K291 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K292.php b/src/Elements/ICMSIPI/K292.php index 512a3f25..3108b0c3 100644 --- a/src/Elements/ICMSIPI/K292.php +++ b/src/Elements/ICMSIPI/K292.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K292 extends Element implements ElementInterface +class K292 extends Element { const REG = 'K292'; const LEVEL = 4; @@ -28,14 +27,17 @@ class K292 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K300.php b/src/Elements/ICMSIPI/K300.php index 79bbd42c..0c08920d 100644 --- a/src/Elements/ICMSIPI/K300.php +++ b/src/Elements/ICMSIPI/K300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K300 extends Element implements ElementInterface +class K300 extends Element { const REG = 'K300'; const LEVEL = 3; @@ -21,14 +20,17 @@ class K300 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K301.php b/src/Elements/ICMSIPI/K301.php index cef2677a..9d3f0400 100644 --- a/src/Elements/ICMSIPI/K301.php +++ b/src/Elements/ICMSIPI/K301.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K301 extends Element implements ElementInterface +class K301 extends Element { const REG = 'K301'; const LEVEL = 4; @@ -28,14 +27,17 @@ class K301 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/K302.php b/src/Elements/ICMSIPI/K302.php index eb6e4159..cf197af7 100644 --- a/src/Elements/ICMSIPI/K302.php +++ b/src/Elements/ICMSIPI/K302.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class K302 extends Element implements ElementInterface +class K302 extends Element { const REG = 'K302'; const LEVEL = 4; @@ -28,14 +27,17 @@ class K302 extends Element implements ElementInterface 'format' => '15v3' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0000.php b/src/Elements/ICMSIPI/Z0000.php index 272fe73f..6d5611e2 100755 --- a/src/Elements/ICMSIPI/Z0000.php +++ b/src/Elements/ICMSIPI/Z0000.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0000 do Bloco 0 OBRIGATÓRIO [1:1] @@ -26,7 +25,7 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0000 extends Element implements ElementInterface +class Z0000 extends Element { const REG = '0000'; const LEVEL = 0; @@ -141,11 +140,13 @@ class Z0000 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z0001.php b/src/Elements/ICMSIPI/Z0001.php index 546d8a46..f2bc16a3 100755 --- a/src/Elements/ICMSIPI/Z0001.php +++ b/src/Elements/ICMSIPI/Z0001.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0001 do Bloco 0 @@ -15,12 +14,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0001 extends Element implements ElementInterface +class Z0001 extends Element { const REG = '0001'; const LEVEL = 1; const PARENT = '0000'; - + protected $parameters = [ 'ind_mov' => [ 'type' => 'numeric', @@ -30,14 +29,17 @@ class Z0001 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0002.php b/src/Elements/ICMSIPI/Z0002.php index cb9c9665..3c58fe2f 100644 --- a/src/Elements/ICMSIPI/Z0002.php +++ b/src/Elements/ICMSIPI/Z0002.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0002 do Bloco 0 @@ -15,12 +14,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0002 extends Element implements ElementInterface +class Z0002 extends Element { const REG = '0002'; const LEVEL = 1; const PARENT = '0000'; - + protected $parameters = [ 'CLAS_ESTAB_IND' => [ 'type' => 'numeric', @@ -30,14 +29,17 @@ class Z0002 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0005.php b/src/Elements/ICMSIPI/Z0005.php index 2e53b58f..68e9d7ae 100755 --- a/src/Elements/ICMSIPI/Z0005.php +++ b/src/Elements/ICMSIPI/Z0005.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0005 do Bloco 0 @@ -15,12 +14,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0005 extends Element implements ElementInterface +class Z0005 extends Element { const REG = '0005'; const LEVEL = 2; const PARENT = '0001'; - + protected $parameters = [ 'FANTASIA' => [ 'type' => 'string', @@ -86,14 +85,17 @@ class Z0005 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0015.php b/src/Elements/ICMSIPI/Z0015.php index 28cac8af..0dae1f80 100755 --- a/src/Elements/ICMSIPI/Z0015.php +++ b/src/Elements/ICMSIPI/Z0015.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0015 do Bloco 0 @@ -19,12 +18,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0015 extends Element implements ElementInterface +class Z0015 extends Element { const REG = '0015'; const LEVEL = 2; const PARENT = '0005'; - + protected $parameters = [ 'UF_ST' => [ 'type' => 'string', @@ -46,14 +45,17 @@ class Z0015 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0100.php b/src/Elements/ICMSIPI/Z0100.php index 982417a9..0d4d65ff 100755 --- a/src/Elements/ICMSIPI/Z0100.php +++ b/src/Elements/ICMSIPI/Z0100.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0100 do Bloco 0 @@ -16,12 +15,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0100 extends Element implements ElementInterface +class Z0100 extends Element { const REG = '0100'; const LEVEL = 2; const PARENT = '0015|0005'; - + protected $parameters = [ 'NOME' => [ 'type' => 'string', @@ -118,11 +117,14 @@ class Z0100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0150.php b/src/Elements/ICMSIPI/Z0150.php index 2f7d73f4..2fb710cf 100755 --- a/src/Elements/ICMSIPI/Z0150.php +++ b/src/Elements/ICMSIPI/Z0150.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0150 do Bloco 0 @@ -32,7 +31,7 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0150 extends Element implements ElementInterface +class Z0150 extends Element { const REG = '0150'; const LEVEL = 2; @@ -128,11 +127,13 @@ class Z0150 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z0175.php b/src/Elements/ICMSIPI/Z0175.php index c683f7d7..3bf96f0d 100755 --- a/src/Elements/ICMSIPI/Z0175.php +++ b/src/Elements/ICMSIPI/Z0175.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0175 do Bloco 0 @@ -28,12 +27,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0175 extends Element implements ElementInterface +class Z0175 extends Element { const REG = '0175'; const LEVEL = 0; const PARENT = '0150'; - + protected $parameters = [ 'DT_ALT' => [ 'type' => 'string', @@ -57,14 +56,17 @@ class Z0175 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0190.php b/src/Elements/ICMSIPI/Z0190.php index 806eb204..4cd2ed43 100644 --- a/src/Elements/ICMSIPI/Z0190.php +++ b/src/Elements/ICMSIPI/Z0190.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0190 do Bloco 0 @@ -18,7 +17,7 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0190 extends Element implements ElementInterface +class Z0190 extends Element { const REG = '0190'; const LEVEL = 0; @@ -44,14 +43,14 @@ class Z0190 extends Element implements ElementInterface /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); - /*Removida e exigência de que a UNID seja diferente de DESCR Guia Prático EFD-ICMS/IPI – - Versão 3.0.2 Atualização: 21 de maio de 2019*/ - /*$this->postValidation();*/ + $this->postValidation(); } /** diff --git a/src/Elements/ICMSIPI/Z0200.php b/src/Elements/ICMSIPI/Z0200.php index 644f67f5..ead75990 100755 --- a/src/Elements/ICMSIPI/Z0200.php +++ b/src/Elements/ICMSIPI/Z0200.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0600 do Bloco 0 @@ -47,12 +46,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0200 extends Element implements ElementInterface +class Z0200 extends Element { const REG = '0200'; const LEVEL = 2; const PARENT = ''; - + protected $parameters = [ 'COD_ITEM' => [ 'type' => 'string', @@ -152,14 +151,17 @@ class Z0200 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0205.php b/src/Elements/ICMSIPI/Z0205.php index 2cc31669..c1fe6771 100755 --- a/src/Elements/ICMSIPI/Z0205.php +++ b/src/Elements/ICMSIPI/Z0205.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0205 do Bloco 0 @@ -20,12 +19,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0205 extends Element implements ElementInterface +class Z0205 extends Element { const REG = '0205'; const LEVEL = 3; const PARENT = '0200'; - + protected $parameters = [ 'DESCR_ANT_ITEM' => [ 'type' => 'string', @@ -56,14 +55,17 @@ class Z0205 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0206.php b/src/Elements/ICMSIPI/Z0206.php index 97a75942..8b0caa8b 100755 --- a/src/Elements/ICMSIPI/Z0206.php +++ b/src/Elements/ICMSIPI/Z0206.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0206 do Bloco 0 @@ -17,12 +16,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0206 extends Element implements ElementInterface +class Z0206 extends Element { const REG = '0206'; const LEVEL = 3; const PARENT = '0200'; - + protected $parameters = [ 'COD_COMB' => [ 'type' => 'string', @@ -32,14 +31,17 @@ class Z0206 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0210.php b/src/Elements/ICMSIPI/Z0210.php index c0c75f37..9ea83171 100755 --- a/src/Elements/ICMSIPI/Z0210.php +++ b/src/Elements/ICMSIPI/Z0210.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0210 do Bloco 0 @@ -37,12 +36,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0210 extends Element implements ElementInterface +class Z0210 extends Element { const REG = '0210'; const LEVEL = 3; const PARENT = '0200'; - + protected $parameters = [ 'COD_ITEM_COMP' => [ 'type' => 'string', @@ -68,14 +67,17 @@ class Z0210 extends Element implements ElementInterface 'format' => '15v4' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0220.php b/src/Elements/ICMSIPI/Z0220.php index 397164a4..26dafee4 100755 --- a/src/Elements/ICMSIPI/Z0220.php +++ b/src/Elements/ICMSIPI/Z0220.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0220 do Bloco 0 @@ -29,12 +28,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0220 extends Element implements ElementInterface +class Z0220 extends Element { const REG = '0220'; const LEVEL = 3; const PARENT = '0200'; - + protected $parameters = [ 'UNID_CONV' => [ 'type' => 'string', @@ -61,14 +60,17 @@ class Z0220 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0221.php b/src/Elements/ICMSIPI/Z0221.php index 6f328cf7..3c7677cd 100644 --- a/src/Elements/ICMSIPI/Z0221.php +++ b/src/Elements/ICMSIPI/Z0221.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0221 do Bloco 0 @@ -27,7 +26,7 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0221 extends Element implements ElementInterface +class Z0221 extends Element { const REG = '0221'; const LEVEL = 3; @@ -53,10 +52,13 @@ class Z0221 extends Element implements ElementInterface /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0300.php b/src/Elements/ICMSIPI/Z0300.php index 149713c0..b8d993f1 100644 --- a/src/Elements/ICMSIPI/Z0300.php +++ b/src/Elements/ICMSIPI/Z0300.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0300 do Bloco 0 @@ -13,7 +12,7 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0300 extends Element implements ElementInterface +class Z0300 extends Element { const REG = '0300'; const LEVEL = 2; @@ -67,10 +66,13 @@ class Z0300 extends Element implements ElementInterface /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0305.php b/src/Elements/ICMSIPI/Z0305.php index 25a85144..bcf28116 100644 --- a/src/Elements/ICMSIPI/Z0305.php +++ b/src/Elements/ICMSIPI/Z0305.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0600 do Bloco 0 @@ -12,12 +11,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0305 extends Element implements ElementInterface +class Z0305 extends Element { const REG = '0305'; const LEVEL = 0; const PARENT = ''; - + protected $parameters = [ 'COD_CCUS' => [ 'type' => 'string', @@ -41,14 +40,17 @@ class Z0305 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0400.php b/src/Elements/ICMSIPI/Z0400.php index 24ec1bd4..51e668ec 100755 --- a/src/Elements/ICMSIPI/Z0400.php +++ b/src/Elements/ICMSIPI/Z0400.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0400 do Bloco 0 @@ -21,12 +20,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0400 extends Element implements ElementInterface +class Z0400 extends Element { const REG = '0400'; const LEVEL = 0; const PARENT = ''; - + protected $parameters = [ 'COD_NAT' => [ 'type' => 'string', @@ -43,14 +42,17 @@ class Z0400 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0450.php b/src/Elements/ICMSIPI/Z0450.php index 07927455..90b1749d 100755 --- a/src/Elements/ICMSIPI/Z0450.php +++ b/src/Elements/ICMSIPI/Z0450.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0450 do Bloco 0 @@ -24,12 +23,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0450 extends Element implements ElementInterface +class Z0450 extends Element { const REG = '0450'; const LEVEL = 0; const PARENT = ''; - + protected $parameters = [ 'COD_INF' => [ 'type' => 'string', @@ -46,14 +45,17 @@ class Z0450 extends Element implements ElementInterface 'format' => '' ] ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0460.php b/src/Elements/ICMSIPI/Z0460.php index 1745d08d..2ead4c0f 100644 --- a/src/Elements/ICMSIPI/Z0460.php +++ b/src/Elements/ICMSIPI/Z0460.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0460 do Bloco 0 @@ -13,12 +12,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0460 extends Element implements ElementInterface +class Z0460 extends Element { const REG = '0460'; const LEVEL = 3; const PARENT = ''; - + protected $parameters = [ 'COD_OBS' => [ 'type' => 'string', @@ -35,14 +34,17 @@ class Z0460 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0500.php b/src/Elements/ICMSIPI/Z0500.php index 4377f3a7..84d68808 100644 --- a/src/Elements/ICMSIPI/Z0500.php +++ b/src/Elements/ICMSIPI/Z0500.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0500 do Bloco 0 @@ -13,12 +12,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0500 extends Element implements ElementInterface +class Z0500 extends Element { const REG = '0500'; const LEVEL = 2; const PARENT = ''; - + protected $parameters = [ 'DT_ALT' => [ 'type' => 'string', @@ -63,14 +62,17 @@ class Z0500 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z0600.php b/src/Elements/ICMSIPI/Z0600.php index 86d7d82f..927e5abb 100644 --- a/src/Elements/ICMSIPI/Z0600.php +++ b/src/Elements/ICMSIPI/Z0600.php @@ -3,8 +3,7 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; /** * Elemento 0600 do Bloco 0 @@ -13,12 +12,12 @@ * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente * numeréricos e também para não confundir os com elementos do bloco B */ -class Z0600 extends Element implements ElementInterface +class Z0600 extends Element { const REG = '0600'; const LEVEL = 2; const PARENT = ''; - + protected $parameters = [ 'DT_ALT' => [ 'type' => 'string', @@ -42,14 +41,17 @@ class Z0600 extends Element implements ElementInterface 'format' => '' ], ]; - + /** * Constructor * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1001.php b/src/Elements/ICMSIPI/Z1001.php index 3a3ba1a8..f60a814c 100755 --- a/src/Elements/ICMSIPI/Z1001.php +++ b/src/Elements/ICMSIPI/Z1001.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1001 extends Element implements ElementInterface +class Z1001 extends Element { const REG = '1001'; const LEVEL = 1; @@ -26,11 +25,14 @@ class Z1001 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1010.php b/src/Elements/ICMSIPI/Z1010.php index db002c44..77ab0d7d 100755 --- a/src/Elements/ICMSIPI/Z1010.php +++ b/src/Elements/ICMSIPI/Z1010.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1010 extends Element implements ElementInterface +class Z1010 extends Element { const REG = '1010'; const LEVEL = 2; @@ -36,7 +35,7 @@ class Z1010 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[S|N]$', 'required' => true, - 'info' => 'Reg. 1300 – É comércio varejista de combustíveis com movimentação + 'info' => 'Reg. 1300 – É comércio varejista de combustíveis com movimentação '.'e/ou estoque no período: ' .'S– Sim ' .'N - Não', @@ -46,7 +45,7 @@ class Z1010 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[S|N]$', 'required' => true, - 'info' => 'Reg. 1390 – Usinas de açúcar e/álcool – O estabelecimento é produtor + 'info' => 'Reg. 1390 – Usinas de açúcar e/álcool – O estabelecimento é produtor '.'de açúcar e/ou álcool carburante com movimentação e/ou estoque no período: ' .'S – Sim ' .'N - Não', @@ -56,7 +55,7 @@ class Z1010 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[S|N]$', 'required' => true, - 'info' => 'Reg 1400 – Sendo o registro obrigatório em sua Unidade de Federação, + 'info' => 'Reg 1400 – Sendo o registro obrigatório em sua Unidade de Federação, '.'existem informações a serem prestadas neste registro: ' .'S – Sim; ' .'N - Não', @@ -66,7 +65,7 @@ class Z1010 extends Element implements ElementInterface 'type' => 'string', 'regex' => '^[S|N]$', 'required' => true, - 'info' => 'Reg 1500 - A empresa é distribuidora de energia e ocorreu fornecimento + 'info' => 'Reg 1500 - A empresa é distribuidora de energia e ocorreu fornecimento '.'de energia elétrica para consumidores de outra UF: ' .'S – Sim; ' .'N - Não', @@ -142,11 +141,14 @@ class Z1010 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1100.php b/src/Elements/ICMSIPI/Z1100.php index 151c6efe..2d052eac 100755 --- a/src/Elements/ICMSIPI/Z1100.php +++ b/src/Elements/ICMSIPI/Z1100.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1100 extends Element implements ElementInterface +class Z1100 extends Element { const REG = '1100'; const LEVEL = 2; @@ -119,11 +118,13 @@ class Z1100 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1105.php b/src/Elements/ICMSIPI/Z1105.php index 79a5c431..1a249088 100755 --- a/src/Elements/ICMSIPI/Z1105.php +++ b/src/Elements/ICMSIPI/Z1105.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1105 extends Element implements ElementInterface +class Z1105 extends Element { const REG = '1105'; const LEVEL = 3; @@ -59,11 +58,14 @@ class Z1105 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1110.php b/src/Elements/ICMSIPI/Z1110.php index 8d6b28f8..3ccce1ef 100755 --- a/src/Elements/ICMSIPI/Z1110.php +++ b/src/Elements/ICMSIPI/Z1110.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1110 extends Element implements ElementInterface +class Z1110 extends Element { const REG = '1110'; const LEVEL = 4; @@ -81,11 +80,14 @@ class Z1110 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1200.php b/src/Elements/ICMSIPI/Z1200.php index 74aba3d9..1c6635b9 100755 --- a/src/Elements/ICMSIPI/Z1200.php +++ b/src/Elements/ICMSIPI/Z1200.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1200 extends Element implements ElementInterface +class Z1200 extends Element { const REG = '1200'; const LEVEL = 2; @@ -59,11 +58,13 @@ class Z1200 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1210.php b/src/Elements/ICMSIPI/Z1210.php index 567b73b5..b2579858 100755 --- a/src/Elements/ICMSIPI/Z1210.php +++ b/src/Elements/ICMSIPI/Z1210.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1210 extends Element implements ElementInterface +class Z1210 extends Element { const REG = '1210'; const LEVEL = 3; @@ -45,11 +44,13 @@ class Z1210 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1250.php b/src/Elements/ICMSIPI/Z1250.php index 0841b384..a142a22b 100644 --- a/src/Elements/ICMSIPI/Z1250.php +++ b/src/Elements/ICMSIPI/Z1250.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1250 extends Element implements ElementInterface +class Z1250 extends Element { const REG = '1250'; const LEVEL = 2; @@ -56,11 +55,14 @@ class Z1250 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1255.php b/src/Elements/ICMSIPI/Z1255.php index b1e20def..b56bccb5 100644 --- a/src/Elements/ICMSIPI/Z1255.php +++ b/src/Elements/ICMSIPI/Z1255.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1255 extends Element implements ElementInterface +class Z1255 extends Element { const REG = '1255'; const LEVEL = 3; @@ -65,11 +64,14 @@ class Z1255 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1300.php b/src/Elements/ICMSIPI/Z1300.php index e53c5c77..b17e8ca8 100755 --- a/src/Elements/ICMSIPI/Z1300.php +++ b/src/Elements/ICMSIPI/Z1300.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1300 extends Element implements ElementInterface +class Z1300 extends Element { const REG = '1300'; const LEVEL = 2; @@ -87,11 +86,13 @@ class Z1300 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1310.php b/src/Elements/ICMSIPI/Z1310.php index 238d2868..fa5823c6 100755 --- a/src/Elements/ICMSIPI/Z1310.php +++ b/src/Elements/ICMSIPI/Z1310.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1310 extends Element implements ElementInterface +class Z1310 extends Element { const REG = '1310'; const LEVEL = 3; @@ -80,11 +79,13 @@ class Z1310 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1320.php b/src/Elements/ICMSIPI/Z1320.php index 3a49099e..5d68da0a 100755 --- a/src/Elements/ICMSIPI/Z1320.php +++ b/src/Elements/ICMSIPI/Z1320.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1320 extends Element implements ElementInterface +class Z1320 extends Element { const REG = '1320'; const LEVEL = 4; @@ -87,11 +86,13 @@ class Z1320 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1350.php b/src/Elements/ICMSIPI/Z1350.php index 91c160ba..4e1799ec 100755 --- a/src/Elements/ICMSIPI/Z1350.php +++ b/src/Elements/ICMSIPI/Z1350.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1350 extends Element implements ElementInterface +class Z1350 extends Element { const REG = '1350'; const LEVEL = 2; @@ -47,11 +46,14 @@ class Z1350 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1360.php b/src/Elements/ICMSIPI/Z1360.php index ea1f3400..acbe020d 100755 --- a/src/Elements/ICMSIPI/Z1360.php +++ b/src/Elements/ICMSIPI/Z1360.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1360 extends Element implements ElementInterface +class Z1360 extends Element { const REG = '1360'; const LEVEL = 3; @@ -31,11 +30,14 @@ class Z1360 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1370.php b/src/Elements/ICMSIPI/Z1370.php index ccd510a4..0c26fd78 100755 --- a/src/Elements/ICMSIPI/Z1370.php +++ b/src/Elements/ICMSIPI/Z1370.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1370 extends Element implements ElementInterface +class Z1370 extends Element { const REG = '1370'; const LEVEL = 3; @@ -38,11 +37,14 @@ class Z1370 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1390.php b/src/Elements/ICMSIPI/Z1390.php index c1965b26..94057dad 100755 --- a/src/Elements/ICMSIPI/Z1390.php +++ b/src/Elements/ICMSIPI/Z1390.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1390 extends Element implements ElementInterface +class Z1390 extends Element { const REG = '1390'; const LEVEL = 2; @@ -27,11 +26,14 @@ class Z1390 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1391.php b/src/Elements/ICMSIPI/Z1391.php index 4b3f7ff3..5b1e8c88 100755 --- a/src/Elements/ICMSIPI/Z1391.php +++ b/src/Elements/ICMSIPI/Z1391.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1391 extends Element implements ElementInterface +class Z1391 extends Element { const REG = '1391'; const LEVEL = 3; @@ -131,11 +130,14 @@ class Z1391 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1400.php b/src/Elements/ICMSIPI/Z1400.php index f956d337..b5cd9228 100755 --- a/src/Elements/ICMSIPI/Z1400.php +++ b/src/Elements/ICMSIPI/Z1400.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1400 extends Element implements ElementInterface +class Z1400 extends Element { const REG = '1400'; const LEVEL = 2; @@ -40,11 +39,13 @@ class Z1400 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1500.php b/src/Elements/ICMSIPI/Z1500.php index 92d6d3c1..4bbe85b4 100755 --- a/src/Elements/ICMSIPI/Z1500.php +++ b/src/Elements/ICMSIPI/Z1500.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1500 extends Element implements ElementInterface +class Z1500 extends Element { const REG = '1500'; const LEVEL = 2; @@ -226,11 +225,13 @@ class Z1500 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1510.php b/src/Elements/ICMSIPI/Z1510.php index c35be5b5..a39c59de 100755 --- a/src/Elements/ICMSIPI/Z1510.php +++ b/src/Elements/ICMSIPI/Z1510.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1510 extends Element implements ElementInterface +class Z1510 extends Element { const REG = '1510'; const LEVEL = 3; @@ -160,11 +159,14 @@ class Z1510 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1600.php b/src/Elements/ICMSIPI/Z1600.php index 2bbd79aa..4efcbfce 100755 --- a/src/Elements/ICMSIPI/Z1600.php +++ b/src/Elements/ICMSIPI/Z1600.php @@ -3,13 +3,12 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; // REGISTRO 1600: TOTAL DAS OPERAÇÕES COM CARTÃO DE CRÉDITO E/OU DÉBITO, // LOJA (PRIVATE LABEL) E DEMAIS INSTRUMENTOS DE PAGAMENTOS ELETRÔNICOS // (VÁLIDO ATÉ 31/12/2021) -class Z1600 extends Element implements ElementInterface +class Z1600 extends Element { const REG = '1600'; const LEVEL = 2; @@ -42,11 +41,14 @@ class Z1600 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1601.php b/src/Elements/ICMSIPI/Z1601.php index 1aba0a66..535f484b 100644 --- a/src/Elements/ICMSIPI/Z1601.php +++ b/src/Elements/ICMSIPI/Z1601.php @@ -3,12 +3,11 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; // REGISTRO 1601: OPERAÇÕES COM INSTRUMENTOS DE PAGAMENTOS ELETRÔNICOS // (VÁLIDO A PARTIR DE 01/01/2022) -class Z1601 extends Element implements ElementInterface +class Z1601 extends Element { const REG = '1601'; const LEVEL = 2; @@ -60,11 +59,14 @@ class Z1601 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1700.php b/src/Elements/ICMSIPI/Z1700.php index 86fd47cf..271d1abf 100755 --- a/src/Elements/ICMSIPI/Z1700.php +++ b/src/Elements/ICMSIPI/Z1700.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1700 extends Element implements ElementInterface +class Z1700 extends Element { const REG = '1700'; const LEVEL = 2; @@ -71,11 +70,14 @@ class Z1700 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1710.php b/src/Elements/ICMSIPI/Z1710.php index bff65065..9d29c86e 100755 --- a/src/Elements/ICMSIPI/Z1710.php +++ b/src/Elements/ICMSIPI/Z1710.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1710 extends Element implements ElementInterface +class Z1710 extends Element { const REG = '1710'; const LEVEL = 3; @@ -31,11 +30,14 @@ class Z1710 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1800.php b/src/Elements/ICMSIPI/Z1800.php index dc2711fa..29a1aee4 100755 --- a/src/Elements/ICMSIPI/Z1800.php +++ b/src/Elements/ICMSIPI/Z1800.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1800 extends Element implements ElementInterface +class Z1800 extends Element { const REG = '1800'; const LEVEL = 2; @@ -80,11 +79,14 @@ class Z1800 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1900.php b/src/Elements/ICMSIPI/Z1900.php index 86fe71b6..17ad2d94 100755 --- a/src/Elements/ICMSIPI/Z1900.php +++ b/src/Elements/ICMSIPI/Z1900.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1900 extends Element implements ElementInterface +class Z1900 extends Element { const REG = '1900'; const LEVEL = 2; @@ -37,11 +36,14 @@ class Z1900 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1910.php b/src/Elements/ICMSIPI/Z1910.php index d8092660..7cdc7e81 100755 --- a/src/Elements/ICMSIPI/Z1910.php +++ b/src/Elements/ICMSIPI/Z1910.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1910 extends Element implements ElementInterface +class Z1910 extends Element { const REG = '1910'; const LEVEL = 3; @@ -31,11 +30,14 @@ class Z1910 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1920.php b/src/Elements/ICMSIPI/Z1920.php index a20e1a64..804b9fd3 100755 --- a/src/Elements/ICMSIPI/Z1920.php +++ b/src/Elements/ICMSIPI/Z1920.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1920 extends Element implements ElementInterface +class Z1920 extends Element { const REG = '1920'; const LEVEL = 4; @@ -101,11 +100,13 @@ class Z1920 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1921.php b/src/Elements/ICMSIPI/Z1921.php index 79b34823..c1858659 100755 --- a/src/Elements/ICMSIPI/Z1921.php +++ b/src/Elements/ICMSIPI/Z1921.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1921 extends Element implements ElementInterface +class Z1921 extends Element { const REG = '1921'; const LEVEL = 5; @@ -38,11 +37,14 @@ class Z1921 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1922.php b/src/Elements/ICMSIPI/Z1922.php index 31a14521..c6cfb0d1 100755 --- a/src/Elements/ICMSIPI/Z1922.php +++ b/src/Elements/ICMSIPI/Z1922.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1922 extends Element implements ElementInterface +class Z1922 extends Element { const REG = '1922'; const LEVEL = 6; @@ -56,11 +55,14 @@ class Z1922 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1923.php b/src/Elements/ICMSIPI/Z1923.php index 23008c57..94b13d5a 100755 --- a/src/Elements/ICMSIPI/Z1923.php +++ b/src/Elements/ICMSIPI/Z1923.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1923 extends Element implements ElementInterface +class Z1923 extends Element { const REG = '1923'; const LEVEL = 6; @@ -82,11 +81,14 @@ class Z1923 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1925.php b/src/Elements/ICMSIPI/Z1925.php index 0647befa..e64cb7d0 100755 --- a/src/Elements/ICMSIPI/Z1925.php +++ b/src/Elements/ICMSIPI/Z1925.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1925 extends Element implements ElementInterface +class Z1925 extends Element { const REG = '1925'; const LEVEL = 5; @@ -39,11 +38,14 @@ class Z1925 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1926.php b/src/Elements/ICMSIPI/Z1926.php index 73837dc6..6f2be417 100755 --- a/src/Elements/ICMSIPI/Z1926.php +++ b/src/Elements/ICMSIPI/Z1926.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1926 extends Element implements ElementInterface +class Z1926 extends Element { const REG = '1926'; const LEVEL = 5; @@ -85,11 +84,13 @@ class Z1926 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); $this->postValidation(); } diff --git a/src/Elements/ICMSIPI/Z1960.php b/src/Elements/ICMSIPI/Z1960.php index 9a866846..beebee0d 100755 --- a/src/Elements/ICMSIPI/Z1960.php +++ b/src/Elements/ICMSIPI/Z1960.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1960 extends Element implements ElementInterface +class Z1960 extends Element { const REG = '1960'; const LEVEL = 2; @@ -102,11 +101,14 @@ class Z1960 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1970.php b/src/Elements/ICMSIPI/Z1970.php index ec4b462a..cc4d1472 100755 --- a/src/Elements/ICMSIPI/Z1970.php +++ b/src/Elements/ICMSIPI/Z1970.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1970 extends Element implements ElementInterface +class Z1970 extends Element { const REG = '1970'; const LEVEL = 2; @@ -94,11 +93,14 @@ class Z1970 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1975.php b/src/Elements/ICMSIPI/Z1975.php index 206e7f67..91400eca 100755 --- a/src/Elements/ICMSIPI/Z1975.php +++ b/src/Elements/ICMSIPI/Z1975.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1975 extends Element implements ElementInterface +class Z1975 extends Element { const REG = '1975'; const LEVEL = 3; @@ -45,11 +44,14 @@ class Z1975 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/src/Elements/ICMSIPI/Z1980.php b/src/Elements/ICMSIPI/Z1980.php index c76f1a69..e162f626 100755 --- a/src/Elements/ICMSIPI/Z1980.php +++ b/src/Elements/ICMSIPI/Z1980.php @@ -3,10 +3,9 @@ namespace NFePHP\EFD\Elements\ICMSIPI; use NFePHP\EFD\Common\Element; -use NFePHP\EFD\Common\ElementInterface; -use \stdClass; +use stdClass; -class Z1980 extends Element implements ElementInterface +class Z1980 extends Element { const REG = '1980'; const LEVEL = 2; @@ -108,11 +107,14 @@ class Z1980 extends Element implements ElementInterface /** * Constructor - * @param \stdClass $std + * @param stdClass $std + * @param stdClass $vigencia */ - public function __construct(\stdClass $std) + public function __construct(stdClass $std, stdClass $vigencia = null) { - parent::__construct(self::REG); + parent::__construct(self::REG, $vigencia); + $this->replaceParams( self::REG); $this->std = $this->standarize($std); + $this->postValidation(); } } diff --git a/storage/layouts/ICMSIPI/v017/H001.json b/storage/layouts/ICMSIPI/v017/H001.json new file mode 100755 index 00000000..aa599b14 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/H001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} diff --git a/storage/structure_EFDICMS_310.txt b/storage/structure_EFDICMS_310.txt old mode 100644 new mode 100755 From ffe6b9069d64444e6124da8335c54b2220199c4f Mon Sep 17 00:00:00 2001 From: robmachado Date: Tue, 4 Apr 2023 16:52:51 -0300 Subject: [PATCH 2/3] Ajustes para versionamento --- storage/layouts/Contribuicoes/v006/0000.json | 93 +++++++ storage/layouts/Contribuicoes/v006/0001.json | 9 + storage/layouts/Contribuicoes/v006/0035.json | 23 ++ storage/layouts/Contribuicoes/v006/0100.json | 93 +++++++ storage/layouts/Contribuicoes/v006/0110.json | 30 ++ storage/layouts/Contribuicoes/v006/0111.json | 37 +++ storage/layouts/Contribuicoes/v006/0120.json | 16 ++ storage/layouts/Contribuicoes/v006/0140.json | 58 ++++ storage/layouts/Contribuicoes/v006/0145.json | 37 +++ storage/layouts/Contribuicoes/v006/0150.json | 86 ++++++ storage/layouts/Contribuicoes/v006/0190.json | 16 ++ storage/layouts/Contribuicoes/v006/0200.json | 79 ++++++ storage/layouts/Contribuicoes/v006/0205.json | 30 ++ storage/layouts/Contribuicoes/v006/0206.json | 9 + storage/layouts/Contribuicoes/v006/0208.json | 23 ++ storage/layouts/Contribuicoes/v006/0400.json | 16 ++ storage/layouts/Contribuicoes/v006/0450.json | 16 ++ storage/layouts/Contribuicoes/v006/0500.json | 58 ++++ storage/layouts/Contribuicoes/v006/0600.json | 23 ++ storage/layouts/Contribuicoes/v006/1001.json | 9 + storage/layouts/Contribuicoes/v006/1010.json | 44 +++ storage/layouts/Contribuicoes/v006/1020.json | 23 ++ storage/layouts/Contribuicoes/v006/1050.json | 128 +++++++++ storage/layouts/Contribuicoes/v006/1100.json | 121 ++++++++ storage/layouts/Contribuicoes/v006/1101.json | 149 ++++++++++ storage/layouts/Contribuicoes/v006/1102.json | 23 ++ storage/layouts/Contribuicoes/v006/1200.json | 72 +++++ storage/layouts/Contribuicoes/v006/1210.json | 72 +++++ storage/layouts/Contribuicoes/v006/1220.json | 30 ++ storage/layouts/Contribuicoes/v006/1300.json | 51 ++++ storage/layouts/Contribuicoes/v006/1500.json | 121 ++++++++ storage/layouts/Contribuicoes/v006/1501.json | 149 ++++++++++ storage/layouts/Contribuicoes/v006/1502.json | 23 ++ storage/layouts/Contribuicoes/v006/1600.json | 72 +++++ storage/layouts/Contribuicoes/v006/1610.json | 72 +++++ storage/layouts/Contribuicoes/v006/1620.json | 30 ++ storage/layouts/Contribuicoes/v006/1700.json | 51 ++++ storage/layouts/Contribuicoes/v006/1800.json | 58 ++++ storage/layouts/Contribuicoes/v006/1809.json | 16 ++ storage/layouts/Contribuicoes/v006/1900.json | 86 ++++++ storage/layouts/Contribuicoes/v006/A001.json | 9 + storage/layouts/Contribuicoes/v006/A010.json | 9 + storage/layouts/Contribuicoes/v006/A100.json | 142 ++++++++++ storage/layouts/Contribuicoes/v006/A110.json | 16 ++ storage/layouts/Contribuicoes/v006/A111.json | 16 ++ storage/layouts/Contribuicoes/v006/A120.json | 58 ++++ storage/layouts/Contribuicoes/v006/A170.json | 121 ++++++++ storage/layouts/Contribuicoes/v006/C001.json | 9 + storage/layouts/Contribuicoes/v006/C010.json | 16 ++ storage/layouts/Contribuicoes/v006/C100.json | 198 +++++++++++++ storage/layouts/Contribuicoes/v006/C110.json | 16 ++ storage/layouts/Contribuicoes/v006/C111.json | 16 ++ storage/layouts/Contribuicoes/v006/C120.json | 37 +++ storage/layouts/Contribuicoes/v006/C170.json | 254 +++++++++++++++++ storage/layouts/Contribuicoes/v006/C175.json | 121 ++++++++ storage/layouts/Contribuicoes/v006/C180.json | 51 ++++ storage/layouts/Contribuicoes/v006/C181.json | 72 +++++ storage/layouts/Contribuicoes/v006/C185.json | 72 +++++ storage/layouts/Contribuicoes/v006/C188.json | 16 ++ storage/layouts/Contribuicoes/v006/C190.json | 51 ++++ storage/layouts/Contribuicoes/v006/C191.json | 79 ++++++ storage/layouts/Contribuicoes/v006/C195.json | 79 ++++++ storage/layouts/Contribuicoes/v006/C198.json | 16 ++ storage/layouts/Contribuicoes/v006/C199.json | 37 +++ storage/layouts/Contribuicoes/v006/C380.json | 51 ++++ storage/layouts/Contribuicoes/v006/C381.json | 65 +++++ storage/layouts/Contribuicoes/v006/C385.json | 65 +++++ storage/layouts/Contribuicoes/v006/C395.json | 51 ++++ storage/layouts/Contribuicoes/v006/C396.json | 93 +++++++ storage/layouts/Contribuicoes/v006/C400.json | 93 +++++++ storage/layouts/Contribuicoes/v006/C405.json | 44 +++ storage/layouts/Contribuicoes/v006/C481.json | 65 +++++ storage/layouts/Contribuicoes/v006/D001.json | 9 + storage/layouts/Contribuicoes/v006/D010.json | 9 + storage/layouts/Contribuicoes/v006/D100.json | 156 +++++++++++ storage/layouts/Contribuicoes/v006/D101.json | 58 ++++ storage/layouts/Contribuicoes/v006/D105.json | 58 ++++ storage/layouts/Contribuicoes/v006/D111.json | 16 ++ storage/layouts/Contribuicoes/v006/D200.json | 72 +++++ storage/layouts/Contribuicoes/v006/D201.json | 44 +++ storage/layouts/Contribuicoes/v006/D205.json | 44 +++ storage/layouts/Contribuicoes/v006/D209.json | 16 ++ storage/layouts/Contribuicoes/v006/D300.json | 128 +++++++++ storage/layouts/Contribuicoes/v006/D309.json | 16 ++ storage/layouts/Contribuicoes/v006/D350.json | 156 +++++++++++ storage/layouts/Contribuicoes/v006/D359.json | 16 ++ storage/layouts/Contribuicoes/v006/D500.json | 149 ++++++++++ storage/layouts/Contribuicoes/v006/D501.json | 51 ++++ storage/layouts/Contribuicoes/v006/D505.json | 51 ++++ storage/layouts/Contribuicoes/v006/D509.json | 16 ++ storage/layouts/Contribuicoes/v006/D600.json | 128 +++++++++ storage/layouts/Contribuicoes/v006/D601.json | 58 ++++ storage/layouts/Contribuicoes/v006/D605.json | 58 ++++ storage/layouts/Contribuicoes/v006/D609.json | 16 ++ storage/layouts/Contribuicoes/v006/F001.json | 9 + storage/layouts/Contribuicoes/v006/F010.json | 9 + storage/layouts/Contribuicoes/v006/F100.json | 128 +++++++++ storage/layouts/Contribuicoes/v006/I001.json | 9 + storage/layouts/Contribuicoes/v006/I010.json | 23 ++ storage/layouts/Contribuicoes/v006/I100.json | 79 ++++++ storage/layouts/Contribuicoes/v006/I199.json | 16 ++ storage/layouts/Contribuicoes/v006/I200.json | 37 +++ storage/layouts/Contribuicoes/v006/I299.json | 16 ++ storage/layouts/Contribuicoes/v006/I300.json | 30 ++ storage/layouts/Contribuicoes/v006/I399.json | 16 ++ storage/layouts/Contribuicoes/v006/M001.json | 9 + storage/layouts/Contribuicoes/v006/M100.json | 100 +++++++ storage/layouts/Contribuicoes/v006/M105.json | 65 +++++ storage/layouts/Contribuicoes/v006/M110.json | 44 +++ storage/layouts/Contribuicoes/v006/M115.json | 58 ++++ storage/layouts/Contribuicoes/v006/M200.json | 86 ++++++ storage/layouts/Contribuicoes/v006/M205.json | 23 ++ storage/layouts/Contribuicoes/v006/M210.json | 107 ++++++++ storage/layouts/Contribuicoes/v006/M211.json | 37 +++ storage/layouts/Contribuicoes/v006/M215.json | 65 +++++ storage/layouts/Contribuicoes/v006/M220.json | 44 +++ storage/layouts/Contribuicoes/v006/M225.json | 58 ++++ storage/layouts/Contribuicoes/v006/M230.json | 44 +++ storage/layouts/Contribuicoes/v006/M300.json | 51 ++++ storage/layouts/Contribuicoes/v006/M350.json | 37 +++ storage/layouts/Contribuicoes/v006/M400.json | 30 ++ storage/layouts/Contribuicoes/v006/M410.json | 30 ++ storage/layouts/Contribuicoes/v006/M500.json | 100 +++++++ storage/layouts/Contribuicoes/v006/M505.json | 65 +++++ storage/layouts/Contribuicoes/v006/M510.json | 44 +++ storage/layouts/Contribuicoes/v006/M515.json | 58 ++++ storage/layouts/Contribuicoes/v006/M600.json | 86 ++++++ storage/layouts/Contribuicoes/v006/M605.json | 23 ++ storage/layouts/Contribuicoes/v006/M610.json | 107 ++++++++ storage/layouts/Contribuicoes/v006/M611.json | 37 +++ storage/layouts/Contribuicoes/v006/M615.json | 65 +++++ storage/layouts/Contribuicoes/v006/M620.json | 44 +++ storage/layouts/Contribuicoes/v006/M625.json | 58 ++++ storage/layouts/Contribuicoes/v006/M630.json | 44 +++ storage/layouts/Contribuicoes/v006/M700.json | 58 ++++ storage/layouts/Contribuicoes/v006/M800.json | 30 ++ storage/layouts/Contribuicoes/v006/M810.json | 30 ++ storage/layouts/Contribuicoes/v006/P001.json | 9 + storage/layouts/Contribuicoes/v006/P010.json | 9 + storage/layouts/Contribuicoes/v006/P100.json | 107 ++++++++ storage/layouts/Contribuicoes/v006/P110.json | 30 ++ storage/layouts/Contribuicoes/v006/P199.json | 16 ++ storage/layouts/Contribuicoes/v006/P200.json | 44 +++ storage/layouts/Contribuicoes/v006/P210.json | 44 +++ storage/layouts/Contribuicoes/vigencias.json | 27 ++ storage/layouts/ICMSIPI/v017/0000.json | 100 +++++++ storage/layouts/ICMSIPI/v017/0001.json | 9 + storage/layouts/ICMSIPI/v017/0002.json | 9 + storage/layouts/ICMSIPI/v017/0005.json | 65 +++++ storage/layouts/ICMSIPI/v017/0015.json | 16 ++ storage/layouts/ICMSIPI/v017/0100.json | 93 +++++++ storage/layouts/ICMSIPI/v017/0150.json | 86 ++++++ storage/layouts/ICMSIPI/v017/0175.json | 23 ++ storage/layouts/ICMSIPI/v017/0190.json | 16 ++ storage/layouts/ICMSIPI/v017/0200.json | 86 ++++++ storage/layouts/ICMSIPI/v017/0205.json | 30 ++ storage/layouts/ICMSIPI/v017/0206.json | 9 + storage/layouts/ICMSIPI/v017/0210.json | 23 ++ storage/layouts/ICMSIPI/v017/0220.json | 23 ++ storage/layouts/ICMSIPI/v017/0221.json | 16 ++ storage/layouts/ICMSIPI/v017/0300.json | 44 +++ storage/layouts/ICMSIPI/v017/0305.json | 23 ++ storage/layouts/ICMSIPI/v017/0400.json | 16 ++ storage/layouts/ICMSIPI/v017/0450.json | 16 ++ storage/layouts/ICMSIPI/v017/0460.json | 16 ++ storage/layouts/ICMSIPI/v017/0500.json | 44 +++ storage/layouts/ICMSIPI/v017/0600.json | 23 ++ storage/layouts/ICMSIPI/v017/1001.json | 9 + storage/layouts/ICMSIPI/v017/1010.json | 93 +++++++ storage/layouts/ICMSIPI/v017/1100.json | 79 ++++++ storage/layouts/ICMSIPI/v017/1105.json | 44 +++ storage/layouts/ICMSIPI/v017/1110.json | 65 +++++ storage/layouts/ICMSIPI/v017/1200.json | 44 +++ storage/layouts/ICMSIPI/v017/1210.json | 30 ++ storage/layouts/ICMSIPI/v017/1250.json | 37 +++ storage/layouts/ICMSIPI/v017/1255.json | 44 +++ storage/layouts/ICMSIPI/v017/1300.json | 72 +++++ storage/layouts/ICMSIPI/v017/1310.json | 65 +++++ storage/layouts/ICMSIPI/v017/1320.json | 72 +++++ storage/layouts/ICMSIPI/v017/1350.json | 30 ++ storage/layouts/ICMSIPI/v017/1360.json | 16 ++ storage/layouts/ICMSIPI/v017/1370.json | 23 ++ storage/layouts/ICMSIPI/v017/1390.json | 9 + storage/layouts/ICMSIPI/v017/1391.json | 114 ++++++++ storage/layouts/ICMSIPI/v017/1400.json | 23 ++ storage/layouts/ICMSIPI/v017/1500.json | 184 +++++++++++++ storage/layouts/ICMSIPI/v017/1510.json | 142 ++++++++++ storage/layouts/ICMSIPI/v017/1600.json | 23 ++ storage/layouts/ICMSIPI/v017/1601.json | 37 +++ storage/layouts/ICMSIPI/v017/1700.json | 51 ++++ storage/layouts/ICMSIPI/v017/1710.json | 16 ++ storage/layouts/ICMSIPI/v017/1800.json | 65 +++++ storage/layouts/ICMSIPI/v017/1900.json | 16 ++ storage/layouts/ICMSIPI/v017/1910.json | 16 ++ storage/layouts/ICMSIPI/v017/1920.json | 86 ++++++ storage/layouts/ICMSIPI/v017/1921.json | 23 ++ storage/layouts/ICMSIPI/v017/1922.json | 37 +++ storage/layouts/ICMSIPI/v017/1923.json | 65 +++++ storage/layouts/ICMSIPI/v017/1925.json | 23 ++ storage/layouts/ICMSIPI/v017/1926.json | 65 +++++ storage/layouts/ICMSIPI/v017/1960.json | 86 ++++++ storage/layouts/ICMSIPI/v017/1970.json | 79 ++++++ storage/layouts/ICMSIPI/v017/1975.json | 30 ++ storage/layouts/ICMSIPI/v017/1980.json | 93 +++++++ storage/layouts/ICMSIPI/v017/B001.json | 9 + storage/layouts/ICMSIPI/v017/B020.json | 142 ++++++++++ storage/layouts/ICMSIPI/v017/B025.json | 44 +++ storage/layouts/ICMSIPI/v017/B030.json | 79 ++++++ storage/layouts/ICMSIPI/v017/B035.json | 44 +++ storage/layouts/ICMSIPI/v017/B350.json | 72 +++++ storage/layouts/ICMSIPI/v017/B420.json | 44 +++ storage/layouts/ICMSIPI/v017/B440.json | 37 +++ storage/layouts/ICMSIPI/v017/B460.json | 51 ++++ storage/layouts/ICMSIPI/v017/B470.json | 100 +++++++ storage/layouts/ICMSIPI/v017/B500.json | 23 ++ storage/layouts/ICMSIPI/v017/B510.json | 37 +++ storage/layouts/ICMSIPI/v017/C001.json | 9 + storage/layouts/ICMSIPI/v017/C100.json | 198 +++++++++++++ storage/layouts/ICMSIPI/v017/C101.json | 23 ++ storage/layouts/ICMSIPI/v017/C105.json | 16 ++ storage/layouts/ICMSIPI/v017/C110.json | 16 ++ storage/layouts/ICMSIPI/v017/C111.json | 16 ++ storage/layouts/ICMSIPI/v017/C112.json | 51 ++++ storage/layouts/ICMSIPI/v017/C113.json | 65 +++++ storage/layouts/ICMSIPI/v017/C114.json | 37 +++ storage/layouts/ICMSIPI/v017/C115.json | 65 +++++ storage/layouts/ICMSIPI/v017/C116.json | 37 +++ storage/layouts/ICMSIPI/v017/C120.json | 37 +++ storage/layouts/ICMSIPI/v017/C130.json | 51 ++++ storage/layouts/ICMSIPI/v017/C140.json | 44 +++ storage/layouts/ICMSIPI/v017/C141.json | 23 ++ storage/layouts/ICMSIPI/v017/C160.json | 44 +++ storage/layouts/ICMSIPI/v017/C165.json | 86 ++++++ storage/layouts/ICMSIPI/v017/C170.json | 261 ++++++++++++++++++ storage/layouts/ICMSIPI/v017/C171.json | 16 ++ storage/layouts/ICMSIPI/v017/C172.json | 23 ++ storage/layouts/ICMSIPI/v017/C173.json | 51 ++++ storage/layouts/ICMSIPI/v017/C174.json | 23 ++ storage/layouts/ICMSIPI/v017/C175.json | 30 ++ storage/layouts/ICMSIPI/v017/C176.json | 184 +++++++++++++ storage/layouts/ICMSIPI/v017/C177.json | 9 + storage/layouts/ICMSIPI/v017/C178.json | 23 ++ storage/layouts/ICMSIPI/v017/C179.json | 37 +++ storage/layouts/ICMSIPI/v017/C180.json | 65 +++++ storage/layouts/ICMSIPI/v017/C185.json | 114 ++++++++ storage/layouts/ICMSIPI/v017/C190.json | 79 ++++++ storage/layouts/ICMSIPI/v017/C191.json | 23 ++ storage/layouts/ICMSIPI/v017/C195.json | 16 ++ storage/layouts/ICMSIPI/v017/C197.json | 51 ++++ storage/layouts/ICMSIPI/v017/C300.json | 72 +++++ storage/layouts/ICMSIPI/v017/C310.json | 9 + storage/layouts/ICMSIPI/v017/C320.json | 58 ++++ storage/layouts/ICMSIPI/v017/C321.json | 65 +++++ storage/layouts/ICMSIPI/v017/C330.json | 86 ++++++ storage/layouts/ICMSIPI/v017/C350.json | 79 ++++++ storage/layouts/ICMSIPI/v017/C370.json | 44 +++ storage/layouts/ICMSIPI/v017/C380.json | 100 +++++++ storage/layouts/ICMSIPI/v017/C390.json | 58 ++++ storage/layouts/ICMSIPI/v017/C400.json | 30 ++ storage/layouts/ICMSIPI/v017/C405.json | 44 +++ storage/layouts/ICMSIPI/v017/C410.json | 16 ++ storage/layouts/ICMSIPI/v017/C420.json | 30 ++ storage/layouts/ICMSIPI/v017/C425.json | 44 +++ storage/layouts/ICMSIPI/v017/C430.json | 100 +++++++ storage/layouts/ICMSIPI/v017/C460.json | 65 +++++ storage/layouts/ICMSIPI/v017/C465.json | 16 ++ storage/layouts/ICMSIPI/v017/C470.json | 72 +++++ storage/layouts/ICMSIPI/v017/C480.json | 100 +++++++ storage/layouts/ICMSIPI/v017/C490.json | 51 ++++ storage/layouts/ICMSIPI/v017/C495.json | 100 +++++++ storage/layouts/ICMSIPI/v017/C500.json | 275 +++++++++++++++++++ storage/layouts/ICMSIPI/v017/C510.json | 142 ++++++++++ storage/layouts/ICMSIPI/v017/C590.json | 72 +++++ storage/layouts/ICMSIPI/v017/C591.json | 16 ++ storage/layouts/ICMSIPI/v017/C600.json | 149 ++++++++++ storage/layouts/ICMSIPI/v017/C601.json | 9 + storage/layouts/ICMSIPI/v017/C610.json | 114 ++++++++ storage/layouts/ICMSIPI/v017/C690.json | 72 +++++ storage/layouts/ICMSIPI/v017/C700.json | 58 ++++ storage/layouts/ICMSIPI/v017/C790.json | 72 +++++ storage/layouts/ICMSIPI/v017/C791.json | 23 ++ storage/layouts/ICMSIPI/v017/C800.json | 114 ++++++++ storage/layouts/ICMSIPI/v017/C810.json | 51 ++++ storage/layouts/ICMSIPI/v017/C815.json | 86 ++++++ storage/layouts/ICMSIPI/v017/C850.json | 51 ++++ storage/layouts/ICMSIPI/v017/C860.json | 37 +++ storage/layouts/ICMSIPI/v017/C870.json | 37 +++ storage/layouts/ICMSIPI/v017/C880.json | 86 ++++++ storage/layouts/ICMSIPI/v017/C890.json | 51 ++++ storage/layouts/ICMSIPI/v017/D001.json | 9 + storage/layouts/ICMSIPI/v017/D100.json | 170 ++++++++++++ storage/layouts/ICMSIPI/v017/D101.json | 23 ++ storage/layouts/ICMSIPI/v017/D110.json | 30 ++ storage/layouts/ICMSIPI/v017/D120.json | 30 ++ storage/layouts/ICMSIPI/v017/D130.json | 93 +++++++ storage/layouts/ICMSIPI/v017/D140.json | 93 +++++++ storage/layouts/ICMSIPI/v017/D150.json | 72 +++++ storage/layouts/ICMSIPI/v017/D160.json | 51 ++++ storage/layouts/ICMSIPI/v017/D161.json | 51 ++++ storage/layouts/ICMSIPI/v017/D162.json | 65 +++++ storage/layouts/ICMSIPI/v017/D170.json | 93 +++++++ storage/layouts/ICMSIPI/v017/D180.json | 114 ++++++++ storage/layouts/ICMSIPI/v017/D190.json | 58 ++++ storage/layouts/ICMSIPI/v017/D195.json | 16 ++ storage/layouts/ICMSIPI/v017/D197.json | 51 ++++ storage/layouts/ICMSIPI/v017/D300.json | 135 +++++++++ storage/layouts/ICMSIPI/v017/D301.json | 9 + storage/layouts/ICMSIPI/v017/D310.json | 30 ++ storage/layouts/ICMSIPI/v017/D350.json | 30 ++ storage/layouts/ICMSIPI/v017/D355.json | 44 +++ storage/layouts/ICMSIPI/v017/D360.json | 16 ++ storage/layouts/ICMSIPI/v017/D365.json | 30 ++ storage/layouts/ICMSIPI/v017/D370.json | 37 +++ storage/layouts/ICMSIPI/v017/D390.json | 72 +++++ storage/layouts/ICMSIPI/v017/D400.json | 107 ++++++++ storage/layouts/ICMSIPI/v017/D410.json | 100 +++++++ storage/layouts/ICMSIPI/v017/D411.json | 9 + storage/layouts/ICMSIPI/v017/D420.json | 30 ++ storage/layouts/ICMSIPI/v017/D500.json | 163 +++++++++++ storage/layouts/ICMSIPI/v017/D510.json | 135 +++++++++ storage/layouts/ICMSIPI/v017/D530.json | 44 +++ storage/layouts/ICMSIPI/v017/D590.json | 72 +++++ storage/layouts/ICMSIPI/v017/D600.json | 121 ++++++++ storage/layouts/ICMSIPI/v017/D610.json | 121 ++++++++ storage/layouts/ICMSIPI/v017/D690.json | 72 +++++ storage/layouts/ICMSIPI/v017/D695.json | 58 ++++ storage/layouts/ICMSIPI/v017/D696.json | 72 +++++ storage/layouts/ICMSIPI/v017/D697.json | 23 ++ storage/layouts/ICMSIPI/v017/E001.json | 9 + storage/layouts/ICMSIPI/v017/E100.json | 16 ++ storage/layouts/ICMSIPI/v017/E110.json | 100 +++++++ storage/layouts/ICMSIPI/v017/E111.json | 23 ++ storage/layouts/ICMSIPI/v017/E112.json | 37 +++ storage/layouts/ICMSIPI/v017/E113.json | 65 +++++ storage/layouts/ICMSIPI/v017/E115.json | 23 ++ storage/layouts/ICMSIPI/v017/E116.json | 65 +++++ storage/layouts/ICMSIPI/v017/E200.json | 23 ++ storage/layouts/ICMSIPI/v017/E210.json | 100 +++++++ storage/layouts/ICMSIPI/v017/E220.json | 23 ++ storage/layouts/ICMSIPI/v017/E230.json | 37 +++ storage/layouts/ICMSIPI/v017/E240.json | 65 +++++ storage/layouts/ICMSIPI/v017/E250.json | 65 +++++ storage/layouts/ICMSIPI/v017/E300.json | 23 ++ storage/layouts/ICMSIPI/v017/E310.json | 149 ++++++++++ storage/layouts/ICMSIPI/v017/E311.json | 23 ++ storage/layouts/ICMSIPI/v017/E312.json | 37 +++ storage/layouts/ICMSIPI/v017/E313.json | 65 +++++ storage/layouts/ICMSIPI/v017/E316.json | 65 +++++ storage/layouts/ICMSIPI/v017/E500.json | 23 ++ storage/layouts/ICMSIPI/v017/E510.json | 37 +++ storage/layouts/ICMSIPI/v017/E520.json | 51 ++++ storage/layouts/ICMSIPI/v017/E530.json | 44 +++ storage/layouts/ICMSIPI/v017/E531.json | 65 +++++ storage/layouts/ICMSIPI/v017/G001.json | 9 + storage/layouts/ICMSIPI/v017/G110.json | 65 +++++ storage/layouts/ICMSIPI/v017/G125.json | 65 +++++ storage/layouts/ICMSIPI/v017/G126.json | 58 ++++ storage/layouts/ICMSIPI/v017/G130.json | 58 ++++ storage/layouts/ICMSIPI/v017/G140.json | 58 ++++ storage/layouts/ICMSIPI/v017/H005.json | 23 ++ storage/layouts/ICMSIPI/v017/H010.json | 72 +++++ storage/layouts/ICMSIPI/v017/H020.json | 23 ++ storage/layouts/ICMSIPI/v017/H030.json | 30 ++ storage/layouts/ICMSIPI/v017/K001.json | 9 + storage/layouts/ICMSIPI/v017/K010.json | 9 + storage/layouts/ICMSIPI/v017/K100.json | 16 ++ storage/layouts/ICMSIPI/v017/K200.json | 37 +++ storage/layouts/ICMSIPI/v017/K210.json | 37 +++ storage/layouts/ICMSIPI/v017/K215.json | 16 ++ storage/layouts/ICMSIPI/v017/K220.json | 37 +++ storage/layouts/ICMSIPI/v017/K230.json | 37 +++ storage/layouts/ICMSIPI/v017/K235.json | 30 ++ storage/layouts/ICMSIPI/v017/K250.json | 23 ++ storage/layouts/ICMSIPI/v017/K255.json | 30 ++ storage/layouts/ICMSIPI/v017/K260.json | 44 +++ storage/layouts/ICMSIPI/v017/K265.json | 23 ++ storage/layouts/ICMSIPI/v017/K270.json | 51 ++++ storage/layouts/ICMSIPI/v017/K275.json | 30 ++ storage/layouts/ICMSIPI/v017/K280.json | 44 +++ storage/layouts/ICMSIPI/v017/K290.json | 23 ++ storage/layouts/ICMSIPI/v017/K291.json | 16 ++ storage/layouts/ICMSIPI/v017/K292.json | 16 ++ storage/layouts/ICMSIPI/v017/K300.json | 9 + storage/layouts/ICMSIPI/v017/K301.json | 16 ++ storage/layouts/ICMSIPI/v017/K302.json | 16 ++ storage/layouts/ICMSIPI/vigencias.json | 82 ++++++ 386 files changed, 20855 insertions(+) create mode 100644 storage/layouts/Contribuicoes/v006/0000.json create mode 100644 storage/layouts/Contribuicoes/v006/0001.json create mode 100644 storage/layouts/Contribuicoes/v006/0035.json create mode 100644 storage/layouts/Contribuicoes/v006/0100.json create mode 100644 storage/layouts/Contribuicoes/v006/0110.json create mode 100644 storage/layouts/Contribuicoes/v006/0111.json create mode 100644 storage/layouts/Contribuicoes/v006/0120.json create mode 100644 storage/layouts/Contribuicoes/v006/0140.json create mode 100644 storage/layouts/Contribuicoes/v006/0145.json create mode 100644 storage/layouts/Contribuicoes/v006/0150.json create mode 100644 storage/layouts/Contribuicoes/v006/0190.json create mode 100644 storage/layouts/Contribuicoes/v006/0200.json create mode 100644 storage/layouts/Contribuicoes/v006/0205.json create mode 100644 storage/layouts/Contribuicoes/v006/0206.json create mode 100644 storage/layouts/Contribuicoes/v006/0208.json create mode 100644 storage/layouts/Contribuicoes/v006/0400.json create mode 100644 storage/layouts/Contribuicoes/v006/0450.json create mode 100644 storage/layouts/Contribuicoes/v006/0500.json create mode 100644 storage/layouts/Contribuicoes/v006/0600.json create mode 100644 storage/layouts/Contribuicoes/v006/1001.json create mode 100644 storage/layouts/Contribuicoes/v006/1010.json create mode 100644 storage/layouts/Contribuicoes/v006/1020.json create mode 100644 storage/layouts/Contribuicoes/v006/1050.json create mode 100644 storage/layouts/Contribuicoes/v006/1100.json create mode 100644 storage/layouts/Contribuicoes/v006/1101.json create mode 100644 storage/layouts/Contribuicoes/v006/1102.json create mode 100644 storage/layouts/Contribuicoes/v006/1200.json create mode 100644 storage/layouts/Contribuicoes/v006/1210.json create mode 100644 storage/layouts/Contribuicoes/v006/1220.json create mode 100644 storage/layouts/Contribuicoes/v006/1300.json create mode 100644 storage/layouts/Contribuicoes/v006/1500.json create mode 100644 storage/layouts/Contribuicoes/v006/1501.json create mode 100644 storage/layouts/Contribuicoes/v006/1502.json create mode 100644 storage/layouts/Contribuicoes/v006/1600.json create mode 100644 storage/layouts/Contribuicoes/v006/1610.json create mode 100644 storage/layouts/Contribuicoes/v006/1620.json create mode 100644 storage/layouts/Contribuicoes/v006/1700.json create mode 100644 storage/layouts/Contribuicoes/v006/1800.json create mode 100644 storage/layouts/Contribuicoes/v006/1809.json create mode 100644 storage/layouts/Contribuicoes/v006/1900.json create mode 100644 storage/layouts/Contribuicoes/v006/A001.json create mode 100644 storage/layouts/Contribuicoes/v006/A010.json create mode 100644 storage/layouts/Contribuicoes/v006/A100.json create mode 100644 storage/layouts/Contribuicoes/v006/A110.json create mode 100644 storage/layouts/Contribuicoes/v006/A111.json create mode 100644 storage/layouts/Contribuicoes/v006/A120.json create mode 100644 storage/layouts/Contribuicoes/v006/A170.json create mode 100644 storage/layouts/Contribuicoes/v006/C001.json create mode 100644 storage/layouts/Contribuicoes/v006/C010.json create mode 100644 storage/layouts/Contribuicoes/v006/C100.json create mode 100644 storage/layouts/Contribuicoes/v006/C110.json create mode 100644 storage/layouts/Contribuicoes/v006/C111.json create mode 100644 storage/layouts/Contribuicoes/v006/C120.json create mode 100644 storage/layouts/Contribuicoes/v006/C170.json create mode 100644 storage/layouts/Contribuicoes/v006/C175.json create mode 100644 storage/layouts/Contribuicoes/v006/C180.json create mode 100644 storage/layouts/Contribuicoes/v006/C181.json create mode 100644 storage/layouts/Contribuicoes/v006/C185.json create mode 100644 storage/layouts/Contribuicoes/v006/C188.json create mode 100644 storage/layouts/Contribuicoes/v006/C190.json create mode 100644 storage/layouts/Contribuicoes/v006/C191.json create mode 100644 storage/layouts/Contribuicoes/v006/C195.json create mode 100644 storage/layouts/Contribuicoes/v006/C198.json create mode 100644 storage/layouts/Contribuicoes/v006/C199.json create mode 100644 storage/layouts/Contribuicoes/v006/C380.json create mode 100644 storage/layouts/Contribuicoes/v006/C381.json create mode 100644 storage/layouts/Contribuicoes/v006/C385.json create mode 100644 storage/layouts/Contribuicoes/v006/C395.json create mode 100644 storage/layouts/Contribuicoes/v006/C396.json create mode 100644 storage/layouts/Contribuicoes/v006/C400.json create mode 100644 storage/layouts/Contribuicoes/v006/C405.json create mode 100644 storage/layouts/Contribuicoes/v006/C481.json create mode 100644 storage/layouts/Contribuicoes/v006/D001.json create mode 100644 storage/layouts/Contribuicoes/v006/D010.json create mode 100644 storage/layouts/Contribuicoes/v006/D100.json create mode 100644 storage/layouts/Contribuicoes/v006/D101.json create mode 100644 storage/layouts/Contribuicoes/v006/D105.json create mode 100644 storage/layouts/Contribuicoes/v006/D111.json create mode 100644 storage/layouts/Contribuicoes/v006/D200.json create mode 100644 storage/layouts/Contribuicoes/v006/D201.json create mode 100644 storage/layouts/Contribuicoes/v006/D205.json create mode 100644 storage/layouts/Contribuicoes/v006/D209.json create mode 100644 storage/layouts/Contribuicoes/v006/D300.json create mode 100644 storage/layouts/Contribuicoes/v006/D309.json create mode 100644 storage/layouts/Contribuicoes/v006/D350.json create mode 100644 storage/layouts/Contribuicoes/v006/D359.json create mode 100644 storage/layouts/Contribuicoes/v006/D500.json create mode 100644 storage/layouts/Contribuicoes/v006/D501.json create mode 100644 storage/layouts/Contribuicoes/v006/D505.json create mode 100644 storage/layouts/Contribuicoes/v006/D509.json create mode 100644 storage/layouts/Contribuicoes/v006/D600.json create mode 100644 storage/layouts/Contribuicoes/v006/D601.json create mode 100644 storage/layouts/Contribuicoes/v006/D605.json create mode 100644 storage/layouts/Contribuicoes/v006/D609.json create mode 100644 storage/layouts/Contribuicoes/v006/F001.json create mode 100644 storage/layouts/Contribuicoes/v006/F010.json create mode 100644 storage/layouts/Contribuicoes/v006/F100.json create mode 100644 storage/layouts/Contribuicoes/v006/I001.json create mode 100644 storage/layouts/Contribuicoes/v006/I010.json create mode 100644 storage/layouts/Contribuicoes/v006/I100.json create mode 100644 storage/layouts/Contribuicoes/v006/I199.json create mode 100644 storage/layouts/Contribuicoes/v006/I200.json create mode 100644 storage/layouts/Contribuicoes/v006/I299.json create mode 100644 storage/layouts/Contribuicoes/v006/I300.json create mode 100644 storage/layouts/Contribuicoes/v006/I399.json create mode 100644 storage/layouts/Contribuicoes/v006/M001.json create mode 100644 storage/layouts/Contribuicoes/v006/M100.json create mode 100644 storage/layouts/Contribuicoes/v006/M105.json create mode 100644 storage/layouts/Contribuicoes/v006/M110.json create mode 100644 storage/layouts/Contribuicoes/v006/M115.json create mode 100644 storage/layouts/Contribuicoes/v006/M200.json create mode 100644 storage/layouts/Contribuicoes/v006/M205.json create mode 100644 storage/layouts/Contribuicoes/v006/M210.json create mode 100644 storage/layouts/Contribuicoes/v006/M211.json create mode 100644 storage/layouts/Contribuicoes/v006/M215.json create mode 100644 storage/layouts/Contribuicoes/v006/M220.json create mode 100644 storage/layouts/Contribuicoes/v006/M225.json create mode 100644 storage/layouts/Contribuicoes/v006/M230.json create mode 100644 storage/layouts/Contribuicoes/v006/M300.json create mode 100644 storage/layouts/Contribuicoes/v006/M350.json create mode 100644 storage/layouts/Contribuicoes/v006/M400.json create mode 100644 storage/layouts/Contribuicoes/v006/M410.json create mode 100644 storage/layouts/Contribuicoes/v006/M500.json create mode 100644 storage/layouts/Contribuicoes/v006/M505.json create mode 100644 storage/layouts/Contribuicoes/v006/M510.json create mode 100644 storage/layouts/Contribuicoes/v006/M515.json create mode 100644 storage/layouts/Contribuicoes/v006/M600.json create mode 100644 storage/layouts/Contribuicoes/v006/M605.json create mode 100644 storage/layouts/Contribuicoes/v006/M610.json create mode 100644 storage/layouts/Contribuicoes/v006/M611.json create mode 100644 storage/layouts/Contribuicoes/v006/M615.json create mode 100644 storage/layouts/Contribuicoes/v006/M620.json create mode 100644 storage/layouts/Contribuicoes/v006/M625.json create mode 100644 storage/layouts/Contribuicoes/v006/M630.json create mode 100644 storage/layouts/Contribuicoes/v006/M700.json create mode 100644 storage/layouts/Contribuicoes/v006/M800.json create mode 100644 storage/layouts/Contribuicoes/v006/M810.json create mode 100644 storage/layouts/Contribuicoes/v006/P001.json create mode 100644 storage/layouts/Contribuicoes/v006/P010.json create mode 100644 storage/layouts/Contribuicoes/v006/P100.json create mode 100644 storage/layouts/Contribuicoes/v006/P110.json create mode 100644 storage/layouts/Contribuicoes/v006/P199.json create mode 100644 storage/layouts/Contribuicoes/v006/P200.json create mode 100644 storage/layouts/Contribuicoes/v006/P210.json create mode 100755 storage/layouts/Contribuicoes/vigencias.json create mode 100755 storage/layouts/ICMSIPI/v017/0000.json create mode 100755 storage/layouts/ICMSIPI/v017/0001.json create mode 100755 storage/layouts/ICMSIPI/v017/0002.json create mode 100755 storage/layouts/ICMSIPI/v017/0005.json create mode 100755 storage/layouts/ICMSIPI/v017/0015.json create mode 100755 storage/layouts/ICMSIPI/v017/0100.json create mode 100755 storage/layouts/ICMSIPI/v017/0150.json create mode 100755 storage/layouts/ICMSIPI/v017/0175.json create mode 100755 storage/layouts/ICMSIPI/v017/0190.json create mode 100755 storage/layouts/ICMSIPI/v017/0200.json create mode 100755 storage/layouts/ICMSIPI/v017/0205.json create mode 100755 storage/layouts/ICMSIPI/v017/0206.json create mode 100755 storage/layouts/ICMSIPI/v017/0210.json create mode 100755 storage/layouts/ICMSIPI/v017/0220.json create mode 100755 storage/layouts/ICMSIPI/v017/0221.json create mode 100755 storage/layouts/ICMSIPI/v017/0300.json create mode 100755 storage/layouts/ICMSIPI/v017/0305.json create mode 100755 storage/layouts/ICMSIPI/v017/0400.json create mode 100755 storage/layouts/ICMSIPI/v017/0450.json create mode 100755 storage/layouts/ICMSIPI/v017/0460.json create mode 100755 storage/layouts/ICMSIPI/v017/0500.json create mode 100755 storage/layouts/ICMSIPI/v017/0600.json create mode 100755 storage/layouts/ICMSIPI/v017/1001.json create mode 100755 storage/layouts/ICMSIPI/v017/1010.json create mode 100755 storage/layouts/ICMSIPI/v017/1100.json create mode 100755 storage/layouts/ICMSIPI/v017/1105.json create mode 100755 storage/layouts/ICMSIPI/v017/1110.json create mode 100755 storage/layouts/ICMSIPI/v017/1200.json create mode 100755 storage/layouts/ICMSIPI/v017/1210.json create mode 100755 storage/layouts/ICMSIPI/v017/1250.json create mode 100755 storage/layouts/ICMSIPI/v017/1255.json create mode 100755 storage/layouts/ICMSIPI/v017/1300.json create mode 100755 storage/layouts/ICMSIPI/v017/1310.json create mode 100755 storage/layouts/ICMSIPI/v017/1320.json create mode 100755 storage/layouts/ICMSIPI/v017/1350.json create mode 100755 storage/layouts/ICMSIPI/v017/1360.json create mode 100755 storage/layouts/ICMSIPI/v017/1370.json create mode 100755 storage/layouts/ICMSIPI/v017/1390.json create mode 100755 storage/layouts/ICMSIPI/v017/1391.json create mode 100755 storage/layouts/ICMSIPI/v017/1400.json create mode 100755 storage/layouts/ICMSIPI/v017/1500.json create mode 100755 storage/layouts/ICMSIPI/v017/1510.json create mode 100755 storage/layouts/ICMSIPI/v017/1600.json create mode 100755 storage/layouts/ICMSIPI/v017/1601.json create mode 100755 storage/layouts/ICMSIPI/v017/1700.json create mode 100755 storage/layouts/ICMSIPI/v017/1710.json create mode 100755 storage/layouts/ICMSIPI/v017/1800.json create mode 100755 storage/layouts/ICMSIPI/v017/1900.json create mode 100755 storage/layouts/ICMSIPI/v017/1910.json create mode 100755 storage/layouts/ICMSIPI/v017/1920.json create mode 100755 storage/layouts/ICMSIPI/v017/1921.json create mode 100755 storage/layouts/ICMSIPI/v017/1922.json create mode 100755 storage/layouts/ICMSIPI/v017/1923.json create mode 100755 storage/layouts/ICMSIPI/v017/1925.json create mode 100755 storage/layouts/ICMSIPI/v017/1926.json create mode 100755 storage/layouts/ICMSIPI/v017/1960.json create mode 100755 storage/layouts/ICMSIPI/v017/1970.json create mode 100755 storage/layouts/ICMSIPI/v017/1975.json create mode 100755 storage/layouts/ICMSIPI/v017/1980.json create mode 100755 storage/layouts/ICMSIPI/v017/B001.json create mode 100755 storage/layouts/ICMSIPI/v017/B020.json create mode 100755 storage/layouts/ICMSIPI/v017/B025.json create mode 100755 storage/layouts/ICMSIPI/v017/B030.json create mode 100755 storage/layouts/ICMSIPI/v017/B035.json create mode 100755 storage/layouts/ICMSIPI/v017/B350.json create mode 100755 storage/layouts/ICMSIPI/v017/B420.json create mode 100755 storage/layouts/ICMSIPI/v017/B440.json create mode 100755 storage/layouts/ICMSIPI/v017/B460.json create mode 100755 storage/layouts/ICMSIPI/v017/B470.json create mode 100755 storage/layouts/ICMSIPI/v017/B500.json create mode 100755 storage/layouts/ICMSIPI/v017/B510.json create mode 100755 storage/layouts/ICMSIPI/v017/C001.json create mode 100755 storage/layouts/ICMSIPI/v017/C100.json create mode 100755 storage/layouts/ICMSIPI/v017/C101.json create mode 100755 storage/layouts/ICMSIPI/v017/C105.json create mode 100755 storage/layouts/ICMSIPI/v017/C110.json create mode 100755 storage/layouts/ICMSIPI/v017/C111.json create mode 100755 storage/layouts/ICMSIPI/v017/C112.json create mode 100755 storage/layouts/ICMSIPI/v017/C113.json create mode 100755 storage/layouts/ICMSIPI/v017/C114.json create mode 100755 storage/layouts/ICMSIPI/v017/C115.json create mode 100755 storage/layouts/ICMSIPI/v017/C116.json create mode 100755 storage/layouts/ICMSIPI/v017/C120.json create mode 100755 storage/layouts/ICMSIPI/v017/C130.json create mode 100755 storage/layouts/ICMSIPI/v017/C140.json create mode 100755 storage/layouts/ICMSIPI/v017/C141.json create mode 100755 storage/layouts/ICMSIPI/v017/C160.json create mode 100755 storage/layouts/ICMSIPI/v017/C165.json create mode 100755 storage/layouts/ICMSIPI/v017/C170.json create mode 100755 storage/layouts/ICMSIPI/v017/C171.json create mode 100755 storage/layouts/ICMSIPI/v017/C172.json create mode 100755 storage/layouts/ICMSIPI/v017/C173.json create mode 100755 storage/layouts/ICMSIPI/v017/C174.json create mode 100755 storage/layouts/ICMSIPI/v017/C175.json create mode 100755 storage/layouts/ICMSIPI/v017/C176.json create mode 100755 storage/layouts/ICMSIPI/v017/C177.json create mode 100755 storage/layouts/ICMSIPI/v017/C178.json create mode 100755 storage/layouts/ICMSIPI/v017/C179.json create mode 100755 storage/layouts/ICMSIPI/v017/C180.json create mode 100755 storage/layouts/ICMSIPI/v017/C185.json create mode 100755 storage/layouts/ICMSIPI/v017/C190.json create mode 100755 storage/layouts/ICMSIPI/v017/C191.json create mode 100755 storage/layouts/ICMSIPI/v017/C195.json create mode 100755 storage/layouts/ICMSIPI/v017/C197.json create mode 100755 storage/layouts/ICMSIPI/v017/C300.json create mode 100755 storage/layouts/ICMSIPI/v017/C310.json create mode 100755 storage/layouts/ICMSIPI/v017/C320.json create mode 100755 storage/layouts/ICMSIPI/v017/C321.json create mode 100755 storage/layouts/ICMSIPI/v017/C330.json create mode 100755 storage/layouts/ICMSIPI/v017/C350.json create mode 100755 storage/layouts/ICMSIPI/v017/C370.json create mode 100755 storage/layouts/ICMSIPI/v017/C380.json create mode 100755 storage/layouts/ICMSIPI/v017/C390.json create mode 100755 storage/layouts/ICMSIPI/v017/C400.json create mode 100755 storage/layouts/ICMSIPI/v017/C405.json create mode 100755 storage/layouts/ICMSIPI/v017/C410.json create mode 100755 storage/layouts/ICMSIPI/v017/C420.json create mode 100755 storage/layouts/ICMSIPI/v017/C425.json create mode 100755 storage/layouts/ICMSIPI/v017/C430.json create mode 100755 storage/layouts/ICMSIPI/v017/C460.json create mode 100755 storage/layouts/ICMSIPI/v017/C465.json create mode 100755 storage/layouts/ICMSIPI/v017/C470.json create mode 100755 storage/layouts/ICMSIPI/v017/C480.json create mode 100755 storage/layouts/ICMSIPI/v017/C490.json create mode 100755 storage/layouts/ICMSIPI/v017/C495.json create mode 100755 storage/layouts/ICMSIPI/v017/C500.json create mode 100755 storage/layouts/ICMSIPI/v017/C510.json create mode 100755 storage/layouts/ICMSIPI/v017/C590.json create mode 100755 storage/layouts/ICMSIPI/v017/C591.json create mode 100755 storage/layouts/ICMSIPI/v017/C600.json create mode 100755 storage/layouts/ICMSIPI/v017/C601.json create mode 100755 storage/layouts/ICMSIPI/v017/C610.json create mode 100755 storage/layouts/ICMSIPI/v017/C690.json create mode 100755 storage/layouts/ICMSIPI/v017/C700.json create mode 100755 storage/layouts/ICMSIPI/v017/C790.json create mode 100755 storage/layouts/ICMSIPI/v017/C791.json create mode 100755 storage/layouts/ICMSIPI/v017/C800.json create mode 100755 storage/layouts/ICMSIPI/v017/C810.json create mode 100755 storage/layouts/ICMSIPI/v017/C815.json create mode 100755 storage/layouts/ICMSIPI/v017/C850.json create mode 100755 storage/layouts/ICMSIPI/v017/C860.json create mode 100755 storage/layouts/ICMSIPI/v017/C870.json create mode 100755 storage/layouts/ICMSIPI/v017/C880.json create mode 100755 storage/layouts/ICMSIPI/v017/C890.json create mode 100755 storage/layouts/ICMSIPI/v017/D001.json create mode 100755 storage/layouts/ICMSIPI/v017/D100.json create mode 100755 storage/layouts/ICMSIPI/v017/D101.json create mode 100755 storage/layouts/ICMSIPI/v017/D110.json create mode 100755 storage/layouts/ICMSIPI/v017/D120.json create mode 100755 storage/layouts/ICMSIPI/v017/D130.json create mode 100755 storage/layouts/ICMSIPI/v017/D140.json create mode 100755 storage/layouts/ICMSIPI/v017/D150.json create mode 100755 storage/layouts/ICMSIPI/v017/D160.json create mode 100755 storage/layouts/ICMSIPI/v017/D161.json create mode 100755 storage/layouts/ICMSIPI/v017/D162.json create mode 100755 storage/layouts/ICMSIPI/v017/D170.json create mode 100755 storage/layouts/ICMSIPI/v017/D180.json create mode 100755 storage/layouts/ICMSIPI/v017/D190.json create mode 100755 storage/layouts/ICMSIPI/v017/D195.json create mode 100755 storage/layouts/ICMSIPI/v017/D197.json create mode 100755 storage/layouts/ICMSIPI/v017/D300.json create mode 100755 storage/layouts/ICMSIPI/v017/D301.json create mode 100755 storage/layouts/ICMSIPI/v017/D310.json create mode 100755 storage/layouts/ICMSIPI/v017/D350.json create mode 100755 storage/layouts/ICMSIPI/v017/D355.json create mode 100755 storage/layouts/ICMSIPI/v017/D360.json create mode 100755 storage/layouts/ICMSIPI/v017/D365.json create mode 100755 storage/layouts/ICMSIPI/v017/D370.json create mode 100755 storage/layouts/ICMSIPI/v017/D390.json create mode 100755 storage/layouts/ICMSIPI/v017/D400.json create mode 100755 storage/layouts/ICMSIPI/v017/D410.json create mode 100755 storage/layouts/ICMSIPI/v017/D411.json create mode 100755 storage/layouts/ICMSIPI/v017/D420.json create mode 100755 storage/layouts/ICMSIPI/v017/D500.json create mode 100755 storage/layouts/ICMSIPI/v017/D510.json create mode 100755 storage/layouts/ICMSIPI/v017/D530.json create mode 100755 storage/layouts/ICMSIPI/v017/D590.json create mode 100755 storage/layouts/ICMSIPI/v017/D600.json create mode 100755 storage/layouts/ICMSIPI/v017/D610.json create mode 100755 storage/layouts/ICMSIPI/v017/D690.json create mode 100755 storage/layouts/ICMSIPI/v017/D695.json create mode 100755 storage/layouts/ICMSIPI/v017/D696.json create mode 100755 storage/layouts/ICMSIPI/v017/D697.json create mode 100755 storage/layouts/ICMSIPI/v017/E001.json create mode 100755 storage/layouts/ICMSIPI/v017/E100.json create mode 100755 storage/layouts/ICMSIPI/v017/E110.json create mode 100755 storage/layouts/ICMSIPI/v017/E111.json create mode 100755 storage/layouts/ICMSIPI/v017/E112.json create mode 100755 storage/layouts/ICMSIPI/v017/E113.json create mode 100755 storage/layouts/ICMSIPI/v017/E115.json create mode 100755 storage/layouts/ICMSIPI/v017/E116.json create mode 100755 storage/layouts/ICMSIPI/v017/E200.json create mode 100755 storage/layouts/ICMSIPI/v017/E210.json create mode 100755 storage/layouts/ICMSIPI/v017/E220.json create mode 100755 storage/layouts/ICMSIPI/v017/E230.json create mode 100755 storage/layouts/ICMSIPI/v017/E240.json create mode 100755 storage/layouts/ICMSIPI/v017/E250.json create mode 100755 storage/layouts/ICMSIPI/v017/E300.json create mode 100755 storage/layouts/ICMSIPI/v017/E310.json create mode 100755 storage/layouts/ICMSIPI/v017/E311.json create mode 100755 storage/layouts/ICMSIPI/v017/E312.json create mode 100755 storage/layouts/ICMSIPI/v017/E313.json create mode 100755 storage/layouts/ICMSIPI/v017/E316.json create mode 100755 storage/layouts/ICMSIPI/v017/E500.json create mode 100755 storage/layouts/ICMSIPI/v017/E510.json create mode 100755 storage/layouts/ICMSIPI/v017/E520.json create mode 100755 storage/layouts/ICMSIPI/v017/E530.json create mode 100755 storage/layouts/ICMSIPI/v017/E531.json create mode 100755 storage/layouts/ICMSIPI/v017/G001.json create mode 100755 storage/layouts/ICMSIPI/v017/G110.json create mode 100755 storage/layouts/ICMSIPI/v017/G125.json create mode 100755 storage/layouts/ICMSIPI/v017/G126.json create mode 100755 storage/layouts/ICMSIPI/v017/G130.json create mode 100755 storage/layouts/ICMSIPI/v017/G140.json create mode 100755 storage/layouts/ICMSIPI/v017/H005.json create mode 100755 storage/layouts/ICMSIPI/v017/H010.json create mode 100755 storage/layouts/ICMSIPI/v017/H020.json create mode 100755 storage/layouts/ICMSIPI/v017/H030.json create mode 100755 storage/layouts/ICMSIPI/v017/K001.json create mode 100755 storage/layouts/ICMSIPI/v017/K010.json create mode 100755 storage/layouts/ICMSIPI/v017/K100.json create mode 100755 storage/layouts/ICMSIPI/v017/K200.json create mode 100755 storage/layouts/ICMSIPI/v017/K210.json create mode 100755 storage/layouts/ICMSIPI/v017/K215.json create mode 100755 storage/layouts/ICMSIPI/v017/K220.json create mode 100755 storage/layouts/ICMSIPI/v017/K230.json create mode 100755 storage/layouts/ICMSIPI/v017/K235.json create mode 100755 storage/layouts/ICMSIPI/v017/K250.json create mode 100755 storage/layouts/ICMSIPI/v017/K255.json create mode 100755 storage/layouts/ICMSIPI/v017/K260.json create mode 100755 storage/layouts/ICMSIPI/v017/K265.json create mode 100755 storage/layouts/ICMSIPI/v017/K270.json create mode 100755 storage/layouts/ICMSIPI/v017/K275.json create mode 100755 storage/layouts/ICMSIPI/v017/K280.json create mode 100755 storage/layouts/ICMSIPI/v017/K290.json create mode 100755 storage/layouts/ICMSIPI/v017/K291.json create mode 100755 storage/layouts/ICMSIPI/v017/K292.json create mode 100755 storage/layouts/ICMSIPI/v017/K300.json create mode 100755 storage/layouts/ICMSIPI/v017/K301.json create mode 100755 storage/layouts/ICMSIPI/v017/K302.json create mode 100755 storage/layouts/ICMSIPI/vigencias.json diff --git a/storage/layouts/Contribuicoes/v006/0000.json b/storage/layouts/Contribuicoes/v006/0000.json new file mode 100644 index 00000000..9854d6b0 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0000.json @@ -0,0 +1,93 @@ +{ + "COD_VER": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo da vers\u00e3o do leiaute conforme a tabela 3.1.1.", + "format": "" + }, + "TIPO_ESCRIT": { + "type": "numeric", + "regex": "^(0|1)$", + "required": false, + "info": "Tipo de escritura\u00e7\u00e3o: 0 - Original; 1 \u2013 Retificadora.", + "format": "" + }, + "IND_SIT_ESP": { + "type": "numeric", + "regex": "^([0-4]{1})$", + "required": false, + "info": "Indicador de situa\u00e7\u00e3o especial: 0 - Abertura 1 - Cis\u00e3o\n 2 - Fus\u00e3o 3 - Incorpora\u00e7\u00e3o 4 \u2013 Encerramento", + "format": "" + }, + "NUM_REC_ANTERIOR": { + "type": "string", + "regex": "^.{41}$", + "required": false, + "info": "N\u00famero do Recibo da Escritura\u00e7\u00e3o anterior\n a ser retificada, utilizado quando TIPO_ESCRIT for igual a 1", + "format": "" + }, + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data inicial das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data final das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + }, + "NOME": { + "type": "string", + "regex": "^.{0,100}$", + "required": false, + "info": "Nome empresarial da pessoa jur\u00eddica", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento matriz da pessoa jur\u00eddica no CNPJ.", + "format": "" + }, + "UF": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Sigla da Unidade da Federa\u00e7\u00e3o da pessoa", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio do domic\u00edlio fiscal da pessoa jur\u00eddica, conforme a tabela IBGE", + "format": "" + }, + "SUFRAMA": { + "type": "string", + "regex": "^.{9}$", + "required": false, + "info": "Inscri\u00e7\u00e3o da pessoa jur\u00eddica na Suframa", + "format": "" + }, + "IND_NAT_PJ": { + "type": "numeric", + "regex": "^(0)([0-5]{1})$", + "required": false, + "info": "Indicador da natureza da pessoa jur\u00eddica:\n 00 \u2013 Pessoa jur\u00eddica em geral 01 \u2013 Sociedade cooperativa 02 \u2013 Entidade sujeita ao PIS\/Pasep\n exclusivamente com base na Folha de Sal\u00e1rios", + "format": "" + }, + "IND_ATIV": { + "type": "numeric", + "regex": "^(0|1|2|3|4|9)$", + "required": false, + "info": "Indicador de tipo de atividade preponderante:\n 0 \u2013 Industrial ou equiparado a industrial; 1 \u2013 Prestador de servi\u00e7os; 2 - Atividade de com\u00e9rcio;\n 3 \u2013 Pessoas jur\u00eddicas referidas nos \u00a7\u00a7 6\u00ba, 8\u00ba e 9\u00ba do art. 3\u00ba da Lei n\u00ba 9.718, de 1998;\n 4 \u2013 Atividade imobili\u00e1ria; 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0001.json b/storage/layouts/Contribuicoes/v006/0001.json new file mode 100644 index 00000000..6ef56d51 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^(\\d{0,1})$", + "required": false, + "info": "Indicador de movimento: 0 - Bloco com dados informados; 1 \u2013 Bloco sem dados informados.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0035.json b/storage/layouts/Contribuicoes/v006/0035.json new file mode 100644 index 00000000..68442af0 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0035.json @@ -0,0 +1,23 @@ +{ + "COD_SCP": { + "type": "numeric", + "regex": "^(\\d{14})$", + "required": false, + "info": "Identifica\u00e7\u00e3o da SCP", + "format": "" + }, + "DESC_SCP": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da SCP", + "format": "" + }, + "INF_COMP": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0100.json b/storage/layouts/Contribuicoes/v006/0100.json new file mode 100644 index 00000000..869eeb34 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0100.json @@ -0,0 +1,93 @@ +{ + "NOME": { + "type": "string", + "regex": "^.{0,100}$", + "required": false, + "info": "Nome do contabilista.", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do contabilista no CPF.", + "format": "" + }, + "CRC": { + "type": "string", + "regex": "^.{0,15}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do contabilista no Conselho Regional de Contabilidade.", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do escrit\u00f3rio de contabilidade no CNPJ, se houver.", + "format": "" + }, + "CEP": { + "type": "numeric", + "regex": "^(\\d{8})$", + "required": false, + "info": "C\u00f3digo de Endere\u00e7amento Postal.", + "format": "" + }, + "END": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Logradouro e endere\u00e7o do im\u00f3vel.", + "format": "" + }, + "NUM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do im\u00f3vel.", + "format": "" + }, + "COMPL": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Dados complementares do endere\u00e7o.", + "format": "" + }, + "BAIRRO": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Bairro em que o im\u00f3vel est\u00e1 situado.", + "format": "" + }, + "FONE": { + "type": "string", + "regex": "^.{0,11}$", + "required": false, + "info": "N\u00famero do telefone.", + "format": "" + }, + "FAX": { + "type": "string", + "regex": "^.{0,11}$", + "required": false, + "info": "N\u00famero do fax.", + "format": "" + }, + "EMAIL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Endere\u00e7o do correio eletr\u00f4nico.", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio, conforme tabela IBGE.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0110.json b/storage/layouts/Contribuicoes/v006/0110.json new file mode 100644 index 00000000..e3f766c3 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0110.json @@ -0,0 +1,30 @@ +{ + "COD_INC_TRIB": { + "type": "numeric", + "regex": "^([1-3]{1})$", + "required": false, + "info": "C\u00f3digo indicador da incid\u00eancia tribut\u00e1ria no per\u00edodo:\n 1 \u2013 Escritura\u00e7\u00e3o de opera\u00e7\u00f5es com incid\u00eancia exclusivamente no regime n\u00e3o-cumulativo;\n 2 \u2013 Escritura\u00e7\u00e3o de opera\u00e7\u00f5es com incid\u00eancia exclusivamente no regime cumulativo;\n 3 \u2013 Escritura\u00e7\u00e3o de opera\u00e7\u00f5es com incid\u00eancia nos regimes n\u00e3o-cumulativo e cumulativo.", + "format": "" + }, + "IND_APRO_CRED": { + "type": "numeric", + "regex": "^([1-2]{1})$", + "required": false, + "info": "C\u00f3digo indicador de m\u00e9todo de apropria\u00e7\u00e3o de cr\u00e9ditos comuns,\n no caso de incid\u00eancia no regime n\u00e3o-cumulativo (COD_INC_TRIB = 1 ou 3):\n 1 \u2013 M\u00e9todo de Apropria\u00e7\u00e3o Direta; 2 \u2013 M\u00e9todo de Rateio Proporcional (Receita Bruta)", + "format": "" + }, + "COD_TIPO_CONT": { + "type": "numeric", + "regex": "^([1-2]{1})$", + "required": false, + "info": "C\u00f3digo indicador do Tipo de Contribui\u00e7\u00e3o Apurada no Per\u00edodo\n 1 \u2013 Apura\u00e7\u00e3o da Contribui\u00e7\u00e3o Exclusivamente a Al\u00edquota B\u00e1sica\n 2 \u2013 Apura\u00e7\u00e3o da Contribui\u00e7\u00e3o a Al\u00edquotas Espec\u00edficas (Diferenciadas e\/ou por\n Unidade de Medida de Produto)", + "format": "" + }, + "IND_REG_CUM": { + "type": "numeric", + "regex": "^(1|2|9)$", + "required": false, + "info": "C\u00f3digo indicador do crit\u00e9rio de escritura\u00e7\u00e3o e apura\u00e7\u00e3o adotado,\n no caso de incid\u00eancia exclusivamente no regime cumulativo (COD_INC_TRIB = 2),\n pela pessoa jur\u00eddica submetida ao regime de tributa\u00e7\u00e3o com base no lucro presumido:\n 1 \u2013 Regime de Caixa \u2013 Escritura\u00e7\u00e3o consolidada (Registro F500);\n 2 \u2013 Regime de Compet\u00eancia - Escritura\u00e7\u00e3o consolidada (Registro F550);\n 9 \u2013 Regime de Compet\u00eancia - Escritura\u00e7\u00e3o detalhada, com base\n nos registros dos Blocos \u201cA\u201d, \u201cC\u201d, \u201cD\u201d e \u201cF\u201d.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0111.json b/storage/layouts/Contribuicoes/v006/0111.json new file mode 100644 index 00000000..a0f0486e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0111.json @@ -0,0 +1,37 @@ +{ + "REC_BRU_NCUM_TRIB_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receita Bruta N\u00e3o-Cumulativa - Tributada no Mercado Interno", + "format": "15v2" + }, + "REC_BRU_NCUM_NT_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receita Bruta N\u00e3o-Cumulativa \u2013 N\u00e3o Tributada no Mercado Interno\n (Vendas com suspens\u00e3o, al\u00edquota zero, isen\u00e7\u00e3o e sem incid\u00eancia das contribui\u00e7\u00f5es)", + "format": "15v2" + }, + "REC_BRU_NCUM_EXP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receita Bruta N\u00e3o-Cumulativa \u2013 Exporta\u00e7\u00e3o", + "format": "15v2" + }, + "REC_BRU_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receita Bruta Cumulativa", + "format": "15v2" + }, + "REC_BRU_TOTAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receita Bruta Total", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0120.json b/storage/layouts/Contribuicoes/v006/0120.json new file mode 100644 index 00000000..e62f03cd --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0120.json @@ -0,0 +1,16 @@ +{ + "MES_REFER": { + "type": "string", + "regex": "^.{6}$", + "required": false, + "info": "M\u00eas de refer\u00eancia do ano-calend\u00e1rio da escritura\u00e7\u00e3o sem dados,\n dispensada da entrega. Campo a ser preenchido no formato \u201cmmaaaa\u201d", + "format": "" + }, + "INF_COMP": { + "type": "string", + "regex": "^.{0,90}$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do registro. No caso de escritura\u00e7\u00e3o sem dados,\n deve ser informado o real motivo dessa situa\u00e7\u00e3o, conforme indicadores abaixo:\n 01 - Pessoa jur\u00eddica imune ou isenta do IRPJ\n 02 - \u00d3rg\u00e3os p\u00fablicos, autarquias e funda\u00e7\u00f5es p\u00fablicas\n 03 - Pessoa jur\u00eddica inativa\n 04 - Pessoa jur\u00eddica em geral, que n\u00e3o realizou opera\u00e7\u00f5es geradoras de receitas\n (tribut\u00e1veis ou n\u00e3o) ou de cr\u00e9ditos\n 05 - Sociedade em Conta de Participa\u00e7\u00e3o - SCP, que n\u00e3o realizou opera\u00e7\u00f5es\n geradoras de receitas (tribut\u00e1veis ou n\u00e3o) ou de cr\u00e9ditos\n 06 - Sociedade Cooperativa, que n\u00e3o realizou opera\u00e7\u00f5es\n geradoras de receitas (tribut\u00e1veis ou n\u00e3o) ou de cr\u00e9ditos\n 07 - Escritura\u00e7\u00e3o decorrente de incorpora\u00e7\u00e3o, fus\u00e3o ou cis\u00e3o, sem opera\u00e7\u00f5es geradoras\n de receitas (tribut\u00e1veis ou n\u00e3o) ou de cr\u00e9ditos\n 99 - Demais hip\u00f3teses de dispensa de escritura\u00e7\u00e3o, relacionadas no art. 5\u00ba,\n da IN RFB n\u00ba 1.252, de 2012", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0140.json b/storage/layouts/Contribuicoes/v006/0140.json new file mode 100644 index 00000000..e2cb92e0 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0140.json @@ -0,0 +1,58 @@ +{ + "COD_EST": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo de identifica\u00e7\u00e3o do estabelecimento", + "format": "" + }, + "NOME": { + "type": "string", + "regex": "^.{0,100}$", + "required": false, + "info": "Nome empresarial do estabelecimento", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ.", + "format": "" + }, + "UF": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Sigla da unidade da federa\u00e7\u00e3o do estabelecimento.", + "format": "" + }, + "IE": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Estadual do estabelecimento, se contribuinte de ICMS.", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio do domic\u00edlio fiscal do estabelecimento, conforme a tabela IBGE", + "format": "" + }, + "IM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Inscri\u00e7\u00e3o Municipal do estabelecimento, se contribuinte do ISS.", + "format": "" + }, + "SUFRAMA": { + "type": "string", + "regex": "^.{9}$", + "required": false, + "info": "Inscri\u00e7\u00e3o do estabelecimento na Suframa", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0145.json b/storage/layouts/Contribuicoes/v006/0145.json new file mode 100644 index 00000000..2418283d --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0145.json @@ -0,0 +1,37 @@ +{ + "COD_INC_TRIB": { + "type": "numeric", + "regex": "^(1|2)$", + "required": false, + "info": "C\u00f3digo indicador da incid\u00eancia tribut\u00e1ria no per\u00edodo:\n 1 \u2013 Contribui\u00e7\u00e3o Previdenci\u00e1ria apurada no per\u00edodo, exclusivamente com base na Receita Bruta;\n 2 \u2013 Contribui\u00e7\u00e3o Previdenci\u00e1ria apurada no per\u00edodo, com base na Receita Bruta e com base nas\n Remunera\u00e7\u00f5es pagas, na forma dos nos incisos I e III do art. 22 da Lei no 8.212, de 1991.", + "format": "" + }, + "VL_REC_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta Total da Pessoa Jur\u00eddica no Per\u00edodo", + "format": "15v2" + }, + "VL_REC_ATIV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta da(s) Atividade(s) Sujeita(s) \u00e0\n Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta", + "format": "15v2" + }, + "VL_REC_DEMAIS_ATIV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta da(s) Atividade(s) n\u00e3o Sujeita(s) \u00e0\n Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta", + "format": "15v2" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0150.json b/storage/layouts/Contribuicoes/v006/0150.json new file mode 100644 index 00000000..3fd484d2 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0150.json @@ -0,0 +1,86 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo de identifica\u00e7\u00e3o do participante no arquivo.", + "format": "" + }, + "NOME": { + "type": "string", + "regex": "^.{0,100}$", + "required": false, + "info": "Nome pessoal ou empresarial do participante.", + "format": "" + }, + "COD_PAIS": { + "type": "numeric", + "regex": "^(\\d{0,5})$", + "required": false, + "info": "C\u00f3digo do pa\u00eds do participante, conforme a tabela indicada no item 3.2.1.", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do participante.", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": false, + "info": "CPF do participante.", + "format": "" + }, + "IE": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Estadual do participante.", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio, conforme a tabela IBGE", + "format": "" + }, + "SUFRAMA": { + "type": "string", + "regex": "^.{9}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do participante na Suframa", + "format": "" + }, + "END": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Logradouro e endere\u00e7o do im\u00f3vel", + "format": "" + }, + "NUM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do im\u00f3vel", + "format": "" + }, + "COMPL": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Dados complementares do endere\u00e7o", + "format": "" + }, + "BAIRRO": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Bairro em que o im\u00f3vel est\u00e1 situado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0190.json b/storage/layouts/Contribuicoes/v006/0190.json new file mode 100644 index 00000000..51eac522 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0190.json @@ -0,0 +1,16 @@ +{ + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da unidade de medida", + "format": "" + }, + "DESCR": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da unidade de medida", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0200.json b/storage/layouts/Contribuicoes/v006/0200.json new file mode 100644 index 00000000..fd84eb6b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0200.json @@ -0,0 +1,79 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item", + "format": "" + }, + "DESCR_ITEM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o do item", + "format": "" + }, + "COD_BARRA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Representa\u00e7\u00e3o alfanum\u00e9rico do c\u00f3digo de barra do produto, se houver.", + "format": "" + }, + "COD_ANT_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo anterior do item com rela\u00e7\u00e3o \u00e0 \u00faltima informa\u00e7\u00e3o apresentada.", + "format": "" + }, + "UNID_INV": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade de medida utilizada na quantifica\u00e7\u00e3o de estoques.", + "format": "" + }, + "TIPO_ITEM": { + "type": "numeric", + "regex": "^(00|01|02|03|04|05|06|07|08|09|10|99)$", + "required": false, + "info": "Tipo do item \u2013 Atividades Industriais, Comerciais e Servi\u00e7os:", + "format": "" + }, + "COD_NCM": { + "type": "string", + "regex": "^.{0,8}$", + "required": false, + "info": "C\u00f3digo da Nomenclatura Comum do Mercosul", + "format": "" + }, + "EX_IPI": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "C\u00f3digo EX, conforme a TIPI", + "format": "" + }, + "COD_GEN": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo do g\u00eanero do item, conforme a Tabela 4.2.1.", + "format": "" + }, + "COD_LST": { + "type": "numeric", + "regex": "^(\\d{0,4})$", + "required": false, + "info": "C\u00f3digo do servi\u00e7o conforme lista do Anexo I da Lei Complementar Federal n\u00ba 116\/03.", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota de ICMS aplic\u00e1vel ao item nas opera\u00e7\u00f5es internas", + "format": "6v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0205.json b/storage/layouts/Contribuicoes/v006/0205.json new file mode 100644 index 00000000..5c11623b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0205.json @@ -0,0 +1,30 @@ +{ + "DESCR_ANT_ITEM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o anterior do item", + "format": "" + }, + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data inicial de utiliza\u00e7\u00e3o da descri\u00e7\u00e3o do item", + "format": "" + }, + "DT_FIM": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data final de utiliza\u00e7\u00e3o da descri\u00e7\u00e3o do item", + "format": "" + }, + "COD_ANT_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo anterior do item com rela\u00e7\u00e3o \u00e0 \u00faltima informa\u00e7\u00e3o apresentada.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0206.json b/storage/layouts/Contribuicoes/v006/0206.json new file mode 100644 index 00000000..51ed91c7 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0206.json @@ -0,0 +1,9 @@ +{ + "COD_COMB": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo do combust\u00edvel, conforme tabela publicada pela ANP", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0208.json b/storage/layouts/Contribuicoes/v006/0208.json new file mode 100644 index 00000000..fcbdf2bb --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0208.json @@ -0,0 +1,23 @@ +{ + "COD_TAB": { + "type": "string", + "regex": "^(0?[1-9]$)|(^1[0-3]$)$", + "required": false, + "info": "C\u00f3digo indicador da Tabela de Incid\u00eancia, conforme Anexo III do Decreto n\u00ba\n 6.707\/08: 01 \u2013 Tabela I 02 \u2013 Tabela II 03 \u2013 Tabela III 04 \u2013 Tabela IV 05 \u2013\n Tabela V 06 \u2013 Tabela VI 07 \u2013 Tabela VII 08\u2013 Tabela VIII 09 \u2013 Tabela IX 10 \u2013\n Tabela X 11 \u2013 Tabela XI 12 \u2013 Tabela XII", + "format": "" + }, + "COD_GRU": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "C\u00f3digo do grupo, conforme Anexo III do Decreto n\u00ba 6.707\/08.", + "format": "" + }, + "MARCA_COM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Marca Comercial", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0400.json b/storage/layouts/Contribuicoes/v006/0400.json new file mode 100644 index 00000000..b438b73d --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0400.json @@ -0,0 +1,16 @@ +{ + "COD_NAT": { + "type": "string", + "regex": "^.{0,10}$", + "required": false, + "info": "C\u00f3digo da natureza da opera\u00e7\u00e3o\/presta\u00e7\u00e3o", + "format": "" + }, + "DESCR_NAT": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da natureza da opera\u00e7\u00e3o\/presta\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0450.json b/storage/layouts/Contribuicoes/v006/0450.json new file mode 100644 index 00000000..1db49fba --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0450.json @@ -0,0 +1,16 @@ +{ + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal.", + "format": "" + }, + "TXT": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Texto livre da informa\u00e7\u00e3o complementar existente no documento fiscal,\n inclusive esp\u00e9cie de normas legais, poder normativo, n\u00famero, capitula\u00e7\u00e3o, data e\n demais refer\u00eancias pertinentes com indica\u00e7\u00e3o referentes ao tributo.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0500.json b/storage/layouts/Contribuicoes/v006/0500.json new file mode 100644 index 00000000..de44e530 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0500.json @@ -0,0 +1,58 @@ +{ + "DT_ALT": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da inclus\u00e3o\/altera\u00e7\u00e3o", + "format": "" + }, + "COD_NAT_CC": { + "type": "string", + "regex": "^(01|02|03|04|05|09)$", + "required": false, + "info": "C\u00f3digo da natureza da conta\/grupo de contas:\n 01 - Contas de ativo 02 - Contas de passivo; 03 - Patrim\u00f4nio l\u00edquido;\n 04 - Contas de resultado; 05 - Contas de compensa\u00e7\u00e3o; 09 - Outras.", + "format": "" + }, + "IND_CTA": { + "type": "string", + "regex": "^(S|A)$", + "required": false, + "info": "Indicador do tipo de conta: S - Sint\u00e9tica (grupo de contas); A - Anal\u00edtica (conta).", + "format": "" + }, + "NIVEL": { + "type": "numeric", + "regex": "^(\\d{0,5})$", + "required": false, + "info": "N\u00edvel da conta anal\u00edtica\/grupo de contas.", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica\/grupo de contas.", + "format": "" + }, + "NOME_CTA": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Nome da conta anal\u00edtica\/grupo de contas.", + "format": "" + }, + "COD_CTA_REF": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo da conta correlacionada no Plano de Contas Referenciado, publicado pela RFB.", + "format": "" + }, + "CNPJ_EST": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do estabelecimento, no caso da conta informada no\n campo COD_CTA ser espec\u00edfica de um estabelecimento.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/0600.json b/storage/layouts/Contribuicoes/v006/0600.json new file mode 100644 index 00000000..6bcc431c --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/0600.json @@ -0,0 +1,23 @@ +{ + "DT_ALT": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da inclus\u00e3o\/altera\u00e7\u00e3o.", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo do centro de custos.", + "format": "" + }, + "CCUS": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Nome do centro de custos.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1001.json b/storage/layouts/Contribuicoes/v006/1001.json new file mode 100644 index 00000000..ed5f6380 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento 0 - Bloco com dados informados 1 - Bloco sem dados informados ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1010.json b/storage/layouts/Contribuicoes/v006/1010.json new file mode 100644 index 00000000..f71fc898 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1010.json @@ -0,0 +1,44 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do N\u00famero do Processo Judicial ", + "format": "" + }, + "ID_SEC_JUD": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Identifica\u00e7\u00e3o da Se\u00e7\u00e3o Judici\u00e1ria ", + "format": "" + }, + "ID_VARA": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "Identifica\u00e7\u00e3o da Vara ", + "format": "" + }, + "IND_NAT_ACAO": { + "type": "string", + "regex": "^(01|02|03|04|05|06|07|08|09|99)$", + "required": false, + "info": "Indicador da Natureza da A\u00e7\u00e3o Judicial, impetrada na Justi\u00e7a Federal 01 \u2013 Decis\u00e3o judicial transitada em julgado, a favor da pessoa jur\u00eddica. 02 \u2013 Decis\u00e3o judicial n\u00e3o transitada em julgado, a favor da pessoa jur\u00eddica. 03 \u2013 Decis\u00e3o judicial oriunda de liminar em mandado de seguran\u00e7a. 04 \u2013 Decis\u00e3o judicial oriunda de liminar em medida cautelar. 05 \u2013 Decis\u00e3o judicial oriunda de antecipa\u00e7\u00e3o de tutela. 06 - Decis\u00e3o judicial vinculada a dep\u00f3sito ", + "format": "" + }, + "DESC_DEC_JUD": { + "type": "string", + "regex": "^.{0,100}$", + "required": false, + "info": "Descri\u00e7\u00e3o Resumida dos Efeitos Tribut\u00e1rios abrangidos pela Decis\u00e3o Judicial proferida. ", + "format": "" + }, + "DT_SENT_JUD": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da Senten\u00e7a\/Decis\u00e3o Judicial ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1020.json b/storage/layouts/Contribuicoes/v006/1020.json new file mode 100644 index 00000000..ed65e1fc --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1020.json @@ -0,0 +1,23 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do Processo Administrativo ou da Decis\u00e3o Administrativa ", + "format": "" + }, + "IND_NAT_ACAO": { + "type": "string", + "regex": "^(01|02|03|04|05|06|99)$", + "required": false, + "info": "Indicador da Natureza da A\u00e7\u00e3o, decorrente de Processo Administrativo na Secretaria da Receita Federal do Brasil 01 \u2013 Processo Administrativo de Consulta 02 \u2013 Despacho Decis\u00f3rio 03 \u2013 Ato Declarat\u00f3rio Executivo 04 \u2013 Ato Declarat\u00f3rio Interpretativo 05 \u2013 Decis\u00e3o Administrativa de DRJ ou do CARF 06 \u2013 Auto de Infra\u00e7\u00e3o 99 \u2013 Outros ", + "format": "" + }, + "DT_DEC_ADM": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do Despacho\/Decis\u00e3o Administrativa ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1050.json b/storage/layouts/Contribuicoes/v006/1050.json new file mode 100644 index 00000000..2b8bdb80 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1050.json @@ -0,0 +1,128 @@ +{ + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa)", + "format": "" + }, + "IND_AJ_BC": { + "type": "string", + "regex": "", + "required": true, + "info": "Indicador da natureza do ajuste da base de c\u00e1lculo, conforme Tabela Externa 4.3.18", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ do estabelecimento a que se refere o ajuste", + "format": "" + }, + "VL_AJ_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ajuste", + "format": "15v2" + }, + "VL_AJ_CST01": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 01", + "format": "15v2" + }, + "VL_AJ_CST02": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 02", + "format": "15v2" + }, + "VL_AJ_CST03": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 03", + "format": "15v2" + }, + "VL_AJ_CST04": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 04", + "format": "15v2" + }, + "VL_AJ_CST05": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 05", + "format": "15v2" + }, + "VL_AJ_CST06": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 06", + "format": "15v2" + }, + "VL_AJ_CST07": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 07", + "format": "15v2" + }, + "VL_AJ_CST08": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 08", + "format": "15v2" + }, + "VL_AJ_CST09": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 09", + "format": "15v2" + }, + "VL_AJ_CST49": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 49", + "format": "15v2" + }, + "VL_AJ_CST99": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela do ajuste a apropriar na base de c\u00e1lculo referente ao CST 99", + "format": "15v2" + }, + "IND_APROP": { + "type": "string", + "regex": "^(01|02|03)$", + "required": true, + "info": "Indicador de apropria\u00e7\u00e3o do ajuste: 01 \u2013 Referente ao PIS\/Pasep e a Cofins 02 \u2013 Referente unicamente ao PIS\/Pasep 03 \u2013 Referente unicamente \u00e0 Cofins", + "format": "" + }, + "NUM_REC": { + "type": "string", + "regex": "^.{1,80}$", + "required": false, + "info": "", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1100.json b/storage/layouts/Contribuicoes/v006/1100.json new file mode 100644 index 00000000..7032dd7f --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1100.json @@ -0,0 +1,121 @@ +{ + "PER_APU_CRED": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o do Cr\u00e9dito (MM\/AAAA) ", + "format": "" + }, + "ORIG_CRED": { + "type": "numeric", + "regex": "^(1|2)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 01 \u2013 Cr\u00e9dito decorrente de opera\u00e7\u00f5es pr\u00f3prias 02 \u2013 Cr\u00e9dito transferido por pessoa jur\u00eddica sucedida. ", + "format": "" + }, + "CNPJ_SUC": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da pessoa jur\u00eddica cedente do cr\u00e9dito (se ORIG_CRED = 02). ", + "format": "" + }, + "COD_CRED": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo do Tipo do Cr\u00e9dito, conforme Tabela 4.3.6. ", + "format": "" + }, + "VL_CRED_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do cr\u00e9dito apurado na Escritura\u00e7\u00e3o Fiscal Digital (Registro M100) ou em demonstrativo DACON (Fichas 06A e 06B) de per\u00edodo anterior. ", + "format": "15v2" + }, + "VL_CRED_EXT_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Cr\u00e9dito Extempor\u00e2neo Apurado (Registro 1101), referente a Per\u00edodo Anterior, Informado no Campo 02 \u2013 PER_APU_CRED ", + "format": "15v2" + }, + "VL_TOT_CRED_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Cr\u00e9dito Apurado (06 + 07) ", + "format": "15v2" + }, + "VL_CRED_DESC_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Desconto, em Per\u00edodo(s) Anterior(es). ", + "format": "15v2" + }, + "VL_CRED_PER_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Pedido de Ressarcimento, em Per\u00edodo(s) Anterior(es). ", + "format": "15v2" + }, + "VL_CRED_DCOMP_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o Intermedi\u00e1ria (Cr\u00e9dito de Exporta\u00e7\u00e3o), em Per\u00edodo(s) Anterior(es). ", + "format": "15v2" + }, + "SD_CRED_DISP_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo do Cr\u00e9dito Dispon\u00edvel para Utiliza\u00e7\u00e3o neste Per\u00edodo de Escritura\u00e7\u00e3o (08 \u2013 09 \u2013 10 - 11). ", + "format": "15v2" + }, + "VL_CRED_DESC_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito descontado neste per\u00edodo de escritura\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_CRED_PER_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito objeto de Pedido de Ressarcimento (PER) neste per\u00edodo de escritura\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_CRED_DCOMP_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o Intermedi\u00e1ria neste per\u00edodo de escritura\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_CRED_TRANS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito transferido em evento de cis\u00e3o, fus\u00e3o ou incorpora\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_CRED_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito utilizado por outras formas. ", + "format": "15v2" + }, + "SLD_CRED_FIM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de cr\u00e9ditos a utilizar em per\u00edodo de apura\u00e7\u00e3o futuro (12 \u2013 13 \u2013 14 \u2013 15 \u2013 16 - 17). ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1101.json b/storage/layouts/Contribuicoes/v006/1101.json new file mode 100644 index 00000000..60a9abef --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1101.json @@ -0,0 +1,149 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (Campo 02 do Registro 0150) ", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200) ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1. ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB_SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal ", + "format": "" + }, + "DT_OPER": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da Opera\u00e7\u00e3o (ddmmaaaa) ", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletr\u00f4nica ", + "format": "" + }, + "VL_OPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Opera\u00e7\u00e3o ", + "format": "15v2" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o ", + "format": "" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7. ", + "format": "" + }, + "IND_ORIG_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 0 \u2013 Opera\u00e7\u00e3o no Mercado Interno 1 \u2013 Opera\u00e7\u00e3o de Importa\u00e7\u00e3o ", + "format": "" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP, conforme a Tabela indicada no item 4.3.3. ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de C\u00e1lculo do Cr\u00e9dito de PIS\/PASEP (em valor ou em quantidade). ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual ou em reais). ", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito de PIS\/PASEP. ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada. ", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo do Centro de Custos. ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do Documento\/Opera\u00e7\u00e3o. ", + "format": "" + }, + "PER_ESCRIT": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "M\u00eas\/Ano da Escritura\u00e7\u00e3o em que foi registrado o documento\/opera\u00e7\u00e3o (Cr\u00e9dito pelo m\u00e9todo da Apropria\u00e7\u00e3o Direta). ", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do estabelecimento gerador do cr\u00e9dito extempor\u00e2neo (Campo 04 do Registro 0140) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1102.json b/storage/layouts/Contribuicoes/v006/1102.json new file mode 100644 index 00000000..bb0f84a2 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1102.json @@ -0,0 +1,23 @@ +{ + "VL_CRED_PIS_TRIB_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de PIS\/PASEP, vinculada a Receita Tributada no Mercado Interno ", + "format": "15v2" + }, + "VL_CRED_PIS_NT_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de PIS\/PASEP, vinculada a Receita N\u00e3o Tributada no Mercado Interno ", + "format": "15v2" + }, + "VL_CRED_PIS_EXP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de PIS\/PASEP, vinculada a Receita de Exporta\u00e7\u00e3o ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1200.json b/storage/layouts/Contribuicoes/v006/1200.json new file mode 100644 index 00000000..ed4d2a82 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1200.json @@ -0,0 +1,72 @@ +{ + "PER_APUR_ANT": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o da Contribui\u00e7\u00e3o Social Extempor\u00e2nea (MMAAAA). ", + "format": "" + }, + "NAT_CONT_REC": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "Natureza da Contribui\u00e7\u00e3o a Recolher, conforme Tabela 4.3.5. ", + "format": "" + }, + "VL_CONT_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Apurada. ", + "format": "15v2" + }, + "VL_CRED_PIS_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito de PIS\/PASEP a Descontar, da Contribui\u00e7\u00e3o Social Extempor\u00e2nea. ", + "format": "15v2" + }, + "VL_CONT_DEV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Social Extempor\u00e2nea Devida. ", + "format": "15v2" + }, + "VL_OUT_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Outras Dedu\u00e7\u00f5es. ", + "format": "15v2" + }, + "VL_CONT_EXT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Social Extempor\u00e2nea a pagar. ", + "format": "15v2" + }, + "VL_MUL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Multa. ", + "format": "15v2" + }, + "VL_JUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor dos Juros. ", + "format": "15v2" + }, + "DT_RECOL": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do Recolhimento. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1210.json b/storage/layouts/Contribuicoes/v006/1210.json new file mode 100644 index 00000000..f4723cbd --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1210.json @@ -0,0 +1,72 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ (Campo 04 do Registro 0140). ", + "format": "" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP, conforme a Tabela indicada no item 4.3.3. ", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (Campo 02 do Registro 0150) ", + "format": "" + }, + "DT_OPER": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da Opera\u00e7\u00e3o (ddmmaaaa) ", + "format": "" + }, + "VL_OPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Opera\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo do PIS\/PASEP (em valor ou em quantidade) ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da PIS (em percentual ou em reais) ", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do Documento\/Opera\u00e7\u00e3o ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1220.json b/storage/layouts/Contribuicoes/v006/1220.json new file mode 100644 index 00000000..46fc4164 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1220.json @@ -0,0 +1,30 @@ +{ + "PER_APU_CRED": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o do Cr\u00e9dito (MM\/AAAA) ", + "format": "" + }, + "ORIG_CRED": { + "type": "numeric", + "regex": "^(1|2)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 01 \u2013 Cr\u00e9dito decorrente de opera\u00e7\u00f5es pr\u00f3prias 02 \u2013 Cr\u00e9dito transferido por pessoa jur\u00eddica sucedida. ", + "format": "" + }, + "COD_CRED": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo do Tipo do Cr\u00e9dito, conforme Tabela 4.3.6. ", + "format": "" + }, + "VL_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito a Descontar ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1300.json b/storage/layouts/Contribuicoes/v006/1300.json new file mode 100644 index 00000000..3758ad52 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1300.json @@ -0,0 +1,51 @@ +{ + "IND_NAT_RET": { + "type": "numeric", + "regex": "^(1|2|3|4|5|9|1|2|3|4|5|9|1|2|3|4|5|9)$", + "required": false, + "info": "Indicador de Natureza da Reten\u00e7\u00e3o na Fonte", + "format": "" + }, + "PR_REC_RET": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "Per\u00edodo do Recebimento e da Reten\u00e7\u00e3o (MM\/AAAA) ", + "format": "" + }, + "VL_RET_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Reten\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_RET_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o deduzida da Contribui\u00e7\u00e3o devida no per\u00edodo da escritura\u00e7\u00e3o e em per\u00edodos anteriores. ", + "format": "15v2" + }, + "VL_RET_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o utilizada mediante Pedido de Restitui\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_RET_DCOMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o utilizada mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o. ", + "format": "15v2" + }, + "SLD_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de Reten\u00e7\u00e3o a utilizar em per\u00edodos de apura\u00e7\u00e3o futuros (04 \u2013 05 - 06 - 07). ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1500.json b/storage/layouts/Contribuicoes/v006/1500.json new file mode 100644 index 00000000..13957cf5 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1500.json @@ -0,0 +1,121 @@ +{ + "PER_APU_CRED": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o do Cr\u00e9dito (MM\/AAAA) ", + "format": "" + }, + "ORIG_CRED": { + "type": "numeric", + "regex": "^(01|02)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 01 \u2013 Cr\u00e9dito decorrente de opera\u00e7\u00f5es pr\u00f3prias 02 \u2013 Cr\u00e9dito transferido por pessoa jur\u00eddica sucedida. ", + "format": "" + }, + "CNPJ_SUC": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da pessoa jur\u00eddica cedente do cr\u00e9dito (se ORIG_CRED = 02). ", + "format": "" + }, + "COD_CRED": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo do Tipo do Cr\u00e9dito, conforme Tabela 4.3.6. ", + "format": "" + }, + "VL_CRED_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do cr\u00e9dito apurado na Escritura\u00e7\u00e3o Fiscal Digital (Registro M500) ou em demonstrativo DACON (Fichas 16A e 16B) de per\u00edodo anterior. ", + "format": "15v2" + }, + "VL_CRED_EXT_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Cr\u00e9dito Extempor\u00e2neo Apurado (Registro 1501), referente a Per\u00edodo Anterior, Informado no Campo 02 \u2013 PER_APU_CRED ", + "format": "15v2" + }, + "VL_TOT_CRED_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Cr\u00e9dito Apurado (06 + 07) ", + "format": "15v2" + }, + "VL_CRED_DESC_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Desconto, em Per\u00edodo(s) Anterior(es) ", + "format": "15v2" + }, + "VL_CRED_PER_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Pedido de Ressarcimento, em Per\u00edodo(s) Anterior(es). ", + "format": "15v2" + }, + "VL_CRED_DCOMP_PA_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o Intermedi\u00e1ria (Cr\u00e9dito de Exporta\u00e7\u00e3o), em Per\u00edodo(s) Anterior(es) ", + "format": "15v2" + }, + "SD_CRED_DISP_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo do Cr\u00e9dito Dispon\u00edvel para Utiliza\u00e7\u00e3o neste Per\u00edodo de Escritura\u00e7\u00e3o (08-09-10-11) ", + "format": "15v2" + }, + "VL_CRED_DESC_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito descontado neste per\u00edodo de escritura\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_PER_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito objeto de Pedido de Ressarcimento (PER) neste per\u00edodo de escritura\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_DCOMP_EFD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito utilizado mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o Intermedi\u00e1ria neste per\u00edodo de escritura\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_TRANS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito transferido em evento de cis\u00e3o, fus\u00e3o ou incorpora\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito utilizado por outras formas ", + "format": "15v2" + }, + "SLD_CRED_FIM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de cr\u00e9ditos a utilizar em per\u00edodo de apura\u00e7\u00e3o futuro (12-13-14-15-16-17). ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1501.json b/storage/layouts/Contribuicoes/v006/1501.json new file mode 100644 index 00000000..9664cb64 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1501.json @@ -0,0 +1,149 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (Campo 02 do Registro 0150) ", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200) ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1. ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB_SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal ", + "format": "" + }, + "DT_OPER": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da Opera\u00e7\u00e3o (ddmmaaaa) ", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletr\u00f4nica ", + "format": "" + }, + "VL_OPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Opera\u00e7\u00e3o ", + "format": "15v2" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o ", + "format": "" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7. ", + "format": "" + }, + "IND_ORIG_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 0 \u2013 Opera\u00e7\u00e3o no Mercado Interno 1 \u2013 Opera\u00e7\u00e3o de Importa\u00e7\u00e3o ", + "format": "" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao COFINS, conforme a Tabela indicada no item 4.3.4. ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de C\u00e1lculo do Cr\u00e9dito de COFINS (em valor ou em quantidade) ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual ou em reais) ", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito de COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo do Centro de Custos ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do Documento\/Opera\u00e7\u00e3o ", + "format": "" + }, + "PER_ESCRIT": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "M\u00eas\/Ano da Escritura\u00e7\u00e3o em que foi registrado o documento\/opera\u00e7\u00e3o (Cr\u00e9dito pelo m\u00e9todo da Apropria\u00e7\u00e3o Direta). ", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do estabelecimento gerador do cr\u00e9dito extempor\u00e2neo (Campo 04 do Registro 0140) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1502.json b/storage/layouts/Contribuicoes/v006/1502.json new file mode 100644 index 00000000..69e427de --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1502.json @@ -0,0 +1,23 @@ +{ + "VL_CRED_COFINS_TRIB_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de COFINS, vinculada a Receita Tributada no Mercado Interno ", + "format": "15v2" + }, + "VL_CRED_COFINS_NT_MI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de COFINS, vinculada a Receita N\u00e3o Tributada no Mercado Interno ", + "format": "15v2" + }, + "VL_CRED_COFINS_EXP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Cr\u00e9dito de COFINS, vinculada a Receita de Exporta\u00e7\u00e3o ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1600.json b/storage/layouts/Contribuicoes/v006/1600.json new file mode 100644 index 00000000..5bde5af5 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1600.json @@ -0,0 +1,72 @@ +{ + "PER_APUR_ANT": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o da Contribui\u00e7\u00e3o Social Extempor\u00e2nea (MMAAAA) ", + "format": "" + }, + "NAT_CONT_REC": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "Natureza da Contribui\u00e7\u00e3o a Recolher, conforme Tabela 4.3.5. ", + "format": "" + }, + "VL_CONT_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Apurada ", + "format": "15v2" + }, + "VL_CRED_COFINS_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito de COFINS a Descontar, da Contribui\u00e7\u00e3o Social Extempor\u00e2nea. ", + "format": "15v2" + }, + "VL_CONT_DEV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Social Extempor\u00e2nea Devida. ", + "format": "15v2" + }, + "VL_OUT_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Outras Dedu\u00e7\u00f5es. ", + "format": "15v2" + }, + "VL_CONT_EXT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Social Extempor\u00e2nea a pagar. ", + "format": "15v2" + }, + "VL_MUL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Multa. ", + "format": "15v2" + }, + "VL_JUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor dos Juros. ", + "format": "15v2" + }, + "DT_RECOL": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do Recolhimento. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1610.json b/storage/layouts/Contribuicoes/v006/1610.json new file mode 100644 index 00000000..3a1794f0 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1610.json @@ -0,0 +1,72 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ (Campo 04 do Registro 0140). ", + "format": "" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS, conforme a Tabela indicada no item 4.3.4. ", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (Campo 02 do Registro 0150) ", + "format": "" + }, + "DT_OPER": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da Opera\u00e7\u00e3o (ddmmaaaa) ", + "format": "" + }, + "VL_OPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Opera\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo da COFINS (em valor ou em quantidade) ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual ou em reais) ", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do Documento\/Opera\u00e7\u00e3o ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1620.json b/storage/layouts/Contribuicoes/v006/1620.json new file mode 100644 index 00000000..46fc4164 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1620.json @@ -0,0 +1,30 @@ +{ + "PER_APU_CRED": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "Per\u00edodo de Apura\u00e7\u00e3o do Cr\u00e9dito (MM\/AAAA) ", + "format": "" + }, + "ORIG_CRED": { + "type": "numeric", + "regex": "^(1|2)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito 01 \u2013 Cr\u00e9dito decorrente de opera\u00e7\u00f5es pr\u00f3prias 02 \u2013 Cr\u00e9dito transferido por pessoa jur\u00eddica sucedida. ", + "format": "" + }, + "COD_CRED": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo do Tipo do Cr\u00e9dito, conforme Tabela 4.3.6. ", + "format": "" + }, + "VL_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito a Descontar ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1700.json b/storage/layouts/Contribuicoes/v006/1700.json new file mode 100644 index 00000000..38860a6d --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1700.json @@ -0,0 +1,51 @@ +{ + "IND_NAT_RET": { + "type": "numeric", + "regex": "^(01|02|03|04|05|09)$", + "required": false, + "info": "Indicador de Natureza da Reten\u00e7\u00e3o na Fonte at\u00e9 2013 01 - Reten\u00e7\u00e3o por \u00d3rg\u00e3os, Autarquias e Funda\u00e7\u00f5es Federais 02 - Reten\u00e7\u00e3o por outras Entidades da Administra\u00e7\u00e3o P\u00fablica Federal 03 - Reten\u00e7\u00e3o por Pessoas Jur\u00eddicas de Direito Privado 04 - Recolhimento por Sociedade Cooperativa 05 - Reten\u00e7\u00e3o por Fabricante de M\u00e1quinas e Ve\u00edculos 99 - Outras Reten\u00e7\u00f5es ", + "format": "" + }, + "PR_REC_RET": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo do Recebimento e da Reten\u00e7\u00e3o (MM\/AAAA) ", + "format": "" + }, + "VL_RET_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Reten\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_RET_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o deduzida da Contribui\u00e7\u00e3o devida no per\u00edodo da escritura\u00e7\u00e3o e em per\u00edodos anteriores. ", + "format": "15v2" + }, + "VL_RET_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o utilizada mediante Pedido de Restitui\u00e7\u00e3o. ", + "format": "15v2" + }, + "VL_RET_DCOMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Reten\u00e7\u00e3o utilizada mediante Declara\u00e7\u00e3o de Compensa\u00e7\u00e3o. ", + "format": "15v2" + }, + "SLD_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de Reten\u00e7\u00e3o a utilizar em per\u00edodos de apura\u00e7\u00e3o futuros (04 - 05 - 06 - 07). ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1800.json b/storage/layouts/Contribuicoes/v006/1800.json new file mode 100644 index 00000000..b3f80545 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1800.json @@ -0,0 +1,58 @@ +{ + "INC_IMOB": { + "type": "string", + "regex": "^.{0,90}$", + "required": false, + "info": "Empreendimento objeto de Incorpora\u00e7\u00e3o Imobili\u00e1ria, optante pelo RET. ", + "format": "" + }, + "REC_RECEB_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receitas recebidas pela incorporadora na venda das unidades imobili\u00e1rias que comp\u00f5em a incorpora\u00e7\u00e3o. ", + "format": "15v2" + }, + "REC_FIN_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Receitas Financeiras e Varia\u00e7\u00f5es Monet\u00e1rias decorrentes das vendas submetidas ao RET. ", + "format": "15v2" + }, + "BC_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de C\u00e1lculo do Recolhimento Unificado ", + "format": "15v2" + }, + "ALIQ_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do Recolhimento Unificado. ", + "format": "6v2" + }, + "VL_REC_UNI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Recolhimento Unificado. ", + "format": "15v2" + }, + "DT_REC_UNI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do recolhimento unificado ", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "C\u00f3digo da Receita ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1809.json b/storage/layouts/Contribuicoes/v006/1809.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1809.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/1900.json b/storage/layouts/Contribuicoes/v006/1900.json new file mode 100644 index 00000000..d1c2af4c --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/1900.json @@ -0,0 +1,86 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do estabelecimento da pessoa jur\u00eddica, emitente dos documentos geradores de receita ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(98|99)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal conforme a Tabela 4.1.1, ou 98 \u2013 Nota Fiscal de Presta\u00e7\u00e3o de Servi\u00e7os (ISSQN) 99 \u2013 Outros Documentos ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB_SER": { + "type": "numeric", + "regex": "^(\\d{0,20})$", + "required": false, + "info": "Subserie do documento fiscal ", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|02|09)$", + "required": false, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal 00 \u2013 Documento regular 02 \u2013 Documento cancelado 99 \u2013 Outros ", + "format": "" + }, + "VL_TOT_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da receita, conforme os documentos emitidos no per\u00edodo, representativos da venda de bens e servi\u00e7os ", + "format": "15v2" + }, + "QUANT_DOC": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": false, + "info": "Quantidade total de documentos emitidos no per\u00edodo ", + "format": "" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria do PIS\/Pasep ", + "format": "" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria da Cofins ", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o ", + "format": "" + }, + "INF_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00f5es complementares ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil representativa da receita ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A001.json b/storage/layouts/Contribuicoes/v006/A001.json new file mode 100644 index 00000000..6fb81e32 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento: 0 - Bloco com dados informados; 1 - Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A010.json b/storage/layouts/Contribuicoes/v006/A010.json new file mode 100644 index 00000000..8cd2cb02 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A010.json @@ -0,0 +1,9 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A100.json b/storage/layouts/Contribuicoes/v006/A100.json new file mode 100644 index 00000000..145cf1d9 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A100.json @@ -0,0 +1,142 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de opera\u00e7\u00e3o:", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^.{1}$", + "required": false, + "info": "Indicador do emitente do documento fiscal: 0 - Emiss\u00e3o Pr\u00f3pria; 1 - Emiss\u00e3o de Terceiros", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):\n - do emitente do documento, no caso de emiss\u00e3o de terceiros;\n - do adquirente, no caso de servi\u00e7os prestados.", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|02)$", + "required": false, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal: 00 \u2013 Documento regular 02 \u2013 Documento cancelado", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^.{0,60}$", + "required": true, + "info": "N\u00famero do documento fiscal ou documento internacional equivalente", + "format": "" + }, + "CHV_NFSE": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Chave\/C\u00f3digo de Verifica\u00e7\u00e3o da nota fiscal de servi\u00e7o eletr\u00f4nica", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_EXE_SERV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de Execu\u00e7\u00e3o \/ Conclus\u00e3o do Servi\u00e7o", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento", + "format": "15v2" + }, + "IND_PGTO": { + "type": "string", + "regex": "^(0|1|9)$", + "required": false, + "info": "Indicador do tipo de pagamento: 0- \u00c0 vista; 1- A prazo; 9- Sem pagamento.", + "format": "" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + }, + "VL_PIS_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS retido na fonte", + "format": "15v2" + }, + "VL_COFINS_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS retido na fonte.", + "format": "15v2" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ISS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A110.json b/storage/layouts/Contribuicoes/v006/A110.json new file mode 100644 index 00000000..edd7a35f --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A110.json @@ -0,0 +1,16 @@ +{ + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal (Campo 02 do Registro 0450)", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar do Documento Fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A111.json b/storage/layouts/Contribuicoes/v006/A111.json new file mode 100644 index 00000000..c653f7d8 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A111.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,15}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo:\n 1 - Justi\u00e7a Federal;\n 3 \u2013 Secretaria da Receita Federal do Brasil\n 9 - Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A120.json b/storage/layouts/Contribuicoes/v006/A120.json new file mode 100644 index 00000000..d2fa317c --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A120.json @@ -0,0 +1,58 @@ +{ + "VL_TOT_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do servi\u00e7o, prestado por pessoa f\u00edsica ou jur\u00eddica domiciliada no exterior.", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da Opera\u00e7\u00e3o \u2013 PIS\/PASEP \u2013 Importa\u00e7\u00e3o", + "format": "15v2" + }, + "VL_PIS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago\/recolhido de PIS\/PASEP \u2013 Importa\u00e7\u00e3o", + "format": "15v2" + }, + "DT_PAG_PIS": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de pagamento do PIS\/PASEP \u2013 Importa\u00e7\u00e3o", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da Opera\u00e7\u00e3o \u2013 COFINS \u2013 Importa\u00e7\u00e3o", + "format": "15v2" + }, + "VL_COFINS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago\/recolhido de COFINS \u2013 Importa\u00e7\u00e3o", + "format": "15v2" + }, + "DT_PAG_COFINS": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de pagamento do COFINS \u2013 Importa\u00e7\u00e3o", + "format": "" + }, + "LOC_EXE_SERV": { + "type": "string", + "regex": "^.{1}$", + "required": false, + "info": "Local da execu\u00e7\u00e3o do servi\u00e7o:\n 0 \u2013 Executado no Pa\u00eds;\n 1 \u2013 Executado no Exterior, cujo resultado se verifique no Pa\u00eds.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/A170.json b/storage/layouts/Contribuicoes/v006/A170.json new file mode 100644 index 00000000..4c8b0eef --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/A170.json @@ -0,0 +1,121 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,3})$", + "required": false, + "info": "N\u00famero seq\u00fcencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "DESCR_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do item como adotado no documento fiscal", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do item (mercadorias ou servi\u00e7os)", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ exclus\u00e3o da base de c\u00e1lculo do PIS\/PASEP e da COFINS", + "format": "15v2" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da base de c\u00e1lculo do cr\u00e9dito, conforme a Tabela indicada no item 4.3.7,\n caso seja informado c\u00f3digo representativo de cr\u00e9dito no Campo 09 (CST_PIS)\n ou no Campo 13 (CST_COFINS).", + "format": "" + }, + "IND_ORIG_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito: 0 \u2013 Opera\u00e7\u00e3o no Mercado Interno", + "format": "" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP \u2013 Tabela 4.3.3.", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP.", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao COFINS \u2013 Tabela 4.3.4.", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual)", + "format": "6v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo do centro de custos", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C001.json b/storage/layouts/Contribuicoes/v006/C001.json new file mode 100644 index 00000000..6fb81e32 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento: 0 - Bloco com dados informados; 1 - Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C010.json b/storage/layouts/Contribuicoes/v006/C010.json new file mode 100644 index 00000000..6ce8efc7 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C010.json @@ -0,0 +1,16 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ.", + "format": "" + }, + "IND_ESCRI": { + "type": "string", + "regex": "^.{1}$", + "required": false, + "info": "Indicador da apura\u00e7\u00e3o das contribui\u00e7\u00f5es e cr\u00e9ditos, na escritura\u00e7\u00e3o das\n opera\u00e7\u00f5es por NF-e e ECF, no per\u00edodo: 1 \u2013 Apura\u00e7\u00e3o com base nos registros de consolida\u00e7\u00e3o\n das opera\u00e7\u00f5es por NF-e (C180 e C190) e por ECF (C490);", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C100.json b/storage/layouts/Contribuicoes/v006/C100.json new file mode 100644 index 00000000..e03ffdf4 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C100.json @@ -0,0 +1,198 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de opera\u00e7\u00e3o: 0- Entrada; 1- Sa\u00edda", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do emitente do documento fiscal: 0- Emiss\u00e3o pr\u00f3pria; 1- Terceiros", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150): - do emitente do documento ou\n do remetente das mercadorias, no caso de entradas; - do adquirente, no caso de sa\u00eddas", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02|03|04|05|06|07|08)$", + "required": false, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a Tabela 4.1.2", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,8})?$", + "required": false, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletr\u00f4nica ou da NFC-e", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_E_S": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da entrada ou da sa\u00edda", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "IND_PGTO": { + "type": "string", + "regex": "^(0|1|2|9)$", + "required": false, + "info": "Indicador do tipo de pagamento: 0- \u00c0 vista; 1- A prazo; 9- Sem pagamento.", + "format": "" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_ABAT_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Abatimento n\u00e3o tributado e n\u00e3o comercial Ex. desconto ICMS nas remessas para ZFM.", + "format": "15v2" + }, + "VL_MERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total das mercadorias e servi\u00e7os", + "format": "15v2" + }, + "IND_FRT": { + "type": "string", + "regex": "^(0|1|2|3|4|9)$", + "required": false, + "info": "Indicador do tipo do frete:\n 0- Por conta de terceiros;\n 1- Por conta do emitente;\n 2- Por conta do destinat\u00e1rio;\n 9- Sem cobran\u00e7a de frete.", + "format": "" + }, + "VL_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do frete indicado no documento fiscal", + "format": "15v2" + }, + "VL_SEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do seguro indicado no documento fiscal", + "format": "15v2" + }, + "VL_OUT_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de outras despesas acess\u00f3rias", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do IPI", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + }, + "VL_PIS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_COFINS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C110.json b/storage/layouts/Contribuicoes/v006/C110.json new file mode 100644 index 00000000..aed876a2 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C110.json @@ -0,0 +1,16 @@ +{ + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal (campo 02 do Registro 0450)", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do c\u00f3digo de refer\u00eancia.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C111.json b/storage/layouts/Contribuicoes/v006/C111.json new file mode 100644 index 00000000..905d06b7 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C111.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo:\n 1 - Justi\u00e7a Federal; 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C120.json b/storage/layouts/Contribuicoes/v006/C120.json new file mode 100644 index 00000000..a532fe5f --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C120.json @@ -0,0 +1,37 @@ +{ + "COD_DOC_IMP": { + "type": "string", + "regex": "^(1|0)$", + "required": false, + "info": "Documento de importa\u00e7\u00e3o:\n 0 \u2013 Declara\u00e7\u00e3o de Importa\u00e7\u00e3o; 1 \u2013 Declara\u00e7\u00e3o Simplificada de Importa\u00e7\u00e3o.", + "format": "" + }, + "NUM_DOC_IMP": { + "type": "string", + "regex": "^.{0,10}$", + "required": false, + "info": "N\u00famero do documento de Importa\u00e7\u00e3o.", + "format": "" + }, + "VL_PIS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de PIS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "VL_COFINS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de COFINS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "NUM_ACDRAW": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "N\u00famero do Ato Concess\u00f3rio do regime Drawback", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C170.json b/storage/layouts/Contribuicoes/v006/C170.json new file mode 100644 index 00000000..c41266cc --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C170.json @@ -0,0 +1,254 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,2})?$", + "required": false, + "info": "N\u00famero seq\u00fcencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "DESCR_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar documento fiscal", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item", + "format": "15v5" + }, + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do item (mercadorias ou servi\u00e7os)", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ exclus\u00e3o da base de c\u00e1lculo do PIS\/PASEP e da COFINS", + "format": "15v2" + }, + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Movimenta\u00e7\u00e3o f\u00edsica do ITEM\/PRODUTO: 0. SIM 1. N\u00c3O", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "COD_NAT": { + "type": "string", + "regex": "^.{0,10}$", + "required": false, + "info": "C\u00f3digo da natureza da opera\u00e7\u00e3o (campo 02 do Registro 0400)", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS creditado\/debitado", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo referente \u00e0 substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "ALIQ_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS da substitui\u00e7\u00e3o tribut\u00e1ria na unidade da federa\u00e7\u00e3o de destino", + "format": "6v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS referente \u00e0 substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "IND_APUR": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de per\u00edodo de apura\u00e7\u00e3o do IPI: 0 - Mensal;", + "format": "" + }, + "CST_IPI": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao IPI, conforme a Tabela indicada no item 4.3.2.", + "format": "" + }, + "COD_ENQ": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de enquadramento legal do IPI, conforme tabela indicada no item 4.5.3.", + "format": "" + }, + "VL_BC_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do IPI", + "format": "15v2" + }, + "ALIQ_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do IPI", + "format": "6v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do IPI creditado\/debitado", + "format": "15v2" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS.", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS\/PASEP", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao COFINS.", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C175.json b/storage/layouts/Contribuicoes/v006/C175.json new file mode 100644 index 00000000..379a736b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C175.json @@ -0,0 +1,121 @@ +{ + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o", + "format": "" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da opera\u00e7\u00e3o na combina\u00e7\u00e3o de CFOP, CST e al\u00edquotas,\n correspondente ao somat\u00f3rio do valor das mercadorias e produtos\n constantes no documento.", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ exclus\u00e3o da base de c\u00e1lculo do PIS\/PASEP e da COFINS", + "format": "15v2" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP, conforme a Tabela indicada no item 4.3.3.", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP (em valor)", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo PIS\/PASEP (em quantidade)", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a Cofins, conforme a Tabela indicada no item 4.3.4.", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da Cofins", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da Cofins (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo COFINS (em quantidade)", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Cofins", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C180.json b/storage/layouts/Contribuicoes/v006/C180.json new file mode 100644 index 00000000..b2822109 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C180.json @@ -0,0 +1,51 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(55|65)$", + "required": false, + "info": "Texto fixo contendo \"55\" ou \u201c65\u201d(C\u00f3digo da NF-e ou da NFC-e, conforme a Tabela 4.1.1)", + "format": "" + }, + "DT_DOC_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de Emiss\u00e3o Inicial dos Documentos", + "format": "" + }, + "DT_DOC_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de Emiss\u00e3o Final dos Documentos", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do Item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_NCM": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "C\u00f3digo da Nomenclatura Comum do Mercosul", + "format": "" + }, + "EX_IPI": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "C\u00f3digo EX, conforme a TIPI", + "format": "" + }, + "VL_TOT_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Item", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C181.json b/storage/layouts/Contribuicoes/v006/C181.json new file mode 100644 index 00000000..b16c715a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C181.json @@ -0,0 +1,72 @@ +{ + "CST_PIS": { + "type": "numeric", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP, conforme a Tabela indicada no item 4.3.3.", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ exclus\u00e3o da base de c\u00e1lculo", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS\/PASEP", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C185.json b/storage/layouts/Contribuicoes/v006/C185.json new file mode 100644 index 00000000..d7cda81e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C185.json @@ -0,0 +1,72 @@ +{ + "CST_COFINS": { + "type": "numeric", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS, conforme a Tabela indicada no item 4.3.4.", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ exclus\u00e3o da base de c\u00e1lculo", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo da COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C188.json b/storage/layouts/Contribuicoes/v006/C188.json new file mode 100644 index 00000000..ec61f2f8 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C188.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo:\n 1 - Justi\u00e7a Federal; 3 - Secretaria da Receita Federal do Brasil; 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C190.json b/storage/layouts/Contribuicoes/v006/C190.json new file mode 100644 index 00000000..5a979a2e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C190.json @@ -0,0 +1,51 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(55)$", + "required": false, + "info": "Texto fixo contendo \"55\" (C\u00f3digo da Nota Fiscal Eletr\u00f4nica, modelo 55, conforme a Tabela 4.1.1)", + "format": "" + }, + "DT_REF_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data Inicial de Refer\u00eancia da Consolida\u00e7\u00e3o", + "format": "" + }, + "DT_REF_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data Final de Refer\u00eancia da Consolida\u00e7\u00e3o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_NCM": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "C\u00f3digo da Nomenclatura Comum do Mercosul", + "format": "" + }, + "EX_IPI": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "C\u00f3digo EX, conforme a TIPI", + "format": "" + }, + "VL_TOT_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Item", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C191.json b/storage/layouts/Contribuicoes/v006/C191.json new file mode 100644 index 00000000..61a9a64e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C191.json @@ -0,0 +1,79 @@ +{ + "CNPJ_CPF_PART": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ\/CPF do Participante a que se referem as opera\u00e7\u00f5es consolidadas neste\n registro (pessoa jur\u00eddica ou pessoa f\u00edsica vendedora\/remetente)", + "format": "" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ Exclus\u00e3o", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS\/PASEP", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C195.json b/storage/layouts/Contribuicoes/v006/C195.json new file mode 100644 index 00000000..4b7e7c37 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C195.json @@ -0,0 +1,79 @@ +{ + "CNPJ_CPF_PART": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ\/CPF do Participante a que se referem as opera\u00e7\u00f5es consolidadas\n neste registro (pessoa jur\u00eddica ou pessoa f\u00edsica vendedora\/remetente)", + "format": "" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS.", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo fiscal de opera\u00e7\u00e3o e presta\u00e7\u00e3o", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial \/ Exclus\u00e3o", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo da COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C198.json b/storage/layouts/Contribuicoes/v006/C198.json new file mode 100644 index 00000000..278c072b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C198.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|2|9)$", + "required": false, + "info": "Indicador da origem do processo:", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C199.json b/storage/layouts/Contribuicoes/v006/C199.json new file mode 100644 index 00000000..5d803c68 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C199.json @@ -0,0 +1,37 @@ +{ + "COD_DOC_IMP": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Documento de importa\u00e7\u00e3o:\n 0 \u2013 Declara\u00e7\u00e3o de Importa\u00e7\u00e3o; 1 \u2013 Declara\u00e7\u00e3o Simplificada de Importa\u00e7\u00e3o.", + "format": "" + }, + "NUM_DOCIMP": { + "type": "string", + "regex": "^.{0,10}$", + "required": false, + "info": "N\u00famero do documento de Importa\u00e7\u00e3o.", + "format": "" + }, + "VL_PIS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de PIS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "VL_COFINS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de COFINS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "NUM_ACDRAW": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "N\u00famero do Ato Concess\u00f3rio do regime Drawback", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C380.json b/storage/layouts/Contribuicoes/v006/C380.json new file mode 100644 index 00000000..0fc04e8d --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C380.json @@ -0,0 +1,51 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a\n Tabela 4.1.1 (C\u00f3digo 02 \u2013 Nota Fiscal de Venda a Consumidor)", + "format": "" + }, + "DT_DOC_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de Emiss\u00e3o Inicial dos Documentos", + "format": "" + }, + "DT_DOC_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de Emiss\u00e3o Final dos Documentos", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "N\u00famero do documento fiscal inicial", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "N\u00famero do documento fiscal final", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos documentos emitidos", + "format": "15v2" + }, + "VL_DOC_CANC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos documentos cancelados", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C381.json b/storage/layouts/Contribuicoes/v006/C381.json new file mode 100644 index 00000000..d8be2d8e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C381.json @@ -0,0 +1,65 @@ +{ + "CST_PIS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo do PIS\/PASEP", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C385.json b/storage/layouts/Contribuicoes/v006/C385.json new file mode 100644 index 00000000..e02dd48e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C385.json @@ -0,0 +1,65 @@ +{ + "CST_COFINS": { + "type": "numeric", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS.", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo da COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C395.json b/storage/layouts/Contribuicoes/v006/C395.json new file mode 100644 index 00000000..8d355803 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C395.json @@ -0,0 +1,51 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02|2D|2E|59|60|65)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante emitente do documento (campo 02 do Registro 0150).", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB_SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C396.json b/storage/layouts/Contribuicoes/v006/C396.json new file mode 100644 index 00000000..6935c55b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C396.json @@ -0,0 +1,93 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do item (mercadorias ou servi\u00e7os)", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial do item", + "format": "15v2" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a", + "format": "" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do cr\u00e9dito de PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito de PIS\/PASEP", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do cr\u00e9dito de COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do cr\u00e9dito de COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C400.json b/storage/layouts/Contribuicoes/v006/C400.json new file mode 100644 index 00000000..5e36ee4a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C400.json @@ -0,0 +1,93 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02|2D)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "ECF_MOD": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Modelo do equipamento", + "format": "" + }, + "ECF_FAB": { + "type": "string", + "regex": "^.{0,21}$", + "required": false, + "info": "N\u00famero de s\u00e9rie de fabrica\u00e7\u00e3o do ECF", + "format": "" + }, + "ECF_CX": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero do caixa atribu\u00eddo ao ECF", + "format": "" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS.", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo da COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C405.json b/storage/layouts/Contribuicoes/v006/C405.json new file mode 100644 index 00000000..73059e48 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C405.json @@ -0,0 +1,44 @@ +{ + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do movimento a que se refere a Redu\u00e7\u00e3o Z", + "format": "" + }, + "CRO": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,2})?$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Rein\u00edcio de Opera\u00e7\u00e3o", + "format": "" + }, + "CRZ": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,5})?$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Redu\u00e7\u00e3o Z", + "format": "" + }, + "NUM_COO_FIN": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,5})?$", + "required": false, + "info": "N\u00famero do Contador de Ordem de Opera\u00e7\u00e3o do \u00faltimo\n documento emitido no dia (N\u00famero do COO na Redu\u00e7\u00e3o Z)", + "format": "" + }, + "GT_FIN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Grande Total final", + "format": "15v2" + }, + "VL_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da venda bruta", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/C481.json b/storage/layouts/Contribuicoes/v006/C481.json new file mode 100644 index 00000000..acbe9cb5 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/C481.json @@ -0,0 +1,65 @@ +{ + "CST_PIS": { + "type": "numeric", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS\/PASEP", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D001.json b/storage/layouts/Contribuicoes/v006/D001.json new file mode 100644 index 00000000..4235e57b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento 0- Bloco com dados informados 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D010.json b/storage/layouts/Contribuicoes/v006/D010.json new file mode 100644 index 00000000..b8eb84aa --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D010.json @@ -0,0 +1,9 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D100.json b/storage/layouts/Contribuicoes/v006/D100.json new file mode 100644 index 00000000..b50cd013 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D100.json @@ -0,0 +1,156 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^(0)$", + "required": false, + "info": "Indicador do tipo de opera\u00e7\u00e3o 0- Aquisi\u00e7\u00e3o ", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do emitente do documento fiscal 0- Emiss\u00e3o Pr\u00f3pria 1- Emiss\u00e3o por Terceiros ", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150). ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(07|08|8B|09|10|11|26|27|57|63|67)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1 ", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02|03|06|07|08)$", + "required": false, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a Tabela 4.1.2 ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal ", + "format": "" + }, + "CHV_CTE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave do Conhecimento de Transporte Eletr\u00f4nico ", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia\/emiss\u00e3o dos documentos fiscais ", + "format": "" + }, + "DT_A_P": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da aquisi\u00e7\u00e3o ou da presta\u00e7\u00e3o do servi\u00e7o ", + "format": "" + }, + "TP_CTE": { + "type": "numeric", + "regex": "^(\\d{1})$", + "required": false, + "info": "Tipo de Conhecimento de Transporte Eletr\u00f4nico conforme definido no Manual de Integra\u00e7\u00e3o do CT-e ", + "format": "" + }, + "CHV_CTE_REF": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave do CT-e de refer\u00eancia cujos valores foram complementados (op\u00e7\u00e3o \u201c1\u201d do campo anterior) ou cujo d\u00e9bito foi anulado (op\u00e7\u00e3o \u201c2\u201d do campo anterior). ", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto ", + "format": "15v2" + }, + "IND_FRT": { + "type": "string", + "regex": "^(0|1|2|9)$", + "required": false, + "info": "Indicador do tipo do frete 0- Por conta de terceiros 1- Por conta do emitente 2- Por conta do destinat\u00e1rio 9- Sem cobran\u00e7a de frete. ", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o ", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS ", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS ", + "format": "15v2" + }, + "VL_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor n\u00e3o-tributado do ICMS ", + "format": "15v2" + }, + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal (campo 02 do Registro 0450) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D101.json b/storage/layouts/Contribuicoes/v006/D101.json new file mode 100644 index 00000000..cf72160b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D101.json @@ -0,0 +1,58 @@ +{ + "IND_NAT_FRT": { + "type": "string", + "regex": "^(0|1|2|3|4|5|9)$", + "required": false, + "info": "Indicador da Natureza do Frete Contratado, referente a 0 \u2013 Opera\u00e7\u00f5es de vendas, com \u00f4nus suportado pelo estabelecimento vendedor 1 \u2013 Opera\u00e7\u00f5es de vendas, com \u00f4nus suportado pelo adquirente 2 \u2013 Opera\u00e7\u00f5es de compras (bens para revenda, mat\u00e9rias-prima e outros produtos, geradores de cr\u00e9dito) 3 \u2013 Opera\u00e7\u00f5es de compras (bens para revenda, mat\u00e9rias-prima e outros produtos, n\u00e3o geradores de cr\u00e9dito) 4 \u2013 Transfer\u00eancia de produtos acabados entre ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7. ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D105.json b/storage/layouts/Contribuicoes/v006/D105.json new file mode 100644 index 00000000..ecd1368b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D105.json @@ -0,0 +1,58 @@ +{ + "IND_NAT_FRT": { + "type": "string", + "regex": "^(0|1|2|3|4|5|9)$", + "required": false, + "info": "Indicador da Natureza do Frete Contratado, referente a 0 \u2013 Opera\u00e7\u00f5es de vendas, com \u00f4nus suportado pelo estabelecimento vendedor 1 \u2013 Opera\u00e7\u00f5es de vendas, com \u00f4nus suportado pelo adquirente 2 \u2013 Opera\u00e7\u00f5es de compras (bens para revenda, mat\u00e9rias- prima e outros produtos, geradores de cr\u00e9dito) 3 \u2013 Opera\u00e7\u00f5es de compras (bens para revenda, mat\u00e9rias- prima e outros produtos, n\u00e3o geradores de cr\u00e9dito) 4 \u2013 Transfer\u00eancia de produtos acabados entre estabelecimentos da pessoa jur\u00eddica 5 \u2013 Transfer\u00eancia de produtos em elabora\u00e7\u00e3o entre estabelecimentos da pessoa jur\u00eddica 9 \u2013 Outras. ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS ", + "format": "" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7 ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D111.json b/storage/layouts/Contribuicoes/v006/D111.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D111.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D200.json b/storage/layouts/Contribuicoes/v006/D200.json new file mode 100644 index 00000000..89a93fb6 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D200.json @@ -0,0 +1,72 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(07|08|8B|09|10|11|26|27|57|63|67)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1 ", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|06|07|08)$", + "required": false, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a Tabela 4.1.2 ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal inicial emitido no per\u00edodo (mesmo modelo, s\u00e9rie e subs\u00e9rie). ", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal final emitido no per\u00edodo (mesmo modelo, s\u00e9rie e subs\u00e9rie). ", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o conforme tabela indicada no item 4.2.2 ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do dia de refer\u00eancia do resumo di\u00e1rio ", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos documentos fiscais ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos descontos ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D201.json b/storage/layouts/Contribuicoes/v006/D201.json new file mode 100644 index 00000000..83e4da87 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D201.json @@ -0,0 +1,44 @@ +{ + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens ", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D205.json b/storage/layouts/Contribuicoes/v006/D205.json new file mode 100644 index 00000000..2f6cefcd --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D205.json @@ -0,0 +1,44 @@ +{ + "CST_COFINS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS. ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos itens ", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D209.json b/storage/layouts/Contribuicoes/v006/D209.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D209.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D300.json b/storage/layouts/Contribuicoes/v006/D300.json new file mode 100644 index 00000000..bc429f00 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D300.json @@ -0,0 +1,128 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(13|14|15|16|18)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1. ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "N\u00famero do primeiro documento fiscal emitido no per\u00edodo (mesmo modelo, s\u00e9rie e subs\u00e9rie) ", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "N\u00famero do \u00faltimo documento fiscal emitido no per\u00edodo (mesmo modelo, s\u00e9rie e subs\u00e9rie) ", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o conforme tabela indicada no item 4.2.2 ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do dia de refer\u00eancia do resumo di\u00e1rio ", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos documentos fiscais emitidos ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos descontos ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D309.json b/storage/layouts/Contribuicoes/v006/D309.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D309.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D350.json b/storage/layouts/Contribuicoes/v006/D350.json new file mode 100644 index 00000000..bfd87ef0 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D350.json @@ -0,0 +1,156 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(2E|13|14|15|16)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1 ", + "format": "" + }, + "ECF_MOD": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Modelo do equipamento ", + "format": "" + }, + "ECF_FAB": { + "type": "string", + "regex": "^.{0,21}$", + "required": false, + "info": "N\u00famero de s\u00e9rie de fabrica\u00e7\u00e3o do ECF ", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do movimento a que se refere a Redu\u00e7\u00e3o Z ", + "format": "" + }, + "CRO": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,2})$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Rein\u00edcio de Opera\u00e7\u00e3o ", + "format": "" + }, + "CRZ": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,5})$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Redu\u00e7\u00e3o Z ", + "format": "" + }, + "NUM_COO_FIN": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{0,5})$", + "required": false, + "info": "N\u00famero do Contador de Ordem de Opera\u00e7\u00e3o do \u00faltimo documento emitido no dia. (N\u00famero do COO na Redu\u00e7\u00e3o Z) ", + "format": "" + }, + "GT_FIN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Grande Total final ", + "format": "15v2" + }, + "VL_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da venda bruta ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS\/PASEP ", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em reais) ", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo da COFINS ", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais) ", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D359.json b/storage/layouts/Contribuicoes/v006/D359.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D359.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D500.json b/storage/layouts/Contribuicoes/v006/D500.json new file mode 100644 index 00000000..b75289aa --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D500.json @@ -0,0 +1,149 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^(0)$", + "required": false, + "info": "Indicador do tipo de opera\u00e7\u00e3o 0- Aquisi\u00e7\u00e3o ", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do emitente do documento fiscal 0- Emiss\u00e3o pr\u00f3pria 1- Terceiros ", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante prestador do servi\u00e7o (campo 02 do Registro 0150). ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(21|22)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1. ", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(0)([0-8]{1})$", + "required": false, + "info": "\u00c7\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a Tabela 4.1.2. ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal ", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal ", + "format": "" + }, + "DT_A_P": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da entrada (aquisi\u00e7\u00e3o) ", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto ", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da presta\u00e7\u00e3o de servi\u00e7os ", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos servi\u00e7os n\u00e3o-tributados pelo ICMS ", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valores cobrados em nome de terceiros ", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de outras despesas indicadas no documento fiscal ", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS ", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS ", + "format": "15v2" + }, + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar (campo 02 do Registro 0450) ", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D501.json b/storage/layouts/Contribuicoes/v006/D501.json new file mode 100644 index 00000000..ceb9b571 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D501.json @@ -0,0 +1,51 @@ +{ + "CST_PIS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total dos Itens (Servi\u00e7os) ", + "format": "15v2" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^(03|13)$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7. ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D505.json b/storage/layouts/Contribuicoes/v006/D505.json new file mode 100644 index 00000000..685db6c8 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D505.json @@ -0,0 +1,51 @@ +{ + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total dos Itens ", + "format": "15v2" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito, conforme a Tabela indicada no item 4.3.7. ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D509.json b/storage/layouts/Contribuicoes/v006/D509.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D509.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D600.json b/storage/layouts/Contribuicoes/v006/D600.json new file mode 100644 index 00000000..ea01a3ea --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D600.json @@ -0,0 +1,128 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(21|22)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1. ", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio dos terminais faturados, conforme a tabela IBGE ", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "IND_REC": { + "type": "numeric", + "regex": "^\\d$", + "required": false, + "info": "Indicador do tipo de receita 0- Receita pr\u00f3pria - servi\u00e7os prestados 1- Receita pr\u00f3pria - cobran\u00e7a de d\u00e9bitos 2- Receita pr\u00f3pria - venda de servi\u00e7o pr\u00e9-pago \u2013 faturamento de per\u00edodos anteriores 3- Receita pr\u00f3pria - venda de servi\u00e7o pr\u00e9-pago \u2013 ", + "format": "" + }, + "QTD_CONS": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": false, + "info": "Quantidade de documentos consolidados neste registro ", + "format": "" + }, + "DT_DOC_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data Inicial dos documentos consolidados no per\u00edodo ", + "format": "" + }, + "DT_DOC_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data Final dos documentos consolidados no per\u00edodo ", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total acumulado dos documentos fiscais ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos ", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado das presta\u00e7\u00f5es de servi\u00e7os tributados pelo ICMS ", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos servi\u00e7os n\u00e3o-tributados pelo ICMS ", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valores cobrados em nome de terceiros ", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado das despesas acess\u00f3rias ", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS ", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS ", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D601.json b/storage/layouts/Contribuicoes/v006/D601.json new file mode 100644 index 00000000..34439c11 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D601.json @@ -0,0 +1,58 @@ +{ + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item do servi\u00e7o de comunica\u00e7\u00e3o ou de telecomunica\u00e7\u00e3o, conforme a Tabela 4.4.1 ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do item ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos\/exclus\u00f5es da base de c\u00e1lculo ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D605.json b/storage/layouts/Contribuicoes/v006/D605.json new file mode 100644 index 00000000..eae0a05f --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D605.json @@ -0,0 +1,58 @@ +{ + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item do servi\u00e7o de comunica\u00e7\u00e3o ou de telecomunica\u00e7\u00e3o, conforme a Tabela 4.4.1 ", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do item ", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos\/exclus\u00f5es da base de c\u00e1lculo ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente a COFINS ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/D609.json b/storage/layouts/Contribuicoes/v006/D609.json new file mode 100644 index 00000000..6a9c7be8 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/D609.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/F001.json b/storage/layouts/Contribuicoes/v006/F001.json new file mode 100644 index 00000000..6fb81e32 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/F001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento: 0 - Bloco com dados informados; 1 - Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/F010.json b/storage/layouts/Contribuicoes/v006/F010.json new file mode 100644 index 00000000..8cd2cb02 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/F010.json @@ -0,0 +1,9 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/F100.json b/storage/layouts/Contribuicoes/v006/F100.json new file mode 100644 index 00000000..aa967404 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/F100.json @@ -0,0 +1,128 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^(0|1|2)$", + "required": true, + "info": "Indicador do Tipo da Opera\u00e7\u00e3o:\n 0 \u2013 Opera\u00e7\u00e3o Representativa de Aquisi\u00e7\u00e3o, Custos, Despesa ou Encargos, ou Receitas, Sujeita \u00e0\n Incid\u00eancia de Cr\u00e9dito de PIS\/Pasep ou Cofins (CST 50 a 66).\n 1 \u2013 Opera\u00e7\u00e3o Representativa de Receita Auferida Sujeita ao Pagamento da Contribui\u00e7\u00e3o para o PIS\/Pasep e\n da Cofins (CST 01, 02, 03 ou 05).\n 2 - Opera\u00e7\u00e3o Representativa de Receita Auferida N\u00e3o Sujeita ao Pagamento da Contribui\u00e7\u00e3o para o PIS\/Pasep e\n da Cofins (CST 04, 06, 07, 08, 09, 49 ou 99).", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150)", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "DT_OPER": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da Opera\u00e7\u00e3o (ddmmaaaa) ", + "format": "" + }, + "VL_OPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da Opera\u00e7\u00e3o\/Item", + "format": "15v2" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS\/PASEP \u2013 Tabela 4.3.3.", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP.", + "format": "15v4" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "8v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao COFINS \u2013 Tabela 4.3.4.", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v4" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual)", + "format": "8v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da base de c\u00e1lculo do cr\u00e9dito, conforme a Tabela indicada no item 4.3.7,\n caso seja informado c\u00f3digo representativo de cr\u00e9dito nos Campos 07 (CST_PIS)\n e 11 (CST_COFINS).", + "format": "" + }, + "IND_ORIG_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador da origem do cr\u00e9dito:\n 0 \u2013 Opera\u00e7\u00e3o no Mercado Interno\n 1 \u2013 Opera\u00e7\u00e3o de Importa\u00e7\u00e3o", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo do centro de custos", + "format": "" + }, + "DESC_DOC_OPER": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o do Documento\/Opera\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I001.json b/storage/layouts/Contribuicoes/v006/I001.json new file mode 100644 index 00000000..4235e57b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento 0- Bloco com dados informados 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I010.json b/storage/layouts/Contribuicoes/v006/I010.json new file mode 100644 index 00000000..a9a41cdf --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I010.json @@ -0,0 +1,23 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "N\u00famero de inscri\u00e7\u00e3o da pessoa jur\u00eddica no CNPJ", + "format": "" + }, + "IND_ATIV": { + "type": "string", + "regex": "^(01|02|03|04|05|06)$", + "required": false, + "info": "Indicador de opera\u00e7\u00f5es realizadas no per\u00edodo:01 \u2013 Exclusivamente opera\u00e7\u00f5es de Institui\u00e7\u00f5es Financeiras e Assemelhadas02 \u2013 Exclusivamente opera\u00e7\u00f5es de Seguros Privados03 \u2013 Exclusivamente opera\u00e7\u00f5es de Previd\u00eancia Complementar04 \u2013 Exclusivamente opera\u00e7\u00f5es de Capitaliza\u00e7\u00e3o05 \u2013 Exclusivamente opera\u00e7\u00f5es de Planos de Assist\u00eancia \u00e0 Sa\u00fade06 \u2013 Realizou opera\u00e7\u00f5es referentes a mais de um dos indicadores acima", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I100.json b/storage/layouts/Contribuicoes/v006/I100.json new file mode 100644 index 00000000..1dabd748 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I100.json @@ -0,0 +1,79 @@ +{ + "VL_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total do Faturamento\/Receita Bruta no Per\u00edodo", + "format": "15v2" + }, + "CST_PIS_COFINS": { + "type": "string", + "regex": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria referente \u00e0 Receita informada no Campo 02 (Tabelas 4.3.3 e 4.3.4)", + "required": true, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "VL_TOT_DED_GER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total das Dedu\u00e7\u00f5es e Exclus\u00f5es de Car\u00e1ter Geral", + "format": "15v2" + }, + "VL_TOT_DED_ESP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total das Dedu\u00e7\u00f5es e Exclus\u00f5es de Car\u00e1ter Espec\u00edfico", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do PIS\/PASEP ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Al\u00edquota do PIS\/PASEP (em percentual)", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do PIS\/PASEP", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo da Cofins", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Al\u00edquota da COFINS (em percentual)", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da COFINS", + "format": "15v2" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar dos dados informados no registro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I199.json b/storage/layouts/Contribuicoes/v006/I199.json new file mode 100644 index 00000000..eb3ce1ff --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I199.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "", + "required": true, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": true, + "info": "Indicador da origem do processo: 1 - Justi\u00e7a Federal; 3 \u2013 Secretaria da Receita Federal do Brasil; 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I200.json b/storage/layouts/Contribuicoes/v006/I200.json new file mode 100644 index 00000000..782f1908 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I200.json @@ -0,0 +1,37 @@ +{ + "NUM_CAMPO": { + "type": "string", + "regex": "", + "required": true, + "info": "Informar o n\u00famero do campo do registro \u201cI100\u201d (Campos 02, 04 ou 05), objeto de informa\u00e7\u00e3o neste registro.", + "format": "" + }, + "COD_DET": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo do tipo de detalhamento, conforme Tabelas 7.1.1 e\/ou 7.1.2", + "format": "" + }, + "DET_VALOR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor detalhado referente ao campo 03 (COD_DET) deste registro", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo da conta cont\u00e1bil referente ao valor informado no campo 04 (DET_VALOR)", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar dos dados informados no registro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I299.json b/storage/layouts/Contribuicoes/v006/I299.json new file mode 100644 index 00000000..eb3ce1ff --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I299.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "", + "required": true, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": true, + "info": "Indicador da origem do processo: 1 - Justi\u00e7a Federal; 3 \u2013 Secretaria da Receita Federal do Brasil; 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I300.json b/storage/layouts/Contribuicoes/v006/I300.json new file mode 100644 index 00000000..2dfef8c1 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I300.json @@ -0,0 +1,30 @@ +{ + "COD_COMP": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo das Tabelas 7.1.3 (Receitas \u2013 Vis\u00e3o Anal\u00edtica\/Referenciada) e\/ou 7.1.4 (Dedu\u00e7\u00f5es e exclus\u00f5es \u2013 Vis\u00e3o Anal\u00edtica\/Referenciada), objeto de complemento neste registro", + "format": "" + }, + "DET_VALOR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da receita, dedu\u00e7\u00e3o ou exclus\u00e3o, objeto de complemento\/detalhamento neste registro, conforme c\u00f3digo informado no campo 02 (especificados nas tabelas anal\u00edticas 7.1.3 e 7.1.4) ou no campo 04 (c\u00f3digo da conta cont\u00e1bil)", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo da conta cont\u00e1bil referente ao valor informado no campo 03", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o Complementar dos dados informados no registro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/I399.json b/storage/layouts/Contribuicoes/v006/I399.json new file mode 100644 index 00000000..eb3ce1ff --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/I399.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "", + "required": true, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": true, + "info": "Indicador da origem do processo: 1 - Justi\u00e7a Federal; 3 \u2013 Secretaria da Receita Federal do Brasil; 9 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M001.json b/storage/layouts/Contribuicoes/v006/M001.json new file mode 100644 index 00000000..37e17b51 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento 0- Bloco com dados informados 1- Bloco sem dados informados ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M100.json b/storage/layouts/Contribuicoes/v006/M100.json new file mode 100644 index 00000000..11a4a005 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M100.json @@ -0,0 +1,100 @@ +{ + "COD_CRED": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de Tipo de Cr\u00e9dito apurado no per\u00edodo, conforme a Tabela 4.3.6. ", + "format": "" + }, + "IND_CRED_ORI": { + "type": "numeric", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de Cr\u00e9dito Oriundo de 0 \u2013 Opera\u00e7\u00f5es pr\u00f3prias 1 \u2013 Evento de incorpora\u00e7\u00e3o, cis\u00e3o ou fus\u00e3o ", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo do Cr\u00e9dito ", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS ", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em reais) ", + "format": "15v4" + }, + "VL_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do cr\u00e9dito apurado no per\u00edodo ", + "format": "15v2" + }, + "VL_AJUS_ACRES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de acr\u00e9scimo ", + "format": "15v2" + }, + "VL_AJUS_REDUC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de redu\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do cr\u00e9dito diferido no per\u00edodo ", + "format": "15v2" + }, + "VL_CRED_DISP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Cr\u00e9dito Dispon\u00edvel relativo ao Per\u00edodo (08 + 09 \u2013 10 \u2013 11) ", + "format": "15v2" + }, + "IND_DESC_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de op\u00e7\u00e3o de utiliza\u00e7\u00e3o do cr\u00e9dito dispon\u00edvel no per\u00edodo 0 \u2013 Utiliza\u00e7\u00e3o do valor total para desconto da contribui\u00e7\u00e3o apurada no per\u00edodo, no Registro M200 1 \u2013 Utiliza\u00e7\u00e3o de valor parcial para desconto da contribui\u00e7\u00e3o apurada no per\u00edodo, no Registro M200. ", + "format": "" + }, + "VL_CRED_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito dispon\u00edvel, descontado da contribui\u00e7\u00e3o apurada no pr\u00f3prio per\u00edodo. Se IND_DESC_CRED=0, informar o valor total do Campo 12 ", + "format": "15v2" + }, + "SLD_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de cr\u00e9ditos a utilizar em per\u00edodos futuros (12 \u2013 14) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M105.json b/storage/layouts/Contribuicoes/v006/M105.json new file mode 100644 index 00000000..7a78c29b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M105.json @@ -0,0 +1,65 @@ +{ + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito apurado no per\u00edodo, conforme a Tabela 4.3.7. ", + "format": "" + }, + "CST_PIS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao cr\u00e9dito de PIS\/Pasep (Tabela 4.3.3) vinculado ao tipo de cr\u00e9dito escriturado em M100. ", + "format": "" + }, + "VL_BC_PIS_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Base de C\u00e1lculo escriturada nos documentos e opera\u00e7\u00f5es (Blocos \u201cA\u201d, \u201cC\u201d, \u201cD\u201d e \u201cF\u201d), referente ao CST_PIS informado no Campo 03. ", + "format": "15v2" + }, + "VL_BC_PIS_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Valor Total da Base de C\u00e1lculo informada no Campo 04, vinculada a receitas com 0110) ao regime cumulativo e n\u00e3o- cumulativo da contribui\u00e7\u00e3o (COD_INC_TRIB = 3 do Registro incid\u00eancia cumulativa. Campo de preenchimento espec\u00edfico para a pessoa jur\u00eddica sujeita ", + "format": "15v2" + }, + "VL_BC_PIS_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Base de C\u00e1lculo do Cr\u00e9dito, vinculada a receitas com incid\u00eancia n\u00e3o-cumulativa (Campo 04 \u2013 Campo 05). ", + "format": "15v2" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo do Cr\u00e9dito, vinculada ao tipo de Cr\u00e9dito escriturado em M100. - Para os CST_PIS = \u201c50\u201d, \u201c51\u201d, \u201c52\u201d, \u201c60\u201d, \u201c61\u201d e \u201c62\u201d Informar o valor do Campo 06 (VL_BC_PIS_NC) - Para os CST_PIS = \u201c53\u201d, \u201c54\u201d, \u201c55\u201d, \u201c56\u201d, \u201c63\u201d, \u201c64\u201d \u201c65\u201d e \u201c66\u201d (Cr\u00e9dito sobre opera\u00e7\u00f5es vinculadas a mais de um tipo de receita) Informar a parcela do valor do Campo 06 (VL_BC_PIS_NC) vinculada especificamente ao tipo de cr\u00e9dito escriturado em M100. O valor deste campo ser\u00e1 transportado para o Campo 04 (VL_BC_PIS) do registro M100. ", + "format": "15v2" + }, + "QUANT_BC_PIS_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade Total da Base de C\u00e1lculo do Cr\u00e9dito apurado em Unidade de Medida de Produto, referente ao CST_PIS informado no Campo 03 escriturada nos documentos e opera\u00e7\u00f5es (Blocos \u201cA\u201d, \u201cC\u201d, \u201cD\u201d e \u201cF\u201d), ", + "format": "15v3" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela da base de c\u00e1lculo do cr\u00e9dito em quantidade (campo 08) vinculada ao tipo de cr\u00e9dito escriturado em M100. - Para os CST_PIS = \u201c50\u201d, \u201c51\u201d e \u201c52\u201d Informar o valor do Campo 08 (QUANT_BC_PIS) - Para os CST_PIS = \u201c53\u201d, \u201c54\u201d, \u201c55\u201d e \u201c56\u201d (cr\u00e9dito vinculado a mais de um tipo de receita) Informar a parcela do valor do Campo 08 (QUANT_BC_PIS) vinculada ao tipo de cr\u00e9dito escriturado em M100. ", + "format": "15v3" + }, + "DESC_CRED": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Descri\u00e7\u00e3o do cr\u00e9dito ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M110.json b/storage/layouts/Contribuicoes/v006/M110.json new file mode 100644 index 00000000..fa785388 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M110.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de ajuste 0- Ajuste de redu\u00e7\u00e3o 1- Ajuste de acr\u00e9scimo. ", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ajuste ", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.8. ", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver. ", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste. ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M115.json b/storage/layouts/Contribuicoes/v006/M115.json new file mode 100644 index 00000000..4414292d --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M115.json @@ -0,0 +1,58 @@ +{ + "DET_VALOR_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento do valor do cr\u00e9dito reduzido ou acrescido, informado no Campo 03 (VL_AJ) do registro M110. ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria referente \u00e0 opera\u00e7\u00e3o detalhada neste registro. ", + "format": "" + }, + "DET_BC_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da base de c\u00e1lculo geradora de ajuste de cr\u00e9dito ", + "format": "15v3" + }, + "DET_ALIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da al\u00edquota a que se refere o ajuste de cr\u00e9dito ", + "format": "8v4" + }, + "DT_OPER_AJ": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da opera\u00e7\u00e3o a que se refere o ajuste informado neste registro. ", + "format": "" + }, + "DESC_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da(s) opera\u00e7\u00e3o(\u00f5es) a que se refere o valor informado no Campo 02 (DET_VALOR_AJ) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M200.json b/storage/layouts/Contribuicoes/v006/M200.json new file mode 100644 index 00000000..69d34042 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M200.json @@ -0,0 +1,86 @@ +{ + "VL_TOT_CONT_NC_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o N\u00e3o Cumulativa do Per\u00edodo (recuperado do campo 13 do Registro M210, quando o campo \u201cCOD_CONT\u201d = 01, 02, 03, 04, 32 e 71) ", + "format": "15v2" + }, + "VL_TOT_CRED_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito Descontado, Apurado no Pr\u00f3prio Per\u00edodo da Escritura\u00e7\u00e3o (recuperado do campo 14 do Registro M100) ", + "format": "15v2" + }, + "VL_TOT_CRED_DESC_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito Descontado, Apurado em Per\u00edodo de Apura\u00e7\u00e3o Anterior (recuperado do campo 13 do Registro 1100) ", + "format": "15v2" + }, + "VL_TOT_CONT_NC_DEV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o N\u00e3o Cumulativa Devida (02 \u2013 03 - 04) ", + "format": "15v2" + }, + "VL_RET_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Retido na Fonte Deduzido no Per\u00edodo ", + "format": "15v2" + }, + "VL_OUT_DED_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras Dedu\u00e7\u00f5es no Per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_NC_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o N\u00e3o Cumulativa a Recolher\/Pagar (05 \u2013 06 - 07) ", + "format": "15v2" + }, + "VL_TOT_CONT_CUM_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o Cumulativa do Per\u00edodo (recuperado do campo 13 do Registro M210, quando o campo \u201cCOD_CONT\u201d = 31, 32, 51, 52, 53, 54 e 72) ", + "format": "15v2" + }, + "VL_RET_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Retido na Fonte Deduzido no Per\u00edodo ", + "format": "15v2" + }, + "VL_OUT_DED_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras Dedu\u00e7\u00f5es no Per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_CUM_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Cumulativa a Recolher\/Pagar (09 - 10 \u2013 11) ", + "format": "15v2" + }, + "VL_TOT_CONT_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o a Recolher\/Pagar no Per\u00edodo (08 + 12) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M205.json b/storage/layouts/Contribuicoes/v006/M205.json new file mode 100644 index 00000000..496012d9 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M205.json @@ -0,0 +1,23 @@ +{ + "NUM_CAMPO": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Informar o n\u00famero do campo do registro \u201cM200\u201d ", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.{6}$", + "required": false, + "info": "Informar o c\u00f3digo da receita referente \u00e0 contribui\u00e7\u00e3o a recolher, detalhada neste registro. ", + "format": "" + }, + "VL_DEBITO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do D\u00e9bito correspondente ao c\u00f3digo do Campo 03, conforme informa\u00e7\u00e3o na DCTF. ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M210.json b/storage/layouts/Contribuicoes/v006/M210.json new file mode 100644 index 00000000..4a8070c7 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M210.json @@ -0,0 +1,107 @@ +{ + "COD_CONT": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da contribui\u00e7\u00e3o social apurada no per\u00edodo, conforme a Tabela 4.3.5. ", + "format": "" + }, + "VL_REC_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta ", + "format": "15v2" + }, + "VL_BC_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_AJUS_ACRES_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do total dos ajustes de acr\u00e9scimo da base de c\u00e1lculo da contribui\u00e7\u00e3o a que se refere o Campo 04 ", + "format": "15v2" + }, + "VL_AJUS_REDUC_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do total dos ajustes de redu\u00e7\u00e3o da base de c\u00e1lculo da contribui\u00e7\u00e3o a que se refere o Campo 04", + "format": "15v2" + }, + "VL_BC_CONT_AJUS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o, ap\u00f3s os ajustes. (Campo 07 = Campo 04 + Campo 05 - Campo 06)", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS ", + "format": "15v3" + }, + "ALIQ_PIS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em reais) ", + "format": "15v4" + }, + "VL_CONT_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da contribui\u00e7\u00e3o social apurada ", + "format": "15v2" + }, + "VL_AJUS_ACRES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de acr\u00e9scimo ", + "format": "15v2" + }, + "VL_AJUS_REDUC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de redu\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CONT_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da contribui\u00e7\u00e3o a diferir no per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_DIFER_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da contribui\u00e7\u00e3o diferida em per\u00edodos anteriores ", + "format": "15v2" + }, + "VL_CONT_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o do Per\u00edodo (08 + 09 \u2013 10 \u2013 11+12) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M211.json b/storage/layouts/Contribuicoes/v006/M211.json new file mode 100644 index 00000000..c3510fc2 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M211.json @@ -0,0 +1,37 @@ +{ + "IND_TIP_COOP": { + "type": "numeric", + "regex": "^(1|2|3|4|5|6|9)$", + "required": false, + "info": "Indicador do Tipo de Sociedade Cooperativa 01 \u2013 Cooperativa de Produ\u00e7\u00e3o Agropecu\u00e1ria 02 \u2013 Cooperativa de Consumo 03 \u2013 Cooperativa de Cr\u00e9dito 04 \u2013 Cooperativa de Eletrifica\u00e7\u00e3o Rural 05 \u2013 Cooperativa de Transporte Rodovi\u00e1rio de Cargas 06 \u2013 Cooperativa de M\u00e9dicos 99 \u2013 Outras. ", + "format": "" + }, + "VL_BC_CONT_ANT_EXC_COOP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o, conforme Registros escriturados nos Blocos A, C, D e F, antes das Exclus\u00f5es das Cooperativas. ", + "format": "15v2" + }, + "VL_EXC_COOP_GER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Exclus\u00e3o Especifica das Cooperativas em Geral, decorrente das Sobras Apuradas na DRE, destinadas a constitui\u00e7\u00e3o do Fundo de Reserva e do FATES. ", + "format": "15v2" + }, + "VL_EXC_ESP_COOP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das Exclus\u00f5es da Base de C\u00e1lculo Especifica do Tipo da Sociedade Cooperativa, conforme Campo 02 (IND_TIP_COOP). ", + "format": "15v2" + }, + "VL_BC_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo, Ap\u00f3s as Exclus\u00f5es Especificas da Sociedade Cooperativa (04 \u2013 05 \u2013 06) \u2013 Transportar para M210. ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M215.json b/storage/layouts/Contribuicoes/v006/M215.json new file mode 100644 index 00000000..1cadac6a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M215.json @@ -0,0 +1,65 @@ +{ + "IND_AJ_BC": { + "type": "string", + "regex": "^(1|2)$", + "required": true, + "info": "Indicador do tipo de ajuste da base de c\u00e1lculo: 0 - Ajuste de redu\u00e7\u00e3o; 1 - Ajuste de acr\u00e9scimo.", + "format": "" + }, + "VL_AJ_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste de base de c\u00e1lculo", + "format": "15v2" + }, + "COD_AJ_BC": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.18", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver", + "format": "" + }, + "DESCR_AJ_BC": { + "type": "string", + "regex": "", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste na base de c\u00e1lculo.", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ do estabelecimento a que se refere o ajuste", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do registro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M220.json b/storage/layouts/Contribuicoes/v006/M220.json new file mode 100644 index 00000000..fa785388 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M220.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de ajuste 0- Ajuste de redu\u00e7\u00e3o 1- Ajuste de acr\u00e9scimo. ", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ajuste ", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.8. ", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver. ", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste. ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M225.json b/storage/layouts/Contribuicoes/v006/M225.json new file mode 100644 index 00000000..e53438ba --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M225.json @@ -0,0 +1,58 @@ +{ + "DET_VALOR_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento do valor da contribui\u00e7\u00e3o reduzida ou acrescida, informado no Campo 03 (VL_AJ) do registro M220. ", + "format": "15v2" + }, + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria referente \u00e0 opera\u00e7\u00e3o detalhada neste registro. ", + "format": "" + }, + "DET_BC_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da base de c\u00e1lculo geradora de ajuste de contribui\u00e7\u00e3o ", + "format": "15v3" + }, + "DET_ALIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da al\u00edquota a que se refere o ajuste de contribui\u00e7\u00e3o ", + "format": "8v4" + }, + "DT_OPER_AJ": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da opera\u00e7\u00e3o a que se refere o ajuste informado neste registro. ", + "format": "" + }, + "DESC_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da(s) opera\u00e7\u00e3o(\u00f5es) a que se refere o valor informado no Campo 02 (DET_VALOR_AJ) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M230.json b/storage/layouts/Contribuicoes/v006/M230.json new file mode 100644 index 00000000..535f5f12 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M230.json @@ -0,0 +1,44 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da pessoa jur\u00eddica de direito p\u00fablico, empresa p\u00fablica, sociedade de economia mista ou suas subsidi\u00e1rias. ", + "format": "" + }, + "VL_VEND": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total das vendas no per\u00edodo ", + "format": "15v2" + }, + "VL_NAO_RECEB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total n\u00e3o recebido no per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o diferida no per\u00edodo ", + "format": "15v2" + }, + "VL_CRED_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito diferido no per\u00edodo ", + "format": "15v2" + }, + "COD_CRED": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de Tipo de Cr\u00e9dito diferido no per\u00edodo, conforme a Tabela 4.3.6. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M300.json b/storage/layouts/Contribuicoes/v006/M300.json new file mode 100644 index 00000000..6df452d5 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M300.json @@ -0,0 +1,51 @@ +{ + "COD_CONT": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "C\u00f3digo da contribui\u00e7\u00e3o social diferida em per\u00edodos anteriores, conforme a Tabela 4.3.5. ", + "format": "" + }, + "VL_CONT_APUR_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Apurada, diferida em per\u00edodos anteriores. ", + "format": "15v2" + }, + "NAT_CRED_DESC": { + "type": "string", + "regex": "^(1|2|3|4)$", + "required": false, + "info": "Natureza do Cr\u00e9dito Diferido, vinculado \u00e0 receita tributada no mercado interno, a descontar 01 \u2013 Cr\u00e9dito a Al\u00edquota B\u00e1sica 02 \u2013 Cr\u00e9dito a Al\u00edquota Diferenciada 03 \u2013 Cr\u00e9dito a Al\u00edquota por Unidade de Produto 04 \u2013 Cr\u00e9dito Presumido da Agroind\u00fastria. ", + "format": "" + }, + "VL_CRED_DESC_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito a Descontar vinculado \u00e0 contribui\u00e7\u00e3o diferida. ", + "format": "15v2" + }, + "VL_CONT_DIFER_ANT": { + "type": "numeric", + "regex": "^(3)$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o a Recolher, diferida em per\u00edodos anteriores (Campo 03 \u2013 Campo 05) ", + "format": "15v2" + }, + "PER_APUR": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo de apura\u00e7\u00e3o da contribui\u00e7\u00e3o social e dos cr\u00e9ditos diferidos (MMAAAA) ", + "format": "" + }, + "DT_RECEB": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de recebimento da receita, objeto de diferimento ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M350.json b/storage/layouts/Contribuicoes/v006/M350.json new file mode 100644 index 00000000..0877944e --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M350.json @@ -0,0 +1,37 @@ +{ + "VL_TOT_FOL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Folha de Sal\u00e1rios ", + "format": "15v2" + }, + "VL_EXC_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total das Exclus\u00f5es \u00e0 Base de C\u00e1lculo ", + "format": "15v2" + }, + "VL_TOT_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Base de C\u00e1lculo ", + "format": "15v2" + }, + "ALIQ_PIS_FOL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS\/PASEP \u2013 Folha de Sal\u00e1rios ", + "format": "6v2" + }, + "VL_TOT_CONT_FOL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o Social sobre a Folha de Sal\u00e1rios ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M400.json b/storage/layouts/Contribuicoes/v006/M400.json new file mode 100644 index 00000000..25fbb869 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M400.json @@ -0,0 +1,30 @@ +{ + "CST_PIS": { + "type": "string", + "regex": "^((0[1-9])|49|99)$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria \u2013 CST das demais receitas auferidas no per\u00edodo, sem 4.3.3. incid\u00eancia da contribui\u00e7\u00e3o, ou sem contribui\u00e7\u00e3o apurada a pagar, conforme a Tabela ", + "format": "" + }, + "VL_TOT_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da receita bruta no per\u00edodo. ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada. ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o Complementar da Natureza da Receita. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M410.json b/storage/layouts/Contribuicoes/v006/M410.json new file mode 100644 index 00000000..ebca7422 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M410.json @@ -0,0 +1,30 @@ +{ + "NAT_REC": { + "type": "string", + "regex": "^(4|4|5)$", + "required": false, + "info": "Natureza da Receita, conforme rela\u00e7\u00e3o constante nas Tabelas de Detalhamento da Natureza da Receita por Situa\u00e7\u00e3o Tribut\u00e1ria abaixo - Tabela 4.3.10 Produtos Sujeitos \u00e0 Incid\u00eancia Monof\u00e1sica da Contribui\u00e7\u00e3o Social \u2013 Al\u00edquotas Diferenciadas (CST 04 - Revenda) - Tabela 4.3.11 Produtos Sujeitos \u00e0 Incid\u00eancia Monof\u00e1sica da Contribui\u00e7\u00e3o Social \u2013 Al\u00edquotas por Unidade de Medida de Produto (CST 04 - Revenda) - Tabela 4.3.12 Produtos Sujeitos \u00e0 Substitui\u00e7\u00e3o Tribut\u00e1ria da Contribui\u00e7\u00e3o Social (CST 05 - Revenda) - Tabela 4.3.13 Produtos Sujeitos \u00e0 Al\u00edquota Zero da Contribui\u00e7\u00e3o Social (CST 06) ", + "format": "" + }, + "VL_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da receita bruta no per\u00edodo, relativo a natureza da receita (NAT_REC) ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da debitada\/creditada. ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o Complementar da Natureza da Receita. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M500.json b/storage/layouts/Contribuicoes/v006/M500.json new file mode 100644 index 00000000..4ab581ea --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M500.json @@ -0,0 +1,100 @@ +{ + "COD_CRED": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de Tipo de Cr\u00e9dito apurado no per\u00edodo, conforme a Tabela 4.3.6. ", + "format": "" + }, + "IND_CRED_ORI": { + "type": "numeric", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de Cr\u00e9dito Oriundo de 0 \u2013 Opera\u00e7\u00f5es pr\u00f3prias 1 \u2013 Evento de incorpora\u00e7\u00e3o, cis\u00e3o ou fus\u00e3o ", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo do Cr\u00e9dito ", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo COFINS ", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais) ", + "format": "15v4" + }, + "VL_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do cr\u00e9dito apurado no per\u00edodo ", + "format": "15v2" + }, + "VL_AJUS_ACRES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de acr\u00e9scimo ", + "format": "15v2" + }, + "VL_AJUS_REDUC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de redu\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CRED_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do cr\u00e9dito diferido no per\u00edodo ", + "format": "15v2" + }, + "VL_CRED_DISP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total do Cr\u00e9dito Dispon\u00edvel relativo ao Per\u00edodo (08 + 09 \u2013 10 \u2013 11) ", + "format": "15v2" + }, + "IND_DESC_CRED": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de utiliza\u00e7\u00e3o do cr\u00e9dito dispon\u00edvel no per\u00edodo 0 \u2013 Utiliza\u00e7\u00e3o do valor total para desconto da contribui\u00e7\u00e3o apurada no per\u00edodo, no Registro M600 1 \u2013 Utiliza\u00e7\u00e3o de valor parcial para desconto da contribui\u00e7\u00e3o apurada no per\u00edodo, no Registro M600. ", + "format": "" + }, + "VL_CRED_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito dispon\u00edvel, descontado da contribui\u00e7\u00e3o apurada no pr\u00f3prio per\u00edodo. Se IND_DESC_CRED=0, informar o valor total do Campo 12 Se IND_DESC_CRED=1, informar o valor parcial do Campo 12. ", + "format": "15v2" + }, + "SLD_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Saldo de cr\u00e9ditos a utilizar em per\u00edodos futuros (12 \u2013 14) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M505.json b/storage/layouts/Contribuicoes/v006/M505.json new file mode 100644 index 00000000..9bded93f --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M505.json @@ -0,0 +1,65 @@ +{ + "NAT_BC_CRED": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo da Base de C\u00e1lculo do Cr\u00e9dito apurado no per\u00edodo, conforme a Tabela 4.3.7. ", + "format": "" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao cr\u00e9dito de COFINS (Tabela 4.3.4) vinculado ao tipo de cr\u00e9dito escriturado em M500. ", + "format": "" + }, + "VL_BC_COFINS_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Base de C\u00e1lculo escriturada nos documentos e opera\u00e7\u00f5es (Blocos \u201cA\u201d, \u201cC\u201d, \u201cD\u201d e \u201cF\u201d), referente ao CST_COFINS informado no Campo 03. ", + "format": "15v2" + }, + "VL_BC_COFINS_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela do Valor Total da Base de C\u00e1lculo informada no Campo 04, vinculada a receitas com 0110) ao regime cumulativo e n\u00e3o- cumulativo da contribui\u00e7\u00e3o (COD_INC_TRIB = 3 do Registro incid\u00eancia cumulativa. Campo de preenchimento espec\u00edfico para a pessoa jur\u00eddica sujeita ", + "format": "15v2" + }, + "VL_BC_COFINS_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Base de C\u00e1lculo do Cr\u00e9dito, vinculada a receitas com incid\u00eancia n\u00e3o-cumulativa (Campo 04 \u2013 Campo 05). ", + "format": "15v2" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo do Cr\u00e9dito, vinculada ao tipo de Cr\u00e9dito escriturado em M500. - Para os CST_COFINS = \u201c50\u201d, \u201c51\u201d, \u201c52\u201d, \u201c60\u201d, \u201c61\u201d e \u201c62\u201d Informar o valor do Campo 06 (VL_BC_COFINS_NC) - Para os CST_COFINS = \u201c53\u201d, \u201c54\u201d, \u201c55\u201d, \u201c56\u201d, \u201c63\u201d, \u201c64\u201d \u201c65\u201d e \u201c66\u201d (Cr\u00e9dito sobre opera\u00e7\u00f5es vinculadas a mais de um tipo de receita) Informar a parcela do valor do Campo 06 (VL_BC_COFINS_NC) vinculada especificamente ao tipo de cr\u00e9dito escriturado em M500. ", + "format": "15v2" + }, + "QUANT_BC_COFINS_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade Total da Base de C\u00e1lculo do Cr\u00e9dito apurado em Unidade de Medida de Produto, referente ao CST_COFINS informado no Campo 03 escriturada nos documentos e opera\u00e7\u00f5es (Blocos \u201cA\u201d, \u201cC\u201d, \u201cD\u201d e \u201cF\u201d), ", + "format": "15v3" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela da base de c\u00e1lculo do cr\u00e9dito em quantidade (campo 08) vinculada ao tipo de cr\u00e9dito escriturado em M500. - Para os CST_COFINS = \u201c50\u201d, \u201c51\u201d e \u201c52\u201d Informar o valor do Campo 08 (QUANT_BC_COFINS) - Para os CST_COFINS = \u201c53\u201d, \u201c54\u201d, \u201c55\u201d e \u201c56\u201d (cr\u00e9dito vinculado a mais de um tipo de receita) Informar a parcela do valor do Campo 08 (QUANT_BC_COFINS) vinculada ao tipo de cr\u00e9dito escriturado em M500. ", + "format": "15v3" + }, + "DESC_CRED": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Descri\u00e7\u00e3o do cr\u00e9dito ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M510.json b/storage/layouts/Contribuicoes/v006/M510.json new file mode 100644 index 00000000..fa785388 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M510.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de ajuste 0- Ajuste de redu\u00e7\u00e3o 1- Ajuste de acr\u00e9scimo. ", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ajuste ", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.8. ", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver. ", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste. ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M515.json b/storage/layouts/Contribuicoes/v006/M515.json new file mode 100644 index 00000000..b2d3c21a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M515.json @@ -0,0 +1,58 @@ +{ + "DET_VALOR_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento do valor do cr\u00e9dito reduzido ou acrescido, informado no Campo 03 (VL_AJ) do registro M510. ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria referente \u00e0 opera\u00e7\u00e3o detalhada neste registro. ", + "format": "" + }, + "DET_BC_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da base de c\u00e1lculo geradora de ajuste de cr\u00e9dito ", + "format": "15v3" + }, + "DET_ALIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da al\u00edquota a que se refere o ajuste de cr\u00e9dito ", + "format": "8v4" + }, + "DT_OPER_AJ": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da opera\u00e7\u00e3o a que se refere o ajuste informado neste registro. ", + "format": "" + }, + "DESC_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da(s) opera\u00e7\u00e3o(\u00f5es) a que se refere o valor informado no Campo 02 (DET_VALOR_AJ) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M600.json b/storage/layouts/Contribuicoes/v006/M600.json new file mode 100644 index 00000000..eef1b093 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M600.json @@ -0,0 +1,86 @@ +{ + "VL_TOT_CONT_NC_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o N\u00e3o Cumulativa do Per\u00edodo (recuperado do campo 13 do Registro M610, quando o campo \u201cCOD_CONT\u201d = 01, 02, 03, 04, 32 e 71) ", + "format": "15v2" + }, + "VL_TOT_CRED_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito Descontado, Apurado no Pr\u00f3prio Per\u00edodo da Escritura\u00e7\u00e3o (recuperado do campo 14 do Registro M500) ", + "format": "15v2" + }, + "VL_TOT_CRED_DESC_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito Descontado, Apurado em Per\u00edodo de Apura\u00e7\u00e3o Anterior (recuperado do campo 13 do Registro 1500) ", + "format": "15v2" + }, + "VL_TOT_CONT_NC_DEV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o N\u00e3o Cumulativa Devida (02 - 03 - 04) ", + "format": "15v2" + }, + "VL_RET_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Retido na Fonte Deduzido no Per\u00edodo ", + "format": "15v2" + }, + "VL_OUT_DED_NC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras Dedu\u00e7\u00f5es no Per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_NC_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o N\u00e3o Cumulativa a Recolher\/Pagar (05 - 06 - 07) ", + "format": "15v2" + }, + "VL_TOT_CONT_CUM_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o Cumulativa do Per\u00edodo (recuperado do campo 13 do Registro M610, quando o campo \u201cCOD_CONT\u201d = 31, 32, 51, 52, 53, 54 e 72) ", + "format": "15v2" + }, + "VL_RET_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Retido na Fonte Deduzido no Per\u00edodo ", + "format": "15v2" + }, + "VL_OUT_DED_CUM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras Dedu\u00e7\u00f5es no Per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_CUM_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Cumulativa a Recolher\/Pagar (09 - 10 - 11) ", + "format": "15v2" + }, + "VL_TOT_CONT_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o a Recolher\/Pagar no Per\u00edodo (08 + 12) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M605.json b/storage/layouts/Contribuicoes/v006/M605.json new file mode 100644 index 00000000..d1e7c400 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M605.json @@ -0,0 +1,23 @@ +{ + "NUM_CAMPO": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Informar o n\u00famero do campo do registro \u201cM600\u201d (Campo 08 (contribui\u00e7\u00e3o n\u00e3o registro. cumulativa) ou Campo 12 (contribui\u00e7\u00e3o cumulativa)), objeto de detalhamento neste ", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.{6}$", + "required": false, + "info": "Informar o c\u00f3digo da receita referente \u00e0 contribui\u00e7\u00e3o a recolher, detalhada neste registro. ", + "format": "" + }, + "VL_DEBITO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do D\u00e9bito correspondente ao c\u00f3digo do Campo 03, conforme informa\u00e7\u00e3o na DCTF. ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M610.json b/storage/layouts/Contribuicoes/v006/M610.json new file mode 100644 index 00000000..175d37ef --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M610.json @@ -0,0 +1,107 @@ +{ + "COD_CONT": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "C\u00f3digo da contribui\u00e7\u00e3o social apurada no per\u00edodo, conforme a Tabela 4.3.5. ", + "format": "" + }, + "VL_REC_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta ", + "format": "15v2" + }, + "VL_BC_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_AJUS_ACRES_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do total dos ajustes de acr\u00e9scimo da base de c\u00e1lculo da contribui\u00e7\u00e3o a que se refere o Campo 04", + "format": "8v2" + }, + "VL_AJUS_REDUC_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do total dos ajustes de redu\u00e7\u00e3o da base de c\u00e1lculo da contribui\u00e7\u00e3o a que se refere o Campo 04", + "format": "8v2" + }, + "VL_BC_CONT_AJUS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o, ap\u00f3s os ajustes.", + "format": "8v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual) ", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo COFINS ", + "format": "15v3" + }, + "ALIQ_COFINS_QUANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em reais) ", + "format": "15v4" + }, + "VL_CONT_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da contribui\u00e7\u00e3o social apurada ", + "format": "15v2" + }, + "VL_AJUS_ACRES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de acr\u00e9scimo ", + "format": "15v2" + }, + "VL_AJUS_REDUC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos ajustes de redu\u00e7\u00e3o ", + "format": "15v2" + }, + "VL_CONT_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da contribui\u00e7\u00e3o a diferir no per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_DIFER_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da contribui\u00e7\u00e3o diferida em per\u00edodos anteriores ", + "format": "15v2" + }, + "VL_CONT_PER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total da Contribui\u00e7\u00e3o do Per\u00edodo (08 + 09 \u2013 10 \u2013 11 +12) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M611.json b/storage/layouts/Contribuicoes/v006/M611.json new file mode 100644 index 00000000..f02270e2 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M611.json @@ -0,0 +1,37 @@ +{ + "IND_TIP_COOP": { + "type": "numeric", + "regex": "^(1|2)$", + "required": false, + "info": "Indicador do Tipo de Sociedade Cooperativa 01 \u2013 Cooperativa de Produ\u00e7\u00e3o Agropecu\u00e1ria 02 \u2013 Cooperativa de Consumo ", + "format": "" + }, + "VL_BC_CONT_ANT_EXC_COOP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o, conforme Registros escriturados nos Blocos A, C, D e F, antes das Exclus\u00f5es das Sociedades Cooperativas. ", + "format": "15v2" + }, + "VL_EXC_COOP_GER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de Exclus\u00e3o Especifica das Cooperativas em Geral, decorrente das Sobras Apuradas na DRE, destinadas a constitui\u00e7\u00e3o do Fundo de Reserva e do FATES. ", + "format": "15v2" + }, + "VL_EXC_ESP_COOP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das Exclus\u00f5es da Base de C\u00e1lculo Especifica do Tipo da Sociedade Cooperativa, conforme Campo 02 (IND_TIP_COOP). ", + "format": "15v2" + }, + "VL_BC_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo, Ap\u00f3s as Exclus\u00f5es Especificas da Sociedade Cooperativa (04 \u2013 05 \u2013 06) \u2013 Transportar para M610. ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M615.json b/storage/layouts/Contribuicoes/v006/M615.json new file mode 100644 index 00000000..1cadac6a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M615.json @@ -0,0 +1,65 @@ +{ + "IND_AJ_BC": { + "type": "string", + "regex": "^(1|2)$", + "required": true, + "info": "Indicador do tipo de ajuste da base de c\u00e1lculo: 0 - Ajuste de redu\u00e7\u00e3o; 1 - Ajuste de acr\u00e9scimo.", + "format": "" + }, + "VL_AJ_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste de base de c\u00e1lculo", + "format": "15v2" + }, + "COD_AJ_BC": { + "type": "string", + "regex": "", + "required": true, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.18", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver", + "format": "" + }, + "DESCR_AJ_BC": { + "type": "string", + "regex": "", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste na base de c\u00e1lculo.", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ do estabelecimento a que se refere o ajuste", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do registro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M620.json b/storage/layouts/Contribuicoes/v006/M620.json new file mode 100644 index 00000000..fa785388 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M620.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de ajuste 0- Ajuste de redu\u00e7\u00e3o 1- Ajuste de acr\u00e9scimo. ", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ajuste ", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.8. ", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver. ", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste. ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M625.json b/storage/layouts/Contribuicoes/v006/M625.json new file mode 100644 index 00000000..904d20b6 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M625.json @@ -0,0 +1,58 @@ +{ + "DET_VALOR_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento do valor da contribui\u00e7\u00e3o reduzida ou acrescida, informado no Campo 03 (VL_AJ) do registro M620. ", + "format": "15v2" + }, + "CST_COFINS": { + "type": "string", + "regex": "^((5[0-6])|(6[0-6])|(7[0-5])|98|99)$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria referente \u00e0 opera\u00e7\u00e3o detalhada neste registro. ", + "format": "" + }, + "DET_BC_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da base de c\u00e1lculo geradora de ajuste de contribui\u00e7\u00e3o ", + "format": "15v3" + }, + "DET_ALIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Detalhamento da al\u00edquota a que se refere o ajuste de contribui\u00e7\u00e3o ", + "format": "8v4" + }, + "DT_OPER_AJ": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da opera\u00e7\u00e3o a que se refere o ajuste informado neste registro. ", + "format": "" + }, + "DESC_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da(s) opera\u00e7\u00e3o(\u00f5es) a que se refere o valor informado no Campo 02 (DET_VALOR_AJ) ", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta cont\u00e1bil debitada\/creditada ", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M630.json b/storage/layouts/Contribuicoes/v006/M630.json new file mode 100644 index 00000000..535f5f12 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M630.json @@ -0,0 +1,44 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da pessoa jur\u00eddica de direito p\u00fablico, empresa p\u00fablica, sociedade de economia mista ou suas subsidi\u00e1rias. ", + "format": "" + }, + "VL_VEND": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total das vendas no per\u00edodo ", + "format": "15v2" + }, + "VL_NAO_RECEB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor Total n\u00e3o recebido no per\u00edodo ", + "format": "15v2" + }, + "VL_CONT_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o diferida no per\u00edodo ", + "format": "15v2" + }, + "VL_CRED_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito diferido no per\u00edodo ", + "format": "15v2" + }, + "COD_CRED": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de Tipo de Cr\u00e9dito diferido no per\u00edodo, conforme a Tabela 4.3.6. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M700.json b/storage/layouts/Contribuicoes/v006/M700.json new file mode 100644 index 00000000..27ff52fb --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M700.json @@ -0,0 +1,58 @@ +{ + "REG": { + "type": "string", + "regex": "^.{4}$", + "required": false, + "info": "Texto fixo contendo \\\"M700\\\" ", + "format": "" + }, + "COD_CONT": { + "type": "string", + "regex": "^.{0,2}$", + "required": false, + "info": "C\u00f3digo da contribui\u00e7\u00e3o social diferida em per\u00edodos anteriores, conforme a Tabela 4.3.5. ", + "format": "" + }, + "VL_CONT_APUR_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Apurada, diferida em per\u00edodos anteriores. ", + "format": "15v2" + }, + "NAT_CRED_DESC": { + "type": "string", + "regex": "^(1|2|3|4)$", + "required": false, + "info": "Natureza do Cr\u00e9dito Diferido, vinculado \u00e0 receita tributada no mercado interno, a descontar 01 \u2013 Cr\u00e9dito a Al\u00edquota B\u00e1sica 02 \u2013 Cr\u00e9dito a Al\u00edquota Diferenciada 03 \u2013 Cr\u00e9dito a Al\u00edquota por Unidade de Produto 04 \u2013 Cr\u00e9dito Presumido da Agroind\u00fastria. ", + "format": "" + }, + "VL_CRED_DESC_DIFER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Cr\u00e9dito a Descontar vinculado \u00e0 contribui\u00e7\u00e3o diferida. ", + "format": "15v2" + }, + "VL_CONT_DIFER_ANT": { + "type": "numeric", + "regex": "^(3)$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o a Recolher, diferida em per\u00edodos anteriores (Campo 03 \u2013 Campo 05) ", + "format": "15v2" + }, + "PER_APUR": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo de apura\u00e7\u00e3o da contribui\u00e7\u00e3o social e dos cr\u00e9ditos diferidos (MMAAAA). ", + "format": "" + }, + "DT_RECEB": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de recebimento da receita, objeto de diferimento. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M800.json b/storage/layouts/Contribuicoes/v006/M800.json new file mode 100644 index 00000000..18869f2b --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M800.json @@ -0,0 +1,30 @@ +{ + "CST_COFINS": { + "type": "string", + "regex": "^0[4-9]{1}$", + "required": false, + "info": "C\u00f3digo de Situa\u00e7\u00e3o Tribut\u00e1ria \u2013 CST das demais receitas auferidas no per\u00edodo, sem 4.3.4. incid\u00eancia da contribui\u00e7\u00e3o, ou sem contribui\u00e7\u00e3o apurada a pagar, conforme a Tabela ", + "format": "" + }, + "VL_TOT_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da receita bruta no per\u00edodo. ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada. ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o Complementar da Natureza da Receita. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/M810.json b/storage/layouts/Contribuicoes/v006/M810.json new file mode 100644 index 00000000..350d708a --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/M810.json @@ -0,0 +1,30 @@ +{ + "NAT_REC": { + "type": "string", + "regex": "^(4|4|5)$", + "required": false, + "info": "Natureza da Receita, conforme rela\u00e7\u00e3o constante nas Tabelas de Detalhamento da Natureza da Receita por Situa\u00e7\u00e3o Tribut\u00e1ria abaixo - Tabela 4.3.10 Produtos Sujeitos \u00e0 Incid\u00eancia Monof\u00e1sica da Contribui\u00e7\u00e3o Social \u2013 Al\u00edquotas Diferenciadas (CST 04 - Revenda) - Tabela 4.3.11 Produtos Sujeitos \u00e0 Incid\u00eancia Monof\u00e1sica da Contribui\u00e7\u00e3o Social \u2013 Al\u00edquotas por Unidade de Medida de Produto (CST 04 - Revenda) - Tabela 4.3.12 Produtos Sujeitos \u00e0 Substitui\u00e7\u00e3o Tribut\u00e1ria da Contribui\u00e7\u00e3o Social (CST 05 - Revenda) - Tabela 4.3.13 Produtos Sujeitos \u00e0 Al\u00edquota Zero da Contribui\u00e7\u00e3o Social (CST 06) ", + "format": "" + }, + "VL_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da receita bruta no per\u00edodo, relativo a natureza da receita (NAT_REC) ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da debitada\/creditada. ", + "format": "" + }, + "DESC_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o Complementar da Natureza da Receita. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P001.json b/storage/layouts/Contribuicoes/v006/P001.json new file mode 100644 index 00000000..4f06ec32 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de movimento 0 - Bloco com dados informados 1 - Bloco sem dados informados ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P010.json b/storage/layouts/Contribuicoes/v006/P010.json new file mode 100644 index 00000000..b8eb84aa --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P010.json @@ -0,0 +1,9 @@ +{ + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do estabelecimento no CNPJ. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P100.json b/storage/layouts/Contribuicoes/v006/P100.json new file mode 100644 index 00000000..865c93fe --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P100.json @@ -0,0 +1,107 @@ +{ + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data inicial a que a apura\u00e7\u00e3o se refere ", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data final a que a apura\u00e7\u00e3o se refere ", + "format": "" + }, + "VL_REC_TOT_EST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta Total do Estabelecimento no Per\u00edodo ", + "format": "15v2" + }, + "COD_ATIV_ECON": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "C\u00f3digo indicador correspondente \u00e0 atividade sujeita a incid\u00eancia da Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta, conforme Tabela 5.1.1. ", + "format": "" + }, + "VL_REC_ATIV_ESTAB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Receita Bruta do Estabelecimento, correspondente \u00e0s atividades\/produtos referidos no Campo 05 (COD_ATIV_ECON) ", + "format": "15v2" + }, + "VL_EXC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das Exclus\u00f5es da Receita Bruta informada no Campo 06 ", + "format": "15v2" + }, + "VL_BC_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Base de C\u00e1lculo da Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta (Campo 08 = Campo 06 \u2013 Campo 07) ", + "format": "15v2" + }, + "ALIQ_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita B ruta ", + "format": "8v4" + }, + "VL_CONT_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da Contribui\u00e7\u00e3o Previdenci\u00e1ria Apurada sobre a Receita Bruta ", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil referente \u00e0 Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta ", + "format": "" + }, + "INFO_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do registro ", + "format": "" + }, + "NUM_CAMPO": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Informar o n\u00famero do campo do registro \u201cP100\u201d, objeto de detalhamento neste registro. ", + "format": "" + }, + "COD_DET": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "C\u00f3digo do tipo de detalhamento, conforme Tabela 5.1.2 ", + "format": "" + }, + "DET_VALOR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor detalhado referente ao campo 02 deste registro ", + "format": "15v2" + }, + "INF_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do detalhamento. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P110.json b/storage/layouts/Contribuicoes/v006/P110.json new file mode 100644 index 00000000..6c5d6b8c --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P110.json @@ -0,0 +1,30 @@ +{ + "NUM_CAMPO": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "Informar o n\u00famero do campo do registro \u201cP100\u201d, objeto de detalhamento neste registro. ", + "format": "" + }, + "COD_DET": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "C\u00f3digo do tipo de detalhamento, conforme Tabela 5.1.2 ", + "format": "" + }, + "DET_VALOR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor detalhado referente ao campo 02 deste registro ", + "format": "15v2" + }, + "INF_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Informa\u00e7\u00e3o complementar do detalhamento. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P199.json b/storage/layouts/Contribuicoes/v006/P199.json new file mode 100644 index 00000000..95f6c8da --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P199.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio ", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(1|3|9)$", + "required": false, + "info": "Indicador da origem do processo 1 - Justi\u00e7a Federal 3 \u2013 Secretaria da Receita Federal do Brasil 9 \u2013 Outros. ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P200.json b/storage/layouts/Contribuicoes/v006/P200.json new file mode 100644 index 00000000..4fee1e60 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P200.json @@ -0,0 +1,44 @@ +{ + "PER_REF": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": false, + "info": "Per\u00edodo de referencia da escritura\u00e7\u00e3o (MMAAAA) ", + "format": "" + }, + "VL_TOT_CONT_APU": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total apurado da Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta (Somat\u00f3rio do Campo 10 \u201cVL_CONT_APU\u201c, do(s) Registro(s) P100) ", + "format": "15v2" + }, + "VL_TOT_AJ_REDUC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total de \u201cAjustes de redu\u00e7\u00e3o\u201d (Registro P210, Campo 03, quando Campo 02 = \u201c0\u201d) ", + "format": "15v2" + }, + "VL_TOT_AJ_ACRES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total de \u201cAjustes de acr\u00e9scimo\u201d (Registro P210, Campo 03, quando Campo 02 = \u201c1\u201d) ", + "format": "15v2" + }, + "VL_TOT_CONT_DEV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da Contribui\u00e7\u00e3o Previdenci\u00e1ria sobre a Receita Bruta a recolher (Campo 03 \u2013 Campo 04 + Campo 05) ", + "format": "15v2" + }, + "COD_REC": { + "type": "string", + "regex": "^.{6}$", + "required": false, + "info": "C\u00f3digo de Receita referente \u00e0 Contribui\u00e7\u00e3o Previdenci\u00e1ria, conforme informado em DCTF ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/v006/P210.json b/storage/layouts/Contribuicoes/v006/P210.json new file mode 100644 index 00000000..55b10383 --- /dev/null +++ b/storage/layouts/Contribuicoes/v006/P210.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo de ajuste 0- Ajuste de redu\u00e7\u00e3o 1- Ajuste de acr\u00e9scimo. ", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ajuste ", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do ajuste, conforme a Tabela indicada no item 4.3.8., vers\u00e3o 1.01 ", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do processo, documento ou ato concess\u00f3rio ao qual o ajuste est\u00e1 vinculado, se houver. ", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o resumida do ajuste. ", + "format": "" + }, + "DT_REF": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de refer\u00eancia do ajuste (ddmmaaaa) ", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/Contribuicoes/vigencias.json b/storage/layouts/Contribuicoes/vigencias.json new file mode 100755 index 00000000..cbb379f2 --- /dev/null +++ b/storage/layouts/Contribuicoes/vigencias.json @@ -0,0 +1,27 @@ +{ + "002": { + "versao": "101", + "inicio": "01012011", + "fim": "30062012" + }, + "003": { + "versao": "101", + "inicio": "01072012", + "fim": "31052018" + }, + "004": { + "versao": "101", + "inicio": "01062018", + "fim": "31122018" + }, + "005": { + "versao": "101", + "inicio": "01012019", + "fim": "31122019" + }, + "006": { + "versao": "101", + "inicio": "01012020", + "fim": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0000.json b/storage/layouts/ICMSIPI/v017/0000.json new file mode 100755 index 00000000..36119bec --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0000.json @@ -0,0 +1,100 @@ +{ + "cod_ver": { + "type": "string", + "regex": "^[0-9]{3}$", + "required": true, + "info": "C\u00f3digo da vers\u00e3o do leiaute conforme a tabela indicada no Ato COTEPE.", + "format": "" + }, + "cod_fin": { + "type": "integer", + "regex": "^[0-1]{1}$", + "required": true, + "info": "C\u00f3digo da finalidade do arquivo: 0 - Remessa do arquivo original; 1 - Remessa do arquivo substituto.", + "format": "" + }, + "dt_ini": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + }, + "dt_fin": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + }, + "nome": { + "type": "string", + "regex": "^.{2,100}$", + "required": true, + "info": "Nome empresarial da entidade.", + "format": "" + }, + "cnpj": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o da entidade no CNPJ.", + "format": "" + }, + "cpf": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o da entidade no CPF.", + "format": "" + }, + "uf": { + "type": "string", + "regex": "^[A-Z]{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o da entidade.", + "format": "" + }, + "ie": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual da entidade.", + "format": "" + }, + "cod_mun": { + "type": "integer", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio do domic\u00edlio fiscal da entidade, conforme a tabela IBGE", + "format": "" + }, + "im": { + "type": "string", + "regex": "^[A-Za-z0-9]{1,15}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Municipal da entidade.", + "format": "" + }, + "suframa": { + "type": "string", + "regex": "^[0-9]{8,9}$", + "required": false, + "info": "Inscri\u00e7\u00e3o da entidade na SUFRAMA", + "format": "" + }, + "ind_perfil": { + "type": "string", + "regex": "^(A|B|C)", + "required": true, + "info": "Perfil de apresenta\u00e7\u00e3o do arquivo fiscal; A \u2013 Perfil A; B \u2013 Perfil B.; C \u2013 Perfil C.", + "format": "" + }, + "ind_ativ": { + "type": "integer", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de tipo de atividade: 0 \u2013 Industrial ou equiparado a industrial; 1 \u2013 Outros.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0001.json b/storage/layouts/ICMSIPI/v017/0001.json new file mode 100755 index 00000000..57281009 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0001.json @@ -0,0 +1,9 @@ +{ + "ind_mov": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0002.json b/storage/layouts/ICMSIPI/v017/0002.json new file mode 100755 index 00000000..417b6b2d --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0002.json @@ -0,0 +1,9 @@ +{ + "CLAS_ESTAB_IND": { + "type": "numeric", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Informar a classifica\u00e7\u00e3o do estabelecimento conforme tabela 4.5.5", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0005.json b/storage/layouts/ICMSIPI/v017/0005.json new file mode 100755 index 00000000..1efeac5a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0005.json @@ -0,0 +1,65 @@ +{ + "FANTASIA": { + "type": "string", + "regex": "^.{3,60}$", + "required": true, + "info": "Nome de fantasia associado ao nome empresarial.", + "format": "" + }, + "CEP": { + "type": "string", + "regex": "^[0-9]{8}$", + "required": true, + "info": "C\u00f3digo de Endere\u00e7amento Postal.", + "format": "" + }, + "END": { + "type": "string", + "regex": "^.{3,60}$", + "required": true, + "info": "Logradouro e endere\u00e7o do im\u00f3vel.", + "format": "" + }, + "NUM": { + "type": "string", + "regex": "^.{1,10}$", + "required": false, + "info": "N\u00famero do im\u00f3vel.", + "format": "" + }, + "COMPL": { + "type": "string", + "regex": "^.{3,60}$", + "required": false, + "info": "Dados complementares do endere\u00e7o.", + "format": "" + }, + "BAIRRO": { + "type": "string", + "regex": "^.{3,60}$", + "required": true, + "info": "Bairro em que o im\u00f3vel est\u00e1 situado.", + "format": "" + }, + "FONE": { + "type": "string", + "regex": "^[0-9]{8,11}$", + "required": false, + "info": "N\u00famero do telefone (DDD+FONE).", + "format": "" + }, + "FAX": { + "type": "string", + "regex": "^[0-9]{8,11}$", + "required": false, + "info": "N\u00famero do fax.", + "format": "" + }, + "EMAIL": { + "type": "string", + "regex": "email", + "required": false, + "info": "Endere\u00e7o do correio eletr\u00f4nico.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0015.json b/storage/layouts/ICMSIPI/v017/0015.json new file mode 100755 index 00000000..2b3c8da8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0015.json @@ -0,0 +1,16 @@ +{ + "UF_ST": { + "type": "string", + "regex": "^[A-Z]{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o do contribuinte substitu\u00eddo ou unidade de federa\u00e7\u00e3o do consumidor final n\u00e3o contribuinte - ICMS Destino EC 87\/15.", + "format": "" + }, + "IE_ST": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do contribuinte substituto na unidade da federa\u00e7\u00e3o do contribuinte substitu\u00eddo ou unidade de federa\u00e7\u00e3o do consumidor final n\u00e3o contribuinte - ICMS Destino EC 87\/15.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0100.json b/storage/layouts/ICMSIPI/v017/0100.json new file mode 100755 index 00000000..cbe81570 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0100.json @@ -0,0 +1,93 @@ +{ + "NOME": { + "type": "string", + "regex": "^.{3,100}$", + "required": true, + "info": "Nome do contabilista", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": true, + "info": "N\u00famero de inscri\u00e7\u00e3o do contabilista no CPF", + "format": "" + }, + "CRC": { + "type": "string", + "regex": "^.{8,15}$", + "required": true, + "info": "N\u00famero de inscri\u00e7\u00e3o do contabilista no Conselho Regional de Contabilidade", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do escrit\u00f3rio de contabilidade no CNPJ, se houver.", + "format": "" + }, + "CEP": { + "type": "string", + "regex": "^[0-9]{8}$", + "required": false, + "info": "C\u00f3digo de Endere\u00e7amento Posta.l", + "format": "" + }, + "END": { + "type": "string", + "regex": "^.{3,60}$", + "required": false, + "info": "Logradouro e endere\u00e7o do im\u00f3vel.", + "format": "" + }, + "NUM": { + "type": "string", + "regex": "^.{1,10}$", + "required": false, + "info": "N\u00famero do im\u00f3vel.", + "format": "" + }, + "COMPL": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Dados complementares do endere\u00e7o.", + "format": "" + }, + "BAIRRO": { + "type": "string", + "regex": "^.{3,60}$", + "required": false, + "info": "Bairro em que o im\u00f3vel est\u00e1 situado.", + "format": "" + }, + "FONE": { + "type": "string", + "regex": "^[0-9]{8,11}$", + "required": false, + "info": "N\u00famero do telefone (DDD+FONE).", + "format": "" + }, + "FAX": { + "type": "string", + "regex": "^[0-9]{8,11}$", + "required": false, + "info": "N\u00famero do fax.", + "format": "" + }, + "EMAIL": { + "type": "string", + "regex": "email", + "required": true, + "info": "Endere\u00e7o do correio eletr\u00f4nico.", + "format": "" + }, + "COD_MUN": { + "type": "integer", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio, conforme tabela IBGE.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0150.json b/storage/layouts/ICMSIPI/v017/0150.json new file mode 100755 index 00000000..7f7d5f1d --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0150.json @@ -0,0 +1,86 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo de identifica\u00e7\u00e3o do participante no arquivo.", + "format": "" + }, + "NOME": { + "type": "string", + "regex": "^.{1,100}$", + "required": true, + "info": "Nome pessoal ou empresarial do participante.", + "format": "" + }, + "COD_PAIS": { + "type": "integer", + "regex": "^[0-9]{4,5}$", + "required": true, + "info": "C\u00f3digo do pa\u00eds do participante, conforme a tabela indicada no item 3.2.1", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ do participante.", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": false, + "info": "CPF do participante.", + "format": "" + }, + "IE": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Estadual do participante.", + "format": "" + }, + "COD_MUN": { + "type": "integer", + "regex": "^[0-9]{7}$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio, conforme a tabela IBGE", + "format": "" + }, + "SUFRAMA": { + "type": "string", + "regex": "^[0-9]{8,9}$", + "required": false, + "info": "N\u00famero de inscri\u00e7\u00e3o do participante na SUFRAMA.", + "format": "" + }, + "END": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Logradouro e endere\u00e7o do im\u00f3vel", + "format": "" + }, + "NUM": { + "type": "string", + "regex": "^.{1,10}$", + "required": false, + "info": "N\u00famero do im\u00f3vel", + "format": "" + }, + "COMPL": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Dados complementares do endere\u00e7o", + "format": "" + }, + "BAIRRO": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Bairro em que o im\u00f3vel est\u00e1 situado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0175.json b/storage/layouts/ICMSIPI/v017/0175.json new file mode 100755 index 00000000..408bfb25 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0175.json @@ -0,0 +1,23 @@ +{ + "DT_ALT": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de altera\u00e7\u00e3o do cadastro", + "format": "" + }, + "NR_CAMPO": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "N\u00famero do campo alterado (campos 03 a 13, exceto 07)", + "format": "" + }, + "CONT_ANT": { + "type": "string", + "regex": "^.{3,100}$", + "required": true, + "info": "Conte\u00fado anterior do campo.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0190.json b/storage/layouts/ICMSIPI/v017/0190.json new file mode 100755 index 00000000..416037bc --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0190.json @@ -0,0 +1,16 @@ +{ + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "C\u00f3digo da unidade de medida.", + "format": "" + }, + "DESCR": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o da unidade de medida.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0200.json b/storage/layouts/ICMSIPI/v017/0200.json new file mode 100755 index 00000000..c002bb14 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0200.json @@ -0,0 +1,86 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item", + "format": "" + }, + "DESCR_ITEM": { + "type": "string", + "regex": "^.{3,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o do item", + "format": "" + }, + "COD_BARRA": { + "type": "string", + "regex": "^(SEM GTIN)|([0-9]{8,14}|\\-)$", + "required": false, + "info": "Representa\u00e7\u00e3o alfanum\u00e9rico do c\u00f3digo de barra do produto, se houver", + "format": "" + }, + "COD_ANT_ITEM": { + "type": "string", + "regex": "^.{1,6}$", + "required": false, + "info": "C\u00f3digo anterior do item com rela\u00e7\u00e3o \u00e0 \u00faltima informa\u00e7\u00e3o anterior", + "format": "" + }, + "UNID_INV": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade de medida utilizada na quantifica\u00e7\u00e3o de estoques.", + "format": "" + }, + "TIPO_ITEM": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Tipo do item \u2013 Atividades Industriais, Comerciais e Servi\u00e7os:00 \u2013 Mercadoria para Revenda;01 \u2013 Mat\u00e9ria-prima;02 \u2013 Embalagem;03 \u2013 Produto em Processo;04 \u2013 Produto Acabado;05 \u2013 Subproduto;06 \u2013 Produto Intermedi\u00e1rio;07 \u2013 Material de Uso e Consumo;08 \u2013 Ativo Imobilizado;09 \u2013 Servi\u00e7os;10 \u2013 Outros insumos;99 \u2013 Outras", + "format": "" + }, + "COD_NCM": { + "type": "string", + "regex": "^([0-9]{8})|([0-9]{2})$", + "required": false, + "info": "C\u00f3digo da Nomenclatura Comum do Mercosul", + "format": "" + }, + "EX_IPI": { + "type": "string", + "regex": "^[0-9]{1,3}$", + "required": false, + "info": "C\u00f3digo EX, conforme a TIPI", + "format": "" + }, + "COD_GEN": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": false, + "info": "C\u00f3digo do g\u00eanero do item, conforme a Tabela 4.2.1", + "format": "" + }, + "COD_LST": { + "type": "string", + "regex": "^([0-9]{2}\\.[0-9]{2})$", + "required": false, + "info": "C\u00f3digo do servi\u00e7o conforme lista do Anexo I da Lei Complementar Federal n\u00ba 116\/03.", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^(\\d*\\.)?\\d+$", + "required": false, + "info": "Al\u00edquota de ICMS aplic\u00e1vel ao item nas opera\u00e7\u00f5es internas", + "format": "6v2" + }, + "CEST": { + "type": "string", + "regex": "^[0-9]{7}$", + "required": false, + "info": "C\u00f3digo Especificador da Substitui\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0205.json b/storage/layouts/ICMSIPI/v017/0205.json new file mode 100755 index 00000000..b2cf0310 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0205.json @@ -0,0 +1,30 @@ +{ + "DESCR_ANT_ITEM": { + "type": "string", + "regex": "^.{3,255}$", + "required": false, + "info": "Descri\u00e7\u00e3o anterior do item", + "format": "" + }, + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial de utiliza\u00e7\u00e3o da descri\u00e7\u00e3o do item", + "format": "" + }, + "DT_FIM": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final de utiliza\u00e7\u00e3o da descri\u00e7\u00e3o do item", + "format": "" + }, + "COD_ANT_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo anterior do item com rela\u00e7\u00e3o \u00e0 \u00faltima informa\u00e7\u00e3o apresentada.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0206.json b/storage/layouts/ICMSIPI/v017/0206.json new file mode 100755 index 00000000..67bc7315 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0206.json @@ -0,0 +1,9 @@ +{ + "COD_COMB": { + "type": "string", + "regex": "^[0-9]{9}$", + "required": true, + "info": "C\u00f3digo do produto, conforme tabela publicada pela ANP", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0210.json b/storage/layouts/ICMSIPI/v017/0210.json new file mode 100755 index 00000000..5669a65c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0210.json @@ -0,0 +1,23 @@ +{ + "COD_ITEM_COMP": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item componente\/insumo (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_COMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item componente\/insumo para se produzir uma unidade do item composto\/resultante", + "format": "15v6" + }, + "PERDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Perda\/quebra normal percentual do insumo\/componente para se produzir uma unidade do item composto\/resultante", + "format": "15v4" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0220.json b/storage/layouts/ICMSIPI/v017/0220.json new file mode 100755 index 00000000..a13ef417 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0220.json @@ -0,0 +1,23 @@ +{ + "UNID_CONV": { + "type": "string", + "regex": "^.{1,6}", + "required": true, + "info": "Unidade comercial a ser convertida na unidade de estoque, referida no registro 0200.", + "format": "" + }, + "FAT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Fator de convers\u00e3o: fator utilizado para converter (multiplicar) a unidade a ser convertida na unidade adotada no invent\u00e1rio.", + "format": "15v6" + }, + "COD_BARRA": { + "type": "string", + "regex": "^([0-9]{8}|[0-9]{12,14})$", + "required": false, + "info": "informar o c\u00f3digo GTIN-8, GTIN-12, GTIN-13 ou GTIN-14 da unidade comercial", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0221.json b/storage/layouts/ICMSIPI/v017/0221.json new file mode 100755 index 00000000..601fc33b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0221.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM_ATOMICO": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Informar o c\u00f3digo do item at\u00f4mico contido no item informado no 0200 Pai.", + "format": "" + }, + "QTD_CONTIDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar quantos itens at\u00f4micos est\u00e3o contidos no item informado no 0200 Pai.", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0300.json b/storage/layouts/ICMSIPI/v017/0300.json new file mode 100755 index 00000000..1fbb41a6 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0300.json @@ -0,0 +1,44 @@ +{ + "COD_IND_BEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo individualizado do bem ou componente", + "format": "" + }, + "IDENT_MERC": { + "type": "integer", + "regex": "^[1-2]{1}$", + "required": true, + "info": "Identifica\u00e7\u00e3o do tipo de mercadoria", + "format": "" + }, + "DESCR_ITEM": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o do bem ou componente", + "format": "" + }, + "COD_PRNC": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo de cadastro do bem principal", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo da conta anal\u00edtica de contabiliza\u00e7\u00e3o", + "format": "" + }, + "NR_PARC": { + "type": "integer", + "regex": "^[0-9]{1,3}$", + "required": false, + "info": "N\u00famero total de parcelas a serem apropriadas", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0305.json b/storage/layouts/ICMSIPI/v017/0305.json new file mode 100755 index 00000000..fa84ef9c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0305.json @@ -0,0 +1,23 @@ +{ + "COD_CCUS": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do centro de custo", + "format": "" + }, + "FUNC": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o sucinta da fun\u00e7\u00e3o do bem", + "format": "" + }, + "VIDA_UTIL": { + "type": "integer", + "regex": "^[0-9]{1,3}$", + "required": false, + "info": "Vida \u00fatil estimada do bem, em n\u00famero de meses", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0400.json b/storage/layouts/ICMSIPI/v017/0400.json new file mode 100755 index 00000000..ab0752d5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0400.json @@ -0,0 +1,16 @@ +{ + "COD_NAT": { + "type": "string", + "regex": "^.{1,10}$", + "required": true, + "info": "Co\u0301digo da natureza da operac\u0327a\u0303o\/prestac\u0327a\u0303o", + "format": "" + }, + "DESCR_NAT": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descric\u0327a\u0303o da natureza da operac\u0327a\u0303o\/prestac\u0327a\u0303o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0450.json b/storage/layouts/ICMSIPI/v017/0450.json new file mode 100755 index 00000000..24a88168 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0450.json @@ -0,0 +1,16 @@ +{ + "COD_INF": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Co\u0301digo da informac\u0327a\u0303o complementar do documento fiscal.", + "format": "" + }, + "TXT": { + "type": "string", + "regex": "^.{1,1000}$", + "required": true, + "info": "Texto livre da informac\u0327a\u0303o complementar existente no documento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0460.json b/storage/layouts/ICMSIPI/v017/0460.json new file mode 100755 index 00000000..1c9a6de1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0460.json @@ -0,0 +1,16 @@ +{ + "COD_OBS": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "C\u00f3digo da Observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + }, + "TXT": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o da observa\u00e7\u00e3o vinculada ao lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0500.json b/storage/layouts/ICMSIPI/v017/0500.json new file mode 100755 index 00000000..0a02a8c1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0500.json @@ -0,0 +1,44 @@ +{ + "DT_ALT": { + "type": "string", + "regex": "^[0-9]{8}$", + "required": true, + "info": "Data da inclus\u00e3o\/altera\u00e7\u00e3o", + "format": "" + }, + "COD_NAT_CC": { + "type": "string", + "regex": "^(01|02|03|04|05|09)$", + "required": true, + "info": "C\u00f3digo da natureza da conta\/grupo de contas", + "format": "" + }, + "IND_CTA": { + "type": "string", + "regex": "^(A|S)$", + "required": true, + "info": "Indicador do tipo de conta", + "format": "" + }, + "NIVEL": { + "type": "integer", + "regex": "^[0-9]{1,5}$", + "required": true, + "info": "N\u00edvel da conta anal\u00edtica\/grupo de contas", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo da conta anal\u00edtica\/grupo de contas.", + "format": "" + }, + "NOME_CTA": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Nome da conta anal\u00edtica\/grupo de contas", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/0600.json b/storage/layouts/ICMSIPI/v017/0600.json new file mode 100755 index 00000000..1aec89bd --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/0600.json @@ -0,0 +1,23 @@ +{ + "DT_ALT": { + "type": "string", + "regex": "^[0-9]{8}$", + "required": true, + "info": "Data da inclus\u00e3o\/altera\u00e7\u00e3o", + "format": "" + }, + "COD_CCUS": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do centro de custo", + "format": "" + }, + "CCUS": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Nome do centro de custo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1001.json b/storage/layouts/ICMSIPI/v017/1001.json new file mode 100755 index 00000000..8d986648 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1010.json b/storage/layouts/ICMSIPI/v017/1010.json new file mode 100755 index 00000000..cdcfc90a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1010.json @@ -0,0 +1,93 @@ +{ + "IND_EXP": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg. 1100 - Ocorreu averbac\u0327a\u0303o (conclusa\u0303o) de exportac\u0327a\u0303o no peri\u0301odo: S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_CCRF": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg 1200 \u2013 Existem informac\u0327o\u0303es acerca de cre\u0301ditos de ICMS a serem controlados, definidos pela Sefaz: S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_COMB": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg. 1300 \u2013 E\u0301 come\u0301rcio varejista de combusti\u0301veis com movimentac\u0327a\u0303o\n e\/ou estoque no peri\u0301odo: S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_USINA": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg. 1390 \u2013 Usinas de ac\u0327u\u0301car e\/a\u0301lcool \u2013 O estabelecimento e\u0301 produtor\n de ac\u0327u\u0301car e\/ou a\u0301lcool carburante com movimentac\u0327a\u0303o e\/ou estoque no peri\u0301odo: S \u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_VA": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg 1400 \u2013 Sendo o registro obrigato\u0301rio em sua Unidade de Federac\u0327a\u0303o,\n existem informac\u0327o\u0303es a serem prestadas neste registro: S \u2013 Sim; N - Na\u0303o", + "format": "" + }, + "IND_EE": { + "type": "string", + "regex": "^[S|N]$", + "required": true, + "info": "Reg 1500 - A empresa e\u0301 distribuidora de energia e ocorreu fornecimento\n de energia ele\u0301trica para consumidores de outra UF: S \u2013 Sim; N - Na\u0303o", + "format": "" + }, + "IND_CART": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg 1600 - Realizou vendas com Carta\u0303o de Cre\u0301dito ou de de\u0301bito: S\u2013 Sim; N - Na\u0303o", + "format": "" + }, + "IND_FORM": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg. 1700 \u2013 Foram emitidos documentos fiscais em papel no peri\u0301odo em unidade da federac\u0327a\u0303o que exija o controle de utilizac\u0327a\u0303o de documentos fiscais: S \u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_AER": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg 1800 \u2013 A empresa prestou servic\u0327os de transporte ae\u0301reo de cargas e de passageiros: S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_GIAF1": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg. 1960 - Possui informa\u00e7\u00f5es GIAF1?S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_GIAF3": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg. 1960 - Possui informa\u00e7\u00f5es GIAF3?S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_GIAF4": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg. 1960 - Possui informa\u00e7\u00f5es GIAF4?S\u2013 Sim N - Na\u0303o", + "format": "" + }, + "IND_REST_RESSARC_COMPL_ICMS": { + "type": "string", + "regex": "^[S|N]$", + "required": false, + "info": "Reg. 1250 \u2013 Possui informa\u00e7\u00f5es consolidadas de saldos de restitui\u00e7\u00e3o, ressarcimento e complementa\u00e7\u00e3o do ICMS?S\u2013 Sim N - Na\u0303o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1100.json b/storage/layouts/ICMSIPI/v017/1100.json new file mode 100755 index 00000000..7da364e9 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1100.json @@ -0,0 +1,79 @@ +{ + "IND_DOC": { + "type": "integer", + "regex": "^[0|1|2]$", + "required": true, + "info": "Informe o tipo de documento: 0 \u2013 Declarac\u0327a\u0303o de Exportac\u0327a\u0303o; 1 \u2013 Declarac\u0327a\u0303o Simplificada de Exportac\u0327a\u0303o; 2 \u2013 Declarac\u0327a\u0303o U\u0301nica de Exportac\u0327a\u0303o.", + "format": "" + }, + "NRO_DE": { + "type": "string", + "regex": "^.{1,14}$", + "required": true, + "info": "Nu\u0301mero da declarac\u0327a\u0303o", + "format": "" + }, + "DT_DE": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da declarac\u0327a\u0303o (DDMMAAAA)", + "format": "" + }, + "NAT_EXP": { + "type": "integer", + "regex": "^[0|1]$", + "required": true, + "info": "Preencher com: 0 - Exportac\u0327a\u0303o Direta 1 - Exportac\u0327a\u0303o Indireta", + "format": "" + }, + "NRO_RE": { + "type": "integer", + "regex": "^\\d{1,12}$", + "required": false, + "info": "No do registro de Exportac\u0327a\u0303o", + "format": "" + }, + "DT_RE": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do Registro de Exportac\u0327a\u0303o (DDMMAAAA)", + "format": "" + }, + "CHC_EMB": { + "type": "string", + "regex": "^.{1,18}$", + "required": false, + "info": "No do conhecimento de embarque", + "format": "" + }, + "DT_CHC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do conhecimento de embarque (DDMMAAAA)", + "format": "" + }, + "DT_AVB": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da averbac\u0327a\u0303o da Declarac\u0327a\u0303o de exportac\u0327a\u0303o (ddmmaaaa)", + "format": "" + }, + "TP_CHC": { + "type": "integer", + "regex": "^0[1-9]|1[0-9]|9[1-3]|20|99$", + "required": true, + "info": "Informac\u0327a\u0303o do tipo de conhecimento de embarque:01 \u2013 AWB; 02 \u2013 MAWB; 03 \u2013 HAWB; 04 \u2013 COMAT; 06 \u2013 R. EXPRESSAS; 07 \u2013 ETIQ. REXPRESSAS; 08 \u2013 HR. EXPRESSAS; 09 \u2013 AV7; 10 \u2013 BL; 11 \u2013 MBL; 12 \u2013 HBL; 13 \u2013 CRT; 14 \u2013 DSIC; 16 \u2013 COMAT BL; 17 \u2013 RWB; 18 \u2013 HRWB; 19 \u2013 TIF\/DTA; 20 \u2013 CP2;91 \u2013 NA\u0302O IATA; 92 \u2013 MNAO IATA; 93 \u2013 HNAO IATA; 99 \u2013 OUTROS.", + "format": "" + }, + "PAIS": { + "type": "string", + "regex": "^\\d{1,3}$", + "required": true, + "info": "Co\u0301digo do pai\u0301s de destino da mercadoria (Preencher conforme tabela do SISCOMEX)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1105.json b/storage/layouts/ICMSIPI/v017/1105.json new file mode 100755 index 00000000..d8bbdb00 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1105.json @@ -0,0 +1,44 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0][1]|[5][5]$", + "required": true, + "info": "Co\u0301digo do modelo da NF, conforme tabela 4.1.1", + "format": "" + }, + "SERIE": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "Se\u0301rie da Nota Fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^[1-9]\\d{0,8}$", + "required": true, + "info": "Nu\u0301mero de Nota Fiscal de Exportac\u0327a\u0303o emitida pelo Exportador", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletro\u0302nica", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o da NF de exportac\u0327a\u0303o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1110.json b/storage/layouts/ICMSIPI/v017/1110.json new file mode 100755 index 00000000..647cca9a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1110.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante-Fornecedor da Mercadoria destinada a\u0300 exportac\u0327a\u0303o (campo 02 do Registro 0150)", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^[0][1|4]|[1][B]|[5][5]$", + "required": true, + "info": "Co\u0301digo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do documento fiscal recebido com fins especi\u0301ficos de exportac\u0327a\u0303o.", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^[1-9]\\d{0,8}$", + "required": true, + "info": "Nu\u0301mero do documento fiscal recebido com fins especi\u0301ficos de exportac\u0327a\u0303o.", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal recebido com fins especi\u0301ficos de exportac\u0327a\u0303o", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletro\u0302nica", + "format": "" + }, + "NR_MEMO": { + "type": "integer", + "regex": "^\\d+$", + "required": false, + "info": "Nu\u0301mero do Memorando de Exportac\u0327a\u0303o", + "format": "" + }, + "QTD": { + "type": "integer", + "regex": "^[1-9](\\d?)+$", + "required": true, + "info": "Quantidade do item efetivamente exportado.", + "format": "" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1200.json b/storage/layouts/ICMSIPI/v017/1200.json new file mode 100755 index 00000000..12ad35ed --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1200.json @@ -0,0 +1,44 @@ +{ + "COD_AJ_APUR": { + "type": "string", + "regex": "^\\d{3}9\\d{4}$", + "required": true, + "info": "Co\u0301digo de ajuste, conforme informado na Tabela indicada no item 5.1.1.", + "format": "" + }, + "SLD_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo de cre\u0301ditos fiscais de peri\u0301odos anteriores", + "format": "15v2" + }, + "CRED_APR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Total de cre\u0301dito apropriado no me\u0302s", + "format": "15v2" + }, + "CRED_RECEB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Total de cre\u0301ditos recebidos por transfere\u0302ncia", + "format": "15v2" + }, + "CRED_UTIL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Total de cre\u0301ditos utilizados no peri\u0301odo", + "format": "15v2" + }, + "SLD_CRED_FIM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo de cre\u0301dito fiscal acumulado a transportar para o peri\u0301odo seguinte", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1210.json b/storage/layouts/ICMSIPI/v017/1210.json new file mode 100755 index 00000000..53cc6a57 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1210.json @@ -0,0 +1,30 @@ +{ + "TIPO_UTIL": { + "type": "string", + "regex": "^.{4}$", + "required": true, + "info": "Tipo de utilizac\u0327a\u0303o do cre\u0301dito, conforme tabela indicada no item 5.5.", + "format": "" + }, + "NR_DOC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do documento utilizado na baixa de cre\u0301ditos", + "format": "" + }, + "VL_CRED_UTIL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Total de cre\u0301dito utilizado", + "format": "15v2" + }, + "CHV_DOCE": { + "type": "string", + "regex": "^\\d{44}$", + "required": false, + "info": "Chave do Documento Eletro\u0302nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1250.json b/storage/layouts/ICMSIPI/v017/1250.json new file mode 100755 index 00000000..07b9dd6d --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1250.json @@ -0,0 +1,37 @@ +{ + "VL_CREDITO_ICMS_OP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do ICMS opera\u00e7\u00e3o pr\u00f3pria que o informante tem direito ao cr\u00e9dito, na forma prevista na legisla\u00e7\u00e3o, referente \u00e0s hip\u00f3teses de restitui\u00e7\u00e3o em que h\u00e1 previs\u00e3o deste cr\u00e9dito.", + "format": "15v2" + }, + "VL_ICMS_ST_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do ICMS\/ST que o informante tem direito ao cr\u00e9dito, na forma prevista na legisla\u00e7\u00e3o, referente \u00e0s hip\u00f3teses de restitui\u00e7\u00e3o em que h\u00e1 previs\u00e3o deste cr\u00e9dito.", + "format": "15v2" + }, + "VL_FCP_ST_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do FCP_ST agregado ao valor do ICMS\/ST informado no campo VL_ICMS_ST_REST.", + "format": "15v2" + }, + "VL_ICMS_ST_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do d\u00e9bito referente ao complemento do imposto, Nos casos previstos na legisla\u00e7\u00e3o.", + "format": "15v2" + }, + "VL_FCP_ST_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do FCP_ST agregado ao valor informado no campo VL_ICMS_ST_COMPL", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1255.json b/storage/layouts/ICMSIPI/v017/1255.json new file mode 100755 index 00000000..44cc272e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1255.json @@ -0,0 +1,44 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "VL_CREDITO_ICMS_OP_MOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do ICMS opera\u00e7\u00e3o pr\u00f3pria que o informante tem direito ao cr\u00e9dito, na forma prevista na legisla\u00e7\u00e3o, referente \u00e0s hip\u00f3teses de restitui\u00e7\u00e3o em que h\u00e1 previs\u00e3o deste cr\u00e9dito, para o mesmo COD_MOT_REST_COMPL", + "format": "15v2" + }, + "VL_ICMS_ST_REST_MOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do ICMS\/ST que o informante tem direito ao cr\u00e9dito, na forma prevista na legisla\u00e7\u00e3o, referente \u00e0s hip\u00f3teses de restitui\u00e7\u00e3o em que h\u00e1 previs\u00e3o deste cr\u00e9dito, para o mesmo COD_MOT_REST_COMPL", + "format": "15v2" + }, + "VL_FCP_ST_REST_MOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do FCP_ST agregado ao valor do ICMS\/ST informado no campo VL_ICMS_ST_REST_MOT", + "format": "15v2" + }, + "VL_ICMS_ST_COMPL_MOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do d\u00e9bito referente ao complemento do imposto, nos casos previstos na legisla\u00e7\u00e3o, para o mesmo COD_MOT_REST_COMPL", + "format": "15v2" + }, + "VL_FCP_ST_COMPL_MOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informar o valor total do FCP_ST agregado ao valor informado no campo VL_ICMS_ST_COMPL_MOT", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1300.json b/storage/layouts/ICMSIPI/v017/1300.json new file mode 100755 index 00000000..7262f793 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1300.json @@ -0,0 +1,72 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do Produto, constante do registro 0200", + "format": "" + }, + "DT_FECH": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do fechamento da movimentac\u0327a\u0303o", + "format": "" + }, + "ESTQ_ABERT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque no ini\u0301cio do dia, em litros", + "format": "15v3" + }, + "VOL_ENTR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Recebido no dia (em litros)", + "format": "15v3" + }, + "VOL_DISP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Disponi\u0301vel (04 + 05), em litros", + "format": "15v3" + }, + "VOL_SAIDAS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Total das Sai\u0301das, em litros", + "format": "15v3" + }, + "ESTQ_ESCR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque Escritural (06 \u2013 07), litros", + "format": "15v3" + }, + "VAL_AJ_PERDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da Perda, em litros", + "format": "15v3" + }, + "VAL_AJ_GANHO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ganho, em litros", + "format": "15v3" + }, + "FECH_FISICO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque de Fechamento, em litros", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1310.json b/storage/layouts/ICMSIPI/v017/1310.json new file mode 100755 index 00000000..f1e59e25 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1310.json @@ -0,0 +1,65 @@ +{ + "NUM_TANQUE": { + "type": "string", + "regex": "^.{1,3}$", + "required": true, + "info": "Tanque que armazena o combusti\u0301vel.", + "format": "" + }, + "ESTQ_ABERT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque no inicio do dia, em litros", + "format": "15v3" + }, + "VOL_ENTR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Recebido no dia (em litros)", + "format": "15v3" + }, + "VOL_DISP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Disponi\u0301vel (03 + 04), em litros", + "format": "15v3" + }, + "VOL_SAIDAS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume Total das Sai\u0301das, em litros", + "format": "15v3" + }, + "ESTQ_ESCR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque Escritural(05 \u2013 06), litros", + "format": "15v3" + }, + "VAL_AJ_PERDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da Perda, em litros", + "format": "15v3" + }, + "VAL_AJ_GANHO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ganho, em litros", + "format": "15v3" + }, + "FECH_FISICO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Volume aferido no tanque, em litros. Estoque de fechamento fi\u0301sico do tanque.", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1320.json b/storage/layouts/ICMSIPI/v017/1320.json new file mode 100755 index 00000000..242854d8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1320.json @@ -0,0 +1,72 @@ +{ + "NUM_BICO": { + "type": "integer", + "regex": "^\\d+$", + "required": true, + "info": "Bico Ligado a\u0300 Bomba", + "format": "" + }, + "NR_INTERV": { + "type": "integer", + "regex": "^\\d+$", + "required": false, + "info": "Nu\u0301mero da intervenc\u0327a\u0303o", + "format": "" + }, + "MOT_INTERV": { + "type": "string", + "regex": "^.{1,50}$", + "required": false, + "info": "Motivo da Intervenc\u0327a\u0303o", + "format": "" + }, + "NOM_INTERV": { + "type": "string", + "regex": "^.{1,30}$", + "required": false, + "info": "Nome do Interventor", + "format": "" + }, + "CNPJ_INTERV": { + "type": "integer", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da empresa responsa\u0301vel pela intervenc\u0327a\u0303o", + "format": "" + }, + "CPF_INTERV": { + "type": "integer", + "regex": "^[0-9]{11}$", + "required": false, + "info": "CPF do te\u0301cnico responsa\u0301vel pela intervenc\u0327a\u0303o", + "format": "" + }, + "VAL_FECHA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da leitura final do contador, no fechamento do bico.", + "format": "15v3" + }, + "VAL_ABERT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da leitura inicial do contador, na abertura do bico.", + "format": "15v3" + }, + "VOL_AFERI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Aferic\u0327o\u0303es da Bomba, em litros", + "format": "15v3" + }, + "VOL_VENDAS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Vendas (08 \u2013 09 - 10 ) do bico , em litros", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1350.json b/storage/layouts/ICMSIPI/v017/1350.json new file mode 100755 index 00000000..22642d05 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1350.json @@ -0,0 +1,30 @@ +{ + "SERIE": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Nu\u0301mero de Se\u0301rie da Bomba", + "format": "" + }, + "FABRICANTE": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Nome do Fabricante da Bomba", + "format": "" + }, + "MODELO": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Modelo da Bomba", + "format": "" + }, + "TIPO_MEDICAO": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Identificador de medic\u0327a\u0303o: 0 - analo\u0301gico; 1 \u2013 digital", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1360.json b/storage/layouts/ICMSIPI/v017/1360.json new file mode 100755 index 00000000..bdb59a93 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1360.json @@ -0,0 +1,16 @@ +{ + "NUM_LACRE": { + "type": "string", + "regex": "^.{1,20}$", + "required": true, + "info": "Nu\u0301mero do Lacre associado na Bomba", + "format": "" + }, + "DT_APLICACAO": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de aplicac\u0327a\u0303o do Lacre", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1370.json b/storage/layouts/ICMSIPI/v017/1370.json new file mode 100755 index 00000000..bfa61993 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1370.json @@ -0,0 +1,23 @@ +{ + "NUM_BICO": { + "type": "integer", + "regex": "^\\d{1,3}$", + "required": true, + "info": "Nu\u0301mero sequencial do bico ligado a bomba", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do Produto, constante do registro 0200", + "format": "" + }, + "NUM_TANQUE": { + "type": "string", + "regex": "^.{1,3}$", + "required": true, + "info": "Tanque que armazena o combusti\u0301vel.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1390.json b/storage/layouts/ICMSIPI/v017/1390.json new file mode 100755 index 00000000..e5f7be70 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1390.json @@ -0,0 +1,9 @@ +{ + "COD_PROD": { + "type": "string", + "regex": "^0[1|2|3]$", + "required": true, + "info": "Co\u0301digo do produto: 01 \u2013 A\u0301lcool Eti\u0301lico Hidratado Carburante 02 - A\u0301lcool Eti\u0301lico Anidro Carburante 03 \u2013 Ac\u0327u\u0301car", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1391.json b/storage/layouts/ICMSIPI/v017/1391.json new file mode 100755 index 00000000..9cce80e4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1391.json @@ -0,0 +1,114 @@ +{ + "DT_REGISTRO": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de produc\u0327a\u0303o (DDMMAAAA)", + "format": "" + }, + "QTD_MOID": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade de cana esmagada (toneladas)", + "format": "15v2" + }, + "ESTQ_INI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque inicial (litros \/ Kg)", + "format": "15v2" + }, + "QTD_PRODUZ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade produzida (litros \/ Kg)", + "format": "15v2" + }, + "ENT_ANID_HID": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Entrada de a\u0301lcool anidro decorrente da transformac\u0327a\u0303o do a\u0301lcool hidratado ou Entrada de a\u0301lcool hidratado decorrente da transformac\u0327a\u0303o do a\u0301lcool anidro (litros)", + "format": "15v2" + }, + "OUTR_ENTR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras entradas (litros \/ Kg)", + "format": "15v2" + }, + "PERDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Evaporac\u0327a\u0303o (litros) ou Quebra de peso (Kg)", + "format": "15v2" + }, + "CONS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Consumo (litros)", + "format": "15v2" + }, + "SAI_ANI_HID": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Sai\u0301da para transformac\u0327a\u0303o (litros).", + "format": "15v2" + }, + "SAIDAS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Sai\u0301das (litros \/ Kg)", + "format": "15v2" + }, + "ESTQ_FIN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Estoque final (litros \/ Kg)", + "format": "15v2" + }, + "ESTQ_INI_MEL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Estoque inicial de mel residual (Kg)", + "format": "15v2" + }, + "PROD_DIA_MEL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Produc\u0327a\u0303o de mel residual (Kg) e entradas de mel (Kg)", + "format": "15v2" + }, + "UTIL_MEL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Mel residual utilizado (Kg) e sai\u0301das de mel (Kg)", + "format": "15v2" + }, + "PROD_ALC_MEL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Produc\u0327a\u0303o de a\u0301lcool (litros) ou ac\u0327u\u0301car (Kg) proveniente do mel residual.", + "format": "15v2" + }, + "OBS": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Observac\u0327o\u0303es", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1400.json b/storage/layouts/ICMSIPI/v017/1400.json new file mode 100755 index 00000000..13b93b3b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1400.json @@ -0,0 +1,23 @@ +{ + "COD_ITEM_IPM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do item (Tabela pro\u0301pria da unidade da federac\u0327a\u0303o (Tabela de Itens UF I\u0301ndice de Participac\u0327a\u0303o dos Munici\u0301pios) ou campo 02 do Registro 0200", + "format": "" + }, + "MUN": { + "type": "integer", + "regex": "^\\d{7}$", + "required": true, + "info": "Co\u0301digo do Munici\u0301pio de origem\/destino", + "format": "" + }, + "VALOR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor mensal correspondente ao munici\u0301pio", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1500.json b/storage/layouts/ICMSIPI/v017/1500.json new file mode 100755 index 00000000..3da597ec --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1500.json @@ -0,0 +1,184 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^.{1}$", + "required": true, + "info": "Indicador do tipo de operac\u0327a\u0303o: 1- Sai\u0301da", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^.{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal: 0- Emissa\u0303o pro\u0301pria;", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): - do adquirente, no caso das sai\u0301das.", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "COD_SIT": { + "type": "string", + "regex": "^0[0|1|6|7|8]$", + "required": true, + "info": "Co\u0301digo da situac\u0327a\u0303o do documento fiscal, conforme a Tabela 4.1.2", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^\\d{1,3}$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "COD_CONS": { + "type": "string", + "regex": "^0[1|2|3|4|5|6|7|8]$", + "required": true, + "info": "Co\u0301digo de classe de consumo de energia ele\u0301trica: 01 - Comercial 02 - Consumo Pro\u0301prio 03 - Iluminac\u0327a\u0303o Pu\u0301blica 04 - Industrial 05 - Poder Pu\u0301blico 06 - Residencial 07 - Rural 08 -Servic\u0327o Pu\u0301blico", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^\\d{1,9}$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "DT_E_S": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da entrada ou da sai\u0301da", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_FORN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total fornecido\/consumido", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos servic\u0327os na\u0303o-tributados pelo ICMS", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total cobrado em nome de terceiros", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total de despesas acesso\u0301rias indicadas no documento fiscal", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de ca\u0301lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de ca\u0301lculo do ICMS substituic\u0327a\u0303o tributa\u0301ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS retido por substituic\u0327a\u0303o tributa\u0301ria", + "format": "15v2" + }, + "COD_INF": { + "type": "string", + "regex": "^.{1,6}$", + "required": false, + "info": "Co\u0301digo da informac\u0327a\u0303o complementar do documento fiscal (campo 02 do Registro 0450)", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "TP_LIGACAO": { + "type": "integer", + "regex": "^[1|2|3]$", + "required": false, + "info": "Co\u0301digo de tipo de Ligac\u0327a\u0303o 1 - Monofa\u0301sico 2 - Bifa\u0301sico 3 - Trifa\u0301sico", + "format": "" + }, + "COD_GRUPO_TENSAO": { + "type": "string", + "regex": "^0[1-9]|1[0-4]$", + "required": false, + "info": "Co\u0301digo de grupo de tensa\u0303o: 01 - A1 - Alta Tensa\u0303o (230kV ou mais) 02 - A2 - Alta Tensa\u0303o (88 a 138kV) 03 - A3 - Alta Tensa\u0303o (69kV) 04 - A3a - Alta Tensa\u0303o (30kV a 44kV) 05 - A4 - Alta Tensa\u0303o (2,3kV a 25kV) 06 - AS - Alta Tensa\u0303o Subterra\u0302neo 06 07 - B1 - Residencial 07 08 - B1 - Residencial Baixa Renda 08 09 - B2 - Rural 09 10 - B2 - Cooperativa de Eletrificac\u0327a\u0303o Rural 11 - B2 - Servic\u0327o Pu\u0301blico de Irrigac\u0327a\u0303o 12 - B3 - Demais Classes 13 - B4a - Iluminac\u0327a\u0303o Pu\u0301blica - rede de distribuic\u0327a\u0303o 14 - B4b - Iluminac\u0327a\u0303o Pu\u0301blica - bulbo de la\u0302mpada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1510.json b/storage/layouts/ICMSIPI/v017/1510.json new file mode 100755 index 00000000..df887f27 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1510.json @@ -0,0 +1,142 @@ +{ + "NUM_ITEM": { + "type": "integer", + "regex": "^\\d{1,3}$", + "required": true, + "info": "Nu\u0301mero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_CLASS": { + "type": "integer", + "regex": "^\\d{4}$", + "required": true, + "info": "Co\u0301digo de classificac\u0327a\u0303o do item de energia ele\u0301trica, conforme a Tabela 4.4.1", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": false, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "CST_ICMS": { + "type": "integer", + "regex": "^\\d{3}$", + "required": true, + "info": "Co\u0301digo da Situac\u0327a\u0303o Tributa\u0301ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "integer", + "regex": "^\\d{4}$", + "required": true, + "info": "Co\u0301digo Fiscal de Operac\u0327a\u0303o e Prestac\u0327a\u0303o", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de ca\u0301lculo do ICMS", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "integer", + "regex": "^\\d{1,6}$", + "required": false, + "info": "Ali\u0301quota do ICMS", + "format": "" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS creditado\/debitado", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de ca\u0301lculo referente a\u0300 substituic\u0327a\u0303o tributa\u0301ria", + "format": "15v2" + }, + "ALIQ_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Ali\u0301quota do ICMS da substituic\u0327a\u0303o tributa\u0301ria na unidade da federac\u0327a\u0303o de destino", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS referente a\u0300 substituic\u0327a\u0303o tributa\u0301ria", + "format": "15v2" + }, + "IND_REC": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador do tipo de receita: 0- Receita pro\u0301pria; 1- Receita de terceiros", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do participante receptor da receita, terceiro da operac\u0327a\u0303o \"\n .\"(campo 02 do Registro 0150)", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Co\u0301digo da conta anali\u0301tica conta\u0301bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1600.json b/storage/layouts/ICMSIPI/v017/1600.json new file mode 100755 index 00000000..4cacc665 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1600.json @@ -0,0 +1,23 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): identificac\u0327a\u0303o \"\n .\"da instituic\u0327a\u0303o financeira e\/ou de pagamento", + "format": "" + }, + "TOT_CREDITO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total das operac\u0327o\u0303es de cre\u0301dito realizadas no peri\u0301odo", + "format": "15v2" + }, + "TOT_DEBITO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total das operac\u0327o\u0303es de de\u0301bito realizadas no peri\u0301odo", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1601.json b/storage/layouts/ICMSIPI/v017/1601.json new file mode 100755 index 00000000..ba0ac711 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1601.json @@ -0,0 +1,37 @@ +{ + "COD_PART_IP": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):\n identifica\u00e7\u00e3o da institui\u00e7\u00e3o que efetuou o pagamento", + "format": "" + }, + "COD_PART_IT": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):\n identifica\u00e7\u00e3o do intermediador da transa\u00e7\u00e3o", + "format": "" + }, + "TOT_VS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total bruto das vendas e\/ou presta\u00e7\u00f5es de\n servi\u00e7os no campo de incid\u00eancia do ICMS, incluindo\n opera\u00e7\u00f5es com imunidade do imposto", + "format": "15v2" + }, + "TOT_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total bruto das presta\u00e7\u00f5es de servi\u00e7os no campo\n de incid\u00eancia do ISS", + "format": "15v2" + }, + "TOT_OUTROS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de opera\u00e7\u00f5es deduzido dos valores dos\n campos TOT_VS e TOT_ISS.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1700.json b/storage/layouts/ICMSIPI/v017/1700.json new file mode 100755 index 00000000..469bc9d5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1700.json @@ -0,0 +1,51 @@ +{ + "COD_DISP": { + "type": "string", + "regex": "^0[0-5]$", + "required": true, + "info": "Co\u0301digo dispositivo autorizado: 00 - Formula\u0301rio de Seguranc\u0327a \u2013 impressor auto\u0302nomo 01 - FS-DA \u2013 Formula\u0301rio de Seguranc\u0327a para Impressa\u0303o de DANFE 02 \u2013 Formula\u0301rio de seguranc\u0327a - NF-e 03 - Formula\u0301rio Conti\u0301nuo 04 \u2013 Blocos 05 - Jogos Soltos", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Co\u0301digo do modelo do dispositivo autorizado, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do dispositivo autorizado", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "Subse\u0301rie do dispositivo autorizado", + "format": "" + }, + "NUM_DOC_INI": { + "type": "integer", + "regex": "^\\d{1,12}$", + "required": true, + "info": "Nu\u0301mero do dispositivo autorizado (utilizado) inicial", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "integer", + "regex": "^\\d{1,12}$", + "required": true, + "info": "Nu\u0301mero do dispositivo autorizado (utilizado) final", + "format": "" + }, + "NUM_AUT": { + "type": "string", + "regex": "^\\d{1,60}$", + "required": true, + "info": "Nu\u0301mero da autorizac\u0327a\u0303o, conforme dispositivo autorizado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1710.json b/storage/layouts/ICMSIPI/v017/1710.json new file mode 100755 index 00000000..0918f225 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1710.json @@ -0,0 +1,16 @@ +{ + "NUM_DOC_INI": { + "type": "integer", + "regex": "^\\d{1,12}$", + "required": true, + "info": "Nu\u0301mero do dispositivo autorizado (inutilizado) inicial", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "integer", + "regex": "^\\d{1,12}$", + "required": true, + "info": "Nu\u0301mero do dispositivo autorizado (inutilizado) final", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1800.json b/storage/layouts/ICMSIPI/v017/1800.json new file mode 100755 index 00000000..7c5dafcb --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1800.json @@ -0,0 +1,65 @@ +{ + "VL_CARGA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor das prestac\u0327o\u0303es cargas (Tributado)", + "format": "15v2" + }, + "VL_PASS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor das prestac\u0327o\u0303es passageiros\/cargas (Na\u0303o Tributado)", + "format": "15v2" + }, + "VL_FAT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do faturamento (2+3)", + "format": "15v2" + }, + "IND_RAT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "I\u0301ndice para rateio(2 \/ 4)", + "format": "8v6" + }, + "VL_ICMS_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de ca\u0301lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS apurado no ca\u0301lculo (5 x 6)", + "format": "15v2" + }, + "VL_BC_ICMS_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de ca\u0301lculo do ICMS apurada (5 x 7)", + "format": "15v2" + }, + "VL_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da diferenc\u0327a a ser levada a estorno de cre\u0301dito na apurac\u0327a\u0303o (6 - 8)", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1900.json b/storage/layouts/ICMSIPI/v017/1900.json new file mode 100755 index 00000000..b92dc473 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1900.json @@ -0,0 +1,16 @@ +{ + "IND_APUR_ICMS": { + "type": "string", + "regex": "^[3|4|5|6|7|8]$", + "required": true, + "info": "Indicador de outra apurac\u0327a\u0303o do ICMS: 3 \u2013 APURAC\u0327A\u0303O 1; 4 \u2013 APURAC\u0327A\u0303O 2; 5 \u2013 APURAC\u0327A\u0303O 3; 6 \u2013 APURAC\u0327A\u0303O 4; 7 \u2013 APURAC\u0327A\u0303O 5; 8 \u2013 APURAC\u0327A\u0303O 6.", + "format": "" + }, + "DESCR_COMPL_OUT_APUR": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Descric\u0327a\u0303o complementar de Outra Apurac\u0327a\u0303o do ICMS", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1910.json b/storage/layouts/ICMSIPI/v017/1910.json new file mode 100755 index 00000000..60da941b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1910.json @@ -0,0 +1,16 @@ +{ + "DT_INI": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial da sub-apurac\u0327a\u0303o", + "format": "" + }, + "DT_FIN": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final da sub-apurac\u0327a\u0303o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1920.json b/storage/layouts/ICMSIPI/v017/1920.json new file mode 100755 index 00000000..f7f8bc85 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1920.json @@ -0,0 +1,86 @@ +{ + "VL_TOT_TRANSF_DEBITOS_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos de\u0301bitos por \u201cSai\u0301das e prestac\u0327o\u0303es com de\u0301bito do imposto\u201d", + "format": "15v2" + }, + "VL_TOT_AJ_DEBITOS_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \u201cAjustes a de\u0301bito\u201d", + "format": "15v2" + }, + "VL_ESTORNOS_CRED_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "V alor total de Ajustes \u201cEstornos de cre\u0301ditos\u201d", + "format": "15v2" + }, + "VL_TOT_TRANSF_CREDITOS_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos por \u201cEntradas e aquisic\u0327o\u0303es com cre\u0301dito do imposto\u201d", + "format": "15v2" + }, + "VL_TOT_AJ_CREDITOS_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \u201cAjustes a cre\u0301dito\u201d", + "format": "15v2" + }, + "VL_ESTORNOS_DEB_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "V alor total de Ajustes \u201cEstornos de De\u0301bitos\u201d", + "format": "15v2" + }, + "VL_SLD_CREDOR_ANT_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \u201cSaldo credor do peri\u0301odo anterior\u201d", + "format": "15v2" + }, + "VL_SLD_APURADO_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do saldo devedor apurado", + "format": "15v2" + }, + "VL_TOT_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \u201cDeduc\u0327o\u0303es\u201d", + "format": "15v2" + }, + "VL_ICMS_RECOLHER_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"ICMS a recolher (09-10)", + "format": "15v2" + }, + "VL_SLD_CREDOR_TRANSP_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \u201cSaldo credor a transportar para o peri\u0301odo seguinte\u201d", + "format": "15v2" + }, + "DEB_ESP_OA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores recolhidos ou a recolher, extra- apurac\u0327a\u0303o.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1921.json b/storage/layouts/ICMSIPI/v017/1921.json new file mode 100755 index 00000000..02af98b4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1921.json @@ -0,0 +1,23 @@ +{ + "COD_AJ_APUR": { + "type": "string", + "regex": "^.{8}$", + "required": true, + "info": "Co\u0301digo do ajuste da SUB-APURAC\u0327A\u0303O e deduc\u0327a\u0303o, conforme a Tabela indicada no item 5.1.1.", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste da apurac\u0327a\u0303o.", + "format": "" + }, + "VL_AJ_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste da apurac\u0327a\u0303o", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1922.json b/storage/layouts/ICMSIPI/v017/1922.json new file mode 100755 index 00000000..7b025af7 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1922.json @@ -0,0 +1,37 @@ +{ + "NUM_DA": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do documento de arrecadac\u0327a\u0303o estadual, se houver", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0-2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- SEFAZ; 1- Justic\u0327a Federal; 2- Justic\u0327a Estadual; 9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1923.json b/storage/layouts/ICMSIPI/v017/1923.json new file mode 100755 index 00000000..5f7e8b4a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1923.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): - do emitente do documento ou do remetente das mercadorias, no caso de entradas; - do adquirente, no caso de sai\u0301das", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^\\d{1,3}$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^[1-9]\\d{0,8}$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_AJ_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste para a operac\u0327a\u0303o\/item", + "format": "15v2" + }, + "CHV_DOCE": { + "type": "string", + "regex": "^\\d{44}$", + "required": false, + "info": "Chave do Documento Eletro\u0302nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1925.json b/storage/layouts/ICMSIPI/v017/1925.json new file mode 100755 index 00000000..ca3e5a83 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1925.json @@ -0,0 +1,23 @@ +{ + "COD_INF_ADIC": { + "type": "string", + "regex": "^.{8}$", + "required": true, + "info": "Co\u0301digo da informac\u0327a\u0303o adicional conforme tabela a ser definida pelas SEFAZ, conforme tabela definida no item 5.2.", + "format": "" + }, + "VL_INF_ADIC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor referente a\u0300 informac\u0327a\u0303o adicional", + "format": "15v2" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1926.json b/storage/layouts/ICMSIPI/v017/1926.json new file mode 100755 index 00000000..1c11b9e8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1926.json @@ -0,0 +1,65 @@ +{ + "COD_OR": { + "type": "string", + "regex": "^.{3}$", + "required": true, + "info": "Co\u0301digo da obrigac\u0327a\u0303o a recolher, conforme a Tabela 5.4", + "format": "" + }, + "VL_OR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da obrigac\u0327a\u0303o a recolher", + "format": "15v2" + }, + "DT_VCTO": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de vencimento da obrigac\u0327a\u0303o", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Co\u0301digo de receita referente a\u0300 obrigac\u0327a\u0303o, pro\u0301prio da unidade da federac\u0327a\u0303o, conforme legislac\u0327a\u0303o estadual,", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ou auto de infrac\u0327a\u0303o ao qual a obrigac\u0327a\u0303o esta\u0301 vinculada, se houver.", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0-2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- SEFAZ; 1- Justic\u0327a Federal; 2- Justic\u0327a Estadual; 9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar das obrigac\u0327o\u0303es a recolher.", + "format": "" + }, + "MES_REF": { + "type": "integer", + "regex": "^\\d{6}$", + "required": true, + "info": "Informe o me\u0302s de refere\u0302ncia no formato \u201cmmaaaa\u201d", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1960.json b/storage/layouts/ICMSIPI/v017/1960.json new file mode 100755 index 00000000..3baa0f78 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1960.json @@ -0,0 +1,86 @@ +{ + "IND_AP": { + "type": "integer", + "regex": "^\\d{2}$", + "required": true, + "info": "Indicador da sub-apurac\u0327a\u0303o por tipo de benefi\u0301cio (conforme tabela 4.7.1)", + "format": "" + }, + "G1_01": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Percentual de cre\u0301dito presumido", + "format": "15v2" + }, + "G1_02": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das na\u0303o incentivadas de PI", + "format": "15v2" + }, + "G1_03": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das incentivadas de PI", + "format": "15v2" + }, + "G1_04": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das incentivadas de PI para fora do Nordeste", + "format": "15v2" + }, + "G1_05": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS antes das deduc\u0327o\u0303es do incentivo", + "format": "15v2" + }, + "G1_06": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS relativo a\u0300 faixa incentivada de PI", + "format": "15v2" + }, + "G1_07": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido nas sai\u0301das incentivadas de PI para fora do Nordeste", + "format": "15v2" + }, + "G1_08": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor relativo a\u0300 faixa incentivada de PI apo\u0301s o cre\u0301dito presumido nas sai\u0301das para fora do Nordeste", + "format": "15v2" + }, + "G1_09": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido", + "format": "15v2" + }, + "G1_10": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Deduc\u0327a\u0303o de incentivo da Indu\u0301stria (cre\u0301dito presumido)", + "format": "15v2" + }, + "G1_11": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS apo\u0301s deduc\u0327o\u0303es", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1970.json b/storage/layouts/ICMSIPI/v017/1970.json new file mode 100755 index 00000000..d8845a80 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1970.json @@ -0,0 +1,79 @@ +{ + "IND_AP": { + "type": "integer", + "regex": "^\\d{2}$", + "required": true, + "info": "Indicador da sub-apurac\u0327a\u0303o por tipo de benefi\u0301cio (conforme tabela 4.7.1)", + "format": "" + }, + "G3_01": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Importac\u0327o\u0303es com ICMS diferido", + "format": "15v2" + }, + "G3_02": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "ICMS diferido nas importac\u0327o\u0303es", + "format": "15v2" + }, + "G3_03": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das na\u0303o incentivadas de PI", + "format": "15v2" + }, + "G3_04": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Percentual de incentivo nas sai\u0301das para fora do Estado", + "format": "15v2" + }, + "G3_05": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das incentivadas de PI para fora do Estado", + "format": "15v2" + }, + "G3_06": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "ICMS das sai\u0301das incentivadas de PI para fora do Estado", + "format": "15v2" + }, + "G3_07": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido nas sai\u0301das para fora do Estado.", + "format": "15v2" + }, + "G3_T": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Deduc\u0327a\u0303o de incentivo da Importac\u0327a\u0303o (cre\u0301dito presumido)", + "format": "15v2" + }, + "G3_08": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS antes das deduc\u0327o\u0303es do incentivo", + "format": "15v2" + }, + "G3_09": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS apo\u0301s deduc\u0327o\u0303es do incentivo", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1975.json b/storage/layouts/ICMSIPI/v017/1975.json new file mode 100755 index 00000000..ba011dff --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1975.json @@ -0,0 +1,30 @@ +{ + "ALIQ_IMP_BASE": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Ali\u0301quota incidente sobre as importac\u0327o\u0303es-base", + "format": "15v2" + }, + "G3_10": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das incentivadas de PI", + "format": "15v2" + }, + "G3_11": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Importac\u0327o\u0303es-base para o cre\u0301dito presumido", + "format": "15v2" + }, + "G3_12": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido nas sai\u0301das internas", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/1980.json b/storage/layouts/ICMSIPI/v017/1980.json new file mode 100755 index 00000000..98932d99 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/1980.json @@ -0,0 +1,93 @@ +{ + "IND_AP": { + "type": "integer", + "regex": "^\\d{2}$", + "required": true, + "info": "Indicador da sub-apurac\u0327a\u0303o por tipo de benefi\u0301cio (conforme Tabela 4.7.1)", + "format": "" + }, + "G4_01": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Entradas (percentual de incentivo)", + "format": "15v2" + }, + "G4_02": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Entradas na\u0303o incentivadas de PI", + "format": "15v2" + }, + "G4_03": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Entradas incentivadas de PI", + "format": "15v2" + }, + "G4_04": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das (percentual de incentivo)", + "format": "15v2" + }, + "G4_05": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das na\u0303o incentivadas de PI", + "format": "15v2" + }, + "G4_06": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Sai\u0301das incentivadas de PI", + "format": "15v2" + }, + "G4_07": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS antes das deduc\u0327o\u0303es do incentivo (PI e itens na\u0303o incentivados)", + "format": "15v2" + }, + "G4_08": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido nas entradas incentivadas de PI", + "format": "15v2" + }, + "G4_09": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Cre\u0301dito presumido nas sai\u0301das incentivadas de PI", + "format": "15v2" + }, + "G4_10": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Deduc\u0327a\u0303o de incentivo da Central de Distribuic\u0327a\u0303o (entradas\/sai\u0301das)", + "format": "15v2" + }, + "G4_11": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo devedor do ICMS apo\u0301s deduc\u0327o\u0303es do incentivo", + "format": "15v2" + }, + "G4_12": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "I\u0301ndice de recolhimento da central de distribuic\u0327a\u0303o", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B001.json b/storage/layouts/ICMSIPI/v017/B001.json new file mode 100755 index 00000000..8d986648 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B020.json b/storage/layouts/ICMSIPI/v017/B020.json new file mode 100755 index 00000000..e8564dc3 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B020.json @@ -0,0 +1,142 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador do tipo de operac\u0327a\u0303o: 0- Aquisic\u0327a\u0303o; 1- Prestac\u0327a\u0303o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador do emitente do documento fiscal: 0- Emissa\u0303o pro\u0301pria; 1- Terceiros", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): do prestador, no caso de declarante na condic\u0327a\u0303o de tomador; do tomador, no caso de declarante na condic\u0327a\u0303o de prestador", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.[01|03|3B|04|08|55|65]$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.3", + "format": "" + }, + "COD_SIT": { + "type": "integer", + "regex": "^.[00|01|02|03|04|05|06|07]$", + "required": true, + "info": "Co\u0301digo da situac\u0327a\u0303o do documento conforme tabela 4.1.2", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^([1-9])([0-9]{1,8}|)$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletro\u0302nica", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_MUN_SERV": { + "type": "string", + "regex": "^.{7}$", + "required": true, + "info": "Co\u0301digo do munici\u0301pio onde o servic\u0327o foi prestado, conforme a tabela IBGE.", + "format": "" + }, + "VL_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor conta\u0301bil (valor total do documento)", + "format": "15v2" + }, + "VL_MAT_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do material fornecido por terceiros na prestac\u0327a\u0303o do servic\u0327o", + "format": "15v2" + }, + "VL_SUB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da subempreitada", + "format": "15v2" + }, + "VL_ISNT_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "V alor das operac\u0327o\u0303es isentas ou na\u0303o- tributadas pelo ISS", + "format": "15v2" + }, + "VL_DED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da deduc\u0327a\u0303o da base de ca\u0301lculo", + "format": "15v2" + }, + "VL_BC_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de ca\u0301lculo do ISS", + "format": "15v2" + }, + "VL_BC_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de ca\u0301lculo de retenc\u0327a\u0303o do ISS", + "format": "15v2" + }, + "VL_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ISS retido pelo tomador", + "format": "15v2" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ISS destacado", + "format": "15v2" + }, + "COD_INF_OBS": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo da observac\u0327a\u0303o do lanc\u0327amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B025.json b/storage/layouts/ICMSIPI/v017/B025.json new file mode 100755 index 00000000..66538e75 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B025.json @@ -0,0 +1,44 @@ +{ + "VL_CONT_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor Conta\u0301bil\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_BC_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de ca\u0301lculo do ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "ALIQ_ISS": { + "type": "integer", + "regex": "^[0-5]{1}$", + "required": true, + "info": "Ali\u0301quota do ISS", + "format": "" + }, + "VL_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_ISNT_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor das operac\u0327o\u0303es isentas ou na\u0303o- tributadas pelo ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "COD_SERV": { + "type": "string", + "regex": "^.{4}$", + "required": true, + "info": "Item da lista de servic\u0327os, conforme Tabela 4.6.3", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B030.json b/storage/layouts/ICMSIPI/v017/B030.json new file mode 100755 index 00000000..62e0f2b2 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B030.json @@ -0,0 +1,79 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.3", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC_INI": { + "type": "integer", + "regex": "^([1-9])([0-9]{1,8}|)$", + "required": true, + "info": "Nu\u0301mero do primeiro documento fiscal emitido no dia", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "integer", + "regex": "^\\d{1,9}$", + "required": true, + "info": "Nu\u0301mero do u\u0301ltimo documento fiscal emitido no dia", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o dos documentos fiscais", + "format": "" + }, + "QTD_CANC": { + "type": "integer", + "regex": "^\\d+$", + "required": true, + "info": "Quantidade de documentos cancelados", + "format": "" + }, + "VL_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor conta\u0301bil (valor total acumulado dos documentos)", + "format": "15v2" + }, + "VL_ISNT_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado das operac\u0327o\u0303es isentas ou na\u0303o-tributadas pelo ISS", + "format": "15v2" + }, + "VL_BC_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de ca\u0301lculo do ISS", + "format": "15v2" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do ISS destacado", + "format": "15v2" + }, + "COD_INF_OBS": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo da observac\u0327a\u0303o do lanc\u0327amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B035.json b/storage/layouts/ICMSIPI/v017/B035.json new file mode 100755 index 00000000..1489e16c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B035.json @@ -0,0 +1,44 @@ +{ + "VL_CONT_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"V alor Conta\u0301bil\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_BC_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de ca\u0301lculo do ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "ALIQ_ISS": { + "type": "integer", + "regex": "^[0-5]{1}$", + "required": true, + "info": "Ali\u0301quota do ISS", + "format": "" + }, + "VL_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_ISNT_ISS_P": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor das operac\u0327o\u0303es isentas ou na\u0303o-tributadas pelo ISS\" referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "COD_SERV": { + "type": "string", + "regex": "^.{4}$", + "required": true, + "info": "Item da lista de servic\u0327os, conforme Tabela 4.6.3.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B350.json b/storage/layouts/ICMSIPI/v017/B350.json new file mode 100755 index 00000000..8f78a87f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B350.json @@ -0,0 +1,72 @@ +{ + "COD_CTD": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Co\u0301digo da conta do plano de contas", + "format": "" + }, + "CTA_ISS": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Descric\u0327a\u0303o da conta no plano de contas", + "format": "" + }, + "CTA_COSIF": { + "type": "integer", + "regex": "^\\d{8}$", + "required": true, + "info": "Co\u0301digo COSIF a que esta\u0301 subordinada a conta do ISS das instituic\u0327o\u0303es financeiras", + "format": "" + }, + "QTD_OCOR": { + "type": "integer", + "regex": "^\\d+$", + "required": true, + "info": "Quantidade de ocorre\u0302ncias na conta", + "format": "" + }, + "COD_SERV": { + "type": "integer", + "regex": "^\\d{4}$", + "required": true, + "info": "Item da lista de servic\u0327os, conforme Tabela 4.6.3.", + "format": "" + }, + "VL_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor conta\u0301bil", + "format": "15v2" + }, + "VL_BC_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de ca\u0301lculo do ISS", + "format": "15v2" + }, + "ALIQ_ISS": { + "type": "integer", + "regex": "^[0-5]{1}$", + "required": true, + "info": "Ali\u0301quota do ISS", + "format": "" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ISS", + "format": "15v2" + }, + "COD_INF_OBS": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo da observac\u0327a\u0303o do lanc\u0327amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B420.json b/storage/layouts/ICMSIPI/v017/B420.json new file mode 100755 index 00000000..04194882 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B420.json @@ -0,0 +1,44 @@ +{ + "VL_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do Valor Conta\u0301bil das prestac\u0327o\u0303es do declarante referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_BC_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do Valor da base de ca\u0301lculo do ISS das prestac\u0327o\u0303es do declarante referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "ALIQ_ISS": { + "type": "integer", + "regex": "^[0-5]{1}$", + "required": true, + "info": "Ali\u0301quota do ISS", + "format": "" + }, + "VL_ISNT_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do valor das operac\u0327o\u0303es isentas ou na\u0303o-tributadas pelo ISS referente a\u0300 combinac\u0327a\u0303o da ali\u0301quota e item da lista", + "format": "15v2" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Totalizac\u0327a\u0303o, por combinac\u0327a\u0303o da ali\u0301quota e item da lista, do Valor do ISS", + "format": "15v2" + }, + "COD_SERV": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Item da lista de servic\u0327os, conforme Tabela 4.6.3.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B440.json b/storage/layouts/ICMSIPI/v017/B440.json new file mode 100755 index 00000000..581c1476 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B440.json @@ -0,0 +1,37 @@ +{ + "IND_OPER": { + "type": "integer", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador do tipo de operac\u0327a\u0303o: 0- Aquisic\u0327a\u0303o; 1- Prestac\u0327a\u0303o", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): - do prestador, no caso de aquisic\u0327a\u0303o de servic\u0327o pelo declarante; - do tomador, no caso de prestac\u0327a\u0303o de servic\u0327o pelo declarante", + "format": "" + }, + "VL_CONT_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do Valor Conta\u0301bil das prestac\u0327o\u0303es e\/ou aquisic\u0327o\u0303es do declarante pela combinac\u0327a\u0303o de tipo de operac\u0327a\u0303o e participante.", + "format": "15v2" + }, + "VL_BC_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do Valor da base de ca\u0301lculo de retenc\u0327a\u0303o do ISS das prestac\u0327o\u0303es e\/ou aquisic\u0327o\u0303es do declarante pela combinac\u0327a\u0303o de tipo de operac\u0327a\u0303o e participante.", + "format": "15v2" + }, + "VL_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Totalizac\u0327a\u0303o do Valor do ISS retido pelo tomador das prestac\u0327o\u0303es e\/ou aquisic\u0327o\u0303es do declarante pela combinac\u0327a\u0303o de tipo de operac\u0327a\u0303o e participante.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B460.json b/storage/layouts/ICMSIPI/v017/B460.json new file mode 100755 index 00000000..ed92eb43 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B460.json @@ -0,0 +1,51 @@ +{ + "IND_DED": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": true, + "info": "Indicador do tipo de deduc\u0327a\u0303o: 0- Compensac\u0327a\u0303o do ISS calculado a maior; 1- Benefi\u0301cio fiscal por incentivo a\u0300 cultura; 2- Decisa\u0303o administrativa ou judicial; 9- Outros", + "format": "" + }, + "VL_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da deduc\u0327a\u0303o", + "format": "15v2" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do processo ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- Sefin; 1- Justic\u0327a Federal; 2- Justic\u0327a Estadual; 9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o do processo que embasou o lanc\u0327amento", + "format": "" + }, + "COD_INF_OBS": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo da observac\u0327a\u0303o do lanc\u0327amento fiscal (campo 02 do Registro 0460)", + "format": "" + }, + "IND_OBR": { + "type": "string", + "regex": "^[0|1|2]$", + "required": true, + "info": "Indicador da obrigac\u0327a\u0303o onde sera\u0301 aplicada a deduc\u0327a\u0303o:", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B470.json b/storage/layouts/ICMSIPI/v017/B470.json new file mode 100755 index 00000000..03f89abb --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B470.json @@ -0,0 +1,100 @@ +{ + "VL_CONT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "A- Valor total referente a\u0300s prestac\u0327o\u0303es de servic\u0327o do peri\u0301odo", + "format": "15v2" + }, + "VL_MAT_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "B- Valor total do material fornecido por terceiros na prestac\u0327a\u0303o do servic\u0327o", + "format": "15v2" + }, + "VL_MAT_PROP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "C- Valor do material pro\u0301prio utilizado na prestac\u0327a\u0303o do servic\u0327o", + "format": "15v2" + }, + "VL_SUB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "D- Valor total das subempreitadas", + "format": "15v2" + }, + "VL_ISNT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "E- Valor total das operac\u0327o\u0303es isentas ou na\u0303o-tributadas pelo ISS", + "format": "15v2" + }, + "VL_DED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "F- Valor total das deduc\u0327o\u0303es da base de ca\u0301lculo (B + C + D + E)", + "format": "15v2" + }, + "VL_BC_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "G- Valor total da base de ca\u0301lculo do ISS", + "format": "15v2" + }, + "VL_BC_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "H- Valor total da base de ca\u0301lculo de retenc\u0327a\u0303o do ISS referentea\u0300s prestac\u0327o\u0303es do declarante.", + "format": "15v2" + }, + "VL_ISS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "I- Valor total do ISS destacado", + "format": "15v2" + }, + "VL_ISS_RT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "J- Valor total do ISS retido pelo tomador nas prestac\u0327o\u0303es do declarante", + "format": "15v2" + }, + "VL_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "K- Valor total das deduc\u0327o\u0303es do ISS pro\u0301prio", + "format": "15v2" + }, + "VL_ISS_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "L- Valor total apurado do ISS pro\u0301prio a recolher (I - J - K)", + "format": "15v2" + }, + "VL_ISS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "M- Valor total do ISS substituto a recolher pelas aquisic\u0327o\u0303es do declarante (tomador)", + "format": "15v2" + }, + "VL_ISS_REC_UNI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "N- Valor do ISS pro\u0301prio a recolher pela Sociedade Uniprofissional", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B500.json b/storage/layouts/ICMSIPI/v017/B500.json new file mode 100755 index 00000000..c5b22e32 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B500.json @@ -0,0 +1,23 @@ +{ + "VL_REC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor mensal das receitas auferidas pela sociedade uniprofissional", + "format": "15v2" + }, + "QTD_PROF": { + "type": "integer", + "regex": "^\\d+$", + "required": true, + "info": "Quantidade de profissionais habilitados", + "format": "" + }, + "VL_OR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ISS devido", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/B510.json b/storage/layouts/ICMSIPI/v017/B510.json new file mode 100755 index 00000000..18532c2b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/B510.json @@ -0,0 +1,37 @@ +{ + "IND_PROF": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de habilitac\u0327a\u0303o: 0- Profissional habilitado 1- Profissional na\u0303o habilitado", + "format": "" + }, + "IND_ESC": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de escolaridade: 0- Ni\u0301vel superior 1- Ni\u0301vel me\u0301dio", + "format": "" + }, + "IND_SOC": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de participac\u0327a\u0303o societa\u0301ria: 0- So\u0301cio 1- Na\u0303o so\u0301cio", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^\\d{11}$", + "required": true, + "info": "Nu\u0301mero de inscric\u0327a\u0303o do profissional no CPF.", + "format": "" + }, + "NOME": { + "type": "string", + "regex": "^.{1,100}$", + "required": true, + "info": "Nome do profissional", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C001.json b/storage/layouts/ICMSIPI/v017/C001.json new file mode 100755 index 00000000..113ba52c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C100.json b/storage/layouts/ICMSIPI/v017/C100.json new file mode 100755 index 00000000..c2c2aaaf --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C100.json @@ -0,0 +1,198 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02|03|04|05|06|07|08)$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^[0-9]{1,9}$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^[0-9]{44}$", + "required": false, + "info": "Chave da Nota Fiscal Eletr\u00f4nica", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_E_S": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da entrada ou da sa\u00edda", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "IND_PGTO": { + "type": "string", + "regex": "^(0|1|2|9)$", + "required": false, + "info": "Indicador do tipo de pagamento", + "format": "" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_ABAT_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Abatimento n\u00e3o tributado e n\u00e3o comercial Ex. desconto ICMS nas remessas para ZFM.", + "format": "15v2" + }, + "VL_MERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total das mercadorias e servi\u00e7os", + "format": "15v2" + }, + "IND_FRT": { + "type": "string", + "regex": "^(0|1|2|3|4|9)$", + "required": false, + "info": "Indicador do tipo do frete", + "format": "" + }, + "VL_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do frete indicado no documento fiscal", + "format": "15v2" + }, + "VL_SEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do seguro indicado no documento fiscal", + "format": "15v2" + }, + "VL_OUT_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de outras despesas acess\u00f3rias", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "VL_PIS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_COFINS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C101.json b/storage/layouts/ICMSIPI/v017/C101.json new file mode 100755 index 00000000..2febe948 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C101.json @@ -0,0 +1,23 @@ +{ + "VL_FCP_UF_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total relativo ao Fundo de Combate \u00e0 Pobreza (FCP) da UF de destino", + "format": "15v2" + }, + "VL_ICMS_UF_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do ICMS Interestadual para a UF de destino", + "format": "15v2" + }, + "VL_ICMS_UF_REM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do ICMS Interestadual para a UF do remetente", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C105.json b/storage/layouts/ICMSIPI/v017/C105.json new file mode 100755 index 00000000..a0f2e573 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C105.json @@ -0,0 +1,16 @@ +{ + "OPER": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "UF": { + "type": "string", + "regex": "^[a-zA-Z]{2}$", + "required": true, + "info": "Sigla da UF de destino do ICMS_ST", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C110.json b/storage/layouts/ICMSIPI/v017/C110.json new file mode 100755 index 00000000..3402243a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C110.json @@ -0,0 +1,16 @@ +{ + "COD_INF": { + "type": "string", + "regex": "^[A-z0-9]{1,6}$", + "required": true, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do c\u00f3digo de refer\u00eancia.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C111.json b/storage/layouts/ICMSIPI/v017/C111.json new file mode 100755 index 00000000..4c3d2a58 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C111.json @@ -0,0 +1,16 @@ +{ + "NUM_PROC": { + "type": "string", + "regex": "^[A-z0-9]{1,15}$", + "required": true, + "info": "Identifica\u00e7\u00e3o do processo ou ato concess\u00f3rio", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^(0|1|2|3|9)$", + "required": true, + "info": "Indicador da origem do processo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C112.json b/storage/layouts/ICMSIPI/v017/C112.json new file mode 100755 index 00000000..677c7fa8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C112.json @@ -0,0 +1,51 @@ +{ + "COD_DA": { + "type": "string", + "regex": "^(0|1)$", + "required": true, + "info": "C\u00f3digo do modelo do documento de arrecada\u00e7\u00e3o", + "format": "" + }, + "UF": { + "type": "string", + "regex": "^[A-z]{2}$", + "required": true, + "info": "Unidade federada benefici\u00e1ria do recolhimento", + "format": "" + }, + "NUM_DA": { + "type": "N\u00famero do documento de arrecada\u00e7\u00e3o", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do documento de arrecada\u00e7\u00e3o", + "format": "" + }, + "COD_AUT": { + "type": "string", + "regex": "^(.*)$", + "required": true, + "info": "C\u00f3digo completo da autentica\u00e7\u00e3o banc\u00e1ria", + "format": "" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do total do documento de arrecada\u00e7\u00e3o", + "format": "15v2" + }, + "DT_VCTO": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de vencimento do documento de arrecada\u00e7\u00e3o", + "format": "" + }, + "DT_PGTO": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de pagamento do documento de arrecada\u00e7\u00e3o, ou data do vencimento", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C113.json b/storage/layouts/ICMSIPI/v017/C113.json new file mode 100755 index 00000000..19a7b5f4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C113.json @@ -0,0 +1,65 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^([A-Z0-9]{2})+$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^([0-9a-z]{1,4})?$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^([0-9]{1,9})?$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "CHV_DOCE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave do Documento Eletr\u00f4nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C114.json b/storage/layouts/ICMSIPI/v017/C114.json new file mode 100755 index 00000000..891ce316 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C114.json @@ -0,0 +1,37 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02|2D|2E)+$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "ECF_FAB": { + "type": "string", + "regex": "^[A-z0-9]{1,21}+$", + "required": true, + "info": "N\u00famero de s\u00e9rie de fabrica\u00e7\u00e3o do ECF", + "format": "" + }, + "ECF_CX": { + "type": "numeric", + "regex": "^[1-9]{1}([0-9]{1,2})?+$", + "required": true, + "info": "N\u00famero do caixa atribu\u00eddo ao ECF", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^[1-9]{1}([0-9]{1,8})?+$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C115.json b/storage/layouts/ICMSIPI/v017/C115.json new file mode 100755 index 00000000..6d64ec03 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C115.json @@ -0,0 +1,65 @@ +{ + "IND_CARGA": { + "type": "numeric", + "regex": "^(0|1|2|3|4|5|9)+$", + "required": true, + "info": "Indicador do tipo de transporte", + "format": "" + }, + "CNPJ_COL": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero do CNPJ do contribuinte do local de coleta", + "format": "" + }, + "IE_COL": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Estadual do contribuinte do local de coleta", + "format": "" + }, + "CPF_COL": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": true, + "info": "CPF do contribuinte do local de coleta das mercadorias", + "format": "" + }, + "COD_MUN_COL": { + "type": "numeric", + "regex": "^([0-9]{7})$", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio do local de coleta", + "format": "" + }, + "CNPJ_ENTG": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "N\u00famero do CNPJ do contribuinte do local de entrega", + "format": "" + }, + "IE_ENTG": { + "type": "string", + "regex": "^[0-9]{2,14}$", + "required": false, + "info": "Inscri\u00e7\u00e3o Estadual do contribuinte do local de entrega", + "format": "" + }, + "CPF_ENTG": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": true, + "info": "Cpf do contribuinte do local de entrega", + "format": "" + }, + "COD_MUN_ENTG": { + "type": "numeric", + "regex": "^([0-9]{7})$", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio do local de entrega", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C116.json b/storage/layouts/ICMSIPI/v017/C116.json new file mode 100755 index 00000000..0a350e29 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C116.json @@ -0,0 +1,37 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(59)+$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "NR_SAT": { + "type": "numeric", + "regex": "^([0-9]{9})+$", + "required": true, + "info": "N\u00famero de S\u00e9rie do equipamento SAT", + "format": "" + }, + "CHV_CFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "NUM_CFE": { + "type": "numeric", + "regex": "^([0-9]{6})?$", + "required": false, + "info": "N\u00famero do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C120.json b/storage/layouts/ICMSIPI/v017/C120.json new file mode 100755 index 00000000..98e394c4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C120.json @@ -0,0 +1,37 @@ +{ + "COD_DOC_IMP": { + "type": "string", + "regex": "^(0|1)+$", + "required": true, + "info": "Documento de importa\u00e7\u00e3o", + "format": "" + }, + "NUM_DOC_IMP": { + "type": "string", + "regex": "^([0-9]{1,12})+$", + "required": true, + "info": "N\u00famero do documento de Importa\u00e7\u00e3o", + "format": "" + }, + "PIS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de PIS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "COFINS_IMP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor pago de COFINS na importa\u00e7\u00e3o", + "format": "15v2" + }, + "NUM_ACDRAW": { + "type": "string", + "regex": "^([0-9]{1,20})$", + "required": false, + "info": "N\u00famero do Ato Concess\u00f3rio do regime Drawback", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C130.json b/storage/layouts/ICMSIPI/v017/C130.json new file mode 100755 index 00000000..f6394af3 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C130.json @@ -0,0 +1,51 @@ +{ + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor dos servi\u00e7os sob n\u00e3o-incid\u00eancia ou n\u00e3otributados pelo ICMS", + "format": "15v2" + }, + "VL_BC_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ISSQN", + "format": "15v2" + }, + "VL_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ISSQN", + "format": "15v2" + }, + "VL_BC_IRRF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do Imposto de Renda Retido na Fonte", + "format": "15v2" + }, + "VL_IRRF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Imposto de Renda - Retido na Fonte", + "format": "15v2" + }, + "VL_BC_PREV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo de reten\u00e7\u00e3o da Previd\u00eancia Social", + "format": "15v2" + }, + "VL_PREV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor destacado para reten\u00e7\u00e3o da Previd\u00eancia Social", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C140.json b/storage/layouts/ICMSIPI/v017/C140.json new file mode 100755 index 00000000..a31775c6 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C140.json @@ -0,0 +1,44 @@ +{ + "IND_EMIT": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "IND_TIT": { + "type": "string", + "regex": "^(00|01|02|03|99)$", + "required": true, + "info": "Indicador do tipo de t\u00edtulo de cr\u00e9dito", + "format": "" + }, + "DESC_TIT": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do t\u00edtulo de cr\u00e9dito", + "format": "" + }, + "NUM_TIT": { + "type": "string", + "regex": "^(.*)$", + "required": true, + "info": "N\u00famero ou c\u00f3digo identificador do t\u00edtulo de cr\u00e9dito", + "format": "" + }, + "QTD_PARC": { + "type": "integer", + "regex": "^([0-9]{1,2})$", + "required": true, + "info": "Quantidade de parcelas a receber\/pagar", + "format": "" + }, + "VL_TIT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos t\u00edtulos de cr\u00e9ditos", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C141.json b/storage/layouts/ICMSIPI/v017/C141.json new file mode 100755 index 00000000..b5334fd0 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C141.json @@ -0,0 +1,23 @@ +{ + "NUM_PARC": { + "type": "integer", + "regex": "^[0-9]{1,2}$", + "required": true, + "info": "N\u00famero da parcela a receber\/pagar", + "format": "" + }, + "DT_VCTO": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de vencimento da parcela", + "format": "" + }, + "VL_PARC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da parcela a receber\/pagar", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C160.json b/storage/layouts/ICMSIPI/v017/C160.json new file mode 100755 index 00000000..89f2faa2 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C160.json @@ -0,0 +1,44 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[A-Z]{3}[\\d]{1}[\\dA-Z]{1}[\\d]{2}$", + "required": false, + "info": "Placa de identifica\u00e7\u00e3o do ve\u00edculo automotor", + "format": "" + }, + "QTD_VOL": { + "type": "numeric", + "regex": "^([\\d]+)$", + "required": false, + "info": "Quantidade de volumes transportados", + "format": "" + }, + "PESO_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Peso bruto dos volumes transportados (em Kg)", + "format": "15v2" + }, + "PESO_LIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Peso l\u00edquido dos volumes transportados (em Kg)", + "format": "15v2" + }, + "UF_ID": { + "type": "string", + "regex": "^[A-z]{2}$", + "required": false, + "info": "Sigla da UF da placa do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C165.json b/storage/layouts/ICMSIPI/v017/C165.json new file mode 100755 index 00000000..cf94853c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C165.json @@ -0,0 +1,86 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[A-Z]{3}[\\d]{1}[\\dA-Z]{1}[\\d]{2}$", + "required": false, + "info": "Placa de identifica\u00e7\u00e3o do ve\u00edculo automotor", + "format": "" + }, + "COD_AUT": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da autoriza\u00e7\u00e3o fornecido pela SEFAZ (combust\u00edveis)", + "format": "" + }, + "NR_PASSE": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da autoriza\u00e7\u00e3o fornecido pela SEFAZ (combust\u00edveis)", + "format": "" + }, + "HORA": { + "type": "numeric", + "regex": "^(?:[01]\\d|2[0123])(?:[012345]\\d)(?:[012345]\\d)$", + "required": false, + "info": "C\u00f3digo da autoriza\u00e7\u00e3o fornecido pela SEFAZ (combust\u00edveis)", + "format": "" + }, + "TEMPER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Temperatura em graus Celsius utilizada para quantifica\u00e7\u00e3o do volume de combust\u00edvel", + "format": "3v2" + }, + "QTD_VOL": { + "type": "numeric", + "regex": "^\\d+$", + "required": false, + "info": "Quantidade de volumes transportados", + "format": "" + }, + "PESO_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Peso bruto dos volumes transportados (em Kg)", + "format": "10v2" + }, + "PESO_LIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Peso l\u00edquido dos volumes transportados (em Kg)", + "format": "10v2" + }, + "NOM_MOT": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Nome do motorista", + "format": "" + }, + "CPF": { + "type": "string", + "regex": "^[0-9]{11}$", + "required": false, + "info": "CPF do motorista", + "format": "" + }, + "UF_ID": { + "type": "string", + "regex": "^[A-z]{2}$", + "required": false, + "info": "Sigla da UF da placa do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C170.json b/storage/layouts/ICMSIPI/v017/C170.json new file mode 100755 index 00000000..209fb2fc --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C170.json @@ -0,0 +1,261 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "DESCR_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do item como adotado no documento fiscal", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v5" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do item (mercadorias ou servi\u00e7os)", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto comercial", + "format": "15v2" + }, + "IND_MOV": { + "type": "string", + "regex": "^(0|1)$", + "required": true, + "info": "Movimenta\u00e7\u00e3o f\u00edsica do ITEM\/PRODUTO: 0. SIM 1. N\u00c3O", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "COD_NAT": { + "type": "string", + "regex": "^.{0,10}$", + "required": false, + "info": "C\u00f3digo da natureza da opera\u00e7\u00e3o (campo 02 do Registro 0400)", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS creditado\/debitado", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo referente \u00e0 substitui\u00e7\u00e3o", + "format": "15v2" + }, + "ALIQ_ST": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS da substitui\u00e7\u00e3o tribut\u00e1ria na unidade da federa\u00e7\u00e3o de destino", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS referente \u00e0 substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "IND_APUR": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador de per\u00edodo de apura\u00e7\u00e3o do IPI: 0 - Mensal; 1 - Decendial", + "format": "" + }, + "CST_IPI": { + "type": "string", + "regex": "^(00|01|02|03|04|05|49||50|51|52|53|54|55|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao IPI, conforme a Tabela indicada no item 4.3.2.", + "format": "" + }, + "COD_ENQ": { + "type": "string", + "regex": "^.{3}$", + "required": false, + "info": "C\u00f3digo de enquadramento legal do IPI, conforme tabela indicada no item 4.5.3.", + "format": "" + }, + "VL_BC_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do IPI", + "format": "15v2" + }, + "ALIQ_IPI": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do IPI", + "format": "6v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do IPI creditado\/debitado", + "format": "15v2" + }, + "CST_PIS": { + "type": "numeric", + "regex": "^((0)([1-9]{1})|49|(5)([0-6]{1})|(6)([0-7]{1})|(7)([0-5]{1})|98|99)$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao PIS.", + "format": "" + }, + "VL_BC_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do PIS", + "format": "15v2" + }, + "ALIQ_PIS": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_PIS": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo PIS", + "format": "15v2" + }, + "ALIQ_PIS_R": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do PIS (em reais)", + "format": "15v4" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "CST_COFINS": { + "type": "numeric", + "regex": "^((0)([1-9]{1})|49|(5)([0-6]{1})|(6)([0-7]{1})|(7)([0-5]{1})|98|99)$", + "required": false, + "info": "C\u00f3digo da COFINS.", + "format": "" + }, + "VL_BC_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo da COFINS", + "format": "15v2" + }, + "ALIQ_COFINS": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do COFINS (em percentual)", + "format": "8v4" + }, + "QUANT_BC_COFINS": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade \u2013 Base de c\u00e1lculo COFINS", + "format": "15v3" + }, + "ALIQ_COFINS_R": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota da COFINS (em reais)", + "format": "15v4" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da debitada\/creditada", + "format": "" + }, + "VL_ABAT_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do abatimento n\u00e3o tributado e n\u00e3o comercial", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C171.json b/storage/layouts/ICMSIPI/v017/C171.json new file mode 100755 index 00000000..453654b1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C171.json @@ -0,0 +1,16 @@ +{ + "NUM_TANQUE": { + "type": "string", + "regex": "^.{1,3}$", + "required": true, + "info": "Tanque onde foi armazenado o combust\u00edvel", + "format": "" + }, + "QTDE": { + "type": "numeric", + "regex": "\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade ou volume armazenado", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C172.json b/storage/layouts/ICMSIPI/v017/C172.json new file mode 100755 index 00000000..0781cf5f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C172.json @@ -0,0 +1,23 @@ +{ + "VL_BC_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ISSQN", + "format": "15v2" + }, + "ALIQ_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ISSQN", + "format": "6v2" + }, + "VL_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ISSQN", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C173.json b/storage/layouts/ICMSIPI/v017/C173.json new file mode 100755 index 00000000..d5a67a9b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C173.json @@ -0,0 +1,51 @@ +{ + "LOTE_MED": { + "type": "string", + "regex": "^(.*)$", + "required": true, + "info": "N\u00famero do lote de fabrica\u00e7\u00e3o do medicamento", + "format": "" + }, + "QTD_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de item por lote", + "format": "15v3" + }, + "DT_FAB": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de fabrica\u00e7\u00e3o do medicamento", + "format": "" + }, + "DT_VAL": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de expira\u00e7\u00e3o da validade do medicamento", + "format": "" + }, + "IND_MED": { + "type": "string", + "regex": "^(0|1|2|3|4)$", + "required": true, + "info": "Indicador de tipo de refer\u00eancia da base de c\u00e1lculo do ICMS", + "format": "" + }, + "TP_PROD": { + "type": "string", + "regex": "^(0|1|2)$", + "required": true, + "info": "Tipo de produto", + "format": "" + }, + "VL_TAB_MAX": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do pre\u00e7o tabelado ou valor do pre\u00e7o m\u00e1ximo", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C174.json b/storage/layouts/ICMSIPI/v017/C174.json new file mode 100755 index 00000000..7de4a96e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C174.json @@ -0,0 +1,23 @@ +{ + "IND_ARM": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "Indicador do tipo da arma de fogo", + "format": "" + }, + "NUM_ARM": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Numera\u00e7\u00e3o de s\u00e9rie de fabrica\u00e7\u00e3o da arma", + "format": "" + }, + "DESCR_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da arma", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C175.json b/storage/layouts/ICMSIPI/v017/C175.json new file mode 100755 index 00000000..b8ee9682 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C175.json @@ -0,0 +1,30 @@ +{ + "IND_VEIC_OPER": { + "type": "string", + "regex": "^(0|1|2|3|9)$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o com ve\u00edculo", + "format": "" + }, + "CNPJ": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ da Concession\u00e1ria", + "format": "" + }, + "UF": { + "type": "string", + "regex": "^AC|AL|AM|AP|BA|CE|DF|ES|GO|MA|MG|MS|MT|PA|PB|PE|PI|PR|RJ|RN|RO|RR|RS|SC|SE|SP|TO$", + "required": false, + "info": "Sigla da unidade da federa\u00e7\u00e3o da Concession\u00e1ria", + "format": "" + }, + "CHASSI_VEIC": { + "type": "string", + "regex": "^.{17}$", + "required": false, + "info": "Chassi do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C176.json b/storage/layouts/ICMSIPI/v017/C176.json new file mode 100755 index 00000000..e2cdd422 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C176.json @@ -0,0 +1,184 @@ +{ + "COD_MOD_ULT_E": { + "type": "string", + "regex": "^(01|55)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal relativa a \u00faltima entrada", + "format": "" + }, + "NUM_DOC_ULT_E": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero do documento fiscal relativa a \u00faltima entrada", + "format": "" + }, + "SER_ULT_E": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal relativa a \u00faltima entrada", + "format": "" + }, + "DT_ULT_E": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data relativa a \u00faltima entrada da mercadoria", + "format": "" + }, + "COD_PART_ULT_E": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante (do emitente do documento relativa a \u00faltima entrada)", + "format": "" + }, + "QUANT_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item relativa a \u00faltima entrada", + "format": "15v3" + }, + "VL_UNIT_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio da mercadoria constante na NF relativa a \u00faltima entrada.", + "format": "15v2" + }, + "VL_UNIT_BC_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio da base de c\u00e1lculo do imposto pago por substitui\u00e7\u00e3o.", + "format": "15v2" + }, + "CHAVE_NFE_ULT_E": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "N\u00famero completo da chave da NFe relativo \u00e0 \u00faltima entrada", + "format": "" + }, + "NUM_ITEM_ULT_E": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero sequencial do item na NF entrada", + "format": "" + }, + "VL_UNIT_BC_ICMS_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio da base de c\u00e1lculo da opera\u00e7\u00e3o pr\u00f3pria do remetente\n sob o regime comum de tributa\u00e7\u00e3o", + "format": "15v2" + }, + "ALIQ_ICMS_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS aplic\u00e1vel \u00e0 \u00faltima entrada da mercadoria", + "format": "15v2" + }, + "VL_UNIT_LIMITE_BC_ICMS_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio da base de c\u00e1lculo do ICMS relativo \u00e0 \u00faltima entrada da mercadoria", + "format": "15v2" + }, + "VL_UNIT_ICMS_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio do cr\u00e9dito de ICMS sobre opera\u00e7\u00f5es pr\u00f3prias do remetente", + "format": "15v2" + }, + "ALIQ_ST_ULT_E": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS ST relativa \u00e0 \u00faltima entrada da mercadoria", + "format": "15v2" + }, + "VL_UNIT_RES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio do ressarcimento (parcial ou completo) de ICMS decorrente da quebra da ST", + "format": "15v2" + }, + "COD_RESP_RET": { + "type": "numeric", + "regex": "^([1-3]{1})$", + "required": false, + "info": "C\u00f3digo que indica o respons\u00e1vel pela reten\u00e7\u00e3o do ICMS-ST:", + "format": "" + }, + "COD_MOT_RES": { + "type": "numeric", + "regex": "^([1-6]{1}|9)$", + "required": false, + "info": "C\u00f3digo do motivo do ressarcimento", + "format": "" + }, + "CHAVE_NFE_RET": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "N\u00famero completo da chave da NF-e emitida pelo substituto", + "format": "" + }, + "COD_PART_NFE_RET": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante do emitente da NF-e em que houve a reten\u00e7\u00e3o do ICMS-ST", + "format": "" + }, + "SER_NFE_RET": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie da NF-e em que houve a reten\u00e7\u00e3o do ICMS- ST", + "format": "" + }, + "NUM_NFE_RET": { + "type": "numeric", + "regex": "^(\\d{0,9})$", + "required": false, + "info": "N\u00famero da NF-e em que houve a reten\u00e7\u00e3o do ICMS-ST", + "format": "" + }, + "ITEM_NFE_RET": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero sequencial do item na NF-e em que houve a reten\u00e7\u00e3o do ICMS-ST", + "format": "" + }, + "COD_DA": { + "type": "string", + "regex": "^(0|1)$", + "required": false, + "info": "C\u00f3digo do modelo do documento de arrecada\u00e7\u00e3o", + "format": "" + }, + "NUM_DA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "N\u00famero do documento de arrecada\u00e7\u00e3o estadual, se houver", + "format": "" + }, + "VL_UNIT_RES_FCP_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor unit\u00e1rio do ressarcimento (parcial ou completo) de FCP decorrente da quebra da ST", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C177.json b/storage/layouts/ICMSIPI/v017/C177.json new file mode 100755 index 00000000..093b951e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C177.json @@ -0,0 +1,9 @@ +{ + "COD_INF_ITEM": { + "type": "string", + "regex": "^.{8}$", + "required": false, + "info": "5.6 \u2013 Tabela informa\u00e7\u00f5es adicionais dos itens do documento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C178.json b/storage/layouts/ICMSIPI/v017/C178.json new file mode 100755 index 00000000..b57b4e00 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C178.json @@ -0,0 +1,23 @@ +{ + "CL_ENQ": { + "type": "string", + "regex": "^.{0,5}$", + "required": false, + "info": "C\u00f3digo da classe de enquadramento do IPI, conforme Tabela 4.5.1.", + "format": "" + }, + "VL_UNID": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor por unidade padr\u00e3o de tributa\u00e7\u00e3o", + "format": "15v2" + }, + "QUANT_PAD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade total de produtos na unidade padr\u00e3o de tributa\u00e7\u00e3o", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C179.json b/storage/layouts/ICMSIPI/v017/C179.json new file mode 100755 index 00000000..70d02383 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C179.json @@ -0,0 +1,37 @@ +{ + "BC_ST_ORIG_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo ST na origem\/destino em opera\u00e7\u00f5es interestaduais.", + "format": "15v2" + }, + "ICMS_ST_REP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS-ST a repassar\/deduzir em opera\u00e7\u00f5es interestaduais", + "format": "15v2" + }, + "ICMS_ST_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS-ST a complementar \u00e0 UF de destino", + "format": "15v2" + }, + "BC_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da BC de reten\u00e7\u00e3o em remessa promovida por Substitu\u00eddo intermedi\u00e1rio", + "format": "15v2" + }, + "ICMS_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da parcela do imposto retido em remessa promovida por substitu\u00eddo intermedi\u00e1rio", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C180.json b/storage/layouts/ICMSIPI/v017/C180.json new file mode 100755 index 00000000..4f145638 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C180.json @@ -0,0 +1,65 @@ +{ + "COD_RESP_RET": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo que indica o respons\u00e1vel pela reten\u00e7\u00e3o do ICMS-ST:1-Remetente Direto 2-Remetente Indireto3-Pr\u00f3prio declarante", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do ICMS opera\u00e7\u00e3o pr\u00f3pria que o informante teria direito ao cr\u00e9dito caso a mercadoria estivesse sob o regime comum de tributa\u00e7\u00e3o, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_BC_ICMS_ST_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio da base de c\u00e1lculo do imposto pago ou retido anteriormente por substitui\u00e7\u00e3o, considerando a unidade utilizada para informar o campo QUANT_CONV, aplicando-se redu\u00e7\u00e3o, se houver.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do imposto pago ou retido anteriormente por substitui\u00e7\u00e3o, inclusive FCP se devido, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Valor unit\u00e1rio do FCP_ST agregado ao valor informado no campo VL_UNIT_ICMS_ST_CONV", + "format": "" + }, + "COD_DA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "C\u00f3digo do modelo do documento de arrecada\u00e7\u00e3o:0 - Documento estadual de arrecada\u00e7\u00e3o1 - GNRE", + "format": "" + }, + "NUM_DA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "N\u00famero do documento de arrecada\u00e7\u00e3o estadual, se houver", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C185.json b/storage/layouts/ICMSIPI/v017/C185.json new file mode 100755 index 00000000..aeed6a83 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C185.json @@ -0,0 +1,114 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, considerando redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do ICMS que o contribuinte teria se creditado, ou pode se creditar, referente \u00e0 opera\u00e7\u00e3o de entrada da mercadoria, caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP ST agregado ao ICMS das mercadorias em estoque, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C190.json b/storage/layouts/ICMSIPI/v017/C190.json new file mode 100755 index 00000000..5486d037 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C190.json @@ -0,0 +1,79 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o do agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\" referente \u00e0\n combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\", incluindo o FCP, quando aplic\u00e1vel,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota doICMS.", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\" da substitui\u00e7\u00e3o\n tribut\u00e1ria referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor creditado\/debitado do ICMS da substitui\u00e7\u00e3o\n tribut\u00e1ria, incluindo o FCP_ ST, quando aplic\u00e1vel, referente \u00e0\n combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do IPI\" referente \u00e0 combina\u00e7\u00e3o\n CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C191.json b/storage/layouts/ICMSIPI/v017/C191.json new file mode 100755 index 00000000..9eeb68bf --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C191.json @@ -0,0 +1,23 @@ +{ + "VL_FCP_OP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Fundo de Combate \u00e0 Pobreza (FCP) vinculado \u00e0 opera\u00e7\u00e3o pr\u00f3pria,\n na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_FCP_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Fundo de Combate \u00e0 Pobreza (FCP) vinculado \u00e0 opera\u00e7\u00e3o de substitui\u00e7\u00e3o\n tribut\u00e1ria, na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_FCP_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor relativo ao Fundo de Combate \u00e0 Pobreza (FCP) retido anteriormente nas\n opera\u00e7\u00f5es com Substitui\u00e7\u00e3o Tribut\u00e1rias, na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C195.json b/storage/layouts/ICMSIPI/v017/C195.json new file mode 100755 index 00000000..966eff2f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C195.json @@ -0,0 +1,16 @@ +{ + "COD_OBS": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do c\u00f3digo de observa\u00e7\u00e3o.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C197.json b/storage/layouts/ICMSIPI/v017/C197.json new file mode 100755 index 00000000..8b1880c5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C197.json @@ -0,0 +1,51 @@ +{ + "COD_AJ": { + "type": "string", + "regex": "^.{10}$", + "required": true, + "info": "C\u00f3digo do ajustes\/benef\u00edcio\/incentivo, conforme tabela indicada no item 5.3.", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do ajuste do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo do ICMS ou do ICMS ST", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS ou do ICMS ST", + "format": "15v2" + }, + "VL_OUTROS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outros valores", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C300.json b/storage/layouts/ICMSIPI/v017/C300.json new file mode 100755 index 00000000..17f42ef7 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C300.json @@ -0,0 +1,72 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,5})?$", + "required": false, + "info": "N\u00famero do documento fiscal inicial", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,5})?$", + "required": false, + "info": "N\u00famero do documento fiscal final", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o dos documentos fiscais", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos documentos", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C310.json b/storage/layouts/ICMSIPI/v017/C310.json new file mode 100755 index 00000000..64c023d0 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C310.json @@ -0,0 +1,9 @@ +{ + "NUM_DOC_CANC": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": false, + "info": "N\u00famero do documento fiscal cancelado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C320.json b/storage/layouts/ICMSIPI/v017/C320.json new file mode 100755 index 00000000..c5949068 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C320.json @@ -0,0 +1,58 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria,", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total acumulado das opera\u00e7\u00f5es correspondentes \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS, referente\n \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C321.json b/storage/layouts/ICMSIPI/v017/C321.json new file mode 100755 index 00000000..2a2bcc58 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C321.json @@ -0,0 +1,65 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade acumulada do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do desconto acumulado", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS debitado", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C330.json b/storage/layouts/ICMSIPI/v017/C330.json new file mode 100755 index 00000000..c956ebfd --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C330.json @@ -0,0 +1,86 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C350.json b/storage/layouts/ICMSIPI/v017/C350.json new file mode 100755 index 00000000..b960796c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C350.json @@ -0,0 +1,79 @@ +{ + "SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB_SER": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{0,6})$", + "required": false, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "CNPJ_CPF": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": false, + "info": "CNPJ ou CPF do destinat\u00e1rio", + "format": "" + }, + "VL_MERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das mercadorias constantes no documento fiscal", + "format": "15v2" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{0,50}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C370.json b/storage/layouts/ICMSIPI/v017/C370.json new file mode 100755 index 00000000..c364029c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C370.json @@ -0,0 +1,44 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do Item (campo 02 do registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade do item (campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto no item", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C380.json b/storage/layouts/ICMSIPI/v017/C380.json new file mode 100755 index 00000000..60dfe017 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C380.json @@ -0,0 +1,100 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP ST agregado ao ICMS das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C390.json b/storage/layouts/ICMSIPI/v017/C390.json new file mode 100755 index 00000000..6942d584 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C390.json @@ -0,0 +1,58 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": false, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(5)(\\d{3})$", + "required": false, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total acumulado das opera\u00e7\u00f5es correspondentes \u00e0 combina\u00e7\u00e3o de CST_ICMS,\n CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS,\n CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS, referente \u00e0\n combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C400.json b/storage/layouts/ICMSIPI/v017/C400.json new file mode 100755 index 00000000..fa502c5f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C400.json @@ -0,0 +1,30 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02|2D|60)$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscal", + "format": "" + }, + "ECF_MOD": { + "type": "string", + "regex": "^.{0,20}$", + "required": false, + "info": "Modelo do equipamento", + "format": "" + }, + "ECF_FAB": { + "type": "string", + "regex": "^.{0,21}$", + "required": false, + "info": "N\u00famero de s\u00e9rie de fabrica\u00e7\u00e3o do ECF", + "format": "" + }, + "ECF_CX": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero do caixa atribu\u00eddo ao ECF", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C405.json b/storage/layouts/ICMSIPI/v017/C405.json new file mode 100755 index 00000000..df186dca --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C405.json @@ -0,0 +1,44 @@ +{ + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data do movimento a que se refere a Redu\u00e7\u00e3o Z", + "format": "" + }, + "CRO": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,2})?$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Rein\u00edcio de Opera\u00e7\u00e3o", + "format": "" + }, + "CRZ": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,5})?$", + "required": false, + "info": "Posi\u00e7\u00e3o do Contador de Redu\u00e7\u00e3o Z", + "format": "" + }, + "NUM_COO_FIN": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,8})$", + "required": false, + "info": "N\u00famero do Contador de Ordem de Opera\u00e7\u00e3o do \u00faltimo documento\n emitido no dia. (N\u00famero do COO na Redu\u00e7\u00e3o Z)", + "format": "" + }, + "GT_FIN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do Grande Total final", + "format": "15v2" + }, + "VL_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da venda bruta", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C410.json b/storage/layouts/ICMSIPI/v017/C410.json new file mode 100755 index 00000000..27822904 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C410.json @@ -0,0 +1,16 @@ +{ + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C420.json b/storage/layouts/ICMSIPI/v017/C420.json new file mode 100755 index 00000000..d964df96 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C420.json @@ -0,0 +1,30 @@ +{ + "COD_TOT_PAR": { + "type": "string", + "regex": "^.{1,7}$", + "required": true, + "info": "C\u00f3digo do totalizador, conforme Tabela 4.4.6", + "format": "" + }, + "VLR_ACUM_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado no respectiva Redu\u00e7\u00e3o Z.", + "format": "15v2" + }, + "NR_TOT": { + "type": "numeric", + "regex": "^(\\d{0,2})$", + "required": false, + "info": "N\u00famero do totalizador quando ocorrer mais de uma situa\u00e7\u00e3o com a mesma carga tribut\u00e1ria efetiva.", + "format": "" + }, + "DESCR_NR_TOT": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o da situa\u00e7\u00e3o tribut\u00e1ria relativa ao totalizador parcial, quando houver\n mais de um com a mesma carga tribut\u00e1ria efetiva.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C425.json b/storage/layouts/ICMSIPI/v017/C425.json new file mode 100755 index 00000000..7015f583 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C425.json @@ -0,0 +1,44 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade acumulada do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do item", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C430.json b/storage/layouts/ICMSIPI/v017/C430.json new file mode 100755 index 00000000..60dfe017 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C430.json @@ -0,0 +1,100 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP ST agregado ao ICMS das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C460.json b/storage/layouts/ICMSIPI/v017/C460.json new file mode 100755 index 00000000..6aee5c23 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C460.json @@ -0,0 +1,65 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(02|2D|60)$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02)$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,8})?$", + "required": true, + "info": "N\u00famero do documento fiscal (COO)", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "CPF_CNPJ": { + "type": "string", + "regex": "^([0-9]{11}|[0-9]{14})$", + "required": false, + "info": "CPF ou CNPJ do adquirente", + "format": "" + }, + "NOM_ADQ": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "Nome do adquirente", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C465.json b/storage/layouts/ICMSIPI/v017/C465.json new file mode 100755 index 00000000..69c93143 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C465.json @@ -0,0 +1,16 @@ +{ + "CHV_CFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": true, + "info": "Chave do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "NUM_CCF": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero do Contador de Cupom Fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C470.json b/storage/layouts/ICMSIPI/v017/C470.json new file mode 100755 index 00000000..567f2b9b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C470.json @@ -0,0 +1,72 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v3" + }, + "QTD_CANC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade cancelada, no caso de cancelamento parcial de item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do item", + "format": "15v2" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS \u2013 Carga tribut\u00e1ria efetiva em percentual", + "format": "6v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C480.json b/storage/layouts/ICMSIPI/v017/C480.json new file mode 100755 index 00000000..30d71ed5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C480.json @@ -0,0 +1,100 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP ST agregado ao ICMS das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C490.json b/storage/layouts/ICMSIPI/v017/C490.json new file mode 100755 index 00000000..40465524 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C490.json @@ -0,0 +1,51 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria,", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS,\n inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o\n de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C495.json b/storage/layouts/ICMSIPI/v017/C495.json new file mode 100755 index 00000000..0c8c7824 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C495.json @@ -0,0 +1,100 @@ +{ + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade acumulada do item", + "format": "15v3" + }, + "QTD_CANC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade cancelada acumulada, no caso de cancelamento parcial de item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "VL_CANC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos cancelamentos", + "format": "15v2" + }, + "VL_ACMO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos acr\u00e9scimos", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS", + "format": "15v2" + }, + "VL_ISEN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das sa\u00eddas isentas do ICMS", + "format": "15v2" + }, + "VL_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das sa\u00eddas sob n\u00e3o-incid\u00eancia ou n\u00e3o- tributadas pelo ICMS", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor das sa\u00eddas de mercadorias adquiridas com substitui\u00e7\u00e3o tribut\u00e1ria do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C500.json b/storage/layouts/ICMSIPI/v017/C500.json new file mode 100755 index 00000000..95842138 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C500.json @@ -0,0 +1,275 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^.{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^.{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150)", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "C\u00f3digo do modelo conforme a Tabela 4.1.1", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(\\d{2})$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o conforme a Tabela 4.1.2", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "COD_CONS": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": false, + "info": "C\u00f3digo de classe de consumo de energia el\u00e9trica ou g\u00e1s", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_E_S": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da entrada ou da sa\u00edda", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_FORN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total fornecido\/consumido", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos servi\u00e7os n\u00e3o-tributados pelo ICMS", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total cobrado em nome de terceiros", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total de despesas acess\u00f3rias indicadas no", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "COD_INF": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal (campo 02 do Registro 0450)", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "TP_LIGACAO": { + "type": "numeric", + "regex": "^([1-3]{1})$", + "required": false, + "info": "C\u00f3digo de tipo de Liga\u00e7\u00e3o", + "format": "" + }, + "COD_GRUPO_TENSAO": { + "type": "string", + "regex": "^([0-1]{1})([0-9]{1})$", + "required": false, + "info": "C\u00f3digo de grupo de tens\u00e3o", + "format": "" + }, + "CHV_DOCe": { + "type": "numeric", + "regex": "^[0-9]{44}$", + "required": false, + "info": "Chave da Nota Fiscal de Energia El\u00e9trica Eletr\u00f4nica", + "format": "" + }, + "FIN_DOCe": { + "type": "string", + "regex": "^(0|1|3)$", + "required": false, + "info": "Finalidade da emiss\u00e3o do documento eletr\u00f4nico:1 - Normal2 - Substitui\u00e7\u00e3o3 - Normal com ajuste", + "format": "" + }, + "CHV_DOCe_REF": { + "type": "numeric", + "regex": "^[0-9]{44}$", + "required": false, + "info": "Chave da nota referenciada, substitu\u00edda.", + "format": "" + }, + "IND_DEST": { + "type": "numeric", + "regex": "^(0|1|9)$", + "required": false, + "info": "Indicador do Destinat\u00e1rio\/Acessante:1 - Contribuinte do ICMS;2 - Contribuinte Isento de Inscri\u00e7\u00e3o no Cadastro de Contribuintes do ICMS;9 - N\u00e3o Contribuinte.", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio do destinat\u00e1rio conforme a tabela do IBGE.", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "COD_MOD_DOC_REF": { + "type": "string", + "regex": "^.{2}$", + "required": false, + "info": "C\u00f3digo do modelo do documento fiscalreferenciado, conforme a Tabela 4.1.1", + "format": "" + }, + "HASH_DOC_REF": { + "type": "string", + "regex": "^(\\d{32})$", + "required": false, + "info": "C\u00f3digo de autentica\u00e7\u00e3o digital do registro (Conv\u00eanio 115\/2003).", + "format": "" + }, + "SER_DOC_REF": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal referenciado", + "format": "" + }, + "NUM_DOC_REF": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero do documento fiscal referenciado", + "format": "" + }, + "MES_DOC_REF": { + "type": "string", + "regex": "^(\\d{6})$", + "required": false, + "info": "M\u00eas e ano da emiss\u00e3o do documento fiscal referenciado", + "format": "" + }, + "ENER_INJET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Energia injetada", + "format": "15v2" + }, + "OUTRAS_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outras dedu\u00e7\u00f5es", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C510.json b/storage/layouts/ICMSIPI/v017/C510.json new file mode 100755 index 00000000..dafc98db --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C510.json @@ -0,0 +1,142 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item de energia", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS creditado\/debitado", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo referente \u00e0 substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "ALIQ_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS da substitui\u00e7\u00e3o tribut\u00e1ria na unidade da federa\u00e7\u00e3o de destino", + "format": "6v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS referente \u00e0 substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "IND_REC": { + "type": "string", + "regex": "^(0|1)$", + "required": true, + "info": "Indicador do tipo de receita", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante receptor da receita", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C590.json b/storage/layouts/ICMSIPI/v017/C590.json new file mode 100755 index 00000000..874a9331 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C590.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1.", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\"\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0 combina\u00e7\u00e3o\n de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\" da substitui\u00e7\u00e3o\n tribut\u00e1ria referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Parcela correspondente ao valor creditado\/debitado do ICMS da substitui\u00e7\u00e3o tribut\u00e1ria, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C591.json b/storage/layouts/ICMSIPI/v017/C591.json new file mode 100755 index 00000000..7a51dc17 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C591.json @@ -0,0 +1,16 @@ +{ + "VL_FCP_OP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do Fundo de Combate \u00e0 Pobreza (FCP) vinculado \u00e0 opera\u00e7\u00e3o pr\u00f3pria, na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_FCP_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do Fundo de Combate \u00e0 Pobreza (FCP) vinculado \u00e0 opera\u00e7\u00e3o de substitui\u00e7\u00e3o tribut\u00e1ria, na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C600.json b/storage/layouts/ICMSIPI/v017/C600.json new file mode 100755 index 00000000..e4dc5492 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C600.json @@ -0,0 +1,149 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(06|28|29)$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^(\\d{7})$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio dos pontos de consumo,", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "COD_CONS": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "C\u00f3digo de classe de consumo de energia el\u00e9trica ou g\u00e1s", + "format": "" + }, + "QTD_CONS": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": true, + "info": "Quantidade de documentos consolidados neste registro", + "format": "" + }, + "QTD_CANC": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": false, + "info": "Quantidade de documentos cancelados", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data dos documentos consolidados", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos documentos", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "CONS": { + "type": "numeric", + "regex": "^([0-9]+)$", + "required": false, + "info": "Consumo total acumulado, em kWh (C\u00f3digo 06)", + "format": "" + }, + "VL_FORN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do fornecimento", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos servi\u00e7os n\u00e3o-tributados pelo ICMS", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valores cobrados em nome de terceiros", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado das despesas acess\u00f3rias", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C601.json b/storage/layouts/ICMSIPI/v017/C601.json new file mode 100755 index 00000000..cfd989b6 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C601.json @@ -0,0 +1,9 @@ +{ + "NUM_DOC_CANC": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,8})?$", + "required": true, + "info": "N\u00famero do documento fiscal cancelado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C610.json b/storage/layouts/ICMSIPI/v017/C610.json new file mode 100755 index 00000000..35f9e33b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C610.json @@ -0,0 +1,114 @@ +{ + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item de energia el\u00e9trica", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade acumulada do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o conforme tabela indicada no item 4.2.2.", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor acumulado do ICMS debitado", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C690.json b/storage/layouts/ICMSIPI/v017/C690.json new file mode 100755 index 00000000..59e2c828 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C690.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o, conforme a tabela indicada no item 4.2.2", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\"\n referente \u00e0 combina\u00e7\u00e3o CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0\n combina\u00e7\u00e3o CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de\n c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C700.json b/storage/layouts/ICMSIPI/v017/C700.json new file mode 100755 index 00000000..2e33cbb0 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C700.json @@ -0,0 +1,58 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(06|28)$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "NRO_ORD_INI": { + "type": "numeric", + "regex": "^[1-9]\\d{0,8}$", + "required": true, + "info": "N\u00famero de ordem inicial", + "format": "" + }, + "NRO_ORD_FIN": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero de ordem final", + "format": "" + }, + "DT_DOC_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de emiss\u00e3o inicial dos documentos \/ Data inicial de vencimento da fatura", + "format": "" + }, + "DT_DOC_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de emiss\u00e3o final dos documentos \/ Data final do vencimento da fatura", + "format": "" + }, + "NOM_MEST": { + "type": "string", + "regex": "^.{1,33}$", + "required": true, + "info": "Nome do arquivo Mestre de Documento Fiscal", + "format": "" + }, + "CHV_COD_DIG": { + "type": "numeric", + "regex": "^(.{32})?$", + "required": true, + "info": "Chave de codifica\u00e7\u00e3o digital do arquivo Mestre de Documento Fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C790.json b/storage/layouts/ICMSIPI/v017/C790.json new file mode 100755 index 00000000..af952845 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C790.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o, conforme a tabela indicada no item 4.2.2", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do\n ICMS\" referente \u00e0 combina\u00e7\u00e3o CST_ICMS, CFOP, e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0\n combina\u00e7\u00e3o CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C791.json b/storage/layouts/ICMSIPI/v017/C791.json new file mode 100755 index 00000000..c477c1c7 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C791.json @@ -0,0 +1,23 @@ +{ + "UF": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o a que se refere a reten\u00e7\u00e3o ST", + "format": "" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS retido por substitui\u00e7\u00e3o tribut\u00e1ria", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C800.json b/storage/layouts/ICMSIPI/v017/C800.json new file mode 100755 index 00000000..d0cedbb1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C800.json @@ -0,0 +1,114 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^(59)$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02|03)$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a Tabela 4.1.2", + "format": "" + }, + "NUM_CFE": { + "type": "numeric", + "regex": "^(\\d{1,6})$", + "required": true, + "info": "N\u00famero do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "VL_CFE": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do Cupom Fiscal Eletr\u00f4nico", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total da COFINS", + "format": "15v2" + }, + "CNPJ_CPF": { + "type": "string", + "regex": "^([0-9]{11}|[0-9]{14})$", + "required": false, + "info": "CNPJ ou CPF do destinat\u00e1rio", + "format": "" + }, + "NR_SAT": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero de S\u00e9rie do equipamento SAT", + "format": "" + }, + "CHV_CFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": true, + "info": "Chave do Cupom Fiscal Eletr\u00f4nico", + "format": "" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de descontos", + "format": "15v2" + }, + "VL_MERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total das mercadorias e servi\u00e7os", + "format": "15v2" + }, + "VL_OUT_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de outras despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_PIS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do PIS retido por subst. trib.", + "format": "15v2" + }, + "VL_COFINS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da COFINS retido por subst. trib.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C810.json b/storage/layouts/ICMSIPI/v017/C810.json new file mode 100755 index 00000000..0c667123 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C810.json @@ -0,0 +1,51 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "N\u00famero do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v5" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Valor total do item (mercadorias ou servi\u00e7os)", + "format": "" + }, + "CST_ICMS": { + "type": "string", + "regex": "^[0-9]{3}$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C815.json b/storage/layouts/ICMSIPI/v017/C815.json new file mode 100755 index 00000000..fb299197 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C815.json @@ -0,0 +1,86 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria,calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "", + "format": "" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C850.json b/storage/layouts/ICMSIPI/v017/C850.json new file mode 100755 index 00000000..f48178fa --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C850.json @@ -0,0 +1,51 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o do agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "\u201cValor total do CF-e\u201d na combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS,\n correspondente ao somat\u00f3rio do valor l\u00edquido dos itens.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0\n combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C860.json b/storage/layouts/ICMSIPI/v017/C860.json new file mode 100755 index 00000000..fcb3b5da --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C860.json @@ -0,0 +1,37 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^.{1,2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela", + "format": "" + }, + "NR_SAT": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero de S\u00e9rie do equipamento SAT", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de emiss\u00e3o dos documentos fiscais", + "format": "" + }, + "DOC_INI": { + "type": "numeric", + "regex": "^(\\d{1,6})$", + "required": true, + "info": "N\u00famero do documento inicial", + "format": "" + }, + "DOC_FIM": { + "type": "numeric", + "regex": "^(\\d{1,6})$", + "required": true, + "info": "N\u00famero do documento final", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C870.json b/storage/layouts/ICMSIPI/v017/C870.json new file mode 100755 index 00000000..bbd54c37 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C870.json @@ -0,0 +1,37 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v5" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{1,4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o do agrupamento de itens", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C880.json b/storage/layouts/ICMSIPI/v017/C880.json new file mode 100755 index 00000000..dfd1dd6b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C880.json @@ -0,0 +1,86 @@ +{ + "COD_MOT_REST_COMPL": { + "type": "string", + "regex": "^[0-9]{5}$", + "required": true, + "info": "C\u00f3digo do motivo da restitui\u00e7\u00e3o ou complementa\u00e7\u00e3o conforme Tabela 5.7", + "format": "" + }, + "QUANT_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v6" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Unidade adotada para informar o campo QUANT_CONV.", + "format": "" + }, + "VL_UNIT_ICMS_NA_OPERACAO_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio para o ICMS na opera\u00e7\u00e3o, caso n\u00e3o houvesse a ST, considerando unidade utilizada para informar o campo QUANT_CONV, aplicando-se a mesma redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS ST na tributa\u00e7\u00e3o, se houver.", + "format": "15v3" + }, + "VL_UNIT_ICMS_OP_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente ao ICMS OP utilizado no c\u00e1lculo do ressarcimento \/ restitui\u00e7\u00e3o, no desfazimento da substitui\u00e7\u00e3o tribut\u00e1ria, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_ICMS_OP_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS que o contribuinte teria se creditado referente \u00e0 opera\u00e7\u00e3o de entrada das mercadorias em estoque caso estivesse submetida ao regime comum de tributa\u00e7\u00e3o, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV", + "format": "15v3" + }, + "VL_UNIT_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS\/ST, incluindo FCP ST, das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP ST agregado ao ICMS das mercadorias em estoque, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_ICMS_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do total do ICMS\/ST, incluindo FCP ST, a ser restitu\u00eddo\/ressarcido, calculado conforme a legisla\u00e7\u00e3o de cada UF, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_FCP_ST_CONV_REST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_REST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_ICMS_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do complemento do ICMS, incluindo FCP ST, considerando a unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + }, + "VL_UNIT_FCP_ST_CONV_COMPL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio correspondente \u00e0 parcela de ICMS FCP ST que comp\u00f5e o campo VL_UNIT_ICMS_ST_CONV_COMPL, considerando unidade utilizada para informar o campo QUANT_CONV.", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/C890.json b/storage/layouts/ICMSIPI/v017/C890.json new file mode 100755 index 00000000..21a68e11 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/C890.json @@ -0,0 +1,51 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{1,4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o do agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "\u201cValor total do CF-e\u201d na combina\u00e7\u00e3o de CST_ICMS, CFOP e AL\u00cdQUOTA DO ICMS\n , correspondente ao somat\u00f3rio do valor l\u00edquido dos itens.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e AL\u00cdQUOTA DO ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\"\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D001.json b/storage/layouts/ICMSIPI/v017/D001.json new file mode 100755 index 00000000..113ba52c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D100.json b/storage/layouts/ICMSIPI/v017/D100.json new file mode 100755 index 00000000..b46deffe --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D100.json @@ -0,0 +1,170 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(07|08|8B|09|10|11|26|27|57|63|67)$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(00|01|02|03|04|05|06|07|08)$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{0,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^.{1,3}$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^([0-9]{1,9})?$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "CHV_CTE": { + "type": "numeric", + "regex": "^[0-9]{44}$", + "required": false, + "info": "Chave do Conhecimento de Transporte Eletr\u00f4nico ou do Bilhete de Passagem Eletr\u00f4nico", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_A_P": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data da aquisi\u00e7\u00e3o ou da presta\u00e7\u00e3o do servi\u00e7o", + "format": "" + }, + "TP_CT_E": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": false, + "info": "Tipo de Conhecimento de Transporte Eletr\u00f4nico", + "format": "" + }, + "CHV_CTE_REF": { + "type": "numeric", + "regex": "^[0-9]{44}$", + "required": false, + "info": "Chave do CT-e de refer\u00eancia", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "IND_FRT": { + "type": "numeric", + "regex": "^(0|1|2|9)$", + "required": false, + "info": "Indicador do tipo do frete", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor n\u00e3o-tributado", + "format": "15v2" + }, + "COD_INF": { + "type": "string", + "regex": "^.{1,6}$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{1,255}$", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": false, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D101.json b/storage/layouts/ICMSIPI/v017/D101.json new file mode 100755 index 00000000..c865226b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D101.json @@ -0,0 +1,23 @@ +{ + "VL_FCP_UF_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total relativo ao Fundo de Combate \u00e0 Pobreza (FCP) da UF de destino", + "format": "15v2" + }, + "VL_ICMS_UF_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS Interestadual para a UF de destino", + "format": "15v2" + }, + "VL_ICMS_UF_REM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS Interestadual para a UF do remetente", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D110.json b/storage/layouts/ICMSIPI/v017/D110.json new file mode 100755 index 00000000..1e9b6731 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D110.json @@ -0,0 +1,30 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do servi\u00e7o", + "format": "15v2" + }, + "VL_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Outros valores", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D120.json b/storage/layouts/ICMSIPI/v017/D120.json new file mode 100755 index 00000000..590c149f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D120.json @@ -0,0 +1,30 @@ +{ + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[0-9]{7}$", + "required": true, + "info": "Placa de identifica\u00e7\u00e3o do ve\u00edculo", + "format": "" + }, + "UF_ID": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Sigla da UF da placa do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D130.json b/storage/layouts/ICMSIPI/v017/D130.json new file mode 100755 index 00000000..3e712e0b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D130.json @@ -0,0 +1,93 @@ +{ + "COD_PART_CONSG": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):- consignat\u00e1rio, se houver", + "format": "" + }, + "COD_PART_RED": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):- redespachado, se houver", + "format": "" + }, + "IND_FRT_RED": { + "type": "string", + "regex": "^[0-9]{1}$", + "required": true, + "info": "Indicador do tipo do frete da opera\u00e7\u00e3o de redespacho: 0 - Sem redespacho;1 - Por conta do emitente2 - Por conta do destinat\u00e1rio 9 - Outros.", + "format": "" + }, + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[0-9]{7}$", + "required": true, + "info": "Placa de identifica\u00e7\u00e3o do ve\u00edculo", + "format": "" + }, + "VL_LIQ_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor l\u00edquido do frete", + "format": "15v2" + }, + "VL_SEC_CAT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Soma de valores de Sec\/Cat (servi\u00e7os de coleta\/custo adicional de transporte)", + "format": "15v2" + }, + "VL_DESP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Soma de valores de despacho", + "format": "15v2" + }, + "VL_PEDG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Soma dos valores de ped\u00e1gio", + "format": "15v2" + }, + "VL_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Outros valores", + "format": "15v2" + }, + "VL_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do frete", + "format": "15v2" + }, + "UF_ID": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Sigla da UF da placa do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D140.json b/storage/layouts/ICMSIPI/v017/D140.json new file mode 100755 index 00000000..2a286056 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D140.json @@ -0,0 +1,93 @@ +{ + "COD_PART_CONSG": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):- consignat\u00e1rio, se houver", + "format": "" + }, + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + }, + "IND_VEIC": { + "type": "string", + "regex": "^[0-9]{1}$", + "required": true, + "info": "Indicador do tipo do ve\u00edculo transportador: 0 - Embarca\u00e7\u00e3o1 - Empurrador\/rebocador", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Identifica\u00e7\u00e3o da embarca\u00e7\u00e3o (IRIM ou Registro CPP)", + "format": "" + }, + "IND_NAV": { + "type": "string", + "regex": "^[0-9]{1}$", + "required": true, + "info": "Indicador do tipo da navega\u00e7\u00e3o: 0 - Interior1 - Cabotagem", + "format": "" + }, + "VIAGEM": { + "type": "numeric", + "regex": "", + "required": true, + "info": "N\u00famero da viagem", + "format": "" + }, + "VL_FRT_LIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor l\u00edquido do frete", + "format": "15v2" + }, + "VL_DESP_PORT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor das despesas portu\u00e1rias", + "format": "15v2" + }, + "VL_DESP_CAR_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor das despesas com carga e descarga", + "format": "15v2" + }, + "VL_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Outros valores", + "format": "15v2" + }, + "VL_FRT_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor bruto do frete", + "format": "15v2" + }, + "VL_FRT_MM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor adicional do frete para renova\u00e7\u00e3o da Marinha Mercante", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D150.json b/storage/layouts/ICMSIPI/v017/D150.json new file mode 100755 index 00000000..a3c4d29f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D150.json @@ -0,0 +1,72 @@ +{ + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Identifica\u00e7\u00e3o da aeronave (DAC)", + "format": "" + }, + "VIAGEM": { + "type": "string", + "regex": "", + "required": true, + "info": "N\u00famero do v\u00f4o", + "format": "" + }, + "IND_TFA": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Indicador do tipo de tarifa aplicada: 0- Exp.1- Enc.2- C.I.9- Outra", + "format": "" + }, + "VL_PESO_TX": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Peso taxado", + "format": "15v2" + }, + "VL_TX_TERR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da taxa terrestre", + "format": "15v2" + }, + "VL_TX_RED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da taxa de redespacho", + "format": "15v2" + }, + "VL_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Outros valores", + "format": "15v2" + }, + "VL_TX_ADV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da taxa ad valorem", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D160.json b/storage/layouts/ICMSIPI/v017/D160.json new file mode 100755 index 00000000..324e39ad --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D160.json @@ -0,0 +1,51 @@ +{ + "DESPACHO": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Identifica\u00e7\u00e3o do n\u00famero do despacho", + "format": "" + }, + "CNPJ_CPF_REM": { + "type": "numeric", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ ou CPF do remetente das mercadorias que constam na nota fiscal", + "format": "" + }, + "IE_REM": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do remetente das mercadorias que constam na nota fiscal", + "format": "" + }, + "COD_MUN_ORI": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio de origem, conforme tabela IBGE", + "format": "" + }, + "CNPJ_CPF_DEST": { + "type": "numeric", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ ou CPF do destinat\u00e1rio das mercadorias que constam na nota fiscal", + "format": "" + }, + "IE_DEST": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do destinat\u00e1rio das mercadorias que constam na nota fiscal.", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio de destino, conforme tabela IBGE", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D161.json b/storage/layouts/ICMSIPI/v017/D161.json new file mode 100755 index 00000000..c0cb8e32 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D161.json @@ -0,0 +1,51 @@ +{ + "IND_CARGA": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Indicador do tipo de transporte da carga coletada: 0 - Rodovi\u00e1rio1 - Ferrovi\u00e1rio2 - Rodo-Ferrovi\u00e1rio3 - Aquavi\u00e1rio4 - Dutovi\u00e1rio5 - A\u00e9reo9 - Outros", + "format": "" + }, + "CNPJ_CPF_COL": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "N\u00famero do CNPJ ou CPF do local da coleta", + "format": "" + }, + "IE_COL": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do contribuinte do local de coleta", + "format": "" + }, + "COD_MUN_COL": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio do local de coleta, conforme tabela IBGE", + "format": "" + }, + "CNPJ_CPF_ENTG": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "N\u00famero do CNPJ ou CPF do local da entrega", + "format": "" + }, + "IE_ENTG": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do contribuinte do local de entrega", + "format": "" + }, + "COD_MUN_ENTG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do Munic\u00edpio do local de entrega, conforme tabela IBGE", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D162.json b/storage/layouts/ICMSIPI/v017/D162.json new file mode 100755 index 00000000..8712423e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D162.json @@ -0,0 +1,65 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^[0-9]{9}$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_MERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor das mercadorias constantes no documento fiscal", + "format": "15v2" + }, + "QTD_VOL": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Quantidade de volumes transportados", + "format": "" + }, + "PESO_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Peso bruto dos volumes transportados (em kg)", + "format": "15v2" + }, + "PESO_LIQ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Peso l\u00edquido dos volumes transportados (em kg)", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D170.json b/storage/layouts/ICMSIPI/v017/D170.json new file mode 100755 index 00000000..fa92f022 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D170.json @@ -0,0 +1,93 @@ +{ + "COD_PART_CONSG": { + "type": "numeric", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150): consignat\u00e1rio, se houver", + "format": "15v60" + }, + "COD_PART_RED": { + "type": "numeric", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150): redespachante, se houver", + "format": "15v60" + }, + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE", + "format": "" + }, + "OTM": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Registro do operador de transporte multimodal", + "format": "" + }, + "IND_NAT_FRT": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Indicador da natureza do frete: 0- Negoci\u00e1vel1- N\u00e3o negoci\u00e1vel", + "format": "" + }, + "VL_LIQ_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor l\u00edquido do frete", + "format": "15v2" + }, + "VL_GRIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do gris (gerenciamento de risco)", + "format": "15v2" + }, + "VL_PDG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Somat\u00f3rio dos valores de ped\u00e1gio", + "format": "15v2" + }, + "VL_OUT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Outros valores", + "format": "15v2" + }, + "VL_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do frete", + "format": "15v2" + }, + "VEIC_ID": { + "type": "string", + "regex": "^[0-9]{7}$", + "required": true, + "info": "Placa de identifica\u00e7\u00e3o do ve\u00edculo", + "format": "" + }, + "UF_ID": { + "type": "string", + "regex": "^[a-zA-Z]{2}$", + "required": true, + "info": "Sigla da UF da placa do ve\u00edculo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D180.json b/storage/layouts/ICMSIPI/v017/D180.json new file mode 100755 index 00000000..73f962bd --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D180.json @@ -0,0 +1,114 @@ +{ + "NUM_SEQ": { + "type": "numeric", + "regex": "", + "required": true, + "info": "N\u00famero de ordem sequencial do modal", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Indicador do emitente do documento fiscal: 0 - Emiss\u00e3o pr\u00f3pria1 - Terceiros", + "format": "" + }, + "CNPJ_CPF_EMIT": { + "type": "numeric", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ ou CPF do participante emitente do modal", + "format": "" + }, + "UF_EMIT": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o do participante emitente do modal", + "format": "" + }, + "IE_EMIT": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do participante emitente do modal", + "format": "" + }, + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "CNPJ_CPF_TOM": { + "type": "numeric", + "regex": "^[0-9]{14}$", + "required": true, + "info": "CNPJ\/CPF do participante tomador do servi\u00e7o", + "format": "" + }, + "UF_TOM": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o do participante tomador do servi\u00e7o", + "format": "" + }, + "IE_TOM": { + "type": "string", + "regex": "^[0-9]{14}$", + "required": true, + "info": "Inscri\u00e7\u00e3o Estadual do participante tomador do servi\u00e7o", + "format": "" + }, + "COD_MUN_DEST": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de destino, conforme a tabela IBGE(Preencher com 9999999, se Exterior)", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^[0-9]{9}$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D190.json b/storage/layouts/ICMSIPI/v017/D190.json new file mode 100755 index 00000000..1bedf7ae --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D190.json @@ -0,0 +1,58 @@ +{ + "CST_ICMS": { + "type": "string", + "regex": "^[0-9]{3}$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "\u201cValor da Opera\u00e7\u00e3o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{1,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D195.json b/storage/layouts/ICMSIPI/v017/D195.json new file mode 100755 index 00000000..6f3d23bb --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D195.json @@ -0,0 +1,16 @@ +{ + "COD_OBS": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.{1,255}$", + "required": true, + "info": "Descri\u00e7\u00e3o complementar do c\u00f3digo de observa\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D197.json b/storage/layouts/ICMSIPI/v017/D197.json new file mode 100755 index 00000000..9161abf5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D197.json @@ -0,0 +1,51 @@ +{ + "COD_AJ": { + "type": "string", + "regex": "^.{10}$", + "required": true, + "info": "C\u00f3digo do ajustes\/benef\u00edcio\/incentivo, conforme tabela indicada no item 5.3", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^(.*)$", + "required": false, + "info": "Descri\u00e7\u00e3o complementar do ajuste do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Base de c\u00e1lculo do ICMS ou do ICMS ST", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS ou do ICMS ST", + "format": "15v2" + }, + "VL_OUTROS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Outros valores", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D300.json b/storage/layouts/ICMSIPI/v017/D300.json new file mode 100755 index 00000000..1d30b4e2 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D300.json @@ -0,0 +1,135 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{4}$", + "required": true, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "N\u00famero do primeiro documento fiscal emitido (mesmo modelo, s\u00e9rie e subs\u00e9rie)", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "", + "required": true, + "info": "N\u00famero do \u00faltimo documento fiscal emitido (mesmo modelo, s\u00e9rie e subs\u00e9rie)", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o conforme tabela indicada no item 4.2.2", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "DT_DOC": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Data da emiss\u00e3o dos documentos fiscais", + "format": "" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total acumulado das opera\u00e7\u00f5es correspondentes \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos descontos", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_SEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de seguro", + "format": "15v2" + }, + "VL_OUTDESP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de outras despesas", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{1,6}$", + "required": true, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D301.json b/storage/layouts/ICMSIPI/v017/D301.json new file mode 100755 index 00000000..ef9c6c7a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D301.json @@ -0,0 +1,9 @@ +{ + "NUM_DOC_CANC": { + "type": "numeric", + "regex": "^[0-9]{0,9}$", + "required": true, + "info": "N\u00famero do documento fiscal cancelado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D310.json b/storage/layouts/ICMSIPI/v017/D310.json new file mode 100755 index 00000000..ea2931f5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D310.json @@ -0,0 +1,30 @@ +{ + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D350.json b/storage/layouts/ICMSIPI/v017/D350.json new file mode 100755 index 00000000..361fd0f5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D350.json @@ -0,0 +1,30 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "ECF_MOD": { + "type": "string", + "regex": "^[0-9]{20}$", + "required": true, + "info": "Modelo do equipamento", + "format": "" + }, + "ECF_FAB": { + "type": "string", + "regex": "^[0-9]{21}$", + "required": true, + "info": "N\u00famero de s\u00e9rie de fabrica\u00e7\u00e3o do ECF", + "format": "" + }, + "ECF_CX": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "N\u00famero do caixa atribu\u00eddo ao ECF", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D355.json b/storage/layouts/ICMSIPI/v017/D355.json new file mode 100755 index 00000000..7ffd68a7 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D355.json @@ -0,0 +1,44 @@ +{ + "DT_DOC": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do movimento a que se refere a Redu\u00e7\u00e3o Z", + "format": "" + }, + "CRO": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "Posi\u00e7\u00e3o do Contador de Rein\u00edcio de Opera\u00e7\u00e3o", + "format": "" + }, + "CRZ": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Posi\u00e7\u00e3o do Contador de Redu\u00e7\u00e3o Z", + "format": "" + }, + "NUM_COO_FIN": { + "type": "numeric", + "regex": "^[0-9]{9}$", + "required": true, + "info": "N\u00famero do Contador de Ordem de Opera\u00e7\u00e3o do \u00faltimo documento emitido no dia. (N\u00famero do COO na Redu\u00e7\u00e3o Z)", + "format": "" + }, + "GT_FIN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do Grande Total final", + "format": "15v2" + }, + "VL_BRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da venda bruta", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D360.json b/storage/layouts/ICMSIPI/v017/D360.json new file mode 100755 index 00000000..cb7062c4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D360.json @@ -0,0 +1,16 @@ +{ + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D365.json b/storage/layouts/ICMSIPI/v017/D365.json new file mode 100755 index 00000000..71ce164e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D365.json @@ -0,0 +1,30 @@ +{ + "COD_TOT_PAR": { + "type": "string", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do totalizador, conforme tabela 4.4.6", + "format": "" + }, + "VLR_ACUM_TOT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado no totalizador, relativo \u00e0 respectiva Redu\u00e7\u00e3o Z", + "format": "15v2" + }, + "NR_TOT": { + "type": "numeric", + "regex": "^[0-9]{2}$", + "required": true, + "info": "N\u00famero do totalizador quando ocorrer mais de uma situa\u00e7\u00e3o com a mesma carga tribut\u00e1ria efetiva", + "format": "" + }, + "DESCR_NR_TOT": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "Descri\u00e7\u00e3o da situa\u00e7\u00e3o tribut\u00e1ria relativa ao totalizador parcial, quando houver mais de um com a mesma carga tribut\u00e1ria efetiva", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D370.json b/storage/layouts/ICMSIPI/v017/D370.json new file mode 100755 index 00000000..e6dff69b --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D370.json @@ -0,0 +1,37 @@ +{ + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "QTD_BILH": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de bilhetes emitidos", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D390.json b/storage/layouts/ICMSIPI/v017/D390.json new file mode 100755 index 00000000..eae7ad0e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D390.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_BC_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ISSQN", + "format": "15v2" + }, + "ALIQ_ISSQN": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ISSQN", + "format": "" + }, + "VL_ISSQN": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ISSQN", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Base de c\u00e1lculo do ICMS acumulada relativa \u00e0 al\u00edquota informada", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS acumulado relativo \u00e0 al\u00edquota informada", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D400.json b/storage/layouts/ICMSIPI/v017/D400.json new file mode 100755 index 00000000..cde34562 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D400.json @@ -0,0 +1,107 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):- ag\u00eancia, filial ou posto", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal, conforme a tabela 4.1.2", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "N\u00famero do documento fiscal resumo.", + "format": "" + }, + "DT_DOC": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D410.json b/storage/layouts/ICMSIPI/v017/D410.json new file mode 100755 index 00000000..675afb18 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D410.json @@ -0,0 +1,100 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal , conforme a tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "NUM_DOC_INI": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "N\u00famero do documento fiscal inicial (mesmo modelo, s\u00e9rie e subs\u00e9rie)", + "format": "" + }, + "NUM_DOC_FIN": { + "type": "numeric", + "regex": "^([1-9]{1})(\\d{1,5})?$", + "required": true, + "info": "N\u00famero do documento fiscal final(mesmo modelo, s\u00e9rie e subs\u00e9rie)", + "format": "" + }, + "DT_DOC": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o dos documentos fiscais", + "format": "" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total acumulado das opera\u00e7\u00f5es correspondentes \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D411.json b/storage/layouts/ICMSIPI/v017/D411.json new file mode 100755 index 00000000..ef9c6c7a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D411.json @@ -0,0 +1,9 @@ +{ + "NUM_DOC_CANC": { + "type": "numeric", + "regex": "^[0-9]{0,9}$", + "required": true, + "info": "N\u00famero do documento fiscal cancelado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D420.json b/storage/layouts/ICMSIPI/v017/D420.json new file mode 100755 index 00000000..ea2931f5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D420.json @@ -0,0 +1,30 @@ +{ + "COD_MUN_ORIG": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio de origem do servi\u00e7o, conforme a tabela IBGE", + "format": "" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D500.json b/storage/layouts/ICMSIPI/v017/D500.json new file mode 100755 index 00000000..ac47f663 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D500.json @@ -0,0 +1,163 @@ +{ + "IND_OPER": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do tipo de opera\u00e7\u00e3o", + "format": "" + }, + "IND_EMIT": { + "type": "string", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador do emitente do documento fiscal", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(21|22)+$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscalValor total do estoque", + "format": "" + }, + "COD_SIT": { + "type": "numeric", + "regex": "^(0)([0-9]{1})?$", + "required": true, + "info": "C\u00f3digo da situa\u00e7\u00e3o do documento fiscal", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "string", + "regex": "^([0-9a-z]{0,3})?$", + "required": false, + "info": "Subs\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^([0-9]{1,9})?$", + "required": true, + "info": "N\u00famero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal", + "format": "" + }, + "DT_A_P": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da entrada (aquisi\u00e7\u00e3o) ou da sa\u00edda (presta\u00e7\u00e3o do servi\u00e7o)", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do documento fiscal", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total da presta\u00e7\u00e3o de servi\u00e7o", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total dos servi\u00e7os n\u00e3o-tributados pelo ICMS", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valores cobrados em nome de terceiros", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor de outras despesas indicadas no documento fiscal", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS", + "format": "15v2" + }, + "COD_INF": { + "type": "numeric", + "regex": "^([0-1]{1,6})$", + "required": false, + "info": "C\u00f3digo da informa\u00e7\u00e3o complementar do documento fiscal", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "(.*)", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "TP_ASSINANTE": { + "type": "numeric", + "regex": "^(1|2|3|4|5|6)$", + "required": false, + "info": "C\u00f3digo do Tipo de Assinante", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D510.json b/storage/layouts/ICMSIPI/v017/D510.json new file mode 100755 index 00000000..f74f74ec --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D510.json @@ -0,0 +1,135 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": false, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item do servi\u00e7o de comunica\u00e7\u00e3o ou de telecomunica\u00e7\u00e3o", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor total do desconto", + "format": "15v2" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS creditado\/debitado", + "format": "15v2" + }, + "VL_BC_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da base de c\u00e1lculo do ICMS de outras UFs", + "format": "15v2" + }, + "VL_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS de outras UFs", + "format": "15v2" + }, + "IND_REC": { + "type": "string", + "regex": "^(0|1|2|3|4|5|9)$", + "required": true, + "info": "Indicador do tipo de receita", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{0,60}$", + "required": false, + "info": "C\u00f3digo do participante receptor da receita", + "format": "" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "(.*)", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D530.json b/storage/layouts/ICMSIPI/v017/D530.json new file mode 100755 index 00000000..d6c09a27 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D530.json @@ -0,0 +1,44 @@ +{ + "IND_SERV": { + "type": "string", + "regex": "^(0|1|2|3|4|9)$", + "required": true, + "info": "Indicador do tipo de servi\u00e7o prestado", + "format": "" + }, + "DT_INI_SERV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data em que se iniciou a presta\u00e7\u00e3o do servi\u00e7o", + "format": "" + }, + "DT_FIN_SERV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data em que se encerrou a presta\u00e7\u00e3o do servi\u00e7o", + "format": "" + }, + "PER_FISCAL": { + "type": "numeric", + "regex": "^(\\d{6})$", + "required": true, + "info": "Peri\u0301odo fiscal da prestac\u0327a\u0303o do servic\u0327o (MMAAAA)", + "format": "" + }, + "COD_AREA": { + "type": "string", + "regex": "^(\\d{255})$", + "required": false, + "info": "C\u00f3digo de \u00e1rea do terminal faturado", + "format": "" + }, + "TERMINAL": { + "type": "numeric", + "regex": "^(\\d{255})$", + "required": false, + "info": "Identificac\u0327a\u0303o do terminal faturado", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D590.json b/storage/layouts/ICMSIPI/v017/D590.json new file mode 100755 index 00000000..38d770b6 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D590.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1.", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\"\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0 combina\u00e7\u00e3o\n de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_BC_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor da base de ca\u0301lculo do ICMS de outras UFs,\n referente a\u0300 combinac\u0327a\u0303o de CST_ICMS, CFOP e ali\u0301quota do ICMS.", + "format": "15v2" + }, + "VL_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor do ICMS de outras UFs, referente a\u0300 combinac\u0327a\u0303o\n de CST_ICMS, CFOP, e ali\u0301quota do ICMS.", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D600.json b/storage/layouts/ICMSIPI/v017/D600.json new file mode 100755 index 00000000..0035693f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D600.json @@ -0,0 +1,121 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a tabela 4.1.1", + "format": "" + }, + "COD_MUN": { + "type": "numeric", + "regex": "^[0-9]{7}$", + "required": true, + "info": "C\u00f3digo do munic\u00edpio dos terminais faturados, conforme a tabela IBGE", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^[0-9]{4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "numeric", + "regex": "^[0-9]{3}$", + "required": true, + "info": "Subs\u00e9rie do documento fiscal", + "format": "" + }, + "COD_CONS": { + "type": "string", + "regex": "^0[1|2|3|4|5|6|7|8]$", + "required": true, + "info": "Co\u0301digo de classe de consumo de energia ele\u0301trica: 01 - Comercial 02 - Consumo Pro\u0301prio 03 - Iluminac\u0327a\u0303o Pu\u0301blica 04 - Industrial 05 - Poder Pu\u0301blico 06 - Residencial 07 - Rural 08 -Servic\u0327o Pu\u0301blico", + "format": "" + }, + "QTD_CONS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade consumida \u2013 sa\u00edda do estoque", + "format": "15v3" + }, + "DT_DOC": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data dos documentos consolidados", + "format": "" + }, + "VL_DOC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total acumulado dos documentos fiscais", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "VL_SERV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado das presta\u00e7\u00f5es de servi\u00e7os tributados pelo ICMS", + "format": "15v2" + }, + "VL_SERV_NT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado dos servi\u00e7os n\u00e3o-tributados pelo ICMS", + "format": "15v2" + }, + "VL_TERC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores cobrados em nome de terceiros", + "format": "15v2" + }, + "VL_DA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado das despesas acess\u00f3rias", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do ICMS", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da COFINS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D610.json b/storage/layouts/ICMSIPI/v017/D610.json new file mode 100755 index 00000000..48a28f06 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D610.json @@ -0,0 +1,121 @@ +{ + "COD_CLASS": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo de classifica\u00e7\u00e3o do item do servi\u00e7o de comunica\u00e7\u00e3o ou de telecomunica\u00e7\u00e3o, conforme a tabela 4.4.1", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^[0-9]{60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade acumulada do item", + "format": "15v3" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Unidade do item (Campo 02 do registro 0190)", + "format": "" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do item", + "format": "15v2" + }, + "VL_DESC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado dos descontos", + "format": "15v2" + }, + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o conforme tabela indicada no item 4.2.2", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do ICMS debitado", + "format": "15v2" + }, + "VL_BC_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS a outras UFs", + "format": "15v2" + }, + "VL_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS a outras UFs", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS.", + "format": "15v2" + }, + "VL_PIS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado do PIS", + "format": "15v2" + }, + "VL_COFINS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor acumulado da COFINS", + "format": "15v2" + }, + "COD_CTA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D690.json b/storage/layouts/ICMSIPI/v017/D690.json new file mode 100755 index 00000000..d5035266 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D690.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a tabela indicada no item 4.3.1", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de Opera\u00e7\u00e3o e Presta\u00e7\u00e3o, conforme a tabela indicada no item 4.2.2", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Al\u00edquota do ICMS", + "format": "" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS, inclu\u00eddas as despesas acess\u00f3rias e acr\u00e9scimos", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao Valor da base de c\u00e1lculo do ICMS referente \u00e0 combina\u00e7\u00e3o CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao Valor do ICMS referente \u00e0 combina\u00e7\u00e3o CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_BC_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor da base de c\u00e1lculo do ICMS de outras UFs, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "VL_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor do ICMS de outras UFs, referente \u00e0 combina\u00e7\u00e3o", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS, referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal (campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D695.json b/storage/layouts/ICMSIPI/v017/D695.json new file mode 100755 index 00000000..2b654696 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D695.json @@ -0,0 +1,58 @@ +{ + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "C\u00f3digo do modelo do documento fiscal, conforme a Tabela 4.1.1.", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": true, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "NRO_ORD_INI": { + "type": "numeric", + "regex": "^(\\d{9})$", + "required": true, + "info": "N\u00famero de ordem inicial ", + "format": "" + }, + "NRO_ORD_FIN": { + "type": "numeric", + "regex": "^(\\d{9})$", + "required": true, + "info": "N\u00famero de ordem final ", + "format": "" + }, + "DT_DOC_INI": { + "type": "numeric", + "regex": "^(\\d{8})$", + "required": true, + "info": "Data de emiss\u00e3o inicial dos documentos ", + "format": "" + }, + "DT_DOC_FIN": { + "type": "numeric", + "regex": "^(\\d{8})$", + "required": true, + "info": "Data de emiss\u00e3o final dos documentos ", + "format": "" + }, + "NOM_MEST": { + "type": "string", + "regex": "^.{1,33}$", + "required": true, + "info": "Nome do arquivo Mestre de Documento Fiscal", + "format": "" + }, + "CHV_COD_DIG": { + "type": "string", + "regex": "^.{1,32}$", + "required": true, + "info": "Chave de codifica\u00e7\u00e3o digital do arquivo Mestre de Documento Fiscal", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D696.json b/storage/layouts/ICMSIPI/v017/D696.json new file mode 100755 index 00000000..b26c4e19 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D696.json @@ -0,0 +1,72 @@ +{ + "CST_ICMS": { + "type": "numeric", + "regex": "^(\\d{3})$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria, conforme a Tabela indicada no item 4.3.1 . ", + "format": "" + }, + "CFOP": { + "type": "numeric", + "regex": "^(\\d{4})$", + "required": true, + "info": "C\u00f3digo Fiscal de agrupamento de itens", + "format": "" + }, + "ALIQ_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Al\u00edquota do ICMS", + "format": "6v2" + }, + "VL_OPR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da opera\u00e7\u00e3o correspondente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP, e al\u00edquota do ICMS . ", + "format": "15v2" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de c\u00e1lculo do ICMS\"\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS . ", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do ICMS\" referente \u00e0 combina\u00e7\u00e3o\n de CST_ICMS, CFOP e al\u00edquota do ICMS . ", + "format": "15v2" + }, + "VL_BC_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor da base de ca\u0301lculo do ICMS de outras UFs,\n referente a\u0300 combinac\u0327a\u0303o de CST_ICMS, CFOP e ali\u0301quota do ICMS . ", + "format": "15v2" + }, + "VL_ICMS_UF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao valor do ICMS de outras UFs, referente a\u0300 combinac\u0327a\u0303o\n de CST_ICMS, CFOP, e ali\u0301quota do ICMS . ", + "format": "15v2" + }, + "VL_RED_BC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor n\u00e3o tributado em fun\u00e7\u00e3o da redu\u00e7\u00e3o da base de c\u00e1lculo do ICMS,\n referente \u00e0 combina\u00e7\u00e3o de CST_ICMS, CFOP e al\u00edquota do ICMS . ", + "format": "15v2" + }, + "COD_OBS": { + "type": "string", + "regex": " ^.{0,6}$", + "required": false, + "info": "C\u00f3digo da observa\u00e7\u00e3o do lan\u00e7amento fiscal(campo 02 do Registro 0460)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/D697.json b/storage/layouts/ICMSIPI/v017/D697.json new file mode 100755 index 00000000..791fb2c7 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/D697.json @@ -0,0 +1,23 @@ +{ + "UF": { + "type": "string", + "regex": "^[0-9]{2}$", + "required": true, + "info": "Sigla da unidade da federa\u00e7\u00e3o", + "format": "" + }, + "VL_BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E001.json b/storage/layouts/ICMSIPI/v017/E001.json new file mode 100755 index 00000000..cf081de8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0|1]{1}$", + "required": true, + "info": "Indicador de movimento:0- Bloco com dados informados;1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E100.json b/storage/layouts/ICMSIPI/v017/E100.json new file mode 100755 index 00000000..1fe8fac8 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E100.json @@ -0,0 +1,16 @@ +{ + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final das informa\u00e7\u00f5es contidas no arquivo.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E110.json b/storage/layouts/ICMSIPI/v017/E110.json new file mode 100755 index 00000000..78f2b467 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E110.json @@ -0,0 +1,100 @@ +{ + "VL_TOT_DEBITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos de\u0301bitos por \"Sai\u0301das e prestac\u0327o\u0303es com de\u0301bito do imposto\"", + "format": "15v2" + }, + "VL_AJ_DEBITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes a de\u0301bito decorrentes do documento fiscal.", + "format": "15v2" + }, + "VL_TOT_AJ_DEBITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"Ajustes a de\u0301bito\"", + "format": "15v2" + }, + "VL_ESTORNOS_CRED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Ajustes \u201cEstornos de cre\u0301ditos\u201d", + "format": "15v2" + }, + "VL_TOT_CREDITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos por \"Entradas e aquisic\u0327o\u0303es com cre\u0301dito do imposto\"", + "format": "15v2" + }, + "VL_AJ_CREDITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes a cre\u0301dito decorrentes do documento fiscal.", + "format": "15v2" + }, + "VL_TOT_AJ_CREDITOS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"Ajustes a cre\u0301dito\"", + "format": "15v2" + }, + "VL_ESTORNOS_DEB": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Ajustes \u201cEstornos de De\u0301bitos\u201d", + "format": "15v2" + }, + "VL_SLD_CREDOR_ANT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"Saldo credor do peri\u0301odo anterior\"", + "format": "15v2" + }, + "VL_SLD_APURADO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do saldo devedor apurado", + "format": "15v2" + }, + "VL_TOT_DED": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"Deduc\u0327o\u0303es\"", + "format": "15v2" + }, + "VL_ICMS_RECOLHER": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"ICMS a recolher (11-12)", + "format": "15v2" + }, + "VL_SLD_CREDOR_TRANSPORTAR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de \"Saldo credor a transportar para o peri\u0301odo seguinte\u201d", + "format": "15v2" + }, + "DEB_ESP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores recolhidos ou a recolher, extra apurac\u0327a\u0303o.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E111.json b/storage/layouts/ICMSIPI/v017/E111.json new file mode 100755 index 00000000..a9ba0cea --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E111.json @@ -0,0 +1,23 @@ +{ + "COD_AJ_APUR": { + "type": "string", + "regex": "^[A-Z]{2}\\d{6}$", + "required": true, + "info": "Co\u0301digo do ajuste da apurac\u0327a\u0303o e deduc\u0327a\u0303o, conforme a Tabela indicada no item 5.1.1.", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste da apurac\u0327a\u0303o.", + "format": "" + }, + "VL_AJ_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste da apurac\u0327a\u0303o", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E112.json b/storage/layouts/ICMSIPI/v017/E112.json new file mode 100755 index 00000000..b8f7f420 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E112.json @@ -0,0 +1,37 @@ +{ + "NUM_DA": { + "type": "string", + "regex": "^\\d+$", + "required": false, + "info": "Nu\u0301mero do documento de arrecadac\u0327a\u0303o estadual, se houver", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^\\d{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- Sefaz;1- Justic\u0327a Federal;2- Justic\u0327a Estadual;9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E113.json b/storage/layouts/ICMSIPI/v017/E113.json new file mode 100755 index 00000000..f59cbffd --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E113.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150):- do emitente do documento ou do remetente das mercadorias, no caso de entradas;- do adquirente, no caso de sai\u0301das", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^\\d{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^\\d{1,4}+$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^\\d{1,3}+$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^([1-9])([0-9]{0,8}|)$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_AJ_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste para a operac\u0327a\u0303o\/item", + "format": "15v2" + }, + "CHV_DOCE": { + "type": "string", + "regex": "^\\d{44}$", + "required": false, + "info": "Chave do Documento Eletro\u0302nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E115.json b/storage/layouts/ICMSIPI/v017/E115.json new file mode 100755 index 00000000..22881a55 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E115.json @@ -0,0 +1,23 @@ +{ + "COD_INF_ADIC": { + "type": "string", + "regex": "^\\d{8}$", + "required": true, + "info": "Co\u0301digo da informac\u0327a\u0303o adicional conforme tabela a serdefinida pelas SEFAZ, conforme tabela definida no item 5.2.", + "format": "" + }, + "VL_INF_ADIC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor referente a\u0300 informac\u0327a\u0303o adicional", + "format": "15v2" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E116.json b/storage/layouts/ICMSIPI/v017/E116.json new file mode 100755 index 00000000..269f34b6 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E116.json @@ -0,0 +1,65 @@ +{ + "COD_OR": { + "type": "string", + "regex": "^[000|003|004|005|006|090]+$", + "required": true, + "info": "Co\u0301digo da obrigac\u0327a\u0303o a recolher, conforme a Tabela 5.4", + "format": "" + }, + "VL_OR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da obrigac\u0327a\u0303o a recolher", + "format": "15v2" + }, + "DT_VCTO": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de vencimento da obrigac\u0327a\u0303o", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Co\u0301digo de receita referente a\u0300 obrigac\u0327a\u0303o, pro\u0301prio da unidade da federac\u0327a\u0303o, conforme legislac\u0327a\u0303o estadual.", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ou auto de infrac\u0327a\u0303o ao qual a obrigac\u0327a\u0303o esta\u0301 vinculada, se houver.", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- SEFAZ;1- Justic\u0327a Federal;2- Justic\u0327a Estadual;9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar das obrigac\u0327o\u0303es a recolher.", + "format": "" + }, + "MES_REF": { + "type": "numeric", + "regex": "^((?!(13^))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Informe o me\u0302s de refere\u0302ncia no formato \u201cmmaaaa\u201d", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E200.json b/storage/layouts/ICMSIPI/v017/E200.json new file mode 100755 index 00000000..b2d63fb4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E200.json @@ -0,0 +1,23 @@ +{ + "UF": { + "type": "string", + "regex": "^[a-zA-Z]{2}$", + "required": true, + "info": "Sigla da unidade da federac\u0327a\u0303o a que se refere a apurac\u0327a\u0303o do ICMS ST", + "format": "" + }, + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apurac\u0327a\u0303o se refere", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final a que a apurac\u0327a\u0303o se refere", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E210.json b/storage/layouts/ICMSIPI/v017/E210.json new file mode 100755 index 00000000..8bfddb46 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E210.json @@ -0,0 +1,100 @@ +{ + "IND_MOV_ST": { + "type": "integer", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0 \u2013 Sem operac\u0327o\u0303es com ST 1 \u2013 Com operac\u0327o\u0303es de ST", + "format": "" + }, + "VL_SLD_CRED_ANT_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do \"Saldo credor de peri\u0301odo anterior \u2013 Substituic\u0327a\u0303o Tributa\u0301ria\"", + "format": "15v2" + }, + "VL_DEVOL_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS ST de devoluc\u0327a\u0303o de mercadorias", + "format": "15v2" + }, + "VL_RESSARC_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do ICMS ST de ressarcimentos", + "format": "15v2" + }, + "VL_OUT_CRED_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Ajustes \"Outros cre\u0301ditos ST\" e \u201cEstorno de de\u0301bitos ST\u201d", + "format": "15v2" + }, + "VL_AJ_CREDITOS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes a cre\u0301dito de ICMS ST, provenientes de ajustes do documento fiscal.", + "format": "15v2" + }, + "VL_RETENCAO_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total do ICMS retido por Substituic\u0327a\u0303o Tributa\u0301ria", + "format": "15v2" + }, + "VL_OUT_DEB_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total dos ajustes \"Outros de\u0301bitos ST\" \" e \u201cEstorno de cre\u0301ditos ST\u201d", + "format": "15v2" + }, + "VL_AJ_DEBITOS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes a de\u0301bito de ICMS ST, provenientes de ajustes do documento fiscal.", + "format": "15v2" + }, + "VL_SLD_DEV_ANT_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Saldo devedor antes das deduc\u0327o\u0303es", + "format": "15v2" + }, + "VL_DEDUCOES_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes \"Deduc\u0327o\u0303es ST\"", + "format": "15v2" + }, + "VL_ICMS_RECOL_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Imposto a recolher ST (11-12)", + "format": "15v2" + }, + "VL_SLD_CRED_ST_TRANSPORTAR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo credor de ST a transportar para o peri\u0301odo seguinte [(03+04+05+06+07+12)\u2013 (08+09+10)].", + "format": "15v2" + }, + "DEB_ESP_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores recolhidos ou a recolher, extra- apurac\u0327a\u0303o.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E220.json b/storage/layouts/ICMSIPI/v017/E220.json new file mode 100755 index 00000000..8611ed3e --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E220.json @@ -0,0 +1,23 @@ +{ + "COD_AJ_APUR": { + "type": "string", + "regex": "^.{8}$", + "required": true, + "info": "Co\u0301digo do ajuste da apurac\u0327a\u0303o e deduc\u0327a\u0303o, conforme a Tabela indicada no item 5.1.1", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste da apurac\u0327a\u0303o", + "format": "" + }, + "VL_AJ_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste da apurac\u0327a\u0303o", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E230.json b/storage/layouts/ICMSIPI/v017/E230.json new file mode 100755 index 00000000..16870f24 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E230.json @@ -0,0 +1,37 @@ +{ + "NUM_DA": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do documento de arrecadac\u0327a\u0303o estadual, se houver", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "IND_PROC": { + "type": "integer", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo:0- Sefaz;1- Justic\u0327a Federal;2- Justic\u0327a Estadual;9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E240.json b/storage/layouts/ICMSIPI/v017/E240.json new file mode 100755 index 00000000..ed5c3cc1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E240.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): - do emitente do documento ou do remetente das mercadorias, no caso de entradas; - do adquirente, no caso de sai\u0301das", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^.{1,3}$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^([1-9])([0-9]{1,8}|)$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_AJ_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste para a operac\u0327a\u0303o\/item", + "format": "15v2" + }, + "CHV_DOCE": { + "type": "string", + "regex": "^.{44}$", + "required": false, + "info": "Chave do Documento Eletro\u0302nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E250.json b/storage/layouts/ICMSIPI/v017/E250.json new file mode 100755 index 00000000..4fe020f5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E250.json @@ -0,0 +1,65 @@ +{ + "COD_OR": { + "type": "string", + "regex": "^.[001|002|006|999]+$", + "required": true, + "info": "Co\u0301digo da obrigac\u0327a\u0303o a recolher, conforme a Tabela 5.4", + "format": "" + }, + "VL_OR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da obrigac\u0327a\u0303o ICMS ST a recolher", + "format": "15v2" + }, + "DT_VCTO": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de vencimento da obrigac\u0327a\u0303o", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Co\u0301digo de receita referente a\u0300 obrigac\u0327a\u0303o, pro\u0301prio da unidade da federac\u0327a\u0303o do contribuinte substitui\u0301do.", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ou auto de infrac\u0327a\u0303o ao qual a obrigac\u0327a\u0303o esta\u0301 vinculada, se houver", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- SEFAZ; 1- Justic\u0327a Federal; 2- Justic\u0327a Estadual; 9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar das obrigac\u0327o\u0303es a recolher", + "format": "" + }, + "MES_REF": { + "type": "integer", + "regex": "^((?!(13^))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Informe o me\u0302s de refere\u0302ncia no formato \u201cmmaaaa\u201d", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E300.json b/storage/layouts/ICMSIPI/v017/E300.json new file mode 100755 index 00000000..68ada4fb --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E300.json @@ -0,0 +1,23 @@ +{ + "UF": { + "type": "string", + "regex": "^.{1,2}$", + "required": true, + "info": "Sigla da unidade da federac\u0327a\u0303o a que se refere a\u0300 apurac\u0327a\u0303o do FCP e do ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino", + "format": "" + }, + "DT_INI": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apurac\u0327a\u0303o se refere", + "format": "" + }, + "DT_FIN": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final a que a apurac\u0327a\u0303o se refere", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E310.json b/storage/layouts/ICMSIPI/v017/E310.json new file mode 100755 index 00000000..e81d127a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E310.json @@ -0,0 +1,149 @@ +{ + "IND_MOV_FCP_DIFAL": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de movimento: 0 \u2013 Sem operac\u0327o\u0303es 1 \u2013 Com operac\u0327o\u0303es", + "format": "" + }, + "VL_SLD_CRED_ANT_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do \"Saldo credor de peri\u0301odo anterior \u2013 ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino\"", + "format": "15v2" + }, + "VL_TOT_DEBITOS_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos de\u0301bitos por \"Sai\u0301das e prestac\u0327o\u0303es com de\u0301bito do ICMS referente ao diferencial de ali\u0301quota devido a\u0300 UF de Origem\/Destino\"", + "format": "15v2" + }, + "VL_OUT_DEB_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor Total dos ajustes \"Outros de\u0301bitos ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino\" e \u201cEstorno de cre\u0301ditos ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino", + "format": "15v2" + }, + "VL_TOT_CREDITOS_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos do ICMS referente ao diferencial de ali\u0301quota devido a\u0300 UF de Origem\/Destino", + "format": "15v2" + }, + "VL_OUT_CRED_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Ajustes \"Outros cre\u0301ditos ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino\" e \u201cEstorno de de\u0301bitos ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino\u201d", + "format": "15v2" + }, + "VL_SLD_DEV_ANT_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Saldo devedor ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino antes das deduc\u0327o\u0303es", + "format": "15v2" + }, + "VL_DEDUCOES_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes \"Deduc\u0327o\u0303es ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino\"", + "format": "15v2" + }, + "VL_RECOL_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor recolhido ou a recolher referente ao ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino (08-09)", + "format": "15v2" + }, + "VL_SLD_CRED_TRANSPORTAR_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo credor a transportar para o peri\u0301odo seguinte referente ao ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino", + "format": "15v2" + }, + "DEB_ESP_DIFAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores recolhidos ou a recolher, extra- apurac\u0327a\u0303o - ICMS Diferencial de Ali\u0301quota da UF de Origem\/Destino.", + "format": "15v2" + }, + "VL_SLD_CRED_ANT_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do \"Saldo credor de peri\u0301odo anterior \u2013 FCP\"", + "format": "15v2" + }, + "VL_TOT_DEB_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos de\u0301bitos FCP por \"Sai\u0301das e prestac\u0327o\u0303es\u201d", + "format": "15v2" + }, + "VL_OUT_DEB_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos ajustes \"Outros de\u0301bitos FCP\" e \u201cEstorno de cre\u0301ditos FCP\u201d", + "format": "15v2" + }, + "VL_TOT_CRED_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos FCP por Entradas", + "format": "15v2" + }, + "VL_OUT_CRED_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Ajustes \"Outros cre\u0301ditos FCP\" e \u201cEstorno de de\u0301bitos FCP\u201d", + "format": "15v2" + }, + "VL_SLD_DEV_ANT_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de Saldo devedor FCP antes das deduc\u0327o\u0303es", + "format": "15v2" + }, + "VL_DEDUCOES_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total das deduc\u0327o\u0303es \"FCP\"", + "format": "15v2" + }, + "VL_RECOL_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor recolhido ou a recolher referente ao FCP (18\u201319)", + "format": "15v2" + }, + "VL_SLD_CRED_TRANSPORTAR_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo credor a transportar para o peri\u0301odo seguinte referente ao FCP", + "format": "15v2" + }, + "DEB_ESP_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valores recolhidos ou a recolher, extra- apurac\u0327a\u0303o - FCP", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E311.json b/storage/layouts/ICMSIPI/v017/E311.json new file mode 100755 index 00000000..a1c6c0f5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E311.json @@ -0,0 +1,23 @@ +{ + "COD_AJ_APUR": { + "type": "string", + "regex": "^.{1,8}$", + "required": true, + "info": "Co\u0301digo do ajuste da apurac\u0327a\u0303o e deduc\u0327a\u0303o, conforme a Tabela indicada no item 5.1.1", + "format": "" + }, + "DESCR_COMPL_AJ": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar do ajuste da apurac\u0327a\u0303o", + "format": "" + }, + "VL_AJ_APUR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste da apurac\u0327a\u0303o", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E312.json b/storage/layouts/ICMSIPI/v017/E312.json new file mode 100755 index 00000000..16870f24 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E312.json @@ -0,0 +1,37 @@ +{ + "NUM_DA": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do documento de arrecadac\u0327a\u0303o estadual, se houver", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "IND_PROC": { + "type": "integer", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo:0- Sefaz;1- Justic\u0327a Federal;2- Justic\u0327a Estadual;9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E313.json b/storage/layouts/ICMSIPI/v017/E313.json new file mode 100755 index 00000000..949ec9e1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E313.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150)", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^\\d{2}$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^\\d{1,4}+$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^\\d{1,3}+$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^([1-9])([0-9]{1,8}|)$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_AJ_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste para a operac\u0327a\u0303o\/item", + "format": "15v2" + }, + "CHV_DOCE": { + "type": "string", + "regex": "^\\d{44}+$", + "required": false, + "info": "Chave do Documento Eletro\u0302nico", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E316.json b/storage/layouts/ICMSIPI/v017/E316.json new file mode 100755 index 00000000..eef03a42 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E316.json @@ -0,0 +1,65 @@ +{ + "COD_OR": { + "type": "string", + "regex": "^00([3-6]|0)|090$", + "required": true, + "info": "Co\u0301digo da obrigac\u0327a\u0303o recolhida ou a recolher, conforme a Tabela 5.4", + "format": "" + }, + "VL_OR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da obrigac\u0327a\u0303o recolhida ou a recolher", + "format": "15v2" + }, + "DT_VCTO": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de vencimento da obrigac\u0327a\u0303o", + "format": "" + }, + "COD_REC": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Co\u0301digo de receita referente a\u0300 obrigac\u0327a\u0303o, pro\u0301prio da unidade da federac\u0327a\u0303o da origem\/destino, conforme legislac\u0327a\u0303o estadual.", + "format": "" + }, + "NUM_PROC": { + "type": "string", + "regex": "^.{1,15}$", + "required": false, + "info": "Nu\u0301mero do processo ou auto de infrac\u0327a\u0303o ao qual a obrigac\u0327a\u0303o esta\u0301 vinculada, se houver", + "format": "" + }, + "IND_PROC": { + "type": "string", + "regex": "^[0|1|2|9]$", + "required": false, + "info": "Indicador da origem do processo: 0- SEFAZ; 1- Justic\u0327a Federal; 2- Justic\u0327a Estadual; 9- Outros", + "format": "" + }, + "PROC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o resumida do processo que embasou o lanc\u0327amento", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Descric\u0327a\u0303o complementar das obrigac\u0327o\u0303es recolhidas ou a recolher", + "format": "" + }, + "MES_REF": { + "type": "integer", + "regex": "^(\\d{6})$", + "required": true, + "info": "Informe o me\u0302s de refere\u0302ncia no formato \u201cmmaaaa\u201d", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E500.json b/storage/layouts/ICMSIPI/v017/E500.json new file mode 100755 index 00000000..1677b3cc --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E500.json @@ -0,0 +1,23 @@ +{ + "IND_APUR": { + "type": "integer", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador de peri\u0301odo de apurac\u0327a\u0303o do IPI: 0 - Mensal; 1 - Decendial", + "format": "" + }, + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apurac\u0327a\u0303o se refere", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final a que a apurac\u0327a\u0303o se refere", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E510.json b/storage/layouts/ICMSIPI/v017/E510.json new file mode 100755 index 00000000..44dabd89 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E510.json @@ -0,0 +1,37 @@ +{ + "CFOP": { + "type": "integer", + "regex": "^\\d{4}$", + "required": true, + "info": "Co\u0301digo Fiscal de Operac\u0327a\u0303o e Prestac\u0327a\u0303o do agrupamento de itens", + "format": "" + }, + "CST_IPI": { + "type": "string", + "regex": "^\\d{2}$", + "required": true, + "info": "Co\u0301digo da Situac\u0327a\u0303o Tributa\u0301ria referente ao IPI, conforme a Tabela indicada no item 4.3.2.", + "format": "" + }, + "VL_CONT_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor Conta\u0301bil\" referente ao CFOP e ao Co\u0301digo de Tributac\u0327a\u0303o do IPI", + "format": "15v2" + }, + "VL_BC_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor da base de ca\u0301lculo do IPI\" referente ao CFOP e ao Co\u0301digo de Tributac\u0327a\u0303o do IPI, para operac\u0327o\u0303es tributadas", + "format": "15v2" + }, + "VL_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Parcela correspondente ao \"Valor do IPI\" referente ao CFOP e ao Co\u0301digo de Tributac\u0327a\u0303o do IPI, para operac\u0327o\u0303es tributadas", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E520.json b/storage/layouts/ICMSIPI/v017/E520.json new file mode 100755 index 00000000..836165f3 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E520.json @@ -0,0 +1,51 @@ +{ + "VL_SD_ANT_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo credor do IPI transferido do peri\u0301odo anterior", + "format": "15v2" + }, + "VL_DEB_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos de\u0301bitos por \"Sai\u0301das com de\u0301bito do imposto\"", + "format": "15v2" + }, + "VL_CRED_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total dos cre\u0301ditos por \"Entradas e aquisic\u0327o\u0303es com cre\u0301dito do imposto\"", + "format": "15v2" + }, + "VL_OD_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de \"Outros de\u0301bitos\" do IPI (inclusive estornos de cre\u0301dito)", + "format": "15v2" + }, + "VL_OC_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de \"Outros cre\u0301ditos\" do IPI (inclusive estornos de de\u0301bitos)", + "format": "15v2" + }, + "VL_SC_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do saldo credor do IPI a transportar para o peri\u0301odo seguinte", + "format": "15v2" + }, + "VL_SD_IPI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do saldo devedor do IPI a recolher", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E530.json b/storage/layouts/ICMSIPI/v017/E530.json new file mode 100755 index 00000000..32163dd3 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E530.json @@ -0,0 +1,44 @@ +{ + "IND_AJ": { + "type": "string", + "regex": "^[0|1]$", + "required": true, + "info": "Indicador do tipo de ajuste: 0- Ajuste a de\u0301bito; 1- Ajuste a cre\u0301dito", + "format": "" + }, + "VL_AJ": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste", + "format": "15v2" + }, + "COD_AJ": { + "type": "string", + "regex": "^.{3}$", + "required": true, + "info": "Co\u0301digo do ajuste da apurac\u0327a\u0303o, conforme a Tabela indicada no item 4.5.4.", + "format": "" + }, + "IND_DOC": { + "type": "string", + "regex": "^[0|1|2|3|9]$", + "required": true, + "info": "Indicador da origem do documento vinculado ao ajuste: 0 - Processo Judicial; 1 - Processo Administrativo; 2 - PER\/DCOMP; 3 \u2013 Documento Fiscal 9 \u2013 Outros.", + "format": "" + }, + "NUM_DOC": { + "type": "string", + "regex": "^.*$", + "required": false, + "info": "Nu\u0301mero do documento \/ processo \/ declarac\u0327a\u0303o ao qual o ajuste esta\u0301 vinculado, se houver", + "format": "" + }, + "DESCR_AJ": { + "type": "string", + "regex": "^.*$", + "required": true, + "info": "Descric\u0327a\u0303o detalhada do ajuste, com citac\u0327a\u0303o dos documentos fiscais.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/E531.json b/storage/layouts/ICMSIPI/v017/E531.json new file mode 100755 index 00000000..a0c90522 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/E531.json @@ -0,0 +1,65 @@ +{ + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do participante (campo 02 do Registro 0150): - do emitente do documento ou do remetente das mercadorias, no caso de entradas; - do adquirente, no caso de sai\u0301das", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^(0)(1)|55$", + "required": true, + "info": "Co\u0301digo do modelo do documento fiscal, conforme a Tabela 4.1.1", + "format": "" + }, + "SER": { + "type": "string", + "regex": "^.{1,4}$", + "required": false, + "info": "Se\u0301rie do documento fiscal", + "format": "" + }, + "SUB": { + "type": "integer", + "regex": "^.{1,3}$", + "required": false, + "info": "Subse\u0301rie do documento fiscal", + "format": "" + }, + "NUM_DOC": { + "type": "integer", + "regex": "^([1-9])([0-9]{1,8}|)$", + "required": true, + "info": "Nu\u0301mero do documento fiscal", + "format": "" + }, + "DT_DOC": { + "type": "integer", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emissa\u0303o do documento fiscal", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "Co\u0301digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "VL_AJ_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ajuste para a operac\u0327a\u0303o\/item", + "format": "15v2" + }, + "CHV_NFE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave da Nota Fiscal Eletro\u0302nica (modelo 55)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G001.json b/storage/layouts/ICMSIPI/v017/G001.json new file mode 100755 index 00000000..113ba52c --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G001.json @@ -0,0 +1,9 @@ +{ + "IND_MOV": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G110.json b/storage/layouts/ICMSIPI/v017/G110.json new file mode 100755 index 00000000..cac787aa --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G110.json @@ -0,0 +1,65 @@ +{ + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apura\u00e7\u00e3o se refere.", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apura\u00e7\u00e3o se refere.", + "format": "" + }, + "SALDO_IN_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Saldo inicial de ICMS do CIAP, composto por ICMS de bens que entraram anteriormente ao per\u00edodo de apura\u00e7\u00e3o (somat\u00f3rio dos campos 05 a 08 (VL_IMOB_ICMS_OP + VL_IMOB_ICMS_ST + VL_IMOB_ICMS_FRT + VL_IMOB_ICMS_DIF) dos registros G125)", + "format": "15v2" + }, + "SOM_PARC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Somat\u00f3rio das parcelas de ICMS pass\u00edvel de apropria\u00e7\u00e3o de cada bem (campo 10 (VL_PARC_PASS) do G125)", + "format": "15v2" + }, + "VL_TRIB_EXP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do somat\u00f3rio das sa\u00eddas tributadas esa\u00eddas para exporta\u00e7\u00e3o", + "format": "15v2" + }, + "VL_TOTAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de sa\u00eddas", + "format": "15v2" + }, + "IND_PER_SAI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "\u00cdndice de participa\u00e7\u00e3o do valor do somat\u00f3rio das sa\u00eddas tributadas e sa\u00eddas para exporta\u00e7\u00e3o no valor total de sa\u00eddas (Campo 06 VL_TRIB_EXP dividido pelo campo 07 VL_TOTAL)", + "format": "15v8" + }, + "ICMS_APROP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de ICMS a ser apropriado na apura\u00e7\u00e3o do ICMS, correspondente \u00e1 multiplica\u00e7\u00e3o do campo 05 (SOM_PARC) pelo campo 08 (IND_PER_SAI).", + "format": "15v2" + }, + "SOM_ICMS_OC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de outros cr\u00e9ditos a ser apropriado na Apura\u00e7\u00e3o do ICMS, correspondente ao somat\u00f3rio do campo 09 (VL_PARC_APROP) do registro G126.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G125.json b/storage/layouts/ICMSIPI/v017/G125.json new file mode 100755 index 00000000..f19942d1 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G125.json @@ -0,0 +1,65 @@ +{ + "COD_IND_BEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo individualizado do bem ou componente adotado no controle patrimonial do estabelecimento informante ", + "format": "" + }, + "DT_MOV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da movimenta\u00e7\u00e3o ou do saldo inicial ", + "format": "" + }, + "TIPO_MOV": { + "type": "string", + "regex": "^(SI|ST|IM|IA|CI|MC|BA|AT|PE|OT)$", + "required": true, + "info": "Tipo de movimenta\u00e7\u00e3o do bem ou componente SI = Saldo inicial de bens imobilizados IM = Imobiliza\u00e7\u00e3o de bem individual IA = Imobiliza\u00e7\u00e3o em Andamento - Componente CI = Conclus\u00e3o de Imobiliza\u00e7\u00e3o em Andamento \u2013 Bem Resultante MC = Imobiliza\u00e7\u00e3o oriunda do Ativo Circulante BA = Baixa do bem - Fim do per\u00edodo de apropria\u00e7\u00e3o AT = Aliena\u00e7\u00e3o ou Transfer\u00eancia PE = Perecimento, Extravio ou Deteriora\u00e7\u00e3o OT = Outras Sa\u00eddas do Imobilizado ", + "format": "" + }, + "VL_IMOB_ICMS_OP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS da Opera\u00e7\u00e3o Pr\u00f3pria na entrada do bem ou componente ", + "format": "15v2" + }, + "VL_IMOB_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS da Oper. por Sub. Tribut\u00e1ria na entrada do bem ou componente ", + "format": "15v2" + }, + "VL_IMOB_ICMS_FRT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS sobre Frete do Conhecimento de Transporte na entrada do bem ou componente ", + "format": "15v2" + }, + "VL_IMOB_ICMS_DIF": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do ICMS - Diferencial de Al\u00edquota, conforme Doc. de Arrecada\u00e7\u00e3o, na entrada do bem ou componente ", + "format": "15v2" + }, + "NUM_PARC": { + "type": "numeric", + "regex": "^(\\d{0,3})$", + "required": false, + "info": "N\u00famero da parcela do ICMS ", + "format": "" + }, + "VL_PARC_PASS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor da parcela de ICMS pass\u00edvel de apropria\u00e7\u00e3o (antes da aplica\u00e7\u00e3o da totais) participa\u00e7\u00e3o percentual do valor das sa\u00eddas tributadas\/exporta\u00e7\u00e3o sobre as sa\u00eddas ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G126.json b/storage/layouts/ICMSIPI/v017/G126.json new file mode 100755 index 00000000..cc02b166 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G126.json @@ -0,0 +1,58 @@ +{ + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial do per\u00edodo de apura\u00e7\u00e3o ", + "format": "" + }, + "DT_FIM": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final do per\u00edodo de apura\u00e7\u00e3o ", + "format": "" + }, + "NUM_PARC": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "N\u00famero da parcela do ICMS ", + "format": "" + }, + "VL_PARC_PASS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor da parcela de ICMS pass\u00edvel de apropria\u00e7\u00e3o - antes da aplica\u00e7\u00e3o da totais participa\u00e7\u00e3o percentual do valor das sa\u00eddas tributadas\/exporta\u00e7\u00e3o sobre as sa\u00eddas ", + "format": "15v2" + }, + "VL_TRIB_OC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do somat\u00f3rio das sa\u00eddas tributadas e sa\u00eddas para exporta\u00e7\u00e3o no per\u00edodo indicado neste registro ", + "format": "15v2" + }, + "VL_TOTAL": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total de sa\u00eddas no per\u00edodo indicado neste registro ", + "format": "15v2" + }, + "IND_PER_SAI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "\u00cdndice de participa\u00e7\u00e3o do valor do somat\u00f3rio das sa\u00eddas tributadas e sa\u00eddas para exporta\u00e7\u00e3o no valor total de sa\u00eddas (Campo 06 dividido pelo campo 07) ", + "format": "15v8" + }, + "VL_PARC_APROP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor de outros cr\u00e9ditos de ICMS a ser apropriado na apura\u00e7\u00e3o (campo 05 vezes o campo 08) ", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G130.json b/storage/layouts/ICMSIPI/v017/G130.json new file mode 100755 index 00000000..45fa4272 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G130.json @@ -0,0 +1,58 @@ +{ + "IND_EMIT": { + "type": "string", + "regex": "^(0|1)$", + "required": true, + "info": "Indicador do emitente do documento fiscal 0- Emiss\u00e3o pr\u00f3pria 1- Terceiros ", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do participante - do emitente do documento ou do remetente das mercadorias, no caso de entradas - do adquirente, no caso de sa\u00eddas ", + "format": "" + }, + "COD_MOD": { + "type": "string", + "regex": "^.{2}$", + "required": true, + "info": "C\u00f3digo do modelo de documento fiscal, conforme tabela 4.1.1 ", + "format": "" + }, + "SERIE": { + "type": "string", + "regex": "^.{0,3}$", + "required": false, + "info": "S\u00e9rie do documento fiscal ", + "format": "" + }, + "NUM_DOC": { + "type": "numeric", + "regex": "^(\\d{1,9})$", + "required": true, + "info": "N\u00famero de documento fiscal ", + "format": "" + }, + "CHV_NFE_CTE": { + "type": "numeric", + "regex": "^([0-9]{44})?$", + "required": false, + "info": "Chave do documento fiscal eletr\u00f4nico ", + "format": "" + }, + "DT_DOC": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da emiss\u00e3o do documento fiscal ", + "format": "" + }, + "NUM_DA": { + "type": "string", + "regex": "^[0-9]{0}$", + "required": true, + "info": "N\u00famero do documento de arrecada\u00e7\u00e3o estadual, se houver", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/G140.json b/storage/layouts/ICMSIPI/v017/G140.json new file mode 100755 index 00000000..0194b17f --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/G140.json @@ -0,0 +1,58 @@ +{ + "NUM_ITEM": { + "type": "numeric", + "regex": "^(\\d{1,3})$", + "required": true, + "info": "N\u00famero sequencial do item no documento fiscal ", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo correspondente do bem no documento fiscal (campo 02 do registro 0200) ", + "format": "" + }, + "QTDE": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade, deste item da nota fiscal, que foi aplicada neste bem, expressa na mesma unidade constante no documento fiscal de entrada", + "format": "15v5" + }, + "UNID": { + "type": "string", + "regex": "^[0-9]{6}$", + "required": true, + "info": "Unidade do item constante no documento fiscal de entrada", + "format": "" + }, + "VL_ICMS_OP_APLICADO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS da Opera\u00e7\u00e3o Pr\u00f3pria na entrada do item, proporcional \u00e0 quantidade aplicada no bem ou componente.", + "format": "15v2" + }, + "VL_ICMS_ST_APLICADO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS ST na entrada do item, proporcional \u00e0 quantidade aplicada no bem ou componente.", + "format": "15v2" + }, + "VL_ICMS_FRT_APLICADO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS sobre Frete do Conhecimento de Transporte na entrada do item, proporcional \u00e0 quantidade aplicada no bem ou componente.", + "format": "15v2" + }, + "VL_ICMS_DIF_APLICADO": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do ICMS Diferencial de Al\u00edquota, na entrada do item, proporcional \u00e0 quantidade aplicada no bem ou componente.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/H005.json b/storage/layouts/ICMSIPI/v017/H005.json new file mode 100755 index 00000000..804afec9 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/H005.json @@ -0,0 +1,23 @@ +{ + "DT_INV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do invent\u00e1rio", + "format": "" + }, + "VL_INV": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor total do estoque", + "format": "15v2" + }, + "MOT_INV": { + "type": "string", + "regex": "^(0[1-5]{1})$", + "required": true, + "info": "Informe o motivo do Invent\u00e1rio: 01 \u2013 No final no per\u00edodo; 02 \u2013 Na mudan\u00e7a de forma de tributa\u00e7\u00e3o da mercadoria (ICMS); 03 \u2013 Na solicita\u00e7\u00e3o da baixa cadastral, paralisa\u00e7\u00e3o tempor\u00e1ria e outras situa\u00e7\u00f5es; 04 \u2013 Na altera\u00e7\u00e3o de regime de pagamento \u2013 condi\u00e7\u00e3o do contribuinte; 05 \u2013 Por determina\u00e7\u00e3o dos fiscos.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/H010.json b/storage/layouts/ICMSIPI/v017/H010.json new file mode 100755 index 00000000..09534bfe --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/H010.json @@ -0,0 +1,72 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "UNID": { + "type": "string", + "regex": "^.{1,6}", + "required": true, + "info": "Unidade do item", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade do item", + "format": "15v3" + }, + "VL_UNIT": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor unit\u00e1rio do item", + "format": "15v6" + }, + "VL_ITEM": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor do item", + "format": "15v2" + }, + "IND_PROP": { + "type": "integer", + "regex": "^[0-2]{1}$", + "required": true, + "info": "Indicador de propriedade\/posse do item: 0-Item de propriedade do informante e em seu poder; 1-Item de propriedade do informante em posse de terceiros; 2- Item de propriedade de terceiros em posse do informante", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150): - propriet\u00e1rio\/possuidor que n\u00e3o seja o informante do arquivo", + "format": "" + }, + "TXT_COMPL": { + "type": "string", + "regex": "^.{3,255}", + "required": false, + "info": "Descri\u00e7\u00e3o complementar.", + "format": "" + }, + "COD_CTA": { + "type": "string", + "regex": "^.{1,255}", + "required": false, + "info": "C\u00f3digo da conta anal\u00edtica cont\u00e1bil debitada\/creditada", + "format": "" + }, + "VL_ITEM_IR": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Valor do item para efeitos do Imposto de Renda.", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/H020.json b/storage/layouts/ICMSIPI/v017/H020.json new file mode 100755 index 00000000..c50a26da --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/H020.json @@ -0,0 +1,23 @@ +{ + "CST_ICMS": { + "type": "string", + "regex": "^[0-9]{3}$", + "required": true, + "info": "C\u00f3digo da Situa\u00e7\u00e3o Tribut\u00e1ria referente ao ICMS, conforme a Tabela indicada no item 4.3.1", + "format": "" + }, + "BC_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informe a base de c\u00e1lculo do ICMS", + "format": "15v2" + }, + "VL_ICMS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Informe o valor do ICMS a ser debitado ou creditado", + "format": "15v2" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/H030.json b/storage/layouts/ICMSIPI/v017/H030.json new file mode 100755 index 00000000..bb0376d4 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/H030.json @@ -0,0 +1,30 @@ +{ + "VL_ICMS_OP": { + "type": "numeric", + "regex": "", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS OP", + "format": "15v6" + }, + "VL_BC_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio da base de c\u00e1lculo do ICMS ST", + "format": "15v6" + }, + "VL_ICMS_ST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do ICMS ST", + "format": "15v2" + }, + "VL_FCP": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Valor m\u00e9dio unit\u00e1rio do FCP", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K001.json b/storage/layouts/ICMSIPI/v017/K001.json new file mode 100755 index 00000000..57281009 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K001.json @@ -0,0 +1,9 @@ +{ + "ind_mov": { + "type": "numeric", + "regex": "^[0-1]{1}$", + "required": true, + "info": "Indicador de movimento: 0- Bloco com dados informados; 1- Bloco sem dados informados.", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K010.json b/storage/layouts/ICMSIPI/v017/K010.json new file mode 100755 index 00000000..f1a781d2 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K010.json @@ -0,0 +1,9 @@ +{ + "ind_tp_leiaute": { + "type": "numeric", + "regex": "^[0-2]{1}$", + "required": true, + "info": "Indicador de tipo de leiaute adotado: 0-Leiaute simplificado, 1-Leiaute completo, 2-Leiaute restrito aos saldos de estoque", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K100.json b/storage/layouts/ICMSIPI/v017/K100.json new file mode 100755 index 00000000..43c30641 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K100.json @@ -0,0 +1,16 @@ +{ + "DT_INI": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial a que a apura\u00e7\u00e3o se refere", + "format": "" + }, + "DT_FIN": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final a que a apura\u00e7\u00e3o se refere", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K200.json b/storage/layouts/ICMSIPI/v017/K200.json new file mode 100755 index 00000000..ebf18966 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K200.json @@ -0,0 +1,37 @@ +{ + "DT_EST": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do estoque final", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade em estoque", + "format": "15v3" + }, + "IND_EST": { + "type": "integer", + "regex": "^[0-2]{1}$", + "required": true, + "info": "Indicador do tipo de estoque:0 - Estoque de propriedade do informante e em seu poder;1 - Estoque de propriedade do informante e em posse de terceiros;2 - Estoque de propriedade de terceiros e em posse do informante", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):propriet\u00e1rio\/possuidor que n\u00e3o seja o informante do arquivo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K210.json b/storage/layouts/ICMSIPI/v017/K210.json new file mode 100755 index 00000000..38516d6a --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K210.json @@ -0,0 +1,37 @@ +{ + "DT_INI_OS": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de in\u00edcio da ordem de servi\u00e7o", + "format": "" + }, + "DT_FIN_OS": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de conclus\u00e3o da ordem de servi\u00e7o", + "format": "" + }, + "COD_DOC_OS": { + "type": "string", + "regex": "^.{1,30}$", + "required": true, + "info": "C\u00f3digo de identifica\u00e7\u00e3o da ordem de servi\u00e7o", + "format": "" + }, + "COD_ITEM_ORI": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item de origem (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_ORI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de origem \u2013 sa\u00edda do estoque", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K215.json b/storage/layouts/ICMSIPI/v017/K215.json new file mode 100755 index 00000000..085d15e3 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K215.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM_DES": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item de destino (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_DES": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de destino \u2013 entrada em estoque", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K220.json b/storage/layouts/ICMSIPI/v017/K220.json new file mode 100755 index 00000000..ad6477d2 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K220.json @@ -0,0 +1,37 @@ +{ + "DT_MOV": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data da movimenta\u00e7\u00e3o interna", + "format": "" + }, + "COD_ITEM_ORI": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item de origem (campo 02 do Registro 0200)", + "format": "" + }, + "COD_ITEM_DEST": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item de destino (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_ORI": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade movimentada do item de origem", + "format": "15v6" + }, + "QTD_DEST": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade movimentada do item de destino", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K230.json b/storage/layouts/ICMSIPI/v017/K230.json new file mode 100755 index 00000000..7f378b50 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K230.json @@ -0,0 +1,37 @@ +{ + "DT_INI_OP": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de in\u00edcio da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "DT_FIN_OP": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de conclus\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "COD_DOC_OP": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo de identifica\u00e7\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_ENC": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de produ\u00e7\u00e3o acabada", + "format": "15v6" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K235.json b/storage/layouts/ICMSIPI/v017/K235.json new file mode 100755 index 00000000..5b1b1d33 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K235.json @@ -0,0 +1,30 @@ +{ + "DT_SAIDA": { + "type": "numeric", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de sa\u00edda do estoque para aloca\u00e7\u00e3o ao produto", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item componente\/insumo (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade consumida do item", + "format": "15v6" + }, + "COD_INS_SUBST": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do insumo que foi substitu\u00eddo, caso ocorra a substitui\u00e7\u00e3o (campo 02 do Registro 0210)", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K250.json b/storage/layouts/ICMSIPI/v017/K250.json new file mode 100755 index 00000000..8c43bed0 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K250.json @@ -0,0 +1,23 @@ +{ + "DT_PROD": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do reconhecimento da produ\u00e7\u00e3o ocorrida no terceiro", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade produzida", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K255.json b/storage/layouts/ICMSIPI/v017/K255.json new file mode 100755 index 00000000..3768ad95 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K255.json @@ -0,0 +1,30 @@ +{ + "DT_CONS": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do reconhecimento do consumo", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de consumo do insumo", + "format": "15v3" + }, + "COD_INS_SUBST": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do insumo que foi substitu\u00eddo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K260.json b/storage/layouts/ICMSIPI/v017/K260.json new file mode 100755 index 00000000..b662d00d --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K260.json @@ -0,0 +1,44 @@ +{ + "COD_OP_OS": { + "type": "string", + "regex": "^.{1,30}$", + "required": false, + "info": "C\u00f3digo de identifica\u00e7\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "DT_SAIDA": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data de sa\u00edda do estoque", + "format": "" + }, + "QTD_SAIDA": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de sa\u00edda do estoque", + "format": "15v3" + }, + "DT_RET": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de retorno ao estoque (entrada)", + "format": "" + }, + "QTD_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade de retorno ao estoque (entrada)", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K265.json b/storage/layouts/ICMSIPI/v017/K265.json new file mode 100755 index 00000000..16697b64 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K265.json @@ -0,0 +1,23 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_CONS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade consumida \u2013 sa\u00edda do estoque", + "format": "15v3" + }, + "QTD_RET": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade retornada \u2013 entrada em estoque", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K270.json b/storage/layouts/ICMSIPI/v017/K270.json new file mode 100755 index 00000000..fbef9744 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K270.json @@ -0,0 +1,51 @@ +{ + "DT_INI_AP": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data inicial do per\u00edodo de apura\u00e7\u00e3o", + "format": "" + }, + "DT_FIN_AP": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data final do per\u00edodo de apura\u00e7\u00e3o", + "format": "" + }, + "COD_OP_OS": { + "type": "string", + "regex": "^.{1,30}$", + "required": false, + "info": "C\u00f3digo de identifica\u00e7\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_COR_POS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de corre\u00e7\u00e3o positiva de apontamento", + "format": "15v3" + }, + "QTD_COR_NEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de corre\u00e7\u00e3o negativa de apontamento", + "format": "15v3" + }, + "ORIGEM": { + "type": "string", + "regex": "^[1-9]{}1$", + "required": true, + "info": "Codigo de origem", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K275.json b/storage/layouts/ICMSIPI/v017/K275.json new file mode 100755 index 00000000..dcca06c5 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K275.json @@ -0,0 +1,30 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_COR_POS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade de corre\u00e7\u00e3o positiva de apontamento", + "format": "15v3" + }, + "QTD_COR_NEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": false, + "info": "Quantidade de corre\u00e7\u00e3o negativa de apontamento", + "format": "15v3" + }, + "COD_INS_SUBST": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do insumo que foi substitu\u00eddo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K280.json b/storage/layouts/ICMSIPI/v017/K280.json new file mode 100755 index 00000000..65f38634 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K280.json @@ -0,0 +1,44 @@ +{ + "DT_EST": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do estoque final escriturado corre\u00e7\u00e3o", + "format": "" + }, + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item (campo 02 do Registro 0200)", + "format": "" + }, + "QTD_COR_POS": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de corre\u00e7\u00e3o positiva de apontamento", + "format": "15v3" + }, + "QTD_COR_NEG": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de corre\u00e7\u00e3o negativa de apontamento", + "format": "15v3" + }, + "IND_EST": { + "type": "integer", + "regex": "^[0-2]{1}$", + "required": true, + "info": "Indicador do tipo de estoque:0 - Estoque de propriedade do informante e em seu poder;1 - Estoque de propriedade do informante e em posse de terceiros;2 - Estoque de propriedade de terceiros e em posse do informante", + "format": "" + }, + "COD_PART": { + "type": "string", + "regex": "^.{1,60}$", + "required": false, + "info": "C\u00f3digo do participante (campo 02 do Registro 0150):propriet\u00e1rio\/possuidor que n\u00e3o seja o informante do arquivo", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K290.json b/storage/layouts/ICMSIPI/v017/K290.json new file mode 100755 index 00000000..d1f3c9bd --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K290.json @@ -0,0 +1,23 @@ +{ + "DT_INI_OP": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de in\u00edcio da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "DT_FIN_OP": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": false, + "info": "Data de conclus\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + }, + "COD_DOC_OP": { + "type": "string", + "regex": "^.{1,30}$", + "required": false, + "info": "C\u00f3digo de identifica\u00e7\u00e3o da ordem de produ\u00e7\u00e3o", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K291.json b/storage/layouts/ICMSIPI/v017/K291.json new file mode 100755 index 00000000..be8643ea --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K291.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item produzido (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade de produ\u00e7\u00e3o acabada", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K292.json b/storage/layouts/ICMSIPI/v017/K292.json new file mode 100755 index 00000000..98d645bb --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K292.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do insumo\/componente consumido (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade consumida", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K300.json b/storage/layouts/ICMSIPI/v017/K300.json new file mode 100755 index 00000000..1cc457fc --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K300.json @@ -0,0 +1,9 @@ +{ + "DT_PROD": { + "type": "string", + "regex": "^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\\d{3})$", + "required": true, + "info": "Data do reconhecimento da produ\u00e7\u00e3o ocorrida no terceiro", + "format": "" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K301.json b/storage/layouts/ICMSIPI/v017/K301.json new file mode 100755 index 00000000..c802db59 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K301.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do item produzido (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade produzida", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/v017/K302.json b/storage/layouts/ICMSIPI/v017/K302.json new file mode 100755 index 00000000..e56ad915 --- /dev/null +++ b/storage/layouts/ICMSIPI/v017/K302.json @@ -0,0 +1,16 @@ +{ + "COD_ITEM": { + "type": "string", + "regex": "^.{1,60}$", + "required": true, + "info": "C\u00f3digo do insumo (campo 02 do Registro 0200)", + "format": "" + }, + "QTD": { + "type": "numeric", + "regex": "^\\d+(\\.\\d*)?|\\.\\d+$", + "required": true, + "info": "Quantidade consumida", + "format": "15v3" + } +} \ No newline at end of file diff --git a/storage/layouts/ICMSIPI/vigencias.json b/storage/layouts/ICMSIPI/vigencias.json new file mode 100755 index 00000000..bd0f3558 --- /dev/null +++ b/storage/layouts/ICMSIPI/vigencias.json @@ -0,0 +1,82 @@ +{ + "002": { + "versao": "1.01", + "inicio": "01012009", + "fim": "31122009" + }, + "003": { + "versao": "1.02", + "inicio": "01012010", + "fim": "31122010" + }, + "004": { + "versao": "1.03", + "inicio": "01012011", + "fim": "31122011" + }, + "005": { + "versao": "1.04", + "inicio": "01012012", + "fim": "30062012" + }, + "006": { + "versao": "1.05", + "inicio": "01072012", + "fim": "31122012" + }, + "007": { + "versao": "1.06", + "inicio": "01012013", + "fim": "31122013" + }, + "008": { + "versao": "1.07", + "inicio": "01012014", + "fim": "31122014" + }, + "009": { + "versao": "1.08", + "inicio": "01012015", + "fim": "31122015" + }, + "010": { + "versao": "1.09", + "inicio": "01012016", + "fim": "31122016" + }, + "011": { + "versao": "1.10", + "inicio": "01012017", + "fim": "31122017" + }, + "012": { + "versao": "1.11", + "inicio": "01012018", + "fim": "31122018" + }, + "013": { + "versao": "1.12", + "inicio": "01012019", + "fim": "31122019" + }, + "014": { + "versao": "1.13", + "inicio": "01012020", + "fim": "31122020" + }, + "015": { + "versao": "1.14", + "inicio": "01012021", + "fim": "31122021" + }, + "016": { + "versao": "1.15", + "inicio": "01012022", + "fim": "31122022" + }, + "017": { + "versao": "1.16", + "inicio": "01012023", + "fim": "" + } +} \ No newline at end of file From 69abd142c6629e8776aac42b74212f1f2ca765d2 Mon Sep 17 00:00:00 2001 From: robmachado Date: Tue, 4 Apr 2023 16:56:18 -0300 Subject: [PATCH 3/3] Ajustes para versionamento --- src/Elements/Contribuicoes/C505.php | 1 - src/Elements/Contribuicoes/M200.php | 1 - src/Elements/Contribuicoes/M610.php | 1 - 3 files changed, 3 deletions(-) diff --git a/src/Elements/Contribuicoes/C505.php b/src/Elements/Contribuicoes/C505.php index bb8a38ef..5396aeb1 100755 --- a/src/Elements/Contribuicoes/C505.php +++ b/src/Elements/Contribuicoes/C505.php @@ -61,7 +61,6 @@ class C505 extends Element 'info' => 'Código da conta analítica contábil debitada/creditada', 'format' => '' ], - ]; /** diff --git a/src/Elements/Contribuicoes/M200.php b/src/Elements/Contribuicoes/M200.php index 446e6f09..74a96e59 100755 --- a/src/Elements/Contribuicoes/M200.php +++ b/src/Elements/Contribuicoes/M200.php @@ -100,7 +100,6 @@ class M200 extends Element 'info' => 'Valor Total da Contribuição a Recolher/Pagar no Período (08 + 12) ', 'format' => '15v2' ], - ]; /** diff --git a/src/Elements/Contribuicoes/M610.php b/src/Elements/Contribuicoes/M610.php index 3eeebb30..487867cf 100755 --- a/src/Elements/Contribuicoes/M610.php +++ b/src/Elements/Contribuicoes/M610.php @@ -119,7 +119,6 @@ class M610 extends Element 'info' => 'Valor Total da Contribuição do Período (08 + 09 – 10 – 11 +12) ', 'format' => '15v2' ], - ]; /**