Sunteți pe pagina 1din 14

FP e HR

ABAP para
Folha de Pagamento e Recursos
Humanos

Maurcio Mio
Consultor BC
Mauricio.miao@procwork.com.br

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 1

FP e HR

CONVENES GRFICAS............................................................................................................................3
INTRODUO..................................................................................................................................................4
CONCEITOS E TRANSAES......................................................................................................................4
INFOTIPOS.........................................................................................................................................................4
Criao de Infotipos.....................................................................................................................................5
RUBRICAS..........................................................................................................................................................7
CLCULO DA FOLHA DE PAGAMENTO..............................................................................................................7
ESQUEMA DE CLCULO DE PESSOAL................................................................................................................7
FUNES E OPERAES DO ESQUEMA DE CLCULO.........................................................................................9
Criao de funes/operaes.....................................................................................................................9
CLUSTER DA FOLHA DE PAGAMENTO..............................................................................................................11
Exemplo de leitura do cluster....................................................................................................................12

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 2

FP e HR

Convenes Grficas
Este formato de
caractere...
Telas,
Mensagens e
Caminhos ->

usado para...
mensagens em tela, nomes de telas e
caminhos a serem seguidos nos menus do
sistema.
Ex: Logstica -> Produo-processo -> MRP

Campo:

campos a serem preenchidos nas telas.


Ex: Empresa:, Material:

TECLA

teclas do teclado.
Ex: F2, ENTER, CTR+PGDN, ALT+SHIFT

[BOTAO]

botes na tela.
Ex: [CANCELAR], [VOLTAR], [SNTESE]

TODAS
MAISCULAS

cdigos de transaes e nomes de relatrios,


programas, tabelas e arquivos.
Ex: MB1A, RFKORD50, J_1B_CORR_HEADER

Entrada do
Usurio

entrada exata no sistema. Textos e caracteres a


serem digitados exatamente como descritos no
manual. Ex: digite Pampulha

<Entrada
Varivel do
Usurio>

entrada varivel no sistema. O usurio define a


entrada mais apropriada na situao descrita.
Ex: digite <centro de distribuio>

Nome de
Documento

referncia outros documentos, normas,


manuais.

Este cone...

representa...
um exemplo para ajudar a esclarecer conceitos
ou tarefas.

Exemplo
Nota

um lembrete com importantes informaes,


consideraes ou excees.

Cuidado

a necessidade de ateno especial para evitar


erros ou perda de dados.
um tpico contendo viso geral sobre captulos,
manuais, funes, recursos.
um tpico descrevendo o objetivo de um
processo, atividade ou tarefa.

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 3

FP e HR
1

2 3

um tpico com informaes de procedimentos


passo a passo no sistema.
um tpico contendo descries de processos
de negcio no SAP R/3.
um tpico contendo conceitos e conhecimentos
bsicos relacionados com o processo de
negcio e a execuo de tarefas no sistema.

Introduo
Existem alguns novos conceitos, comandos e transaes que devem ser
dominados para o desenvolvimento de novas funcionalidades nos mdulos de folha de
pagamento e recursos humanos. Estes pontos sero detalhados na seqncia, iniciando
pelos conceitos e transaes.

Conceitos e Transaes
Infotipos
Infotipos so unidades de informao utilizados para agrupar campos de dados
relacionados.

Endereo
0006

Remunerao bsica
Penso alimentcia
0008
9189

Exemplo

Para entendermos esse conceito, tomaremos como base uma transao


mais conhecida; a transao de cadastro de materiais em MM.
Para se cadastrar um material, precisamos preencher campos que esto agrupados em
vises. Cada viso representada por um conjunto de telas.
As vises contm campos que possuem um certo nvel de relacionamento ou servem
para uma mesma aplicao.
Por exemplo, os campos relacionados a vendas como: organizao de vendas, canal de
distribuio e grupo de vendedores esto localizados na viso Vendas: dados
org.vendas 1.
Estes campos normalmente esto agrupados em uma mesma tabela no BD.
Por exemplo, para a viso Vendas: dados org.vendas 1, seus campos encontram-se na
tabela MVKE - Dados de venda para material.

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 4

