Observación: Esta página fue traducida utilizando recursos de automatización con el propósito de entregar contenido en su idioma de manera más rápida. Consecuentemente, ella puede tener errores gramaticales y situaciones similares. Si el contenido no es útil en este estado, en el pié de página usted puede acceder al material original en Portugués Brasileño y también dar opiniones sobre esta traducción.

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.

Ejemplo 1:

Obter todas as disciplinas cadastradas para um determinado colaborador:

Ind = 1;
Ret = BuscaAtividadeDisciplina(1, Ind, 1);

Enquanto ((Ret = 0) ou (Ret = 3))
Inicio

 

/* Neste momento a tabela R171DPF estará carregada com a Disciplina da sequência "Ind" */


/* Se tiver rateio cadastrado, ele estará disponível na tabela R171DPR */

 

/* Busca a próxima disciplina */


Ind = Ind + 1;
Ret = BuscaAtividadeDisciplina(1, Ind, 1);
Fim;


/* Quando sair do Enquanto, "Ret" será 2, pois ele percorreu todas as disciplinas do colaborador */

Ejemplo 2:

Obter todas as atividades cadastradas para um determinado colaborador e seus respectivos percentuais rateados:

Ind = 1;
IndRat = 1;
Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);

Enquanto ((Ret = 0) ou (Ret = 3))
Inicio

/* Neste momento a tabela R171APF estará carregada com a Atividade da sequência "Ind" */

/* Busca todos os rateios da atividade da sequência "Ind" */
Enquanto (Ret = 0)
Inicio

/* Neste momento a tabela R171APR estará carregada com a Atividade da
sequência "Ind" e o Rateio indicado pelo índice "IndRat" */

/* Busca o próximo rateio da sequência "Ind" */
IndRat = IndRat + 1;
Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);
Orden;
/* Quando sai do Enquanto, "Ret" será igual a 3, pois ele percorreu todos os
rateios da atividade */

/* Busca a próxima atividade */
IndRat = 1;
Ind = Ind + 1;
Ret = BuscaAtividadeDisciplina(1, Ind, IndRat);
Orden;
/* Quando sair do Enquanto, "Ret" será 2, pois ele percorreu todas as atividades do colaborador */

Utilización: Generador de Reportes y Reglas.

Disponible para el módulo: Gestión de Personal.

(missing or bad snippet)