Exemplo de regra para recálculo de apuração a partir da tela de Históricos de Afastamentos/Exclusão
<div class="Code"><p>Definir alfa xAbrEmp;<br></br>Definir alfa xAbrTcl;<br></br>Definir alfa xAbrCad;<br></br>Definir alfa xDatTer;<br></br>Definir interno.com.senior.g5.rh.hr.calculoApuracao.Calcular vCalculo; <br></br><br></br>Se (vExecucaoRegra = 0)<br></br>{ <br></br>/*As variáveis texto1, texto2, texto3 e valor1 são variáveis internas de sistema que tem como objetivo armazenar<br></br>os valores dos registros anteriores a alteração. Se Utilizar variáveis locais, seus valores são zerados ao executar a regra após a exclusão.*/<br></br>texto1 = ""; @Data término@<br></br>texto2 = ""; @Tipo Colaborador@<br></br>texto3 = ""; @Cadastro@<br></br>valor1 = 0; @Data Afastamento@<br></br><br></br>valor1 = R038AFA.DATAFA;<br></br>IntParaAlfa(R038AFA.DATTER, xDatTer);<br></br>texto1 = xDatTer;<br></br>IntParaAlfa(R038AFA.TIPCOL, xAbrTcl);<br></br>texto2 = xAbrTcl;<br></br>IntParaAlfa(R038AFA.NUMCAD, xAbrCad);<br></br>texto3 = xAbrCad; <br></br><br></br>}<br></br>Senao <br></br>Se (vExecucaoRegra = 1)<br></br>Inicio<br></br>Res = Mensagem(Retorna, "Esta operação irá afetar a apuração do Colaborador. Deseja Apurar todo o período alterado automaticamente ?[&Sim, &Não]");<br></br>Se (Res = 0)<br></br>{<br></br>AlfaParaInt(texto1,xdatfim);<br></br>vCalculo.Datini = valor1;<br></br>vCalculo.DatFim = xdatfim;<br></br>vCalculo.ProApu = "1"; @Tipo de Processamento - Recalcula Apuração@<br></br>vCalculo.ReaMar = "S"; @Realocar Marcações@<br></br>vCalculo.DesAce = "S"; @Desfazer Acertos Situações@<br></br>vCalculo.NumEmp = EmpAtu;<br></br>vCalculo.CodCal = CalAtu;<br></br><br></br>IntParaAlfa(EmpAtu,xAbrEmp); <br></br>vCalculo.AbrEmp = xAbrEmp;<br></br>vCalculo.AbrTcl = texto2;<br></br>vCalculo.AbrCad = texto3;<br></br><br></br>vCalculo.ModoExecucao = 3; @ Assíncrono @<br></br>vCalculo.Executar(); <br></br>}<br></br><br></br>Fim;</p></div>
English
Español

English
Español