FP e HR
Do mesmo modo funcionam os infotipos.
Para se cadastrar um funcionrio precisamos alimentar vrios campos que esto
agrupados em telas, cada tela representa um infotipo (similar a viso no cadastro de
materiais).
Os campos pertencentes a um infotipo encontram-se na maioria das vezes em uma nica
tabela do BD.
No cadastro de materiais no possvel inserir uma nova viso sem alterar o programa
standard. Porm para permitir isso no cadastro de funcionrios foi desenvolvido o
conceito de infotipo e uma srie de novas transaes para criao e utilizao dos
mesmos.
Outra diferena a existncia de comandos ABAP especficos para o manuseio desses
infotipos.
Nota

Como as alteraes do funcionrio precisam ser mantidas, os infotipos e a


maioria das informaes de RH e FP possuem limite de datas.
Ao efetuar uma alterao, o registro inicial limitado, isto , sua validade encerrada e
criado um novo registro com uma nova data de validade contendo os dados mais
recentes.
Cuidado

importante lembrar disso quando for necessrio criar novas tabelas para
RH ou FP, pois como legalmente a maioria das informaes no podem ser eliminadas,
essa tabela precisa conter na chave a data de incio e fim da validade. Por exemplo,
tabela de Percentuais para Adicional por tempo de servio no pode conter somente o
percentual mais recente e sim todo o histrico de percentuais da empresa.
Criao de Infotipos
Para criar um infotipo utilizamos a transao PM01. Esta transao cria a estrutura, tabela
transparente e module pool do infotipo.
Aps a criao desses objetos, pode-se alterar as telas geradas conforme necessidade
via screen painter.
Para modificar os atributos dos campos da tela utilizar o Controle de tela contido no menu
da PM01 Saltar -> Controle de tela.

2 3
Caminho
Transao

PM01

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 5

FP e HR

Os infotipos criados
pelo cliente devem
iniciar por 9

A estrutura PS contm os campos de informao de um infotipo. No BD seu nome


gerado como P9999, onde 9999 o nmero do infotipo.
Cuidado

Os nomes dos campos da estrutura no devem ter mais de cinco dgitos e


no permitido a utilizao de campos inteiros (tipo de dados INT1...INT4) nessa
estrutura.
A tabela transparente principal que contm os registros do infotipo nomeada como
padro por PA9999.
O module pool para as telas do infotipo gerado com o nome de MP999900.
As caractersticas do infotipo so armazenadas na tabela V_T582A.
Nota

Um infotipo pode ser utilizado para armazenar valores de rubricas para um


funcionrio. Logo a tabela PA9999 deve conter o campo LGART.
E para permitir que o usurio visualize via search help as rubricas pertencentes ao
infotipo, anexe ao campo LGART da tela do infotipo um VALUE-REQUEST como segue:
Alterar o PROCESS ON VALUE-REQUEST da tela 2000 do infotipo incluindo o module
LGART_VALUES.
Neste module chamar o form LGART_VALUES(SAPFP50I) USING P9999-INFTY P9999LGART P9999-BEGDA.

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 6

FP e HR
Cadastrar as rubricas permitidas na tabela T512Z (admissibilidade de rubricas salariais
por infotipo) via SM30.

Rubricas
Rubricas so os valores que compe o pagamento do funcionrio. Como exemplo
desconto de INSS, bonificao, vale refeio, etc..
Algumas so valores fixos e outras so calculadas em tempo de execuo do programa
de clculo da folha de pagamentos.
As caractersticas de uma rubrica salarial (campo deve conter valor por exemplo) esto na
tabela T511, viso V_T511.
Para criar uma rubrica usar a transao PU30 e atualizar a tabela T512W.

Clculo da Folha de Pagamento


A forma como a folha de pagamento processada varia de empresa para empresa.
Algumas possuem benefcios e descontos que outras no possuem, conforme o ramo de
atuao, poltica interna e uma srie de outros fatores.
Dentre esses descontos e benefcios, alguns podem ser eliminados, outros so criados.
Imaginem se pensarmos a nvel global.
Como tratar os fatores da legislao trabalhista que mudam com freqncia para cada
pas?
Para possibilitar a implementao dessa srie de mudanas no modo como a folha
calculada, sem a necessidade de alterao do programa standard, foi criado o Esquema
de Clculo de Pessoal.
Nota

importante ressaltar que mesmo com a existncia do esquema, no foi


possvel manter uma nica verso do programa da Folha de Pagamento para todos os
pases. Existe um standard para especficos para alguns pases ou grupo de pases. O
nome do standard utilizados pelo Brasil HBRCALC0.

Esquema de Clculo de Pessoal


