Ir para conteúdo
  • Cadastre-se

dev botao

Eventos SST v.2.5


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

Recommended Posts

Postado

Boa tarde

@Italo Jurisato Junior Fiz a implementação dos eventos de SST que estavam faltando.

(Alterado) S-1060 - Tabela de Ambientes de Trabalho; 
(Alterado) S-2210 - Comunicação de Acidente de Trabalho;
(Alterado) S-2220 - Monitoramento da Saúde do Trabalhador;
(Alterado) S-2240 - Condições Ambientais do Trabalho - Fatores de Risco;
(Novo) S-2245 – Treinamentos, Capacitações, Exercícios Simulados e Outras Anotações
(Novo) S-2221 – Exame Toxicológico do Motorista Profissional 
(Excluído) S-2241

Alguns ainda precisam ser adicionados os métodos LerArqIni.
Segue os arquivos para análise.

ACBrSST.rar

  • Curtir 2
Postado
3 minutos atrás, Italo Jurisato Junior disse:

Bom dia Arce,

A versão 2.5 entra em vigor quando?

É preciso compatibilizar o programa exemplo com essas mudanças.

A versão 2.5 já está funcionando em produção (eu mesmo já estou utilizando em produção nos clientes), entretanto a transmissão dos eventos de SST (que alterei) começa apenas em 18/03/2019 no ambiente de homologação.

Você quer que eu altere o programa exemplo?

Postado

Boa tarde,

está faltando as informações referentes ao Empregador e o Vinculo no evento 2245 (pcesS2245).

Precisa adicionar as linhas em negrito abaixo para funcionar.. certo?

function TEvtTreiCap.GerarXML: boolean;
begin
  try
    Self.VersaoDF := TACBreSocial(FACBreSocial).Configuracoes.Geral.VersaoDF;

    Self.Id := GerarChaveEsocial(now, Self.ideEmpregador.NrInsc, Self.Sequencial);

    GerarCabecalho('evtTreiCap');
    Gerador.wGrupo('evtTreiCap Id="' + Self.Id + '"');

    GerarIdeEvento2(Self.IdeEvento);
    GerarIdeEmpregador(self.IdeEmpregador);
    GerarIdeVinculo(self.IdeVinculo);

    GerarTreiCap(Self.treiCap);

    Gerador.wGrupo('/evtTreiCap');

    GerarRodape;

    XML := Assinar(Gerador.ArquivoFormatoXML, 'evtTreiCap');

    Validar(schevtTreiCap);

  except on e:exception do
    raise Exception.Create('ID: ' + Self.Id + sLineBreak + ' ' + e.Message);
  end;

  Result := (Gerador.ArquivoFormatoXML <> '')
end;

  • Curtir 1
  • 2 semanas depois ...
Postado

Bom dia Pessoal, no 2240 as tag's em negrito estão duplicadas... podem ajustar pra nós?

pcesS2240

procedure TEvtExpRisco.GerarRespReg(pRespReg: TRespRegCollection);
var
  i: integer;
begin
  for i := 0 to pRespReg.Count - 1 do
  begin
    Gerador.wGrupo('respReg');

    Gerador.wCampo(tcStr, '', 'cpfResp', 1, 11, 1, pRespReg.cpfResp);
    Gerador.wCampo(tcStr, '', 'nisResp', 1, 11, 1, pRespReg.nisResp);
    Gerador.wCampo(tcStr, '', 'nmResp',  1, 70, 1, pRespReg.nmResp);
    Gerador.wCampo(tcStr, '', 'ideOC',   1,  1, 1, eSIdeOCToStr(pRespReg.ideOC));
    Gerador.wCampo(tcStr, '', 'dscOC',   1, 20, 1, pRespReg.dscOC);
    Gerador.wCampo(tcStr, '', 'nrOC',    1, 14, 1, pRespReg.nrOc);
    Gerador.wCampo(tcStr, '', 'ufOC',    2,  2, 0, eSufToStr(pRespReg.ufOC));


    if pRespReg.ideOC = idOutros then
       Gerador.wCampo(tcStr, '', 'dscOC',   1, 20, 1, pRespReg.dscOC);

    Gerador.wCampo(tcStr, '', 'nrOC',    1, 14, 1, pRespReg.nrOc);
    Gerador.wCampo(tcStr, '', 'ufOC',    2,  2, 0, eSufToStr(pRespReg.ufOC));

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

  if pRespReg.Count > 9 then
    Gerador.wAlerta('', 'respReg', 'Lista de Responsáveis pelo registro', ERR_MSG_MAIOR_MAXIMO + '9');
end;
 

Postado

Boa tarde,

Italo, fiz o que solicitou mas acredito que tenha faltado isso ainda... Precisa por a validação conforme imagem abaixo para o campo em negrito dscOC.

image.thumb.png.532c5ae7242b50f0ef9c1ef9f56ea03d.png

Caso contrario, da erro de validação do XML.

procedure TEvtExpRisco.GerarRespReg(pRespReg: TRespRegCollection);

var
  i: integer;
begin
  for i := 0 to pRespReg.Count - 1 do
  begin
    Gerador.wGrupo('respReg');

    Gerador.wCampo(tcStr, '', 'cpfResp', 1, 11, 1, pRespReg.cpfResp);
    Gerador.wCampo(tcStr, '', 'nisResp', 1, 11, 1, pRespReg.nisResp);
    Gerador.wCampo(tcStr, '', 'nmResp',  1, 70, 1, pRespReg.nmResp);
    Gerador.wCampo(tcStr, '', 'ideOC',   1,  1, 1, eSIdeOCToStr(pRespReg.ideOC));
    Gerador.wCampo(tcStr, '', 'dscOC',   1, 20, 1, pRespReg.dscOC);
    Gerador.wCampo(tcStr, '', 'nrOC',    1, 14, 1, pRespReg.nrOc);
    Gerador.wCampo(tcStr, '', 'ufOC',    2,  2, 0, eSufToStr(pRespReg.ufOC));

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

  if pRespReg.Count > 9 then
    Gerador.wAlerta('', 'respReg', 'Lista de Responsáveis pelo registro', ERR_MSG_MAIOR_MAXIMO + '9');
end;

  • Curtir 1
  • 2 semanas depois ...
  • Consultores
Postado

Olá pessoal,

   esse tópico já ficou maior que o necessário. Estou fechando. Por favor, criem novos tópicos para quaisquer novos ajustes ainda necessários conforme as regras do fórum.

   Muito obrigado pela compreensão.

  • Curtir 1

[]'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.
  • Este tópico foi criado há 2068 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.