Overview Programação no HR
HR – Hum Huma an Re R es our ourc ces
Rosana Fontes Janeiro/2005
Ementa
Módulo HR e seus submódulos Infotipos Banco de dados lógico Folha de Pagamento
Ementa
Módulo HR e seus submódulos Infotipos Banco de dados lógico Folha de Pagamento
Submódulos de HR Administração de Pessoal (PA-PA) Cálculo de Folha de Pagamento (PA-PY) Recrutamento (PA-RC) Gerenciamento de Tempos (PA-PT) Estruturas Organizacionais (PD) Treinamento (PA-PE) (PA-PE) Manager’s Desktop (PA-MA)
Planejamento de Custos de Pessoal (PA-CM-CP) (PA-CM-CP) Benefícios Benefíc ios (PA-BN) (PA-BN) Employee Self-Service (PA-ES) Administração de Remunerações (PA-CM) Administração e Viagens (FI-TV)
Módulo de HR
HR
PD Estruturas Organizacionais
PA Administração Administração Pessoal
PT Gerenciamento de Tempos
PY Cálculo de Folha de Pagamento
Estrutura Organizacional - PD
HR
PD Estruturas Organizacionais
PA Administração Pessoal
PT Gerenciamento de Tempos
PY Cálculo de Folha de Pagamento
Estrutura Organizacional - PD Uma estrutura organizacional fornece um modelo completo do ambiente estrutural e de pessoal de sua empresa com hierarquias. Utiliza-se de elementos chamados genericamente de OBJETOS, ligados entre si hierarquicamente. Exemplos de tipos de objetos : unidades organizacionais, cargos, posições, pessoas, etc.. Cada objeto possui um ID único de 8 posições.
Estrutura Organizacional - PD reporta a/ é supervisor de linha de
Alocação de centro de custo
Organizacional Centro de custo
pertence a
Alocação de centro de custo
incorpora é descrito por
Cargo
pertence a descreve
é descrito por
é descrito por
incorpora
Posição
ocupa
Centro de trabalho
Titular
descreve
descreve
Tarefa
Pessoa/usuário
Estrutura Organizacional - PD Uma unidade organizacional “reporta a“ outra unidade organizacional
Exemplo: Finanças "reporta à" Administração Uma unidade organizacional “é o supervisor de linha de“ outras
unidades organizacionais Exemplo: Diretoria "é o supervisor de linha de" Administração, Produção e Vendas
Relação A/B 002
Diretoria Administração Finanças
Controlling
Produção Recursos humanos
Vendas
Estrutura Organizacional - PD O cargo "descreve" a posição. A posição "é descrita" pelo cargo.
Relação A/B 007
Assistente administrativo do departamento de marketing
Assistente administrativo da diretoria Cargo: Assistente administrativo
Assistente administrativo do departamento de pesquisa
Estrutura Organizacional - PD
Posições são ligadas a unidades organizacionais por relações
Relação A/B 003
Estrutura Organizacional - PD A posição é atribuída a uma pessoa Exemplo: Sra. Meire é a "titular" da posição Gerente de recursos humanos
Titular
Posição
Relação A/B 008
A relação entre posição e pessoa cria integração em dados mestre
Pessoa
Estrutura Organizacional - PD
Unidade organizacional Cargo Posição Tarefas Centros de trabalho
O C S T A
C Cargo
S
Posição
S
S
Posição
Posição
O Unid. organiz.
S
Posição
O Unid. organiz. S Posição
C Cargo T
Tarefa
T
Tarefa
Estrutura Organizacional - PD As características do objeto são atualizadas como infotipos – transação PO13.
•
Objeto
(1000)
•
Relação
(1001)
Unidade organizacional, posição, cargo • Pertence a, reporta a
•
Descrição verbal
(1002)
•
Texto geral
•
Horário de trabalho
(1011)
•
Horas de trabalho teóricas
•
Planejamento de custos
(1015)
•
Componentes de custos
•
Endereço
(1028)
•
Endereço principal, endereço secundário
•
Estrutura Organizacional - PD
Estrutura Organizacional - PD BANCO DE DADOS LÓGICOS - PCH
TABLES: OBJEC. INFOTYPES: 1001, 1002, ....
"Relações "Descrição
GET OBJEC. LOOP AT Pnnnn. WHERE BEGDA LE PC-ENDDA AND ENDDA GE PC-BEGDA. WRITE... ENDLOOP.
OBJEC Informações do objeto
Pnnnn Tabela infotipo interna
Administração Pessoal - PA
HR
PD Estruturas Organizacionais
PA Administração Pessoal
PT Gerenciamento de Tempos
PY Cálculo de Folha de Pagamento
Administração Pessoal - PA Exibição e Atualização de infotipos de dados do empregado, tais como dados pessoais, endereços, remuneração base, dados bancários, etc... Atualização dos eventos no histórico do empregado utilizando medidas, tais como admissão, desligamento, movimentações funcionais, aposentadoria, etc...
Infotipos
São unidades de informação utilizados para agrupar campos de dados relacionados .
É representado por um ID de 4 dígitos e por uma tabela no Banco de Dados A relação entre empregados e infotipos é N para N
Endereços 0006
Dados Bancários 0009
Documentos 0465
Infotipos A numeração dos infotipos foi padronizada pela SAP da seguinte maneira : Infotipos de empregados : 0000 a 0999 Infotipos de estrutura organiz. : 1000 a 1999 Infotipos de tempos : 2000 a 2999 Infotipos de candidatos : 4000 a 4999 Infotipos criados pelo cliente : 9000 a 9999 Podemos visualizar melhor esses conceitos analisando uma das principais transações de RH : PA30 (Atualização de dados mestre de empregado )
Infotipos Criação ou ampliação de Infotipo – transação PM01. Esta transação cria estrutura, tabela transparente e module pool do infotipo. Os infotipos criados pelo cliente deve iniciar com 9. Ex: 9192
Infotipos
A estrutura PS contém os campos de informação de um infotipo. No banco de dados lógico seu nome é gerado como Pnnnn, onde nnnn é o número do infotipo. A tabela transparente principal que contém os registros do infotipo é nomeada PAnnnn. O module pool do infotipo é gerado com o nome de MPnnnn00.
Infotipos Após a criação desses objetos, pode-se alterar as telas geradas e incluir rotinas conforme necessidade. Programa Nome module pool Tela 2000 Layout
Infotipos
INCLUDES Declarações XXXX10
PBO
XXXX20
PAI
XXXX30
Subrotinas XXXX40
Exit
XXXX50
Infotipos
Encaixamento de Loop BANCO DE DADOS LÓGICOS - PNP TABLES: PERNR . INFOTYPES: 0006, .... START-OF-SELECTION.
“Endereços
GET PERNR.
IF PERNR-ENAME IS INITIAL. REJECT. ENDIF. PROVIDE * FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA. WRITE... ENDPROVIDE. END-OF-SELECTION.
Loop de infotipo
Loop de empregado
Gerenciamento de Tempos - PT
HR
PD Estruturas Organizacionais
PA Administração Pessoal
PT Gerenciamento de Tempos
PY Cálculo de Folha de Pagamento
Gerenciamento de Tempos - PT O Gerenciamento de Tempos permite exibir e registrar com flexibilidade o horário de trabalho. É possível gerenciar contas de tempos (como férias, horário flexível, horas extras, etc..) manual ou automaticamente. O Plano de Horário de Trabalho (PHT) é atribuído a um empregado no infotipo 0007 (Tempo de Trabalho Teórico).
Gerenciamento de Tempos - PT Alguns dos principais infotipos de Tempos : IT 0007 (PHT) IT 2001 (Ausências ) – férias, licença médica ... IT 2002 (Presenças)
- viagem, horas extras ...
IT 2011 (Eventos com registro de horas) – relógio de ponto
Gerenciamento de Tempos - PT A avaliação de Tempos é executada pelo programa gerador RPTIME00. Ele avalia os dados gravados a partir dos terminais de registro de horas ou nos IT’s
de tempos. As transações PA61 e PA62 também lidam com IT’s de tempos. O cluster de tempos pode ser visualizado pela transação PT66.
Gerenciamento de Tempos - PT Transação PT66
Cluster de Time
Gerenciamento de Tempos - PT Função para leitura do cluster de Time CALL FUNCTION 'HR_TIME_RESULTS_GET' EXPORTING get_pernr = Nº PERNR get_pabrj = ANO get_pabrp = MÊS get_cltyp = '1' TABLES get_zes = ti_zes EXCEPTIONS no_period_specified =1 wrong_cluster_version =2 no_read_authority =3 cluster_archived =4 technical_error =5 OTHERS = 6.
Cálculo de Folha de Pagamento - PY
HR
PD Estruturas Organizacionais
PA Administração Pessoal
PT Gerenciamento de Tempos
PY Cálculo de Folha de Pagamento
Cálculo de Folha de Pagamento - PY Os elementos de remuneração e as deduções são incluídos no cálculo do pagamento através de rubricas salariais.
Rubricas
Cálculo de Folha de Pagamento - PY Esquema de cálculo Transação PE01
Cálculo de Folha de Pagamento - PY Função e operação do esquema de Cálculo de Folha São comandos contidos nos esquemas de c álculos. Esses comandos vão ser executados pelo programa de cálculo da folha. Cada operação ou função é implementada como um FORM em um INCLUDE espec ífico, sendo que a função pode retornar valores.
Cálculo de Folha de Pagamento - PY Transação PE04
Toda função e operação não standard começa com %xxxx.
Cálculo de Folha de Pagamento - PY
A request será customizing
Cálculo de Folha de Pagamento - PY Código fonte da operação e função Include RPCBURZBR0 . Função = FUXXXXX. Operação = OPXXXXX. *-------------------------------------------------------------------* * FUNÇÂO: %3701 * * Autor: Rosana Fontes * * Data Fim: 19.07.2004 * * Objetivo: Recuperar percentual das entidades conveniadas por * * filial. * *-------------------------------------------------------------------* * 28.06.2004 - Rosana Fontes - Cod. inicial - request: FD1K957938 * ********************************************************************* Form FU%3701. include ZHRPYINHFU3701. Endform. "FU%3701.
Cálculo de Folha de Pagamento - PY *----------------------------------------------------------------------* * FUNÇÂO:
%3701
*
* Autor:
Rosana Fontes
*
* Data Fim:
19.07.2004
*
* Objetivo:
Recuperar percentual das entidades conveniadas por
*
*
filial.
*
WHEN 'ELIR'. READ TABLE brtax WITH KEY lgart = '/403'.
*----------------------------------------------------------------------* * 28.06.2004 - Rosana Fontes - Cod. inicial - request: FD1K957938
IF sy-subrc EQ 0.
*
vl_paydt = brtax-paydt.
*----------------------------------------------------------------------*
CLEAR brtax.
* 02.08.2004 - Rosana Fontes -
brtax-lgart = '/403'.
FERI
- request: FD1K961498
*
*----------------------------------------------------------------------*
brtax-paydt = vl_paydt.
* 10.08.2004 - Rosana Fontes -
MODIFY brtax INDEX sy-tabix.
BENE
- request: FD1K961498
*
*----------------------------------------------------------------------* * 09.09.2004 - Rosana Fontes -
COMP
- request: FD1K961498
ENDIF.
*
*----------------------------------------------------------------------* * Benefícios ***INCLUDE ZHRPYINHFU3701 . DATA: vl_paydt
WHEN 'BENE'.
LIKE brtax-paydt.
INCLUDE zhrpyinhfu3701_bene.
* Verifica o parâmetro
•
CASE as-parm1.
•
Complemento de Acidente de trabalho / Afastamento Doença WHEN 'COMP'.
* Férias WHEN 'FERI'. INCLUDE zhrpyinhfu3701_feri.
INCLUDE zhrpyinhfu3701_comp. ENDCASE.
Cálculo de Folha de Pagamento - PY
Report HBRCALC0
Cálculo de Folha de Pagamento - PY Transação – PC_PAYRESULT
Cálculo de Folha de Pagamento - PY
Cálculo de Folha de Pagamento - PY Leitura do cluster da folha de pagamento EXEMPLO : tables : pernr, pcl1, pcl2.
... *----------------------------------------------------------------------* * Includes para leitura do cluster da folha de pagamento * *----------------------------------------------------------------------* include pctypbr0. include pcclsbr1. include pcclsbr0. include pcxrxbr0. ... START-OF-SELECTION. Get pernr. * Leitura do cluster da folha de pagamento perform read_brazilian_cluster tables rgdir using pernr-pernr pn-begda pn-endda subrc. perform read_specific_result using pernr-pernr rgdir-seqnr subrc.
Resumindo ...
RESUMO - PD Principal transação – PO13; Os infotipos estão no intervalo de 1000 a 1999; As tabelas transparentes – HRPnnnn (HRP1000, HRP1001 ...); Banco de dados lógico – PCH (get object);
RESUMO - PA Principais transação – PA20, PA30 e PA40 Os infotipos estão no intervalo de 0000 a 0999; As tabelas transparentes –PAnnnn (PA0000, PA0001 ...); Banco de dados lógico – PNP (get pernr);
RESUMO - Infotipos
PM01 – criação ou ampliação de infotipos Module pool – MPnnnn00;
RESUMO - PT Principal transação – PT66 Os infotipos estão no intervalo de 2000 a 2999; As tabelas transparentes –PAnnnn (PA2000, PA2001 ...); 'HR_TIME_RESULTS_GET‘ – função para
leitura do cluster.
RESUMO - PY Principal transação – PC_PAYRESULT Principais tabelas do cluster – RGDIR e RT; Leitura cluster (RGDIR) – perform read_brazilian_cluster Leitura das tabelas do cluster (RT, BT ...) perform read_specific_result
Dúvidas ?!?!?
1º EXERCÍCIO Criar de um infotipo para histórico de férias