problema com cod_ver do componente acbr
estou montando a opção para emitir sped fiscal em um sistema , mas esta dando erro nesta opção não reconhece o layalt do arquivo, observei nos arquivos ja montados que o codigo novo e 005 e o componente so tem ate o 004 como resolvo este problema
Edson Melo
Curtidas 0
Respostas
Joel Rodrigues
11/06/2012
Não existe nenhuma versão mais atual do componente?
GOSTEI 0
Silvio Costa
11/06/2012
Bom dia Edson, sou estagiário em uma empresa e estamos desenvolvendo um ERP próprio, batemos cabeça nessa parte também, mas conseguimos solucionar, da seguinte forma, é só fazer duas alterações:
Primeira alteração, alterar o cod_ver do gerador do speed (onde chamo o componente), segue o trecho do código
Segunda alteração, alterar a classe ACBrEFDBloco_0_Class(você pode ir direto para ela clicando, com o ctrl pressionado, no Registro0000New, adicionando a versão, segue um trecho do código:
Espero ter ajudo, estou começando nesse mundo do desenvolvimento e ainda tenho muito que aprender.
Primeira alteração, alterar o cod_ver do gerador do speed (onde chamo o componente), segue o trecho do código
with ACBrSpedFiscal1.Bloco_0 do
begin
// Dados da Empresa
with Registro0000New do
begin
// Mudamos o codigo da versão para a 104
COD_VER := vlVersao104;
if rdgtipoenvio.ItemIndex=0 then
COD_FIN := raOriginal
else
COD_FIN := raSubstituto;
NOME := trim(DmPrincipal.qryempresarazaosocial.AsString);
novocnpj := StringReplace(DmPrincipal.qryempresacnpj.AsString,-,,[rfReplaceAll]);Segunda alteração, alterar a classe ACBrEFDBloco_0_Class(você pode ir direto para ela clicando, com o ctrl pressionado, no Registro0000New, adicionando a versão, segue um trecho do código:
procedure TBloco_0.WriteRegistro0000 ;
var
strIND_PERFIL: AnsiString;
strCOD_VER: AnsiString;
begin
if Assigned(Registro0000) then
begin
with Registro0000 do
begin
case IND_PERFIL of
pfPerfilA: strIND_PERFIL := A;
pfPerfilB: strIND_PERFIL := B;
pfPerfilC: strIND_PERFIL := C;
end;
case COD_VER of
vlVersao100: strCOD_VER := 001;
vlVersao101: strCOD_VER := 002;
vlVersao102: strCOD_VER := 003;
vlVersao103: strCOD_VER := 004;
//Adicionado a versão
vlVersao104: strCOD_VER := 005;Espero ter ajudo, estou começando nesse mundo do desenvolvimento e ainda tenho muito que aprender.
GOSTEI 0
Silvio Costa
11/06/2012
bom dia edson, sou estagiário em uma empresa e estamos desenvolvendo um erp próprio, batemos cabeça nessa parte também, mas conseguimos solucionar, da seguinte forma, é só fazer duas alterações:
primeira alteração, alterar o cod_ver do gerador do speed (onde chamo o componente), segue o trecho do código
with acbrspedfiscal1.bloco_0 do
begin
// dados da empresa
with registro0000new do
begin
// mudamos o codigo da versão para a 104
cod_ver := vlversao104;
if rdgtipoenvio.itemindex=0 then
cod_fin := raoriginal
else
cod_fin := rasubstituto;
nome := trim(dmprincipal.qryempresarazaosocial.asstring);
novocnpj := stringreplace(dmprincipal.qryempresacnpj.asstring,-,,[rfreplaceall]);
segunda alteração, adicionando a versão a classe acbrefdbloco_0_class(você pode ir direto para ela clicando, com o ctrl pressionado, no registro0000new), segue um trecho do código:
procedure tbloco_0.writeregistro0000 ;
var
strind_perfil: ansistring;
strcod_ver: ansistring;
begin
if assigned(registro0000) then
begin
with registro0000 do
begin
case ind_perfil of
pfperfila: strind_perfil := a;
pfperfilb: strind_perfil := b;
pfperfilc: strind_perfil := c;
end;
case cod_ver of
vlversao100: strcod_ver := 001;
vlversao101: strcod_ver := 002;
vlversao102: strcod_ver := 003;
vlversao103: strcod_ver := 004;
//adicionado a versão
vlversao104: strcod_ver := 005;
Agora irá funcionar.
Espero ter ajudado, estou começando nesse mundo do desenvolvimento e ainda tenho muito que aprender.
primeira alteração, alterar o cod_ver do gerador do speed (onde chamo o componente), segue o trecho do código
with acbrspedfiscal1.bloco_0 do
begin
// dados da empresa
with registro0000new do
begin
// mudamos o codigo da versão para a 104
cod_ver := vlversao104;
if rdgtipoenvio.itemindex=0 then
cod_fin := raoriginal
else
cod_fin := rasubstituto;
nome := trim(dmprincipal.qryempresarazaosocial.asstring);
novocnpj := stringreplace(dmprincipal.qryempresacnpj.asstring,-,,[rfreplaceall]);
segunda alteração, adicionando a versão a classe acbrefdbloco_0_class(você pode ir direto para ela clicando, com o ctrl pressionado, no registro0000new), segue um trecho do código:
procedure tbloco_0.writeregistro0000 ;
var
strind_perfil: ansistring;
strcod_ver: ansistring;
begin
if assigned(registro0000) then
begin
with registro0000 do
begin
case ind_perfil of
pfperfila: strind_perfil := a;
pfperfilb: strind_perfil := b;
pfperfilc: strind_perfil := c;
end;
case cod_ver of
vlversao100: strcod_ver := 001;
vlversao101: strcod_ver := 002;
vlversao102: strcod_ver := 003;
vlversao103: strcod_ver := 004;
//adicionado a versão
vlversao104: strcod_ver := 005;
Agora irá funcionar.
Espero ter ajudado, estou começando nesse mundo do desenvolvimento e ainda tenho muito que aprender.
GOSTEI 0
Edson Melo
11/06/2012
OLA SILVIO CESAR, OBRIGADO, PELA DICA FUNCIONOU, MAS VOCE ESQUECEU DE AVISAR QUE TEM UMA 3º MUDANCA A SER FEITA.
PRA TE FALAR A VERDADE, OO QUE VOCE PROPOS EU JA TINHA TENTATO, MAS NÃO FUNCIONOU, POR CAUSA DESTA 3º ALTERAÇÃO,
COM SUS DICA PAREI E PENSEI, ATE DESCOBRIR ESTA OUTRA NO ARQUIVO ACBREFD_BLOCOS, TENHO QUE DECLARAR ALI ESTA NOVA OPÇÃO
MAS MUITO OBRIGADO
PRA TE FALAR A VERDADE, OO QUE VOCE PROPOS EU JA TINHA TENTATO, MAS NÃO FUNCIONOU, POR CAUSA DESTA 3º ALTERAÇÃO,
COM SUS DICA PAREI E PENSEI, ATE DESCOBRIR ESTA OUTRA NO ARQUIVO ACBREFD_BLOCOS, TENHO QUE DECLARAR ALI ESTA NOVA OPÇÃO
MAS MUITO OBRIGADO
GOSTEI 0
Jeová D´avila
11/06/2012
Edson, você poderia dar um exemplo, pois estou parado neste ponto do cod_ver.
Grato,
Jeová
Grato,
Jeová
GOSTEI 0
Jeová D´avila
11/06/2012
OK, para os iniciantes (como eu) tem que declarar o ACBrEFDBlocos no Uses.
Grato,
Jeová
Grato,
Jeová
GOSTEI 0