O esquema nada mais do que um conjunto de regras que informam ao programa
de Clculo de Folha de Pagamento como o mesmo deve trabalhar para apurar o salrio
de um funcionrio.
Ele pode ser utilizado tambm em uma diviso do mdulo de folha chamado
Gerenciamento de Tempos ou Timing que apura o tempo trabalhado por um funcionrio

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 7

FP e HR
no ms, ou tambm pelos processos chamados Off-cycles, que so pagamentos extrasalariais.
Na tela inicial do programa de clculo da folha informamos via parmetro, qual o esquema
que o mesmo deve utilizar para calcular a folha.
Um esquema de clculo composto por funes e operaes e sub-esquemas.
Para visualizar um esquema de clculo utilizar a transao PE01
1

2 3
Caminho
Transao

Recursos Humanos -> Clculo das Folhas de pagamento -> Ferramentas


-> Ferramentas de atualizao -> Esquema
PE01

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 8

FP e HR

Estas so as funes
e operaes que
compe o esquema

Funes e operaes do esquema de clculo


As funes e operaes so comandos contidos nos esquemas de clculos.
Esses comandos vo ser executados pelo programa de clculo da folha.
Assim como os programas ABAP so compostos de comandos ou sentenas, os
esquemas de clculo so compostos por operaes e funes.
Cada operao ou funo implementado como um FORM em um INCLUDE especfico,
sendo que a funo pode retornar valores.
Criao de funes/operaes
Para criar uma funo ou operao utilizar a transao PE04
1

2 3
Caminho

Recursos Humanos -> Clculo das Folhas de pagamento -> Ferramentas


-> Ferramentas de atualizao -> Funo/operao

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 9

FP e HR
Transao

PE04

O nome de funes e
operaes do cliente
deve iniciar por $ ou &

Nota

Em paralelo a criao da funo na PE04, necessrio incluir um form no


include RPCBURZ0. Caso seja utilizado o nome standard, este form deve ser nomeado
como FUXXXXX para funes e OPXXXXX para operaes, onde XXXXX o nome da
funo/operao criado na PE04 e indicado no box Nome da rotina FORM.
Este FORM ir conter o cdigo fonte da funo/operao.
Cuidado

Como estes forms so utilizados pelo DRIVE da folha de pagamento


algumas regras devem ser seguidas:

Importante lembrar que qualquer desenvolvimento em funes e operaes deve


prever a possibilidade de um reprocessamento j que o processamento da Folha
de Pagamento pode ser excludo e refeito.

No utilizar o comando MESSAGE para emisso de mensagens. Ao invs disso


necessrio a chamada do FORM FILL_MSGTAB. Isso porque alm da folha tratar
vrios funcionrios de uma vez, o que dificultaria a visualizao das mensagens,
ao chamar esse form indicando erro, o processamento para o funcionrio corrente

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 10

FP e HR
abortado e seu nmero separado na rvore de log como funcionrios
processados com erro. Todas as mensagens emitidas via FILL_MSGTAB so
exibidas na rvore de resultado do processamento.
Modelo de chamada do FORM:
"Exibe log de resultado?
IF SW_PROT = PBR99_ON.
PERFORM LOG_REFRESH_PTEXT(H37PLOG0).
ENDIF.
"Insere a mensagem
CLEAR ERROR_PTEXT.
ERROR_PTEXT-TLEVEL = '1'.
ERROR_PTEXT-TINTENSIV1 = '0'.
ERROR_PTEXT-TLENGTH1 = STRLEN( $TEXT1 ).
ERROR_PTEXT-TEXT1 = $TEXT1.
IF NOT $TEXT2 IS INITIAL.
ERROR_PTEXT-TLENGTH2 = STRLEN( $TEXT2 ).
ERROR_PTEXT-TEXT2 = $TEXT2.
ERROR_PTEXT-TINTENSIV2 = '0'.
ENDIF.
IF NOT $TEXT3 IS INITIAL.
ERROR_PTEXT-TLENGTH3 = STRLEN( $TEXT3 ).
ERROR_PTEXT-TEXT3 = $TEXT3.
ERROR_PTEXT-TINTENSIV3 = '0'.
ENDIF.
IF NOT $TEXT4 IS INITIAL.
ERROR_PTEXT-TLENGTH4 = STRLEN( $TEXT4 ).
ERROR_PTEXT-TEXT4 = $TEXT4.
ERROR_PTEXT-TINTENSIV4 = '0'.
ENDIF.
APPEND ERROR_PTEXT.
PERFORM FILL_MSGTAB TABLES ERROR_PTEXT
PTEXT
USING SPACE
"pernr dependent
PERNR-PERNR
APER_NUMB
P_MESS_POS
'E'
"tipo da mensagem (E,I,S)
'A'.
IF SW_PROT = PBR99_ON.
PERFORM LOG_GET_BACK_PTEXT(H37PLOG0) TABLES PTEXT.
PERFORM LOG_REFRESH_PTEXT(H37PLOG0).
ENDIF.

