Jump to content

Delphi chamada_delphi.png acbr.png

C6 chamada_c6.png botao.png

S2220 erro quando não informado a tag respMonit


DouglasGnutzmann
Go to solution Solved by EMBarbosa,

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.

 

 

Edited by DouglasGnutzmann
Link to comment
Share on other sites

  • 1 month later...

é 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 to comment
Share on other 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

Edited by Marcos Barreto
Link to comment
Share on other 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
Ajude o Projeto ACBr crescer - Assine o SAC

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 to comment
Share on other sites

  • 3 weeks later...
  • 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 to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.