本文整理汇总了Python中pynfe.utils.etree.tostring函数的典型用法代码示例。如果您正苦于以下问题:Python tostring函数的具体用法?Python tostring怎么用?Python tostring使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了tostring函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: assinar
def assinar(self, xml, retorna_string=False):
# busca tag que tem id(reference_uri), logo nao importa se tem namespace
reference = xml.find(".//*[@Id]").attrib['Id']
#print('Referencia: ',reference)
# retira acentos
xml_str = remover_acentos(etree.tostring(xml, encoding="unicode", pretty_print=False))
xml = etree.fromstring(xml_str)
signer = XMLSigner(
method=signxml.methods.enveloped, signature_algorithm="rsa-sha1",
digest_algorithm='sha1',
c14n_algorithm='http://www.w3.org/TR/2001/REC-xml-c14n-20010315')
ns = {None: signer.namespaces['ds']}
signer.namespaces = ns
#print('Chave......: ',self.key)
#print('*',200)
#print('Certificado: ',self.cert)
ref_uri = ('#%s' % reference) if reference else None
signed_root = signer.sign(
xml, key=self.key, cert=self.cert, reference_uri=ref_uri)
ns = {'ns': NAMESPACE_SIG}
# coloca o certificado na tag X509Data/X509Certificate
tagX509Data = signed_root.find('.//ns:X509Data', namespaces=ns)
etree.SubElement(tagX509Data, 'X509Certificate').text = self.cert
#print('Assinatura: ',etree.tostring(signed_root, encoding="unicode", pretty_print=False) )
if retorna_string:
return etree.tostring(signed_root, encoding="unicode", pretty_print=False)
else:
return signed_root
开发者ID:joselobinho,项目名称:PyNFe,代码行数:31,代码来源:assinatura.py
示例2: assinarLote
def assinarLote(self, xml, retorna_string=True):
"Assina nfse e lote"
try:
xml = self.assinarNfse(xml, retorna_string=False)
xpath = './/ns1:LoteRps'
tag = 'LoteRps'
# define namespaces, pega do proprio xml
namespaces = xml.nsmap
# No raiz do XML de saida
raiz = etree.Element('Signature', xmlns='http://www.w3.org/2000/09/xmldsig#')
siginfo = etree.SubElement(raiz, 'SignedInfo')
etree.SubElement(siginfo, 'CanonicalizationMethod', Algorithm='http://www.w3.org/TR/2001/REC-xml-c14n-20010315')
etree.SubElement(siginfo, 'SignatureMethod', Algorithm='http://www.w3.org/2000/09/xmldsig#rsa-sha1')
# Tenta achar a tag
ref = etree.SubElement(siginfo, 'Reference', URI='#' +
xml.xpath(xpath, namespaces=namespaces)[0].attrib['Id'])
trans = etree.SubElement(ref, 'Transforms')
etree.SubElement(trans, 'Transform', Algorithm='http://www.w3.org/2000/09/xmldsig#enveloped-signature')
etree.SubElement(trans, 'Transform', Algorithm='http://www.w3.org/TR/2001/REC-xml-c14n-20010315')
etree.SubElement(ref, 'DigestMethod', Algorithm='http://www.w3.org/2000/09/xmldsig#sha1')
etree.SubElement(ref, 'DigestValue')
etree.SubElement(raiz, 'SignatureValue')
keyinfo = etree.SubElement(raiz, 'KeyInfo')
etree.SubElement(keyinfo, 'X509Data')
# posiciona tag Signature antes do LoteRps para assinar
base = xml.xpath(xpath+'/..', namespaces=namespaces)[0]
base.insert(0, raiz)
# Escreve no arquivo depois de remover caracteres especiais
with open('nfse.xml', 'w') as arquivo:
texto = remover_acentos(etree.tostring(xml, encoding="unicode", pretty_print=False))
arquivo.write(texto)
# assina lote
subprocess.call(['xmlsec1', '--sign', '--pkcs12', self.certificado,
'--pwd', self.senha, '--crypto', 'openssl', '--output',
'nfse.xml', '--id-attr:Id', tag, 'nfse.xml'])
# Reposiciona tag Signature apos LoteRps
xml = etree.fromstring(open('nfse.xml', 'r').read())
namespaces = xml.nsmap
sig = xml.find('{http://www.w3.org/2000/09/xmldsig#}Signature')
sig.getparent().remove(sig)
xml.append(sig)
if retorna_string:
return etree.tostring(xml, encoding="unicode", pretty_print=False)
else:
return xml
except Exception as e:
raise e
开发者ID:adrianobalani,项目名称:PyNFe,代码行数:51,代码来源:assinatura.py
示例3: _serializar_emitente
def _serializar_emitente(self, emitente, tag_raiz='emit', retorna_string=True):
raiz = etree.Element(tag_raiz)
# Dados do emitente
etree.SubElement(raiz, 'CNPJ').text = so_numeros(emitente.cnpj)
etree.SubElement(raiz, 'xNome').text = emitente.razao_social
etree.SubElement(raiz, 'xFant').text = emitente.nome_fantasia
etree.SubElement(raiz, 'IE').text = emitente.inscricao_estadual
# Endereço
endereco = etree.SubElement(raiz, 'enderEmit')
etree.SubElement(endereco, 'xLgr').text = emitente.endereco_logradouro
etree.SubElement(endereco, 'nro').text = emitente.endereco_numero
etree.SubElement(endereco, 'xCpl').text = emitente.endereco_complemento
etree.SubElement(endereco, 'xBairro').text = emitente.endereco_bairro
etree.SubElement(endereco, 'cMun').text = obter_codigo_por_municipio(
emitente.endereco_municipio, emitente.endereco_uf)
etree.SubElement(endereco, 'xMun').text = emitente.endereco_municipio
etree.SubElement(endereco, 'UF').text = emitente.endereco_uf
etree.SubElement(endereco, 'CEP').text = so_numeros(emitente.endereco_cep)
etree.SubElement(endereco, 'cPais').text = emitente.endereco_pais
etree.SubElement(endereco, 'xPais').text = obter_pais_por_codigo(emitente.endereco_pais)
etree.SubElement(endereco, 'fone').text = emitente.endereco_telefone
if retorna_string:
return etree.tostring(raiz, pretty_print=True)
else:
return raiz
开发者ID:YACOWS,项目名称:PyNFe,代码行数:28,代码来源:serializacao.py
示例4: _serializar_evento
def _serializar_evento(self, evento, tag_raiz="evento", retorna_string=False):
# timezone Brasília -03:00
tz = time.strftime("%z")
tz = "{}:{}".format(tz[:-2], tz[-2:])
# import ipdb
# ipdb.set_trace()
raiz = etree.Element(tag_raiz, versao="1.00", xmlns=NAMESPACE_NFE)
e = etree.SubElement(raiz, "infEvento", Id=evento.identificador)
etree.SubElement(e, "cOrgao").text = CODIGOS_ESTADOS[evento.uf.upper()]
etree.SubElement(e, "tpAmb").text = str(self._ambiente)
etree.SubElement(e, "CNPJ").text = evento.cnpj # Empresas somente terão CNPJ
# etree.SubElement(e, 'CPF').text = ''
etree.SubElement(e, "chNFe").text = evento.chave
etree.SubElement(e, "dhEvento").text = evento.data_emissao.strftime("%Y-%m-%dT%H:%M:%S") + tz
etree.SubElement(e, "tpEvento").text = evento.tp_evento
etree.SubElement(e, "nSeqEvento").text = str(evento.n_seq_evento)
etree.SubElement(e, "verEvento").text = "1.00"
det = etree.SubElement(e, "detEvento", versao="1.00")
etree.SubElement(det, "descEvento").text = evento.descricao
etree.SubElement(det, "nProt").text = evento.protocolo
etree.SubElement(det, "xJust").text = evento.justificativa
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:arilsonsantos,项目名称:PyNFe,代码行数:27,代码来源:serializacao.py
示例5: _serializar_permissoes
def _serializar_permissoes(tag_raiz='Permissoes', retorna_string=True):
raiz = etree.Element(tag_raiz)
# Permissões referente ao módulo NFC-e
p_nfce = etree.SubElement(raiz, 'PermissaoNFCe')
etree.SubElement(p_nfce, 'Visualizar').text = "S"
etree.SubElement(p_nfce, 'Baixar').text = "S"
# Permissões gerais da aplicação
p_geral = etree.SubElement(raiz, 'PermissoesGerais')
etree.SubElement(p_geral, 'ImportarDocumentos').text = "N"
etree.SubElement(p_geral, 'AlterarDadosDoUsuario').text = "S"
etree.SubElement(p_geral, 'AlterarDadosDaEmpresa').text = "N"
etree.SubElement(p_geral, 'AlterarMarcasDaEmpresa').text = "N"
etree.SubElement(p_geral, 'AlterarCertificadosDaEmpresa').text = "S"
etree.SubElement(p_geral, 'AlterarConfiguracoesParametros').text = "N"
etree.SubElement(p_geral, 'CadastrarEmpresas').text = "N"
etree.SubElement(p_geral, 'AlterarCaixasDeEmail').text = "S"
etree.SubElement(p_geral, 'AlterarPermissoesDeUsuario').text = "S"
etree.SubElement(p_geral, 'AdicionarNovosUsuarios').text = "S"
etree.SubElement(p_geral, 'VisualizarChaveAcesso').text = "N"
etree.SubElement(p_geral, 'VisualizarAcoesDeUsuarios').text = "S"
etree.SubElement(p_geral, 'VisualizarQuantidadesEmitidas').text = "S"
etree.SubElement(p_geral, 'VisualizarLicencas').text = "S"
etree.SubElement(p_geral, 'ConfiguracaoSenha').text = "N"
etree.SubElement(p_geral, 'GerarRelatorios').text = "S"
etree.SubElement(p_geral, 'InutilizarDocumentos').text = "S"
etree.SubElement(p_geral, 'FerramentasIntegracao').text = "N"
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:33,代码来源:cadastro_nova_empresa.py
示例6: _serializar_evento
def _serializar_evento(self, evento, tag_raiz='EnvioEvento', retorna_string=True):
raiz = etree.Element(tag_raiz)
etree.SubElement(raiz, 'ModeloDocumento').text = 'NFCe'
etree.SubElement(raiz, 'Versao').text = self._versao
# timezone Brasília -03:00
tz = time.strftime("%z")
event = etree.SubElement(raiz, 'Evento')
etree.SubElement(event, 'NtfCnpjEmissor').text = so_numeros(evento.cnpj)
etree.SubElement(event, 'NtfNumero').text = evento.numero
etree.SubElement(event, 'NtfSerie').text = evento.serie
etree.SubElement(event, 'tpAmb').text = str(self._ambiente)
eve_info = etree.SubElement(event, 'EveInf')
etree.SubElement(eve_info, 'EveDh').text = evento.data_emissao.strftime(
'%Y-%m-%dT%H:%M:%S')
etree.SubElement(eve_info, 'EveFusoHorario').text = "{}:{}".format(
tz[:-2], tz[-2:])
etree.SubElement(eve_info, 'EveTp').text = evento.tp_evento
etree.SubElement(eve_info, 'EvenSeq').text = str(evento.n_seq_evento)
eve_det = etree.SubElement(eve_info, 'Evedet')
etree.SubElement(eve_det, 'EveDesc').text = evento.descricao
etree.SubElement(eve_det, 'EvenProt').text = evento.protocolo
etree.SubElement(eve_det, 'EvexJust').text = evento.justificativa
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:33,代码来源:cancelamento_migrate.py
示例7: _antes_de_assinar_ou_verificar
def _antes_de_assinar_ou_verificar(self, raiz):
# Converte etree para string
xml = etree.tostring(raiz, xml_declaration=True, encoding='utf-8')
# Ativa funções criptográficas
self._ativar_funcoes_criptograficas()
# Colocamos o texto no avaliador XML FIXME: descobrir forma de evitar o uso do libxml2 neste processo
doc_xml = libxml2.parseMemory(xml, len(xml))
# Cria o contexto para manipulação do XML via sintaxe XPATH
ctxt = doc_xml.xpathNewContext()
ctxt.xpathRegisterNs(u'sig', NAMESPACE_SIG)
# Separa o nó da assinatura
noh_assinatura = ctxt.xpathEval(u'//*/sig:Signature')[0]
# Buscamos a chave no arquivo do certificado
chave = xmlsec.cryptoAppKeyLoad(
filename=str(self.certificado.caminho_arquivo),
format=xmlsec.KeyDataFormatPkcs12,
pwd=str(self.senha),
pwdCallback=None,
pwdCallbackCtx=None,
)
# Cria a variável de chamada (callable) da função de assinatura
assinador = xmlsec.DSigCtx()
# Atribui a chave ao assinador
assinador.signKey = chave
return doc_xml, ctxt, noh_assinatura, assinador
开发者ID:danielgoncalves,项目名称:PyNFe,代码行数:33,代码来源:assinatura.py
示例8: exportar
def exportar(self, destino=None, retorna_string=False, limpar=True, **kwargs):
"""Gera o(s) arquivo(s) de Consulta Nota Fiscal eletronica
no padrao oficial da migrate, invocity
@param destino -
@param retorna_string - Retorna uma string para debug.
@param limpar - Limpa a fonte de dados para não gerar xml com dados duplicados.
"""
try:
# Carrega lista de Notas Fiscais
consultas = self._fonte_dados.obter_lista(_classe=ConsultaPuloNumeracao,
**kwargs)
for consulta in consultas:
raiz = self._serializar_pulo(consulta, retorna_string=False)
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=False)
else:
return raiz
except:
raise
finally:
if limpar:
self._fonte_dados.limpar_dados()
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:25,代码来源:serializacao_consulta.py
示例9: _serializar_evento
def _serializar_evento(self, evento, tag_raiz='evento', retorna_string=False):
# timezone Brasília -03:00
tz = time.strftime("%z")
tz = "{}:{}".format(tz[:-2], tz[-2:])
raiz = etree.Element(tag_raiz, versao='1.00', xmlns=NAMESPACE_NFE)
e = etree.SubElement(raiz, 'infEvento', Id=evento.identificador)
etree.SubElement(e, 'cOrgao').text = CODIGOS_ESTADOS[evento.uf.upper()]
etree.SubElement(e, 'tpAmb').text = str(self._ambiente)
etree.SubElement(e, 'CNPJ').text = evento.cnpj # Empresas somente terão CNPJ
#etree.SubElement(evento, 'CPF').text = ''
etree.SubElement(e, 'chNFe').text = evento.chave
etree.SubElement(e, 'dhEvento').text = evento.data_emissao.strftime('%Y-%m-%dT%H:%M:%S') + tz
etree.SubElement(e, 'tpEvento').text = evento.tp_evento
etree.SubElement(e, 'nSeqEvento').text = str(evento.n_seq_evento)
etree.SubElement(e, 'verEvento').text = '1.00'
det = etree.SubElement(e, 'detEvento', versao='1.00')
etree.SubElement(det, 'descEvento').text = evento.descricao
etree.SubElement(det, 'nProt').text = evento.protocolo
etree.SubElement(det, 'xJust').text = evento.justificativa
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:25,代码来源:serializacao.py
示例10: exportar
def exportar(self, destino=None, retorna_string=False, limpar=True, **kwargs):
"""Gera o(s) arquivo(s) de Nota Fiscal eletronica no padrao oficial da SEFAZ
e Receita Federal, para ser(em) enviado(s) para o webservice ou para ser(em)
armazenado(s) em cache local.
@param destino -
@param retorna_string - Retorna uma string para debug.
@param limpar - Limpa a fonte de dados para não gerar xml com dados duplicados.
"""
try:
# Carrega lista de Notas Fiscais
notas_fiscais = self._fonte_dados.obter_lista(_classe=NotaFiscal, **kwargs)
for nf in notas_fiscais:
raiz = self._serializar_nota_fiscal(nf, retorna_string=False)
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=False)
else:
return raiz
except Exception:
raise
finally:
if limpar:
self._fonte_dados.limpar_dados()
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:25,代码来源:serializacao_migrate.py
示例11: _serializar_consulta
def _serializar_consulta(self, consulta, tag_raiz='Consulta', retorna_string=True):
raiz = etree.Element(tag_raiz)
etree.SubElement(raiz, 'ModeloDocumento').text = 'NFCe'
etree.SubElement(raiz, 'Versao').text = self._versao
etree.SubElement(raiz, 'tpAmb').text = str(self._ambiente)
etree.SubElement(raiz, 'CnpjEmpresa').text = so_numeros(consulta.cnpj)
etree.SubElement(raiz, 'CnpjEmissor').text = so_numeros(consulta.cnpj)
if consulta.numero_inicial:
etree.SubElement(raiz, 'NumeroInicial').text = str(consulta.numero_inicial)
if consulta.numero_final:
etree.SubElement(raiz, 'NumeroFinal').text = str(consulta.numero_final)
etree.SubElement(raiz, 'Serie').text = str(consulta.serie)
if consulta.chave_acesso:
etree.SubElement(raiz, 'ChaveAcesso').text = str(consulta.chave_acesso)
if consulta.data_inicial and consulta.data_final:
etree.SubElement(
raiz, 'DataEmissaoInicial').text = consulta.data_inicial.strftime("%Y-%m-%d")
etree.SubElement(
raiz, 'DataEmissaoFinal').text = consulta.data_final.strftime("%Y-%m-%d")
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:29,代码来源:serializacao_consulta.py
示例12: _cabecalho_soap
def _cabecalho_soap(self):
u"""Monta o XML do cabeçalho da requisição SOAP"""
raiz = etree.Element('cabecMsg', xmlns=NAMESPACE_NFE, versao="1.02")
etree.SubElement(raiz, 'versaoDados').text = self._versao
return etree.tostring(raiz, encoding='utf-8', xml_declaration=True)
开发者ID:IvanSingular,项目名称:PyNFe,代码行数:7,代码来源:comunicacao.py
示例13: _serializar_cliente
def _serializar_cliente(self, cliente, tag_raiz='dest', retorna_string=True):
raiz = etree.Element(tag_raiz)
# Dados do cliente
etree.SubElement(raiz, cliente.tipo_documento).text = so_numeros(cliente.numero_documento)
etree.SubElement(raiz, 'xNome').text = cliente.razao_social
etree.SubElement(raiz, 'IE').text = cliente.inscricao_estadual
# Endereço
endereco = etree.SubElement(raiz, 'enderDest')
etree.SubElement(endereco, 'xLgr').text = cliente.endereco_logradouro
etree.SubElement(endereco, 'nro').text = cliente.endereco_numero
etree.SubElement(endereco, 'xCpl').text = cliente.endereco_complemento
etree.SubElement(endereco, 'xBairro').text = cliente.endereco_bairro
etree.SubElement(endereco, 'cMun').text = cliente.endereco_municipio
etree.SubElement(endereco, 'xMun').text = obter_municipio_por_codigo(
cliente.endereco_municipio, cliente.endereco_uf,
)
etree.SubElement(endereco, 'UF').text = cliente.endereco_uf
etree.SubElement(endereco, 'CEP').text = so_numeros(cliente.endereco_cep)
etree.SubElement(endereco, 'cPais').text = cliente.endereco_pais
etree.SubElement(endereco, 'xPais').text = obter_pais_por_codigo(cliente.endereco_pais)
etree.SubElement(endereco, 'fone').text = cliente.endereco_telefone
if retorna_string:
return etree.tostring(raiz, pretty_print=True)
else:
return raiz
开发者ID:danielgoncalves,项目名称:PyNFe,代码行数:28,代码来源:serializacao.py
示例14: exportar
def exportar(self, destino=None, retorna_string=False, limpar=True, **kwargs):
"""Gera o(s) arquivo(s) de Nota Fiscal eletronica no padrao oficial da SEFAZ
e Receita Federal, para ser(em) enviado(s) para o webservice ou para ser(em)
armazenado(s) em cache local.
@param destino -
@param retorna_string - Retorna uma string para debug.
@param limpar - Limpa a fonte de dados para não gerar xml com dados duplicados.
"""
try:
# No raiz do XML de saida
raiz = etree.Element("NFe", xmlns=NAMESPACE_NFE)
# Carrega lista de Notas Fiscais
notas_fiscais = self._fonte_dados.obter_lista(_classe=NotaFiscal, **kwargs)
for nf in notas_fiscais:
raiz.append(self._serializar_nota_fiscal(nf, retorna_string=False))
# Grupo de informaçoes suplementares NT2015.002
# Somente para NFC-e
# if nf.modelo == 65:
# info = etree.Element('infNFeSupl')
# etree.SubElement(info, 'qrCode').text = ''
# raiz.append(info)
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=False)
else:
return raiz
except Exception as e:
raise e
finally:
if limpar:
self._fonte_dados.limpar_dados()
开发者ID:arilsonsantos,项目名称:PyNFe,代码行数:33,代码来源:serializacao.py
示例15: _serializar_parametros_nfce
def _serializar_parametros_nfce(tag_raiz='NFCe', retorna_string=True):
def _serializar_contingencia(tag_raiz='OrdemContingencia',
retorna_string=True):
raiz = etree.Element(tag_raiz)
orderm = etree.SubElement(raiz, 'OrdemContingenciaItem')
etree.SubElement(orderm, 'OrdemContingenciaNFCe').text = '0'
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
# Parâmetros referente ao módulo NFC-e
raiz = etree.Element(tag_raiz)
etree.SubElement(
raiz, 'InutilizarAutomaticamenteDocumentosRejeitados').text = 'N'
etree.SubElement(raiz, 'InutilizarPulosNumeracao').text = 'N'
etree.SubElement(raiz, 'FormaRetornoPDFIntegracao').text = '3'
etree.SubElement(raiz, 'FormaRetornoXMLIntegracao').text = '3'
etree.SubElement(raiz, 'UltimoNSU').text = '000000000000000'
etree.SubElement(raiz, 'IDTokenCscSEFAZ').text = empresa.token
etree.SubElement(raiz, 'CscSEFAZ').text = empresa.csc
etree.SubElement(raiz, 'PossuiLeituraX').text = 'S'
etree.SubElement(raiz, 'PossuiGeracaoRelatorios').text = 'S'
raiz.append(_serializar_contingencia(retorna_string=False))
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:33,代码来源:cadastro_nova_empresa.py
示例16: exportar
def exportar(self, destino=None, retorna_string=False, limpar=True, **kwargs):
"""Gera o(s) arquivo(s) de Cancelamento Nota Fiscal eletronica
no padrao oficial da migrate, invocity
@param destino -
@param retorna_string - Retorna uma string para debug.
@param limpar - Limpa a fonte de dados para não gerar xml com dados duplicados.
"""
try:
# Carrega lista de Notas Fiscais
eventos = self._fonte_dados.obter_lista(_classe=EventoCancelarNotaMigrate,
**kwargs)
for evento in eventos:
raiz = self._serializar_evento(evento, retorna_string=False)
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=False)
else:
return raiz
except Exception as e:
raise e
finally:
if limpar:
self._fonte_dados.limpar_dados()
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:25,代码来源:cancelamento_migrate.py
示例17: _serializar_emitente
def _serializar_emitente(self, emitente, tag_raiz="emit", retorna_string=True):
raiz = etree.Element(tag_raiz)
# Dados do emitente
etree.SubElement(raiz, "CNPJ").text = so_numeros(emitente.cnpj)
etree.SubElement(raiz, "xNome").text = emitente.razao_social
etree.SubElement(raiz, "xFant").text = emitente.nome_fantasia
etree.SubElement(raiz, "IE").text = emitente.inscricao_estadual
# Endereço
endereco = etree.SubElement(raiz, "enderEmit")
etree.SubElement(endereco, "xLgr").text = emitente.endereco_logradouro
etree.SubElement(endereco, "nro").text = emitente.endereco_numero
etree.SubElement(endereco, "xCpl").text = emitente.endereco_complemento
etree.SubElement(endereco, "xBairro").text = emitente.endereco_bairro
etree.SubElement(endereco, "cMun").text = emitente.endereco_municipio
etree.SubElement(endereco, "xMun").text = obter_municipio_por_codigo(
emitente.endereco_municipio, emitente.endereco_uf
)
etree.SubElement(endereco, "UF").text = emitente.endereco_uf
etree.SubElement(endereco, "CEP").text = so_numeros(emitente.endereco_cep)
etree.SubElement(endereco, "cPais").text = emitente.endereco_pais
etree.SubElement(endereco, "xPais").text = obter_pais_por_codigo(emitente.endereco_pais)
etree.SubElement(endereco, "fone").text = emitente.endereco_telefone
if retorna_string:
return etree.tostring(raiz, pretty_print=True)
else:
return raiz
开发者ID:infabinho,项目名称:PyNFe,代码行数:29,代码来源:serializacao.py
示例18: _serializar_parametros
def _serializar_parametros(self, empresa, tag_raiz='Parametros', retorna_string=True):
def _serializar_parametros_nfce(tag_raiz='NFCe', retorna_string=True):
def _serializar_contingencia(tag_raiz='OrdemContingencia',
retorna_string=True):
raiz = etree.Element(tag_raiz)
orderm = etree.SubElement(raiz, 'OrdemContingenciaItem')
etree.SubElement(orderm, 'OrdemContingenciaNFCe').text = '0'
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
# Parâmetros referente ao módulo NFC-e
raiz = etree.Element(tag_raiz)
etree.SubElement(
raiz, 'InutilizarAutomaticamenteDocumentosRejeitados').text = 'N'
etree.SubElement(raiz, 'InutilizarPulosNumeracao').text = 'N'
etree.SubElement(raiz, 'FormaRetornoPDFIntegracao').text = '3'
etree.SubElement(raiz, 'FormaRetornoXMLIntegracao').text = '3'
etree.SubElement(raiz, 'UltimoNSU').text = '000000000000000'
etree.SubElement(raiz, 'IDTokenCscSEFAZ').text = empresa.token
etree.SubElement(raiz, 'CscSEFAZ').text = empresa.csc
etree.SubElement(raiz, 'PossuiLeituraX').text = 'S'
etree.SubElement(raiz, 'PossuiGeracaoRelatorios').text = 'S'
raiz.append(_serializar_contingencia(retorna_string=False))
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
raiz = etree.Element(tag_raiz)
etree.SubElement(raiz, 'OrientDANFE').text = '1'
etree.SubElement(raiz, 'InfCplVerso').text = 'N'
etree.SubElement(raiz, 'DhImpressao').text = 'S'
etree.SubElement(raiz, 'ImpTributos').text = '3'
etree.SubElement(raiz, 'DescICMS').text = 'N'
etree.SubElement(raiz, 'EnviarPDFEmail').text = 'N'
etree.SubElement(raiz, 'EnviarXMLEmail').text = 'N'
etree.SubElement(raiz, 'ReaprovDocsRejeitados').text = 'N'
etree.SubElement(raiz, 'InutPulosNumeracao').text = 'N'
etree.SubElement(raiz, 'IdTokenNFCe').text = empresa.token
etree.SubElement(raiz, 'CSCNFCe').text = empresa.csc
# NFC-e
raiz.append(_serializar_parametros_nfce(retorna_string=False))
if retorna_string:
return etree.tostring(raiz, encoding="unicode", pretty_print=True)
else:
return raiz
开发者ID:cesarbruschetta,项目名称:PyNFe,代码行数:56,代码来源:cadastro_nova_empresa.py
示例19: nfeInutilizacaoNF
def nfeInutilizacaoNF(self, raiz):
data_hora = datetime.datetime.now().strftime('%Y-%m-%dT%H:%M:%S')
ret = etree.Element('retInutNFe')
etree.SubElement(ret, 'versao').text = '1.00' # FIXME
xml_dados = raiz.getroot().getchildren()[0].getchildren()[0].getchildren()[1].text
xml = etree.tostring(ret, encoding='utf-8', xml_declaration=True)
self.write(xml)
开发者ID:danielgoncalves,项目名称:PyNFe,代码行数:10,代码来源:run_fake_soap_server.py
示例20: autorizacao
def autorizacao(self, nota):
# url do serviço
url = self._get_url()
if self.autorizador == 'BETHA':
# xml
xml = etree.tostring(nota, encoding='unicode', pretty_print=False)
# comunica via wsdl
return self._post(url, xml, 'gerar')
else:
raise Exception('Este método só esta implementado no autorizador betha.')
开发者ID:leotada,项目名称:PyNFe,代码行数:10,代码来源:comunicacao.py
注:本文中的pynfe.utils.etree.tostring函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论