diff --git a/examples/nfe_v4.00.xsd.xml b/examples/nfe_v4.00.xsd.xml index 581ff016..77b2b931 100644 --- a/examples/nfe_v4.00.xsd.xml +++ b/examples/nfe_v4.00.xsd.xml @@ -1,1225 +1,1225 @@ - - - - 51 - string - string - 55 - string - string - string + + + + 51 + string + string + 55 + string + string + string - string - 0 - 1 - string - 2 - 1 - string - 1 - 3 - 1 - 9 + string + 0 + 1 + string + 2 + 1 + string + 1 + 3 + 1 + 9 - 0 - 0 - string - string - stringstringstringstring + 0 + 0 + string + string + stringstringstringstring - + - string - string - - 24 - string - string - 01 - string - string - - - 23 - string + string + string + + 24 + string + string + 01 + string + string + + + 23 + string - string - string - string - 04 - string - string - - string - - 2D - string - string - - - - + string + string + string + 04 + string + string + + string + + 2D + string + string + + + + - string - string - string + string + string + string - string - - string - string + string + + string + string - string - string - string - string - MT - string + string + string + string + string + MT + string - 1058 + 1058 - Brasil + Brasil - string - - string + string + + string - string - string + string + string - string - 3 - + string + 3 + - - string - string - string - string + + string + string + string + string - string - PR + string + PR - string + string - string + string - string - string + string + string - string - + string + - + - string - string - string + string + string + string - string + string - - string - string + + string + string - string - string - string - string - RJ + string + string + string + string + RJ - string + string - string + string - string + string - string - - 9 + string + + 9 - string + string - string + string - string + string - string - + string + - + - string - string + string + string - string - string - string + string + string + string - string - string - string - string - RJ + string + string + string + string + RJ - string + string - string + string - string + string - string + string - string + string - string - + string + - + - string - string + string + string - string - string - string + string + string + string - string - string - string - string - SC + string + string + string + string + SC - string + string - string + string - string + string - string + string - string + string - string - + string + - + - string - string - + string + string + - - - string - string - - string - string - string + + + string + string + + string + string + string - string - string + string + string - N + N - string + string - string + string - string - string - string - string - string - string - string + string + string + string + string + string + string + string - string - string - string - string + string + string + string + string - string + string - string + string - string + string - string - 1 + string + 1 - - string - string - string - RR - string - 6 + + string + string + string + RR + string + 6 - string - 2 + string + 2 - string + string - PA - string + PA + string - + - string - string - string + string + string + string - string + string - string - - + string + + - + - string + string - - string - string - string - - + + string + string + string + + - string + string - string + string - string + string - - string - string - string - string + + string + string + string + string - string - - - - stringstringst - string - - - - string - string - string - + string + + + + stringstringst + string + + + + string + string + string + - - 2 - stringstringstrin - stri - string - stri - stri - string - string - string - st - string - string - stri - string - string - s - string - string - R - 3 - string - st - str - 3 - - - string + + 2 + stringstringstrin + stri + string + stri + stri + string + string + string + st + string + string + stri + string + string + s + string + string + R + 3 + string + st + str + 3 + + + string - string - string - + string + string + - - 0 - string - string - string - - - string - string + + 0 + string + string + string + + + string + string - string + string - string + string - string + string - string + string - string + string - string - RO + string + RO - - string - string - string - + + string + string + string + - - string + + string - string - string - string - string - + string + string + string + string + - string + string - - 0 - 22 - string - - - string - - - - string + + 0 + 22 + string + + + string + + + + string - + - - 1 - 00 - 3 - string - string - string - string - string - - - 6 - 02 + + 1 + 00 + 3 + string + string + string + string + string + + + 6 + 02 - string - string - string - - - 3 - 10 - 0 - string - string - string - string - string - string - 3 + string + string + string + + + 3 + 10 + 0 + string + string + string + string + string + string + 3 - string + string - string - string - string - string - string - string - string - string - 12 - - - 1 - 15 + string + string + string + string + string + string + string + string + 12 + + + 1 + 15 - string - string - string + string + string + string - string - string - string - string - 1 - - - 3 - 20 - 2 - string - string - string - string - string - string - string - string - 12 - - - 7 - 30 - 4 + string + string + string + string + 1 + + + 3 + 20 + 2 + string + string + string + string + string + string + string + string + 12 + + + 7 + 30 + 4 - string + string - string - string - string - string - string - string - string - string - 6 - - - 7 - 41 - string - 5 - - - 7 - 51 + string + string + string + string + string + string + string + string + 6 + + + 7 + 41 + string + 5 + + + 7 + 51 - 0 + 0 - string + string - string + string - string + string - string + string - string + string - string + string - string - string - string - string - string - string + string + string + string + string + string + string - string - - - 1 - 53 + string + + + 1 + 53 - string + string - string + string - string + string - string + string - string + string - string + string - string + string - string - - - 2 - 60 - string - string + string + + + 2 + 60 + string + string - string - string - string - string - string - string - string - string - string - - - 4 - 61 + string + string + string + string + string + string + string + string + string + + + 4 + 61 - string - string - string - - - 4 - 70 - 0 - string - string - string - string - string - string - string - 0 + string + string + string + + + 4 + 70 + 0 + string + string + string + string + string + string + string + 0 - string + string - string - string - string - string - string - string - string - string - 9 - string - 3 - - - 8 - 90 - 3 - string + string + string + string + string + string + string + string + string + 9 + string + 3 + + + 8 + 90 + 3 + string - string - string - string - string - string - string - 1 + string + string + string + string + string + string + 1 - string + string - string - string - string - string - string - string - string - string - 3 - string - 3 - - - 2 - 10 - 1 - string + string + string + string + string + string + string + string + string + 3 + string + 3 + + + 2 + 10 + 1 + string - string - string - string - 3 + string + string + string + 3 - string + string - string - string - string - string - string - string - string - string - AM - - - 0 - 41 - string + string + string + string + string + string + string + string + string + AM + + + 0 + 41 + string - string + string - string - string - string - string - string - string - string - string - string - string - string - - - 2 - 101 - string - string - - - 8 - 300 - - - 7 - 201 - 5 + string + string + string + string + string + string + string + string + string + string + string + + + 2 + 101 + string + string + + + 8 + 300 + + + 7 + 201 + 5 - string + string - string - string - string - string - string - string - string - string - string - - - 6 - 202 - 5 + string + string + string + string + string + string + string + string + string + + + 6 + 202 + 5 - string + string - string - string - string - string - string - string - string - - - 0 - 500 - string - string + string + string + string + string + string + string + string + + + 0 + 500 + string + string - string - string - string - string - string - string - string - string - string - - - 3 - 900 - 1 - string + string + string + string + string + string + string + string + string + string + + + 3 + 900 + 1 + string - string - string - string - 1 + string + string + string + 1 - string + string - string - string - string - string - string - string - string - string - string - - - - + string + string + string + string + string + string + string + string + string + + + + - string + string - string + string - string - str + string + str - - 50 + + 50 - string - string - string - string - string - - - 53 - - - - - string - string - string - string - - - + string + string + string + string + string + + + 53 + + + + + string + string + string + string + + + - string + string - string + string - string - str + string + str - - 99 + + 99 - string - string - string - string - string - - - 01 - - - - string - string - string - string - string + string + string + string + string + string + + + 01 + + + + string + string + string + string + string - string + string - string + string - string + string - string + string - string - 7 + string + 7 - string + string - string + string - string + string - string - 1 - + string + 1 + - + - - 02 - string - string - string - - - 03 - string - string - string - - - 09 - - - 71 + + 02 + string + string + string + + + 03 + string + string + string + + + 09 + + + 71 - string - string - string - string - string - - - - + string + string + string + string + string + + + + - string - string - string - string - string + string + string + string + string + string - 0 - + 0 + - + - - 01 - string - string - string - - - 03 - string - string - string - - - 09 - - - 51 + + 01 + string + string + string + + + 03 + string + string + string + + + 09 + + + 51 - string - string - string - string - string - - - - + string + string + string + string + string + + + + - string - string - string - string - string + string + string + string + string + string - 1 - + 1 + - - string + + string - string + string - string - string - 4.00 - string + string + string + 4.00 + string - string - string - string - - + string + string + string + + - - string - - string - - + + string + + string + + - string + string - - - - string - - - - string - - - - - - string - string - string - - string - - string - - string - string - string - string - string - string - - string - - string - - string - - string - - string - - string - string - string - string - string - string - string - string - string - string - string - string - - string - + + + + string + + + + string + + + + + + string + string + string + + string + + string + + string + string + string + string + string + string + + string + + string + + string + + string + + string + + string + string + string + string + string + string + string + string + string + string + string + string + + string + - + - string + string - string + string - string + string - string + string - string - string + string + string - string + string - string + string - string + string - string + string - string + string - 5 - + 5 + - + - string + string - string + string - string + string - string + string - string + string - string + string - string - - - - 3 + string + + + + 3 - + - string - string + string + string - string + string - string + string - string + string - string + string - SC - + SC + - - string - string - string - string - string - string - + + string + string + string + string + string + string + - - string + + string - RJ + RJ - string - + string + - - string + + string - PE + PE - string - + string + - string + string - string + string - + - string + string - string + string - string + string - string + string - string + string - string + string - - string - - - + + string + + + - + - + - string + string - string + string - string + string - string - + string + - + - string + string - string - string - - - + string + string + + + - + - 0 - string + 0 + string - string - string + string + string - - 1 + + 1 - string + string - string + string - string - - + string + + - string - + string + - - string - string - + + string + string + - + - string + string - string + string - - string - + + string + - - string - + + string + - - string - 0 + + string + 0 - 10 - - + 10 + + - - SE - string + + SE + string - string - + string + - + - string + string - string + string - string - + string + - - string - string + + string + string - - string - - string - string - string + + string + + string + string + string - - string - string - - string - string - string - + + string + string + + string + string + string + - - string - string - string - string - string - dmFzdG92YXN0b3Zhc3RvdmFzdG8= - + + string + string + string + string + string + dmFzdG92YXN0b3Zhc3RvdmFzdG8= + - - string - - + + string + + - - stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstring - stringstringstringstring - + + stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstring + stringstringstringstring + @@ -1244,4 +1244,4 @@ - \ No newline at end of file + diff --git a/schemes/PL_009_V4/EventoCancEConf_v1.00.xsd b/schemes/PL_009_V4/EventoCancEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/EventoEConf_v1.00.xsd b/schemes/PL_009_V4/EventoEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/consReciNFe_v4.00.xsd b/schemes/PL_009_V4/consReciNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/consSitNFe_v4.00.xsd b/schemes/PL_009_V4/consSitNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/consStatServ_v4.00.xsd b/schemes/PL_009_V4/consStatServ_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/e110750_v1.00.xsd b/schemes/PL_009_V4/e110750_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/e110751_v1.00.xsd b/schemes/PL_009_V4/e110751_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/envEventoCancEConf_v1.00.xsd b/schemes/PL_009_V4/envEventoCancEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/envEventoEConf_v1.00.xsd b/schemes/PL_009_V4/envEventoEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/enviNFe_v4.00.xsd b/schemes/PL_009_V4/enviNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/inutNFe_v4.00.xsd b/schemes/PL_009_V4/inutNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteConsSitNFe_v4.00.xsd b/schemes/PL_009_V4/leiauteConsSitNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteConsStatServ_v4.00.xsd b/schemes/PL_009_V4/leiauteConsStatServ_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteEventoCancEConf_v1.00.xsd b/schemes/PL_009_V4/leiauteEventoCancEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteEventoEConf_v1.00.xsd b/schemes/PL_009_V4/leiauteEventoEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteInutNFe_v4.00.xsd b/schemes/PL_009_V4/leiauteInutNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/leiauteNFe_v4.00.xsd b/schemes/PL_009_V4/leiauteNFe_v4.00.xsd old mode 100644 new mode 100755 index 1c59fa9c..dde13682 --- a/schemes/PL_009_V4/leiauteNFe_v4.00.xsd +++ b/schemes/PL_009_V4/leiauteNFe_v4.00.xsd @@ -1,5 +1,5 @@ - + @@ -17,6 +17,7 @@ + @@ -224,8 +225,8 @@ SCAN 900-999 - Indicador de intermediador/marketplace - 0=Operação sem intermediador (em site ou plataforma própria) + Indicador de intermediador/marketplace + 0=Operação sem intermediador (em site ou plataforma própria) 1=Operação em site ou plataforma de terceiros (intermediadores/marketplace) @@ -425,7 +426,7 @@ para tpEmis diferente de 1 - Código do modelo do Documento Fiscal + Código do modelo do Documento Fiscal Preencher com "2B", quando se tratar de Cupom Fiscal emitido por máquina registradora (não ECF), com "2C", quando se tratar de Cupom Fiscal PDV, ou "2D", quando se tratar de Cupom Fiscal (emitido por ECF) @@ -552,7 +553,7 @@ Preencher com "2B", quando se tratar de Cupom Fiscal emitido por máqu - Código de Regime Tributário. + Código de Regime Tributário. Este campo será obrigatoriamente preenchido com: 1 – Simples Nacional; 2 – Simples Nacional – excesso de sublimite de receita bruta; @@ -1149,7 +1150,7 @@ Formato ”CFOP9999”. - Forma de Importação quanto a intermediação + Forma de Importação quanto a intermediação 1-por conta propria;2-por conta e ordem;3-encomenda @@ -1684,7 +1685,7 @@ N-NormalVIN - Código da Cor Segundo as regras de pré-cadastro do DENATRAN: 01-AMARELO;02-AZUL;03-BEGE;04-BRANCA;05-CINZA;06-DOURADA;07-GRENA + Código da Cor Segundo as regras de pré-cadastro do DENATRAN: 01-AMARELO;02-AZUL;03-BEGE;04-BRANCA;05-CINZA;06-DOURADA;07-GRENA 08-LARANJA;09-MARROM;10-PRATA;11-PRETA;12-ROSA;13-ROXA;14-VERDE;15-VERMELHA;16-FANTASIA @@ -2057,8 +2058,8 @@ ambiente. - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -2172,8 +2173,8 @@ ambiente. - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -2389,7 +2390,7 @@ ambiente. Motivo da redução do adrem - 1= Transporte coletivo de passageiros; 9=Outros; + 1= Transporte coletivo de passageiros; 9=Outros; @@ -2413,8 +2414,8 @@ ambiente. - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -2534,8 +2535,8 @@ ambiente. - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -2660,25 +2661,25 @@ ambiente. Tributação pelo ICMS -40 - Isenta -41 - Não tributada +40 - Isenta +41 - Não tributada 50 - Suspensão - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno - Tributação pelo ICMS -40 - Isenta -41 - Não tributada -50 - Suspensão + Tributação pelo ICMS +40 - Isenta +41 - Não tributada +50 - Suspensão 51 - Diferimento @@ -2757,8 +2758,8 @@ Informar o motivo da desoneração: - origem da mercadoria: 0 - Nacional - 1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional + 1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -2949,14 +2950,14 @@ Informar o motivo da desoneração: - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno - Tributação pelo ICMS + Tributação pelo ICMS 60 - ICMS cobrado anteriormente por substituição tributária @@ -3076,15 +3077,15 @@ Informar o motivo da desoneração: - Tributação pelo ICMS + Tributação pelo ICMS 70 - Com redução de base de cálculo e cobrança do ICMS por substituição tributária - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -3290,8 +3291,8 @@ Informar o motivo da desoneração: - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -3310,7 +3311,7 @@ Informar o motivo da desoneração: - Modalidade de determinação da BC do ICMS: + Modalidade de determinação da BC do ICMS: 0 - Margem Valor Agregado (%); 1 - Pauta (valor); 2 - Preço Tabelado Máximo (valor); @@ -3501,14 +3502,14 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno - Tributação pelo ICMS + Tributação pelo ICMS 10 - Tributada e com cobrança do ICMS por substituição tributária; 90 – Outros. @@ -3522,7 +3523,7 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - Modalidade de determinação da BC do ICMS: + Modalidade de determinação da BC do ICMS: 0 - Margem Valor Agregado (%); 1 - Pauta (valor); 2 - Preço Tabelado Máximo (valor); @@ -3645,8 +3646,8 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -3744,9 +3745,9 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta -2 - Estrangeira - Adquirida no mercado interno + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno (v2.0) @@ -3782,15 +3783,15 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta -2 - Estrangeira - Adquirida no mercado interno + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta +2 - Estrangeira - Adquirida no mercado interno (v2.0) - 102- Tributada pelo Simples Nacional sem permissão de crédito. + 102- Tributada pelo Simples Nacional sem permissão de crédito. 103 – Isenção do ICMS no Simples Nacional para faixa de receita bruta. 300 – Imune. 400 – Não tributda pelo Simples Nacional (v.2.0) (v.2.0) @@ -4016,8 +4017,8 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -4105,8 +4106,8 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - origem da mercadoria: 0 - Nacional -1 - Estrangeira - Importação direta + origem da mercadoria: 0 - Nacional +1 - Estrangeira - Importação direta 2 - Estrangeira - Adquirida no mercado interno @@ -4124,7 +4125,7 @@ Operação interestadual para consumidor final com partilha do ICMS devido na o - Modalidade de determinação da BC do ICMS: + Modalidade de determinação da BC do ICMS: 0 - Margem Valor Agregado (%); 1 - Pauta (valor); 2 - Preço Tabelado Máximo (valor); @@ -6285,6 +6286,88 @@ tipo de ato concessório: + + + Produtos Agropecurários Animais, Vegetais e Florestais + + + + + + Defensivo Agrícola / Agrotóxico + + + + + + Número do Receituário ou Receita do Defensivo / Agrotóxico + + + + + + + + + + + CPF do Responsável Técnico pelo receituário + + + + + + + + Guias De Trânsito de produtos agropecurários animais, vegetais e de origem florestal. + + + + + + Tipo da Guia: 1 - GTA; 2 - TTA; 3 - DTA; 4 - ATV; 5 - PTV; 6 - GTV; 7 - Guia Florestal (DOF, SisFlora - PA e MT, SIAM - MG) + + + + + + + + + + + + + + + + + + Série da Guia + + + + + + + + + + + Número da Guia + + + + + + + + + + + + + @@ -6581,7 +6664,7 @@ tipo de ato concessório: - Código da Mensagem (v2.0) + Código da Mensagem (v2.0) alterado para tamanho variavel 1-4. (NT2011/004) diff --git a/schemes/PL_009_V4/nfe_v4.00.xsd b/schemes/PL_009_V4/nfe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/procEventoCancEConf_v1.00.xsd b/schemes/PL_009_V4/procEventoCancEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/procEventoEConf_v1.00.xsd b/schemes/PL_009_V4/procEventoEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/procInutNFe_v4.00.xsd b/schemes/PL_009_V4/procInutNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/procNFe_v4.00.xsd b/schemes/PL_009_V4/procNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retConsReciNFe_v4.00.xsd b/schemes/PL_009_V4/retConsReciNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retConsSitNFe_v4.00.xsd b/schemes/PL_009_V4/retConsSitNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retConsStatServ_v4.00.xsd b/schemes/PL_009_V4/retConsStatServ_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retEnviNFe_v4.00.xsd b/schemes/PL_009_V4/retEnviNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retEventoCancEConf_v1.00.xsd b/schemes/PL_009_V4/retEventoCancEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retEventoEConf_v1.00.xsd b/schemes/PL_009_V4/retEventoEConf_v1.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/retInutNFe_v4.00.xsd b/schemes/PL_009_V4/retInutNFe_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/tiposBasico_v4.00.xsd b/schemes/PL_009_V4/tiposBasico_v4.00.xsd old mode 100644 new mode 100755 diff --git a/schemes/PL_009_V4/xmldsig-core-schema_v1.01.xsd b/schemes/PL_009_V4/xmldsig-core-schema_v1.01.xsd old mode 100644 new mode 100755 diff --git a/src/Make.php b/src/Make.php index 8895d13c..c3efa884 100755 --- a/src/Make.php +++ b/src/Make.php @@ -297,6 +297,10 @@ class Make * @var DOMElement */ protected $infRespTec; + /** + * @var DOMElement + */ + protected $agropecuario; /** * @var string */ @@ -518,6 +522,8 @@ public function monta(): string $this->dom->appChild($this->infNFe, $this->cana, 'Falta tag "infNFe"'); //Responsável Técnico $this->dom->appChild($this->infNFe, $this->infRespTec, 'Falta tag "infNFe"'); + //agropacuario + $this->dom->appChild($this->infNFe, $this->agropecuario, 'Falta tag "infNFe"'); //[1] tag infNFe (1 A01) $this->dom->appChild($this->NFe, $this->infNFe, 'Falta tag "NFe"'); //[0] tag NFe @@ -2310,8 +2316,8 @@ public function tagadi(stdClass $std): DOMElement $this->dom->addChild( $adi, "nAdicao", - $std->nAdicao, - true, + $std->nAdicao ?? null, + false, $identificador . "[item $std->item] Número da Adição" ); $this->dom->addChild( @@ -7728,6 +7734,78 @@ public function taginfRespTec(stdClass $std): DOMElement return $infRespTec; } + /** + * Informações de produtos da agricultura, pecuária e produção Florestal ZF01 pai A01 + * tag NFe/infNFe/agropecuario (opcional) + * @param stdClass $std + * @return DOMElement + * @throws \DOMException + */ + public function tagagropecuario(stdClass $std): DOMElement + { + $possible = [ + 'nReceituario', + 'CPFRespTec', + 'tpGuia', + 'UFGuia', + 'serieGuia', + 'nGuia' + ]; + $std = $this->equilizeParameters($std, $possible); + $agro = $this->dom->createElement("agropecuario"); + if (!empty($std->nReceituario)) { + $def = $this->dom->createElement("defensivo"); + $this->dom->addChild( + $def, + "nReceituario", + $std->nReceituario, + true, + "Número da receita ou receituário do agrotóxico/defensivo agrícola" + ); + $this->dom->addChild( + $def, + "CPFRespTec", + $std->CPFRespTec, + true, + "CPF do Responsável Técnico, emitente do receituário" + ); + $agro->appendChild($def); + } elseif (!empty($std->tpGuia)) { + $guia = $this->dom->createElement("guiaTransito"); + $this->dom->addChild( + $guia, + "tpGuia", + $std->tpGuia, + true, + "Tipo da Guia" + ); + $this->dom->addChild( + $guia, + "UFGuia", + !empty($std->UFGuia) ? $std->UFGuia : null, + false, + "UF de emissão" + ); + $this->dom->addChild( + $guia, + "serieGuia", + $std->serieGuia ?? null, + false, + "Série da Guia" + ); + $this->dom->addChild( + $guia, + "nGuia", + $std->nGuia, + true, + "Número da Guia" + ); + $agro->appendChild($guia); + } + $this->agropecuario = $agro; + return $agro; + } + /** * Tag raiz da NFe * tag NFe DOMNode diff --git a/src/Traits/TraitTagAgropecuario.php b/src/Traits/TraitTagAgropecuario.php new file mode 100644 index 00000000..0cfcc056 --- /dev/null +++ b/src/Traits/TraitTagAgropecuario.php @@ -0,0 +1,89 @@ +equilizeParameters($std, $possible); + $agro = $this->dom->createElement("agropecuario"); + if (!empty($std->nReceituario)) { + $def = $this->dom->createElement("defencivo"); + $this->dom->addChild( + $def, + "nReceituario", + $std->nReceituario, + true, + "Número da receita ou receituário do agrotóxico/defensivo agrícola" + ); + $this->dom->addChild( + $def, + "CPFRespTec", + $std->CPFRespTec, + true, + "CPF do Responsável Técnico, emitente do receituário" + ); + $agro->appendChild($def); + } elseif (!empty($std->tpGuia)) { + $guia = $this->dom->createElement("guiaTransito"); + $this->dom->addChild( + $guia, + "tpGuia", + $std->tpGuia, + true, + "Tipo da Guia" + ); + $this->dom->addChild( + $guia, + "UFGuia", + !empty($std->UFGuia) ? $std->UFGuia : null, + false, + "UF de emissão" + ); + $this->dom->addChild( + $guia, + "serieGuia", + $std->serieGuia ?? null, + false, + "Série da Guia" + ); + $this->dom->addChild( + $guia, + "nGuia", + $std->nGuia, + true, + "Número da Guia" + ); + $agro->appendChild($guia); + } + $this->agropecuario = $agro; + return $agro; + } +} diff --git a/tests/MakeTest.php b/tests/MakeTest.php index cc0d5f24..4d78b27a 100755 --- a/tests/MakeTest.php +++ b/tests/MakeTest.php @@ -1079,6 +1079,34 @@ public function test_taginfRespTec(): void $this->validarCriacaoTag2($std, $element, 'infRespTec', ['CSRT']); } + public function test_tagagropecuario_defencivo(): void + { + $std = new \stdClass(); + $std->nReceituario = '1234567890ABCDEFGHIJ'; //Obrigatório se houver defencivo 1-20 caracteres, opcional caso contrario + $std->CPFRespTec = '12345678901'; //Obrigatório se houver defencivo 11 digitos, opcional caso contrario + //$std->tpGuia = '1'; //Obrigatório se houver guia 1-GTA, 2-TTA, 3-DTA, 4-ATV, 5-PTV, 6-GVT, 7-GF, opcional caso contrario + //$std->UFGuia = 'MG'; //opcional + //$std->serieGuia = 'A12345678'; //opcional 9 caracteres + //$std->nGuia = '123456789'; //Obrigatório se houver guia 9 digitos, opcional caso contrario + + $element = $this->make->tagagropecuario($std); + $this->validarCriacaoTag2($std, $element, 'agropecuario', ['nReceituario', 'CPFRespTec']); + } + + public function test_tagagropecuario_guia(): void + { + $std = new \stdClass(); + //$std->nReceituario = '1234567890ABCDEFGHIJ'; //Obrigatório se houver defencivo 1-20 caracteres, opcional caso contrario + //$std->CPFRespTec = '12345678901'; //Obrigatório se houver defencivo 11 digitos, opcional caso contrario + $std->tpGuia = '1'; //Obrigatório se houver guia 1-GTA, 2-TTA, 3-DTA, 4-ATV, 5-PTV, 6-GVT, 7-GF, opcional caso contrario + $std->UFGuia = 'MG'; //opcional + $std->serieGuia = 'A12345678'; //opcional 9 caracteres + $std->nGuia = '123456789'; //Obrigatório se houver guia 9 digitos, opcional caso contrario + + $element = $this->make->tagagropecuario($std); + $this->validarCriacaoTag2($std, $element, 'agropecuario', ['tpGuia']); + } + private function validarCriacaoTag2( \stdClass $std, \DOMElement $element,