Exemplo de regra para recálculo de apuração a partir da tela de Históricos de Afastamentos/Inclusão
Definir alfa xAbrEmp;
Definir alfa xAbrTcl;
Definir alfa xAbrCad;
Definir interno.com.senior.g5.rh.hr.calculoApuracao.Calcular vCalculo;
Se (vExecucaoRegra = 1)
Inicio
Res = Mensagem(Retorna, "Esta operação irá afetar a apuração do Colaborador.
Deseja Apurar todo o período alterado automaticamente ?[&Sim, &Não]");
Se (Res = 0)
{
vCalculo.Datini = R038AFA.DATAFA;
vCalculo.DatFim = R038AFA.DATTER;
vCalculo.ProApu = "1"; @Tipo de Processamento - Recalcula Apuração@
vCalculo.ReaMar = "S"; @Realocar Marcações@
vCalculo.DesAce = "S"; @Desfazer Acertos Situações@
vCalculo.NumEmp = EmpAtu;
vCalculo.CodCal = CalAtu;
@Dados do colaborador@
IntParaAlfa(R038AFA.NUMEMP, xAbrEmp);
IntParaAlfa(R038AFA.TIPCOL, xAbrTcl);
IntParaAlfa(R038AFA.NUMCAD, xAbrCad);
vCalculo.AbrEmp = xAbrEmp;
vCalculo.AbrTcl = xAbrTcl;
vCalculo.AbrCad = xAbrCad;
vCalculo.ModoExecucao = 3; @ Assíncrono @
vCalculo.Executar();
}
Fim;
Observação
Quando utilizado o módulo do Gestão do Ponto, a regra para executar o web service do Afastamento dever ser a do processo 993 - Após gravar afastamento.