Ir para conteúdo
  • Cadastre-se

dev botao

S-2230 - Correção


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

Recommended Posts

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!!

Link para o comentário
Compartilhar em outros sites

  • Consultores

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 / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

@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

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia Paulo,

Muito obrigado pela colaboração, ainda hoje vou analisar e estando tudo correto vou enviar para o repositório.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois ...
  • Este tópico foi criado há 2093 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.