当前位置: 首页>>代码示例>>Python>>正文


Python ProcessadorNFe.processar_notas方法代码示例

本文整理汇总了Python中nfe.pysped.nfe.ProcessadorNFe.processar_notas方法的典型用法代码示例。如果您正苦于以下问题:Python ProcessadorNFe.processar_notas方法的具体用法?Python ProcessadorNFe.processar_notas怎么用?Python ProcessadorNFe.processar_notas使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在nfe.pysped.nfe.ProcessadorNFe的用法示例。


在下文中一共展示了ProcessadorNFe.processar_notas方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: processar_nfe

# 需要导入模块: from nfe.pysped.nfe import ProcessadorNFe [as 别名]
# 或者: from nfe.pysped.nfe.ProcessadorNFe import processar_notas [as 别名]
  def processar_nfe(self,xml_nfe,cert,key,versao=u'2.00',ambiente=2,estado=u'MG',scan=False):
     
      """
      Este método realiza o processamento de validação, assinatura e transmissão da nfe.
      @param xml_nfe:xml da nfe (string)
      @param cert: string do certificado digital A1,
      @param key: chave privada do certificado digital,
      @param versao: versão da nfe,
      @param ambiente: ambiente da consulta, pode ser 1 para o ambiente de produção e 2 para homologação,
      @param estado: estado em que realizará o processamento,
      @param scan: habilita a contigência SCAN. 
      @return: Dicionário com a chave_nfe, protocolo, envio,resposta e reason.
      """
      
      p = ProcessadorNFe()
      p.ambiente=ambiente
      p.estado=estado
      p.certificado.cert_str=cert
      p.certificado.key_str=key
      p.salvar_arquivos=False
      p.contingencia_SCAN=scan
      p.caminho = u''
      n = NFe_200()
      n.infNFe.xml=xml_nfe 
      for processo in p.processar_notas([n]): 
          processo.envio.xml
          processo.resposta.xml
          processo.resposta.reason
 
      return {'envio':processo.envio.xml,
              'resposta':processo.resposta.xml,
              'chave_nfe':n.chave,
              'protocolo':processo.resposta.protNFe.infProt.nProt.valor,
              'reason':processo.resposta.reason
              }
开发者ID:filipecifali,项目名称:Recursos-NFE-em-Python,代码行数:37,代码来源:nf_e.py

示例2: processar_nfe

# 需要导入模块: from nfe.pysped.nfe import ProcessadorNFe [as 别名]
# 或者: from nfe.pysped.nfe.ProcessadorNFe import processar_notas [as 别名]
    def processar_nfe(self, xml_nfe, cert, key, versao=u'2.00', ambiente=2, estado=u'MG',
                      tipo_contingencia=False):
        """
        Este método realiza o processamento de validação, assinatura e transmissão da nfe.
        @param xml_nfe:xml da nfe (string)
        @param cert: string do certificado digital A1,
        @param key: chave privada do certificado digital,
        @param versao: versão da nfe,
        @param ambiente: ambiente da consulta, pode ser 1 para o ambiente de produção e 2 para homologação,
        @param estado: estado em que realizará o processamento,
        @param tipo_contingencia: habilita a contigência .
        @return: Dicionário com a chave_nfe, protocolo, envio, numero_lote, resposta, status_resposta,status_motivo e reason.
        """

        p = ProcessadorNFe()
        p.ambiente = ambiente
        p.estado = estado
        p.versao = versao
        p.certificado.cert_str = cert
        p.certificado.key_str = key
        p.salvar_arquivos = True
        p.tipo_contingencia = tipo_contingencia
        p.caminho = u''
        if versao == '3.10':
            n = NFe_310()
        else:
            n = NFe_200()
        n.infNFe.xml = xml_nfe
        for processo in p.processar_notas([n]):
            processo.envio.xml
            processo.resposta.xml
            processo.resposta.reason
        vals = {'envio': processo.envio.xml,
                'resposta': processo.resposta.xml,
                'chave_nfe': n.chave,
                'xml_pre_validado': n.xml,
                'status_resposta': processo.resposta.cStat.valor,
                'status_motivo': processo.resposta.xMotivo.valor,
                'reason': processo.resposta.reason
        }
        try:
            if processo.resposta.infProt.nProt.valor == '':
                vals['protocolo'] = processo.resposta.protNFe.infProt.nProt.valor
        except:
            pass

        for nome, proc in p.processos.iteritems():
            for arquivo in proc[1]:
                if arquivo[0] == 'numero_lote':
                    vals['numero_lote'] = arquivo[1]
                if arquivo[0] == 'numero_protocolo':
                    vals['protocolo'] = arquivo[1]
                    vals['resposta'] = proc[1][1][1]
                if arquivo[0] == 'status_resp':
                    vals['status_resposta'] = arquivo[1][0]
                    vals['status_motivo'] = arquivo[1][1]
        return vals
开发者ID:adrianobalani,项目名称:Recursos-NFE-em-Python,代码行数:59,代码来源:nf_e.py

示例3: processar_lote

# 需要导入模块: from nfe.pysped.nfe import ProcessadorNFe [as 别名]
# 或者: from nfe.pysped.nfe.ProcessadorNFe import processar_notas [as 别名]
    def processar_lote(self, lista_xml_nfe, cert, key, versao=u'2.00', ambiente=2, estado=u'MG',
                       tipo_contingencia=False):
        """
        Este método realiza o processamento de validação, assinatura e transmissão da nfe.
        @param lista_xml_nfe:lista nfe
        @param cert: string do certificado digital A1,
        @param key: chave privada do certificado digital,
        @param versao: versão da nfe,
        @param ambiente: ambiente da consulta, pode ser 1 para o ambiente de produção e 2 para homologação,
        @param estado: estado em que realizará o processamento,
        @param tipo_contingencia: habilita a contigência .
        @return: Dicionário com o envio,resposta e reason.
        """

        p = ProcessadorNFe()
        p.ambiente = ambiente
        p.estado = estado
        p.versao=versao
        p.tipo_contingencia = tipo_contingencia
        p.certificado.cert_str = cert
        p.certificado.key_str = key
        p.salvar_arquivos = False
        p.caminho = u''
        if versao == '3.10':
            n = NFe_310()
        else:
            n = NFe_200()
        lista = []
        if lista_xml_nfe:
            for x in lista_xml_nfe:
                n.infNFe.xml = x
                lista.append(n)
        for processo in p.processar_notas(lista):
            processo.envio.xml
            processo.resposta.xml
            processo.resposta.reason

        return {'envio': processo.envio.xml, 'resposta': processo.resposta.xml,
                'reason': processo.resposta.reason}
开发者ID:adrianobalani,项目名称:Recursos-NFE-em-Python,代码行数:41,代码来源:nf_e.py


注:本文中的nfe.pysped.nfe.ProcessadorNFe.processar_notas方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。