Para exibir no LOG de processamento da folha o contedo das tabelas RT, IT e


OT necessrio alimentar a tabela T52BW INPUT E OUTPUT DE FUNO via
transao SM30.

Cluster da folha de pagamento

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 11

FP e HR

O cluster da folha de pagamento o resultado do processamento da folha de


pagamento para um funcionrio em um determinado ms. Esse resultado fica
armazenado em tabelas cluster no BD e podem ser visualizados sem a necessidade de
uma nova execuo do programa de clculo.
O programa para visualizao do cluster o HBRCLSTR.
1

2 3
Caminho
Transao

Recursos Humanos -> Clculo das folhas de pagamento -> Ferramentas


-> Resultado do Clculo Folha de Pagamento -> Exibir
PC00_M37_CLSTR

Nota

Para o manuseio do cluster existem macros especiais qcontidos no


include PCXRXBR0.
Um outro mtodo para ler as tabelas utilizando o form READ_BRAZILIAN_CLUSTER e
READ_SPECIFIC_RESULT.
Exemplo de leitura do cluster
Exemplo

Exemplo de como carregar o cluster dos funcionrios:

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 12

FP e HR
necessrio informar o Banco de Dados Lgico PNP nos atributos do programa.
REPORT ZEXEMPLO_CLUSTER.
* Declaraes ---------------------------------------------------------TABLES: PCL1,
"Cluster 1 HR
PCL2,
"Cluster 2 HR
ITCPP,
PERNR.
"Funcionrios
*- Includes -----------------------------------------------------------INCLUDE PCTYPBR0.
INCLUDE PCCLSBR1.
"HRMS BR cluster data
INCLUDE PCCLSBR0.
"HRMS BR cluster reading
INCLUDE PCTYPBR0.
"Type pools for declaring payroll data
INCLUDE PCXRXBR0.
"Macros para recuperao do Cluster
DATA:
SUBRC LIKE SY-SUBRC,
FBEG LIKE SY-DATUM,
FEND LIKE SY-DATUM.

"Incio perodo
"Fim perodo

*- Parmetros Seleo -------------------------------------------------PARAMETERS PMES LIKE QPPNP-PABRP.


PARAMETERS PANO LIKE QPPNP-PABRJ.
*- Eventos ------------------------------------------------------------START-OF-SELECTION.
"Move o 1o. dia e o ltimo do ms informado no parmetro para FBEG e
"FEND
CONCATENATE PANO PMES '01' INTO FBEG.
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN
= FBEG
IMPORTING
LAST_DAY_OF_MONTH = FEND.
"Executa para cada funcionrio. Banco de dados lgico PNP
GET PERNR.
PERFORM READ_BRAZILIAN_CLUSTER TABLES RGDIR
"Tab.de diretorios
USING PERNR-PERNR "Chave do empregado
PN-BEGDA
"Data de inicio
PN-ENDDA
"Data fim do periodo
SUBRC.
"Flag de retorno
"A tabela RGDIR contm todos os processamentos de folha realizados
"para o funcionrio.
LOOP AT RGDIR.
"Verifica se existe processamento de folha para o ms
"solicitado no parmetro de execuo nesse funcionrio

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 13

FP e HR
CHECK FBEG LE RGDIR-FPEND.
CHECK FEND GE RGDIR-FPBEG.
"Se existir efetua a carga das tabelas
PERFORM READ_SPECIFIC_RESULT USING PERNR-PERNR "Chave do emp
RGDIR-SEQNR "Seq. do Proce
SUBRC.
"Flag de reto
EXIT.
ENDLOOP.
"Neste ponto temos todas as tabelas carregadas (RT,VERSC,CRT,BT,etc.)
LOOP AT RT.
WRITE: / RT-LGART,
RT-BETRG.
ENDLOOP.
END-OF-SELECTION.

/var/www/apps/conversion/tmp/scratch_7/274262772.doc

Pg. 14

S-ar putea să vă placă și