BuscaAtividadeDisciplina
Retorna as Atividades / Disciplinas, de um determinado colaborador, utilizadas no cálculo. O mesmo processo pode ser feito via cursor, no entanto, a utilização da função gera um ganho de performance, pois retorna apenas os dados que estão carregados em memória.
Conforme o parâmetro “pTipAtiDis”, os dados lidos ficarão disponíveis nas tabelas de Atividades (R171APF, R171APR) ou nas tabelas de Disciplinas (R171DPF, R171DPR).
Sintaxe: BuscaAtividadeDisciplina(Numero pTipAtiDis, Numero pSeqAtiDis, Numero pSeqRateio):
Parâmetros:pTipAtiDis - Variável numérica: se for informado 0 (zero) busca as Atividades e se for informado 1 (um) busca as Disciplinas;
pSeqAtiDis - Sequência das Atividades / Disciplinas;
pSeqRateio - Sequência do Rateio;
Retorno (na própria função):| 0 | Execução bem sucedida; |
| 1 | Valor passado pela variável pTipAtiDis desconhecido; |
| 2 | Não existe Atividade / Disciplina nesta posição; |
| 3 | Não existe rateio nesta posição, porém os valores integrais foram carregados; |
| 4 | Erro Inesperado. |
Obter todas as disciplinas cadastradas para um determinado colaborador:
<div class="Code"><p>Ind = 1;<br></br>Ret = BuscaAtividadeDisciplina(1, Ind, 1);</p><p>Enquanto ((Ret = 0) ou (Ret = 3))<br></br>Inicio</p><p></p><p> /* Neste momento a tabela R171DPF estará carregada com a Disciplina da sequência "Ind" */</p><p><br></br> /* Se tiver rateio cadastrado, ele estará disponível na tabela R171DPR */</p><p></p><p> /* Busca a próxima disciplina */</p><p><br></br> Ind = Ind + 1;<br></br> Ret = BuscaAtividadeDisciplina(1, Ind, 1);<br></br>Fim;</p><p><br></br>/* Quando sair do Enquanto, "Ret" será 2, pois ele percorreu todas as disciplinas do colaborador */</p></div>
Obter todas as atividades cadastradas para um determinado colaborador e seus respectivos percentuais rateados:
<div class="Code"><p>Ind = 1;<br></br>IndRat = 1;<br></br>Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);</p><p>Enquanto ((Ret = 0) ou (Ret = 3))<br></br>Inicio</p><p> /* Neste momento a tabela R171APF estará carregada com a Atividade da sequência "Ind" */</p><p> /* Busca todos os rateios da atividade da sequência "Ind" */<br></br> Enquanto (Ret = 0)<br></br> Inicio</p><p> /* Neste momento a tabela R171APR estará carregada com a Atividade da <br></br> sequência "Ind" e o Rateio indicado pelo índice "IndRat" */</p><p> /* Busca o próximo rateio da sequência "Ind" */<br></br> IndRat = IndRat + 1;<br></br> Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);<br></br> Fim;<br></br> /* Quando sai do Enquanto, "Ret" será igual a 3, pois ele percorreu todos os <br></br> rateios da atividade */</p><p> /* Busca a próxima atividade */<br></br> IndRat = 1;<br></br> Ind = Ind + 1;<br></br> Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);<br></br>Fim;<br></br>/* Quando sair do Enquanto, "Ret" será 2, pois ele percorreu todas as atividades do colaborador */</p></div>
Utilização: Gerador de Relatórios e Regras.
Disponível para o módulo: Administração de Pessoal.
English
Español

English
Español

