Jump to content

Embarcadero Conference 2019

22/10 - Visite o Stand do ACBr
Saiba mais

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Leandro Araújo

ANSWERED Registro E116: Diferença na função "StrToOrigemProcesso" e "OrigemProcessoToStr" para o campo "07 - IND_PROC".

Recommended Posts

Bom dia.

Tenho uma dúvida, com relação às funções "OrigemProcessoToStr" e "StrToOrigemProcesso" da unit "ACBrEFDBlocos".

No Guia Prático da EFD, versão 2.0.21/2.0.22 o campo "07 - IND_PROC" do Registro "E116" recebe como valores válidos [0, 1, 2, 9], mas tive um problema ao validar o arquivo pelo PVA e percebi que nas funções são tratados apenas os valores [1, 3, 9], vide os tipos opJusticaFederalopSecexRFB e opOutros.

 

// Enumeração para string
function OrigemProcessoToStr(AValue: TACBrOrigemProcesso): string;
begin
  if (AValue = opJusticaFederal) then
    Result := '1'
  else if (AValue = opSecexRFB) then
    Result := '3'
  else if (AValue = opOutros) then
    Result := '9'
  else
    Result := '';
end;

// string para enumeração
function StrToOrigemProcesso(const AValue: string): TACBrOrigemProcesso;
begin
  if AValue = '1' then
    Result := opJusticaFederal
  else if AValue = '3' then
    Result := opSecexRFB
  else if AValue = '9' then
    Result := opOutros
  else
    Result := opNenhum;
end;

/// Indicador da origem do processo
  TACBrOrigemProcesso = (opSefaz,            // 0 - Sefaz
                         opJusticaFederal,   // 1 - Justiça Federal
                         opJusticaEstadual,  // 2 - Justiça Estadual
                         opSecexRFB,         // 3 - Secex/RFB
                         opOutros,           // 9 - Outros
                         opNenhum           // Preencher vazio
                         );

Gostaria de saber se realmente são dessa forma as duas funções citadas ou se alguém teve também algum problema relacionado.

De momento vou fazer a conversão do valor a parte para não modificar fontes do ACBr.

Obrigado.


Leandro Araújo
Millenium Software
Fone: (66) 3419-4011
E-mail: [email protected]
Skype: leandromille

Share this post


Link to post
Share on other sites

Boa tarde @Vicente Carletto Scalfoni, legal!
Estava aguardando uma confirmação para enviar alterações.

No caso deixei da seguinte forma, tendo que colocar na uses a "pcnConversao" claro, não sei se estaria misturando as coisas, mas só pra poder usar as funções "EnumeradoToStr/StrToEnumerado":

// Valores Indicador Origem Processo
const
  TACBrOrigemProcessoStr: array [0 .. 5] of string = ('0', '1', '2', '3', '9', '');

// ...

function OrigemProcessoToStr(AValue: TACBrOrigemProcesso): string;
begin
  Result := EmptyStr;
  Result := EnumeradoToStr(AValue, TACBrOrigemProcessoStr, [opSefaz, opJusticaFederal, opJusticaEstadual, opSecexRFB, opOutros,
    opNenhum]);
end;

function StrToOrigemProcesso(const AValue: string): TACBrOrigemProcesso;
var
  WOk: Boolean;
begin
  Result := opNenhum;
  Result := StrToEnumerado(WOk, AValue, TACBrOrigemProcessoStr, [opSefaz, opJusticaFederal, opJusticaEstadual, opSecexRFB,
    opOutros, opNenhum]);
end;

Mas no caso da sua correção, você manteve o padrão que jé tem nas funções da "ACBrEFDBlocos".

Só uma pergunta, vi que anexou também o arquivo "ACBrEFDBloco_G_Class.pas", qual foi a correção feita nele?

Obrigado!


Leandro Araújo
Millenium Software
Fone: (66) 3419-4011
E-mail: [email protected]
Skype: leandromille

Share this post


Link to post
Share on other sites
3 minutos atrás, Vicente Carletto Scalfoni disse:

No "ACBrEFDBloco_G_Class.pas" alterei o "G110" para usar a função "MovimentoBensToStr" que incluir no "ACBrEFDBlocos".

Certo, entendi.
Não vou anexar nada então, no caso ficam as alterações que você enviou mesmo, que engloba tudo.

Obrigado.

Edited by Leandro Araújo
Incremento de informação

Leandro Araújo
Millenium Software
Fone: (66) 3419-4011
E-mail: [email protected]
Skype: leandromille

Share this post


Link to post
Share on other sites
6 horas atrás, [email protected] disse:

Tem subir isso para os fontes do repositório
@BigWings

Vou avaliar.

 

  • Like 2

[]'s

Consultor SAC ACBr

Elton
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.

Share this post


Link to post
Share on other sites

Enviado ao SVN com alguma correção na revisão: 15842

Favor avaliar e reportar qualquer problema.

 

Em 06/09/2018 at 17:08, Vicente Carletto Scalfoni disse:

Boa tarde,

Fiz os ajustes no fonte do ACBr, se algum admin puder analisar e publicar no SVN.

Segue em anexo

ACBrEFDBloco_G_Class.pas

ACBrEFDBlocos.pas

Obrigado.

  • Like 2

[]'s

Consultor SAC ACBr

Elton
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...