Ir para conteúdo
  • Cadastre-se

Eventos SST v.2.5


Ver Solução Respondido por Sandro Herbst,
  • Este tópico foi criado há 2630 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á 2630 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.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...