|
|
@ -4,7 +4,8 @@ PROCESSAMENTO - SERIALIZACAO PARA XML |
|
|
Populando fonte de dados |
|
|
Populando fonte de dados |
|
|
------------------------ |
|
|
------------------------ |
|
|
|
|
|
|
|
|
>>> import datetime, decimal |
|
|
|
|
|
|
|
|
>>> import datetime |
|
|
|
|
|
>>> from decimal import Decimal |
|
|
>>> from pynfe.entidades import Emitente, Cliente, NotaFiscal, Transportadora |
|
|
>>> from pynfe.entidades import Emitente, Cliente, NotaFiscal, Transportadora |
|
|
>>> from pynfe.entidades.notafiscal import NotaFiscalEntregaRetirada |
|
|
>>> from pynfe.entidades.notafiscal import NotaFiscalEntregaRetirada |
|
|
>>> from pynfe.entidades.fontes_dados import _fonte_dados |
|
|
>>> from pynfe.entidades.fontes_dados import _fonte_dados |
|
|
@ -73,6 +74,34 @@ Instancia a NF |
|
|
... municipio='3550308', |
|
|
... municipio='3550308', |
|
|
... codigo_numerico_aleatorio='51800512', |
|
|
... codigo_numerico_aleatorio='51800512', |
|
|
... dv_codigo_numerico_aleatorio='3', |
|
|
... dv_codigo_numerico_aleatorio='3', |
|
|
|
|
|
... |
|
|
|
|
|
... # Totais |
|
|
|
|
|
... totais_icms_base_calculo=Decimal('20000000.00'), |
|
|
|
|
|
... totais_icms_total=Decimal('18.00'), |
|
|
|
|
|
... totais_icms_st_base_calculo=Decimal('0'), |
|
|
|
|
|
... totais_icms_st_total=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_produtos_e_servicos=Decimal('20000000.00'), |
|
|
|
|
|
... totais_icms_total_frete=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_seguro=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_desconto=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_ii=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_ipi=Decimal('0'), |
|
|
|
|
|
... totais_icms_pis=Decimal('130000.00'), |
|
|
|
|
|
... totais_icms_cofins=Decimal('400000.00'), |
|
|
|
|
|
... totais_icms_outras_despesas_acessorias=Decimal('0'), |
|
|
|
|
|
... totais_icms_total_nota=Decimal('20000000.00'), |
|
|
|
|
|
... |
|
|
|
|
|
... # Transporte |
|
|
|
|
|
... transporte_modalidade_frete=0, |
|
|
|
|
|
... |
|
|
|
|
|
... # Informacoes adicionais |
|
|
|
|
|
... informacoes_adicionais_interesse_fisco='Nota Fiscal de exemplo PyNFe', |
|
|
|
|
|
... transporte_veiculo_placa='BXI1717', |
|
|
|
|
|
... transporte_veiculo_rntc='123456789', |
|
|
|
|
|
... transporte_veiculo_uf='SP', |
|
|
|
|
|
... transporte_reboque_placa='BXI1818', |
|
|
|
|
|
... transporte_reboque_rntc='123456789', |
|
|
|
|
|
... transporte_reboque_uf='SP', |
|
|
... ) |
|
|
... ) |
|
|
>>> nota_fiscal.retirada = NotaFiscalEntregaRetirada( |
|
|
>>> nota_fiscal.retirada = NotaFiscalEntregaRetirada( |
|
|
... tipo_documento='CNPJ', |
|
|
... tipo_documento='CNPJ', |
|
|
@ -95,32 +124,76 @@ Instancia a NF |
|
|
... endereco_uf='RJ', |
|
|
... endereco_uf='RJ', |
|
|
... ) |
|
|
... ) |
|
|
>>> nf_prod1 = nota_fiscal.adicionar_produto_servico( |
|
|
>>> nf_prod1 = nota_fiscal.adicionar_produto_servico( |
|
|
|
|
|
... # prod |
|
|
... codigo='00001', |
|
|
... codigo='00001', |
|
|
... descricao='Agua Mineral', |
|
|
... descricao='Agua Mineral', |
|
|
... cfop='5101', |
|
|
... cfop='5101', |
|
|
... unidade_comercial='dz', |
|
|
... unidade_comercial='dz', |
|
|
... quantidade_comercial=decimal.Decimal('2'), |
|
|
|
|
|
... valor_unitario_comercial=decimal.Decimal('10.0'), |
|
|
|
|
|
... valor_total_bruto=decimal.Decimal('20.0'), |
|
|
|
|
|
|
|
|
... quantidade_comercial=Decimal('2'), |
|
|
|
|
|
... valor_unitario_comercial=Decimal('10.0'), |
|
|
|
|
|
... valor_total_bruto=Decimal('20.0'), |
|
|
... unidade_tributavel='und', |
|
|
... unidade_tributavel='und', |
|
|
... quantidade_tributavel=decimal.Decimal('24.0'), |
|
|
|
|
|
... valor_unitario_tributavel=decimal.Decimal('3.00'), |
|
|
|
|
|
|
|
|
... quantidade_tributavel=Decimal('24.0'), |
|
|
|
|
|
... valor_unitario_tributavel=Decimal('3.00'), |
|
|
|
|
|
... |
|
|
|
|
|
... # imposto |
|
|
|
|
|
... icms_origem=0, |
|
|
|
|
|
... icms_situacao_tributaria='00', |
|
|
|
|
|
... icms_modalidade_determinacao_bc=0, |
|
|
|
|
|
... icms_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... icms_aliquota=Decimal('18.00'), |
|
|
|
|
|
... icms_valor=Decimal('1800000.00'), |
|
|
|
|
|
... pis_situacao_tributaria='01', |
|
|
|
|
|
... pis_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... pis_aliquota_percentual=Decimal('0.65'), |
|
|
|
|
|
... pis_valor=Decimal('65000'), |
|
|
|
|
|
... cofins_situacao_tributaria='01', |
|
|
|
|
|
... cofins_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... cofins_aliquota_percentual=Decimal('2.00'), |
|
|
|
|
|
... cofins_valor=Decimal('200000.00'), |
|
|
... ) |
|
|
... ) |
|
|
>>> nf_prod2 = nota_fiscal.adicionar_produto_servico( |
|
|
>>> nf_prod2 = nota_fiscal.adicionar_produto_servico( |
|
|
... codigo='00002', |
|
|
... codigo='00002', |
|
|
... descricao='Agua Mineral', |
|
|
... descricao='Agua Mineral', |
|
|
... cfop='5101', |
|
|
... cfop='5101', |
|
|
... unidade_comercial='pack', |
|
|
... unidade_comercial='pack', |
|
|
... quantidade_comercial=decimal.Decimal('5000000'), |
|
|
|
|
|
... valor_unitario_comercial=decimal.Decimal('2.0'), |
|
|
|
|
|
... valor_total_bruto=decimal.Decimal('10000000.0'), |
|
|
|
|
|
|
|
|
... quantidade_comercial=Decimal('5000000'), |
|
|
|
|
|
... valor_unitario_comercial=Decimal('2.0'), |
|
|
|
|
|
... valor_total_bruto=Decimal('10000000.0'), |
|
|
... unidade_tributavel='und', |
|
|
... unidade_tributavel='und', |
|
|
... quantidade_tributavel=decimal.Decimal('3000000.0'), |
|
|
|
|
|
... valor_unitario_tributavel=decimal.Decimal('0.3333'), |
|
|
|
|
|
|
|
|
... quantidade_tributavel=Decimal('3000000.0'), |
|
|
|
|
|
... valor_unitario_tributavel=Decimal('0.3333'), |
|
|
|
|
|
... |
|
|
|
|
|
... # imposto |
|
|
|
|
|
... icms_origem=0, |
|
|
|
|
|
... icms_situacao_tributaria='00', |
|
|
|
|
|
... icms_modalidade_determinacao_bc=0, |
|
|
|
|
|
... icms_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... icms_aliquota=Decimal('18.00'), |
|
|
|
|
|
... icms_valor=Decimal('1800000.00'), |
|
|
|
|
|
... pis_situacao_tributaria='01', |
|
|
|
|
|
... pis_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... pis_aliquota_percentual=Decimal('0.65'), |
|
|
|
|
|
... pis_valor=Decimal('65000'), |
|
|
|
|
|
... cofins_situacao_tributaria='01', |
|
|
|
|
|
... cofins_valor_base_calculo=Decimal('10000000.00'), |
|
|
|
|
|
... cofins_aliquota_percentual=Decimal('2.00'), |
|
|
|
|
|
... cofins_valor=Decimal('200000.00'), |
|
|
|
|
|
... ) |
|
|
|
|
|
>>> vol1 = nota_fiscal.adicionar_transporte_volume( |
|
|
|
|
|
... quantidade=10000, |
|
|
|
|
|
... especie='CAIXA', |
|
|
|
|
|
... marca='LINDOYA', |
|
|
|
|
|
... numeracao='500', |
|
|
|
|
|
... peso_liquido=Decimal('1000000000.000'), |
|
|
|
|
|
... peso_bruto=Decimal('1200000000.000'), |
|
|
|
|
|
... ) |
|
|
|
|
|
>>> lacre1 = vol1.adicionar_lacre( |
|
|
|
|
|
... numero_lacre='XYZ10231486', |
|
|
... ) |
|
|
... ) |
|
|
|
|
|
|
|
|
>>> _fonte_dados.contar_objetos() |
|
|
>>> _fonte_dados.contar_objetos() |
|
|
8 |
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
Gerar arquivos XML |
|
|
Gerar arquivos XML |
|
|
------------------ |
|
|
------------------ |
|
|
@ -195,7 +268,7 @@ Serializando por partes |
|
|
NFe52100112345678000190550010000000011518005123 |
|
|
NFe52100112345678000190550010000000011518005123 |
|
|
|
|
|
|
|
|
>>> print serializador._serializar_notas_fiscal(nota_fiscal) |
|
|
>>> print serializador._serializar_notas_fiscal(nota_fiscal) |
|
|
<infNFe versao="1.10" Id="NFe52100112345678000190550010000000011518005123"> |
|
|
|
|
|
|
|
|
<infNFe versao="2.00" Id="NFe52100112345678000190550010000000011518005123"> |
|
|
<ide> |
|
|
<ide> |
|
|
<cUF>52</cUF> |
|
|
<cUF>52</cUF> |
|
|
<cNF>51800512</cNF> |
|
|
<cNF>51800512</cNF> |
|
|
@ -276,17 +349,17 @@ Serializando por partes |
|
|
<det nItem="1"> |
|
|
<det nItem="1"> |
|
|
<prod> |
|
|
<prod> |
|
|
<cProd>00001</cProd> |
|
|
<cProd>00001</cProd> |
|
|
<cEAN /> |
|
|
|
|
|
|
|
|
<cEAN></cEAN> |
|
|
<xProd>Agua Mineral</xProd> |
|
|
<xProd>Agua Mineral</xProd> |
|
|
<CFOP>5101</CFOP> |
|
|
<CFOP>5101</CFOP> |
|
|
<uCom>dz</uCom> |
|
|
<uCom>dz</uCom> |
|
|
<qCom>2.000000</qCom> |
|
|
|
|
|
<vUnCom>10.000000</vUnCom> |
|
|
|
|
|
<vProd>20.000000</vProd> |
|
|
|
|
|
<cEANTrib /> |
|
|
|
|
|
|
|
|
<qCom>2</qCom> |
|
|
|
|
|
<vUnCom>10.0</vUnCom> |
|
|
|
|
|
<vProd>20.0</vProd> |
|
|
|
|
|
<cEANTrib></cEANTrib> |
|
|
<uTrib>und</uTrib> |
|
|
<uTrib>und</uTrib> |
|
|
<qTrib>24.000000</qTrib> |
|
|
|
|
|
<vUnTrib>3.000000</vUnTrib> |
|
|
|
|
|
|
|
|
<qTrib>24.0</qTrib> |
|
|
|
|
|
<vUnTrib>3.00</vUnTrib> |
|
|
</prod> |
|
|
</prod> |
|
|
<imposto> |
|
|
<imposto> |
|
|
<ICMS> |
|
|
<ICMS> |
|
|
@ -320,17 +393,17 @@ Serializando por partes |
|
|
<det nItem="2"> |
|
|
<det nItem="2"> |
|
|
<prod> |
|
|
<prod> |
|
|
<cProd>00002</cProd> |
|
|
<cProd>00002</cProd> |
|
|
<cEAN /> |
|
|
|
|
|
|
|
|
<cEAN></cEAN> |
|
|
<xProd>Agua Mineral</xProd> |
|
|
<xProd>Agua Mineral</xProd> |
|
|
<CFOP>5101</CFOP> |
|
|
<CFOP>5101</CFOP> |
|
|
<uCom>pack</uCom> |
|
|
<uCom>pack</uCom> |
|
|
<qCom>5000000.000000</qCom> |
|
|
|
|
|
<vUnCom>2.000000</vUnCom> |
|
|
|
|
|
<vProd>10000000.000000</vProd> |
|
|
|
|
|
<cEANTrib /> |
|
|
|
|
|
|
|
|
<qCom>5000000</qCom> |
|
|
|
|
|
<vUnCom>2.0</vUnCom> |
|
|
|
|
|
<vProd>10000000.0</vProd> |
|
|
|
|
|
<cEANTrib></cEANTrib> |
|
|
<uTrib>und</uTrib> |
|
|
<uTrib>und</uTrib> |
|
|
<qTrib>3000000.000000</qTrib> |
|
|
|
|
|
<vUnTrib>0.333300</vUnTrib> |
|
|
|
|
|
|
|
|
<qTrib>3000000.0</qTrib> |
|
|
|
|
|
<vUnTrib>0.3333</vUnTrib> |
|
|
</prod> |
|
|
</prod> |
|
|
<imposto> |
|
|
<imposto> |
|
|
<ICMS> |
|
|
<ICMS> |
|
|
@ -413,7 +486,8 @@ Serializando por partes |
|
|
</vol> |
|
|
</vol> |
|
|
</transp> |
|
|
</transp> |
|
|
<infAdic> |
|
|
<infAdic> |
|
|
<infAdFisco>Nota Fiscal de exemplo NF-eletronica.com</infAdFisco> |
|
|
|
|
|
|
|
|
<infAdFisco>Nota Fiscal de exemplo PyNFe</infAdFisco> |
|
|
|
|
|
<infCpl></infCpl> |
|
|
</infAdic> |
|
|
</infAdic> |
|
|
</infNFe> |
|
|
</infNFe> |
|
|
<BLANKLINE> |
|
|
<BLANKLINE> |
|
|
|