NILSON BRASIL
-
Total de ítens
4 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por NILSON BRASIL
-
-
with fsH.ACBrPAF1.PAF_N do begin RegistroN1.RAZAOSOCIAL := fsH.ACBrAAC1.IdentPAF.Empresa.RazaoSocial; RegistroN1.UF := fsH.ACBrAAC1.IdentPAF.Empresa.Uf; RegistroN1.CNPJ := fsH.ACBrAAC1.IdentPAF.Empresa.CNPJ; RegistroN1.IE := fsH.ACBrAAC1.IdentPAF.Empresa.IE; RegistroN1.IM := fsH.ACBrAAC1.IdentPAF.Empresa.IM; RegistroN2.NOME := fsH.ACBrAAC1.IdentPAF.Paf.Nome; RegistroN2.VERSAO := fsH.ACBrAAC1.IdentPAF.Paf.Versao; RegistroN2.LAUDO := fsH.ACBrAAC1.IdentPAF.NumeroLaudo; end; with fsH.ACBrAAC1.IdentPAF.ArquivoListaAutenticados do begin Nome := 'ListaMD5.txt'; MD5 := fsH.ACBrEAD1.MD5FromFile('c:\infobrasil\infopdv\exec\listamd5.txt'); end; fsH.ACBrPAF1.Path :='C:\INFOBRASIL\INFOPDV\EXEC\'; fsH.ACBrPAF1.SaveFileTXT_N('PAF_LISTAMD5.TXT'); fsH.ACBrAAC1.SalvarArquivo;
pq as dlls de impressora fiscal que tem mais 13 letras gera o md5 ( todo com 0 ). notei que gera exception.
-
ESTOU HOMOLOGANDO E NA LISTA DE PARAMETRO NÃO TA SAINDO
O PARAMETRO ACBrAAC1.IdentPAF.Paf.TransportePassageiro
-
TENHO ESSAs PROCEDUREs
CREATE OR ALTER PROCEDURE SET_CONTEXTO (
ib_chave integer)
as
BEGIN
RDB$SET_CONTEXT('USER_SESSION', 'IB_KEY', :IB_CHAVE);
END
CREATE OR ALTER PROCEDURE VENDAS_CALC_HASH (
loj_codigo integer,
ven_numero integer)
returns (
ven_hash bigint)
as
begin
select hash( RDB$GET_CONTEXT('USER_SESSION', 'IB_KEY' )
||loj_codigo
||ven_coo
||ven_ccf
||ven_totalbruto
||ven_totaldesc
||ven_totalcanc
||ven_percdesc
||ven_totalliquido
||ven_quant
||ven_totalacresc
)
from
vendas ven
where ven.loj_codigo = :loj_codigo and
ven_numero = :ven_numero
into
:ven_hash ;
suspend;
end
e tambem essa trigger
CREATE OR ALTER PROCEDURE VENDAS_CALC_HASH (
loj_codigo integer,
ven_numero integer)
returns (
ven_hash bigint)
as
begin
select hash( RDB$GET_CONTEXT('USER_SESSION', 'IB_KEY' )
||loj_codigo
||ven_coo
||ven_ccf
||ven_totalbruto
||ven_totaldesc
||ven_totalcanc
||ven_percdesc
||ven_totalliquido
||ven_quant
||ven_totalacresc
)
from
vendas ven
where ven.loj_codigo = :loj_codigo and
ven_numero = :ven_numero
into
:ven_hash ;
suspend;
end
entao executa essa procedure via delphi, EXECUTE PROCEDURE SET_CONTEXTO(1010)
e não gera o hash no firebird, o q estou fazendo de errado. obg. nilson brasil
ACBrPAF Geranda md5 da dll DarumaFrameWork (0000000000000000
em ACBrDiversos
Postado
NÃO ESTOU CARREGANDO NENHUMA DLL PELO SISTEMA. SERÁ QUE PODE SER AS CHAVE PRIVADA/PUBLICA
ESTOU SOMENTE COM ESSE PROBLEMA NA AQUI NA POLING.
OBRIGADO
na procedure abaixo, passei na chave 6 letras, será q tem que ser 4.
procedure TfsH.ACBrAAC1GetChave(var Chave: String); <- AQUI EU PASSEI UMA CHAVE COM 6 LETRAS.
no O eECFc está validando beleza a chave
DEIXA EU TE PASSA O MEU CÓDIGO:
function TfPrincipal.GeraMD5: string;
var
Arquivo : TextFile;
NomeArq, ArqTexto, aMD5: string;
F : TSearchRec;
Ret : Integer;
begin
Result := '';
try
// Apaga arquivo anterior
ArqTexto := 'Listamd5.txt';
if FileExists(ArqTexto) then
DeleteFile(ArqTexto);
// cria o arquivo TXT na mesma pasta do sistema
AssignFile(Arquivo, ArqTexto);
ReWrite(Arquivo);
// lista todos os arquivo exe da pasta do aplicativo e gera o MF5
Ret := FindFirst(ExtractFilePath(Application.ExeName)+'\*.exe', faAnyFile, F);
try
while Ret=0 do
begin
if F.Attr and faDirectory<>faDirectory then
begin
NomeArq := ExtractFilePath(Application.ExeName)+F.Name;
aMD5 := MD5Print(MD5File(NomeArq));
WriteLn(Arquivo, NomeArq+' - '+aMD5);
end;
Ret := FindNext(F);
end; //verificar com homologador
Ret := FindFirst(ExtractFilePath(Application.ExeName)+'\*.dll', faAnyFile, F);
while Ret=0 do
begin
if F.Attr and faDirectory<>faDirectory then
begin
if (UpperCase(F.Name)= uppercase('DarumaFrameWork.dll')) or
(UpperCase(F.Name)= uppercase('LeituraMFDBin.dll')) or
(UpperCase(F.Name)= uppercase('lebin.dll')) or
(UpperCase(F.Name)= uppercase('BemaFI32.dll')) or
(UpperCase(F.Name)= uppercase('Bematech.dll')) or
(UpperCase(F.Name)= uppercase('BemaMFD2.dll')) or
(UpperCase(F.Name)= uppercase('BemaMFD.dll')) or
(UpperCase(F.Name)= uppercase('elgin.dll')) or
(UpperCase(F.Name)= uppercase('InterfaceEpson.dll')) or
(UpperCase(F.Name)= uppercase('CONVECF.dll')) or
(UpperCase(F.Name)= uppercase('DLLG2.dll')) or
(UpperCase(F.Name)= uppercase('sign_bema.dll')) or
(UpperCase(F.Name)= uppercase('MSJET35.dll')) then
begin
NomeArq := ExtractFilePath(Application.ExeName)+F.Name;
aMD5 := MD5Print(MD5File(NomeArq));
WriteLn(Arquivo, NomeArq+' - '+aMD5);
end;
end;
Ret := FindNext(F);
end;
finally
FindClose(F);
end;
Closefile(Arquivo);
// gera MD5 do arquivo texto
finally
cMD5txt := MD5Print(MD5File(ArqTexto));
end;
end;
procedure TfPrincipal.ChamaMD5;
var
F : TSearchRec;
Ret : Integer;
begin
GeraMD5;
with fsH.ACBrAAC1.IdentPAF.OutrosArquivos.New do
begin
Nome := 'c:\infobrasil\infopdv\exec\infopdv.exe';
MD5 := MD5Print(MD5File(Nome));
end;
Ret := FindFirst(ExtractFilePath(Application.ExeName)+'\*.dll', faAnyFile, F);
while Ret=0 do
begin
if F.Attr and faDirectory<>faDirectory then
begin
if (UpperCase(F.Name)= uppercase('lebin.dll')) or
(UpperCase(F.Name)= uppercase('LeituraMFDBin.dll')) or
(UpperCase(F.Name)= uppercase('DarumaFrameWork.dll')) or
(UpperCase(F.Name)= uppercase('BemaFI32.dll')) or
(UpperCase(F.Name)= uppercase('Bematech.dll')) or
(UpperCase(F.Name)= uppercase('BemaMFD2.dll')) or
(UpperCase(F.Name)= uppercase('BemaMFD.dll')) or
(UpperCase(F.Name)= uppercase('elgin.dll')) or
(UpperCase(F.Name)= uppercase('InterfaceEpson.dll')) or
(UpperCase(F.Name)= uppercase('CONVECF.dll')) or
(UpperCase(F.Name)= uppercase('DLLG2.dll')) or
(UpperCase(F.Name)= uppercase('sign_bema.dll')) or
(UpperCase(F.Name)= uppercase('MSJET35.dll')) then
begin
with fsH.ACBrAAC1.IdentPAF.OutrosArquivos.New do
begin
Nome := ExtractFilePath(Application.ExeName)+F.Name;
end;
end;
end;
Ret := FindNext(F);
end;
with fsH.ACBrPAF1.PAF_N do
begin
RegistroN1.RAZAOSOCIAL := fsH.ACBrAAC1.IdentPAF.Empresa.RazaoSocial;
RegistroN1.UF := fsH.ACBrAAC1.IdentPAF.Empresa.Uf;
RegistroN1.CNPJ := fsH.ACBrAAC1.IdentPAF.Empresa.CNPJ;
RegistroN1.IE := fsH.ACBrAAC1.IdentPAF.Empresa.IE;
RegistroN1.IM := fsH.ACBrAAC1.IdentPAF.Empresa.IM;
RegistroN2.NOME := fsH.ACBrAAC1.IdentPAF.Paf.Nome;
RegistroN2.VERSAO := fsH.ACBrAAC1.IdentPAF.Paf.Versao;
RegistroN2.LAUDO := fsH.ACBrAAC1.IdentPAF.NumeroLaudo;
end;
with fsH.ACBrAAC1.IdentPAF.ArquivoListaAutenticados do
begin
Nome := 'ListaMD5.txt';
MD5 := fsH.ACBrEAD1.MD5FromFile('c:\infobrasil\infopdv\exec\listamd5.txt');
end;
fsH.ACBrPAF1.Path :='C:\INFOBRASIL\INFOPDV\EXEC\';
fsH.ACBrPAF1.SaveFileTXT_N('PAF_LISTAMD5.TXT');
fsH.ACBrAAC1.SalvarArquivo;