Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2311 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia!

image.thumb.png.3c3b17c9e97cd7c8514195b73e71cec5.png

Conforme layout, o campo "ufOc" referente ao Emitente do Atestado Médico (Evento S-2230) não é de preenchimento obrigatório.

Porém, hoje, no componente não tem uma forma de não enviar esse campo, tendo em vista que se não passar valor nenhum para ele, o campo é atribuído com o primeiro item da lista, no caso, "AC".

unit: pcesGerador

procedure TeSocialEvento.GerarEmitente(pEmitente: TEmitente);
begin
  Gerador.wGrupo('emitente');

  Gerador.wCampo(tcStr, '', 'nmEmit', 1, 70, 1, pEmitente.nmEmit);
  Gerador.wCampo(tcStr, '', 'ideOC',  1,  1, 1, eSIdeOCToStr(pEmitente.ideOC));
  Gerador.wCampo(tcStr, '', 'nrOc',   1, 14, 1, pEmitente.nrOc);
  Gerador.wCampo(tcStr, '', 'ufOC',   2,  2, 0, eSufToStr(pEmitente.ufOC));

  Gerador.wGrupo('/emitente');
end;

@Italo Jurisato Junior qual seria a melhor forma de corrigirmos?

Obrigado!!

  • Consultores
Postado

Bom dia Paulo,

Eu não sei porque no eSocial foi criado o tipo e consequentemente a função para informar a UF.

Na NF-e, NFC-e, CT-e, MDF-e, BP-e e NFS-e os campos referentes a UF são todos String.

Não se em todos os Schemas que validam os eventos do eSocial, mas alguns que vi no que diz respeito a UF possui a checagem das siglas que são aceitas.

Logo se alterarmos os campos UF para string, ao atribuir uma sigla invalida o Schema vai pegar e acusar o erro.

Na minha opinião devemos alterar os campos UF (opcionais) para o tipo string como é o caso desse e consequentemente remover a função existente na linha que você colocou em negrito.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • 2 semanas depois ...
Postado

@Italo Jurisato Junior

Bom dia!

Fiz a alteração no GerarEmitente conforme você orientou, e de fato, ao passar uma UF inválida ('XX', por exemplo) o componente acusa o erro no momento da validação do schema, ou seja, não tem problema de mudar o campo para string.

 

Fizemos uma outra correção simples no grupo "Remuneração":

image.png.b62ad35abce601300b98652122cb6a31.png

O componente preenchia apenas para o código 7, sendo que para o código 6 também deve ser preenchido.

if (eSUndSalFixoToStr(pRemuneracao.UndSalFixo) = '6') or
     (eSUndSalFixoToStr(pRemuneracao.UndSalFixo) = '7') then
    Gerador.wCampo(tcStr, '', 'dscSalVar', 0, 255, 0, pRemuneracao.DscSalVar);

 

Seguem as units anexo!

pcesGerador.pas

pcesS2210.pas

pcesS2230.pas

pcesCommon.pas

  • 4 semanas depois ...
  • Este tópico foi criado há 2311 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.