primeiro o texto é criptografado com base64 use essa função para descriptografar:
funcao string.dec_hex(str) tente(tipo(str)=='string',"\nErro: espera-se `string' em vez de: " .. tipo(str) ); se str == '' entao retorne ''; fim local str_formate, str_car = string.formate,string.car; local tmp = ''; local hh,c; para i=1, #str, 2 inicio //de 1 até tamanho da string, de dois em dois; hh = str:corte(i,i+1); c = convnumero(string.formate("0x%s",hh)); //transforma o hexa em dec ex.: 'ff' em 255 tmp = tmp .. str_car(c); fim retorne tmp; fim
segundo o token é garado usando o código resumido 'hmac' com encriptação md5 e uma senha de três dígitos:
funcao CodigoResumido(crip,senha,valor)
local a = es.pabra('echo -n "'..valor..'" | openssl '..crip..' -hmac "'..senha..'"')
local b = a:leia("*t") retorne b:separe('=(.-)[\r\n].*$'):apare()
fim
'SELECT * FROM sis_notas where token = "..CodigoResumido('md5','cli',v.Id)..";'
cada tipo de nota tem uma chave, não conheço todas, mas segue algumas: 'cli' = cliente, 'fat'=fatura, 'sup'= suporte
talbez dê pra portar para o PHP usando hmac, senão rode no terminal mesmo.
Olá Rafael, meus parabéns pela iniciativa. Eu estou precisando muito recuperar as notas do BD, mas não entendo nada de Prisma, você tentou portar para php?
XML para Nota Fiscal Eletronica!" em MK-AUTH Pedro Filho, meu contador está me pedindo um arquivo xml ou outro formato , para lançamento das NFE. Atualmente ele está fazendo manualmente, mas segundo ele os outros clientes enviam esse arquivo para lançar automaticamente. Pela quantidade grande de notas está sendo trabalhoso e tomando muito tempo ( querendo aumentar os honorários...). o contador utiliza o sistema da TRON. Aguardando retorno o mais Rápido Possível.
Poderia publicar aqui no fórum a forma que conseguiu?
Att, Aleff Meykson
Contato: 82 9 8748-1848
Marcos Flávio Batista disse:
Sim, após quebrar muito a cabeça.
Adeilton Junior disse:
Alguem conseguiu?
Helder Neres > Marcos Flávio Batista5 de Janeiro de 2022 as 8:37am
Prezado Marcos, bom dia.
Estou tentando fazer a mesma conversão, para inserir e ler dados nessa tabela de notas, mas não estou conseguindo converter o texto para um string legível.
Pode informar como você conseguiu? O código converte de hex para decimal e depois gera um string, mas eu não consegui gerar a string a partir do banco, aplicando esses procedimentos.
Respostas
Pedro achei a solução, quero saber se posso postar aqui o código fonte da função?
posta ai, se alguém precisar no futuro...
Rafael Alves Lemos disse:
O código é feito em prisma: http://linguagemprisma.br4.biz/prisma_forum/index.php
primeiro o texto é criptografado com base64 use essa função para descriptografar:
funcao string.dec_hex(str)
tente(tipo(str)=='string',"\nErro: espera-se `string' em vez de: " .. tipo(str) );
se str == '' entao retorne ''; fim
local str_formate, str_car = string.formate,string.car;
local tmp = '';
local hh,c;
para i=1, #str, 2 inicio //de 1 até tamanho da string, de dois em dois;
hh = str:corte(i,i+1);
c = convnumero(string.formate("0x%s",hh)); //transforma o hexa em dec ex.: 'ff' em 255
tmp = tmp .. str_car(c);
fim
retorne tmp;
fim
segundo o token é garado usando o código resumido 'hmac' com encriptação md5 e uma senha de três dígitos:
funcao CodigoResumido(crip,senha,valor)
local a = es.pabra('echo -n "'..valor..'" | openssl '..crip..' -hmac "'..senha..'"')
local b = a:leia("*t") retorne b:separe('=(.-)[\r\n].*$'):apare()
fim
'SELECT * FROM sis_notas where token = "..CodigoResumido('md5','cli',v.Id)..";'
cada tipo de nota tem uma chave, não conheço todas, mas segue algumas: 'cli' = cliente, 'fat'=fatura, 'sup'= suporte
talbez dê pra portar para o PHP usando hmac, senão rode no terminal mesmo.
Captura de tela de 2018-01-08 03-27-59.png
Olá Rafael, meus parabéns pela iniciativa. Eu estou precisando muito recuperar as notas do BD, mas não entendo nada de Prisma, você tentou portar para php?
Boa Noite!
XML para Nota Fiscal Eletronica!" em MK-AUTH
Pedro Filho, meu contador está me pedindo um arquivo xml ou outro formato , para lançamento das NFE. Atualmente ele está fazendo manualmente, mas segundo ele os outros clientes enviam esse arquivo para lançar automaticamente. Pela quantidade grande de notas está sendo trabalhoso e tomando muito tempo ( querendo aumentar os honorários...). o contador utiliza o sistema da TRON. Aguardando retorno o mais Rápido Possível.
Alguem conseguiu?
Sim, após quebrar muito a cabeça.
Adeilton Junior disse:
Boa Noite Flávio Batista,
Poderia publicar aqui no fórum a forma que conseguiu?
Att, Aleff Meykson
Contato: 82 9 8748-1848
Marcos Flávio Batista disse:
Prezado Marcos, bom dia.
Estou tentando fazer a mesma conversão, para inserir e ler dados nessa tabela de notas, mas não estou conseguindo converter o texto para um string legível.
Pode informar como você conseguiu? O código converte de hex para decimal e depois gera um string, mas eu não consegui gerar a string a partir do banco, aplicando esses procedimentos.