Ir para conteúdo
  • Cadastre-se

dev botao

S2220 erro quando não informado a tag respMonit


Ver Solução Respondido por EMBarbosa,
  • Este tópico foi criado há 767 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Unit pcesS2220 método GerarRespMonit.

A tag RespMonit quando não esta informada ela não pode ser gerada senão ao validar o XML acusa erro.

image.png.2fad0a80da2d7486a8833bd6981bdfc7.png

image.png.2b77be24e97e371269214f6d0b0bce3e.png


Essa tag de acordo com o manual não é obrigatória.

Versão que estou usando é veS01_00_00 com os esquemas atualizados.

 

 

Editado por DouglasGnutzmann
Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

é vi isso tambem. minha sugestão de correção é a seguinte:

1) em  TRespMonit = class adiconar o método:

function IsEmpty: Boolean; 

function TRespMonit.IsEmpty: Boolean;
begin
  Result := (Trim(FCPFResp)+Trim(FNMResp)+Trim(FNRCRM)+Trim(FUFCRM)) = EmptyStr;
end;

2 em TevtMonit.GerarRespMonit; fazer assim:

procedure TevtMonit.GerarRespMonit;
begin
  if not self.exMedOcup.RespMonit.IsEmpty then
  begin
    Gerador.wGrupo('respMonit');
    if Trim(self.exMedOcup.RespMonit.cpfResp) <> '' then
      Gerador.wCampo(tcStr, '', 'cpfResp', 11, 11, 0, self.exMedOcup.RespMonit.cpfResp);
    Gerador.wCampo(tcStr, '', 'nmResp', 1, 70, 1, self.exMedOcup.RespMonit.nmResp);
    Gerador.wCampo(tcStr, '', 'nrCRM', 1, 8, 1, self.exMedOcup.RespMonit.nrCRM);
    Gerador.wCampo(tcStr, '', 'ufCRM', 2, 2, 1, self.exMedOcup.RespMonit.ufCRM);
    Gerador.wGrupo('/respMonit');
  end;
end;
 

 

Link para o comentário
Compartilhar em outros sites

Pessoal vou anexar aqui o patch das alterações que fiz relativos ao eSocial:

1) Evitar gerar a TAG não obrigatório de resultado do exame tpIndResult

tpIndResult = (irNormal, irAlterado, irEstavel, irAgravamento, irIndefinido=-1);

durante a implementação de cada um se configurar o resultado como irIndefinido a TAG do resultado do exame já não é apresentada. Acho que este deveria ser o valor padrão quando se gera um novo evento e adiciona um exame (mas eu não alterei os fontes para isso, apenas criei este novo tipo)

2) Quando o ASO é admissional geralmente o funcionário não possui matricula, logo não se pode gerar a TAG IdeVinculo. Como  o ACBR chamava um método genérico para esta TAG eu especializei para o método especifico da classe pcesS2220 e fiz os ajustes necessários.

procedure GerarIdeVinculo2220(pIdeVinculo: TIdeVinculo; pcodCateg: Boolean = True; pCessao: Boolean = False);

3) Não gerar a TAG RespMonit caso a empresa não tenha médico coordenador.

 procedure TevtMonit.GerarRespMonit;

deixei tudo comentado com meu nome tá simples de identificar, peço que ajustem no trunk se possível

PCNeSocial.patch

Editado por Marcos Barreto
Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa tarde.

Criamos uma task em nosso backlog para ser analisado em conjunto com oque foi enviado neste outro tópico

At

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois ...
  • Consultores
  • Solution
Em 04/02/2022 at 14:00, Marcos Barreto disse:

Pessoal vou anexar aqui o patch das alterações que fiz relativos ao eSocial:

1) Evitar gerar a TAG não obrigatório de resultado do exame tpIndResult

tpIndResult = (irNormal, irAlterado, irEstavel, irAgravamento, irIndefinido=-1);

durante a implementação de cada um se configurar o resultado como irIndefinido a TAG do resultado do exame já não é apresentada. Acho que este deveria ser o valor padrão quando se gera um novo evento e adiciona um exame (mas eu não alterei os fontes para isso, apenas criei este novo tipo)

2) Quando o ASO é admissional geralmente o funcionário não possui matricula, logo não se pode gerar a TAG IdeVinculo. Como  o ACBR chamava um método genérico para esta TAG eu especializei para o método especifico da classe pcesS2220 e fiz os ajustes necessários.

procedure GerarIdeVinculo2220(pIdeVinculo: TIdeVinculo; pcodCateg: Boolean = True; pCessao: Boolean = False);

3) Não gerar a TAG RespMonit caso a empresa não tenha médico coordenador.

 procedure TevtMonit.GerarRespMonit;

deixei tudo comentado com meu nome tá simples de identificar, peço que ajustem no trunk se possível

PCNeSocial.patch 5 kB · 3 downloads

Conforme mencionado acima, temos um outro tópico relacionado sobre o assunto.

Um ajuste já foi feito e está no SVN.

Por favor, verifiquem com a versão mais nova do componente. Caso o problema continue, anexem novamente o arquivo atualizado para avaliação.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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.
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 767 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.