Você está na página 1de 53

Pág.

PROGRAMAÇÃO
EM
ABAP HR
Pág. 2

SUMÁRIO
INTRODUÇÃO ......................................................................................................................................................... 3

INFOTIPOS............................................................................................................................................................... 4

BANCO DE DADOS LÓGICO ............................................................................................................................. 14

MACROS ................................................................................................................................................................. 24

FUNÇÕES ............................................................................................................................................................... 28

CLUSTERS ............................................................................................................................................................. 31

FOLHA DE PAGAMENTO .................................................................................................................................. 35


Exemplo de leitura do cluster ........................................................................................................................... 39
ANEXO I – INFOTIPOS PA ................................................................................................................................. 40

ANEXO II – ESTRUTURAS PERNR E APPLICANT ...................................................................................... 48


Estrutura PERNR ........................................................................................................................................... 48
Estrutura APPLICANT ................................................................................................................................... 49
ANEXO III – SOLUÇÕES DOS EXERCÍCIOS.................................................................................................. 50

ANOTAÇÕES: ........................................................................................................................................................ 53
Pág. 3

INTRODUÇÃO

Human Resource Process

Benefits
Enrollment
Recruitment Hiring

Training

H
O
T
E
L

Time Travel
statement

Employee Development
& Salary Administration Payroll Time Reporting
& Shift Planning
 SAP AG 1999

Divisão do módulo de HR :

1. Administração de Pessoal (PA)


2. Estrutura organizacional (PD)
3. Gerenciamento de Tempo (TM)
4. Folha de Pagamento (PY)

Estrutura Organizacional:

Objetos:
O O – Organizational Unit – Áreas de Negócio, Setores
C – Job - Cargos Genérico que descreve o Específico
T O S – Position – Cargo Específico
T – Task – Descrições das atividades dos cargos
A – Work Place – Identifica o local físico onde o trabalho acontece
C S T
K – Cost Center – Objeto de CO que pode ser relacionado com os objetos O ou S,
sempre em PD.
A P – Person – Funcionários da Empresa, são criados em PA.
US – User – Usuários do Sistema SAP R/3.
Pág. 4

INFOTIPOS
Definição: conjunto de informações logicamente agrupadas.

Delimitação de Datas: cada infotipo, usa uma data de início(BEGDA) e de término(ENDDA) para
identificar o período de validade.
Data Selection

Start End

Na verdade, um infotipo é definido como uma tabela que agrupa os dados de acordo com as suas
características. Por exemplo:

 ... ( Contratação, Demissão, etc)


IT0000: Medidas
 IT0001: Atribuição
PROVIDE Organizacional,
* FROM Pnnnn Ligação do universo PA com PD
 IT0002: Dados Pessoais
BETWEEN ( Nome, Sobrenome,
PN-BEGDA Sexo, Estado Civil, etc)
 IT0008: Remuneração
AND Base PN-ENDDA.
 IT1000: Objetos
...( Cargo, Unidade Organizacional, Posição, Centro de Custo, etc)
 IT1001: Ligações entre os objetos
ENDPROVIDE.
Eles estão divididos em dois universos: infotipos de PA e infotipos de PD. Dentro dos infotipos de PA,
 SAP AG 1999
consideramos os dados de empregados e os dados de candidatos, já nos infotipos de PD,
contemplamos os dados dos objetos da estrutura organizacional ( unidade organizacional, cargos,
posição, tarefa)

Existe uma numeração standard para os infotipos:

 0000 a 0999: infotipos PA


 4000 a 4999: infotipos Recrutamento
 1000 a 1999: infotipos PD
 2000 a 2999: infotipos de Time
 9000 a 9999: novos infotipos

Estrutura de um infotipo:
Pág. 5

Infotype - Data Structures

DB structure PAnnnn using infotype 0002 as an example

PA0002 MANDT PAKEY PSHD1 PS0002

Infotype structure Pnnnn using infotype 0002 as an example

PSKEY PSHD1 PS0002

 SAP AG 1999

A estrutura Pnnnn é utilizada como uma interface entre o programa e o banco de dados. Ela contém os
campos de dados da estrutura PSnnnn e os campos de dados que ocorrem em todo infotipo (PSHD1).
O campo MANDT não é obrigatório nesta estrutura.

Estrutura PSKEY: contém os campos chaves de mestre de pessoal ( PERNR, INFTY, SUBTY, ENDDA,
BEGDA)

Estrutura PSHD1: contém os campos de administração ( AEDTM, UNAME)

A tabela PAnnnn contém o campo MANDT e as estruturas PAKEY, PSHD1, PSnnnn.

Estrutura PAKEY: contém os campos chaves de mestre de pessoal.

Nos infotipos de candidato, utilizamos a estrutura PBKEY ao invés da PAKEY.

Ligação Temporal(Time Constraint): como os infotipos são tabelas, a ligação temporal é a forma com a
qual indicamos que o infotipo pode ter registros iguais no mesmo intervalo de tempo. Os valores
possíves de ligação temporal são:
Pág. 6

Exemplos de infotipos e as respectivas ligações temporais:

Ligação Infotipo Descrição Considerações


Temporal

2 IT2001 Ausências Podem existir várias ausências com quebra de tempo


3 IT0021 Familiares Podem existir filhos gêmeos, que tem a mesma data
de nascimento

Criação de um novo infotipo:

1. Criação da estrutura PSnnnn

 Transação SE11
 Crie a estrutura com o nome PS9nnn
 Insira a descrição breve
Pág. 7

 Insira o nome dos campos, iniciando com a letra Z


 Insira o elemento de dados correspondente ao campo que se está inserindo
 Verificar , Salvar e Ativar

2. Criação da estrutura da tabela Pnnnn

 Transação SE11
 Crie a estrutura com o nome P9nnn
 Insira a descrição breve
 Insira os seguintes includes:
.INCLUDE PSHDR

.INCLUDE PS9XXX
 Verificar , Salvar e Ativar

3. Criação da tabela transparente PAnnnn ou PBnnnn

 Transação SE11
 Crie a tabela com o nome PA9nnn ou PB9nnn
 Insira a descrição breve
 Em classe de entrega, informe "A", para a tabela ser utilizada como dados mestres
e para movimentação
 Marcar com  a "Atualização de tabela permitida"
 Insira os seguintes campos na tabela:
MANDT  MANDT

.INCLUDE  PAKEY ( se o infotipo for utilizado para recrutamento, utilize PBKEY)

.INCLUDE  PSHD1

.INCLUDE  PS9XXX
 Verificar , Salvar e Ativar

4. Criação da estrutura de campos de telas Znnnn

 Transação SE11
 Crie a estrutura com o nome Z9nnn (No Stardard estas estruturas são
encontradas normalmente com a letra "Q")
 Insira a descrição breve
 Insira o nome dos campos que se deseja concatenar na tela do infotipo. Serão
utilizados, obviamente os mesmos campos inseridos na estrutura PS9xxx
 Insira o elemento de dados correspondente ao campo que se está inserindo,
utilizados na estrutura PS9xxx
 Verificar , Salvar e Ativar

5. Criação do infotipo 9nnn

 Transação PM01
Pág. 8

 Clique no TAB "Criar Infotipo"


 Digite o número 9xxx, correspondente ao seu infotipo
 Selecionar uma das opções: Infotipo empregado, Infotipo candidato, Ambos
 Clicar em “Tudo”
 Após a criação, a tela do IMG será aberta para atualização do novo infotipo na
tabela T582A. Uma request de customização será criada.
 Modos de preenchimento da tabela T582A:

 Copiando os dados de um infotipo previamente conhecido:

Selecione este infotipo conhecido;

Copie com o botão "Copiar";

Altere o número do infotipo e sua descrição breve;

Salve os dados da tabela

 Inserindo uma nova entrada:

Selecione o botão "Novas Entradas";

Insira o código do infotipo;

Insira a descrição breve do infotipo;

Insira os dados básicos de cada campo da tabela

A seguir a tela usada como padrão em 70% dos infotipos


Pág. 9

6. Editando a tela do infotipo 9nnn

 Transação SE51
 Digite o programa MP9nnn00, onde 9nnn é o infotipo criado
 Digite o nº da tela: 2000 para tela de entrada de dados, ou 3000 para lista de
dados
 Salve a tela depois das alterações
 Gerar novamente

7. Inserindo dados no novo infotipo

 Transação PA30
 Colocar no campo <No. Pessoal> o número do empregado
 Colocar o número do novo infotipo no campo <Infotipo>
 Selecionar o botão Criar
 A tela com os dados do novo infotipo será exibida para entrada dos dados
 A transação PA20 é apenas de consulta

Criação de infotipo com subinfotipo:

Crie na estrutura PS9nnn um campo para armazenar o código do Subinfotipo


Pág. 10

Crie na transação PE03 uma feature utilizada com a seguinte característica (cada subinfotipo tem um nó)

Na tabela T588M , crie uma entrada na tela 2000 do Module pool, para cada subinfotipo
Pág. 11

Aqui você pode habilitar e desabilitar campos que deverão ser exibidos em cada tela do subinfotipo

Na tabela T777d coloque a tabela de ligação T591A


Pág. 12

Na T591a crie os subinfotipos

Ampliação de infotipo:

 Transação PM01
 Colocar o infotipo que será ampliado no campo < Nº infotipo>
Pág. 13

 Clicar na TAB Ampliar infotipo


 Selecionar subobjeto Include CI
 Clicar em <Tudo>
 Se o include não estiver criado, a seguinte tela aparecerá:

 Preencher <Descrição Breve> do include onde serão adicionados os novos campos do


infotipo
 Colocar os campos e data elemento
 Salvar e Ativar a estrutura
 Quando voltar, uma request de customização será exigida

OBS: Tanto na criação como na ampliação de infotipo existirão uma request de workbench e uma de
customização.

EXERCÍCIO_A: Criar um infotipo 9nnn:

Descrição do infotipo: Outros Dados Pessoais

Campos: ZRG - CHAR 9


ZCPF - CHAR 11
Pág. 14

BANCO DE DADOS LÓGICO

Functions of Logical Database PNP

1. Data retrieval 2. Screening

3. Authorization check

 SAP AG 1999

O banco de dados lógico permite uma avaliação conveniente e de alta performance das tabelas
transparentes.

Possui três funções básicas:

 Obtenção dos dados: os dados pessoais de cada funcionário são carregados na memória
principal e ficam a disposição para o processo.
 Pré-seleção: através de uma tela de seleção , podemos selecionar funcionários de acordo
com um critério organizacional.
 Verificação de Autorização: o sistema verifica se o usuário que está efetuando o
processamento possui autorização para os dados que devem ser lidos. Há uma
verificação de autorização pessoal e de dados. Primeiro o sistema verifica se o usuário
possui autorização para o empregado com base nos critérios de atribuição organizacional.
Em seguida, é verificado se o usuário está autorizado a processar os infotipos do relatório
especificado.

1. Data Retrieval
Pág. 15

Data Retrieval

1. Create data structures for infotypes

INFOTYPES: 0001,
0002,
0007.

"Organizational Assignment"
"Personal Data"
"Planned Working Time"

2. Fill the data structures with the infotype records

GET PERNR.

Declaração de infotipo

Através da declaração INFOTYPES, é obtida a estrutura de dados da tabela Paxxxx correspondente.


 SAP AG 1999
INFOTYPES: 0001, “ Atribuição Organizacional
0002, “ Dados Pessoais
0003, “ Status da Folha de Pagamento

O banco de dados normalmente não possui somente um registro para infotipo e número pessoal, mas
diversos registros com diferentes períodos de validade. Os infotipos são dependentes de tempo, uma
vez que os dados correspondentes se modificam ao longo do tempo. Por esse motivo, apenas uma
estrutura ou área de trabalho não seria suficiente para o fornecimento de dados de infotipo na memória
principal. Assim, a instrução INFOTYPES é utilizada para criar uma tabela interna para cada um dos
infotipos listados. A estrutura dessa tabela corresponde aquela do infotipo relevante.

Recuperação de dados

Através da instrução GET PERNR, são preenchidas as tabelas internas de infotipos, declaradas para
cada empregado na instrução INFOTYPES.

GET PERNR.

Os dados são recuperados no momento GET PERNR. A ação é executada para todos os números
pessoais selecionados com base nas entradas da tela de seleção. O momento deve ser visualizado
como um loop através dos números pessoais selecionados. A tabela interna de infotipos é preenchida
com todos os registros desde a data de seleção inferior (low) até a data superior (high).
Obs: PERNR é uma estrutura do Dicionário de Dados. Deve-se declarar essa estrutura através da
instrução TABLES.
Processing Master Data
Pág. 16

TABLES: PERNR.
INFOTYPES: 0001, "Actions
0002, "Personal Data
0006, "Addresses
....

GET PERNR.
PROVIDE * FROM P0002 BETWEEN PN-BEGDA AND PN-ENDDA.
WRITE...

ENDPROVIDE.
Um relatório HR que utiliza o banco de dados lógico PNP possui a seguinte estrutura básica:

REPORT ZHRRPxxx.
TABLES: PERNR.
INFOTYPES: 0001. “Atribuição Organizacional
GET PERNR.
PROVIDE * FROM P0001 BETWEEN PN/BEGDA AND PN/ENDDA.
 SAP AG 1999
WRITE: / P0001-PERNR,
P0001-STELL,
P0001-BEGDA,
P0001-ENDDA.
ENDPROVIDE.

Esse relatório avalia os registros do infotipo Atribuição Organizacional no período de seleção de dados
especificado.
Após o momento GET PERNR, as tabelas internas dos infotipos estão carregadas com os registros e
prontas para processamento.

As tabelas internas são geralmente processadas linha a linha através da instrução LOOP. Essas
tabelas possuem conjuntos de funções que permitem um processamento especial.

Essas tabelas são definidas para intervalos de tempo específicos. Em HR, esses intervalos são de
tempos ou períodos de validade. O processamento dos registros de infotipo é dependente do período
de seleção de dados entrado na tela de seleção. Os dados de diversos infotipos podem ser
processados ao mesmo tempo e disponibilizados para um período de tempo parcial específico.

As tabelas internas de infotipos são processadas com a instrução PROVIDE. A sintaxe é:

PROVIDE * FROM Pnnnn BETWEEN PN/BEGDA AND PN/ENDDA.


WRITE: / Pnnnn<campo>.
Pág. 17

ENDPROVIDE.

A relação entre o infotipo e o período de seleção de dados da tela de seleção é estabelecida através
das variáveis PN/BEGDA e PN/ENDDA. Quando estas datas não são preenchidas na tela de seleção, o
BEGDA assume 01/01/1800 e o ENDDA assume 31/12/9999.

No loop PROVIDE, os dados de um registro de infotipo estão disponíveis para processamento na


estrutura Pnnnn.

Formas de LOOP:
Loop Nesting
Pág. 18

GET PERNR.
PROVIDE * FROM P0002 BETWEEN PN-BEGDA
AND PN-ENDDA. Infotype
WRITE... loop
ENDPROVIDE.
or:
LOOP AT P0002 WHERE ENDDA GE PN-BEGDA
AND BEGDA LE PN-ENDDA. Infotype
Employee
WRITE... loop
loop
ENDLOOP.

PROVIDE * FROM P0006


BETWEEN PN-BEGDA AND PN-ENDDA Infotype
WHERE P0006-SUBTY = '1'. loop
WRITE...
ENDPROVIDE.

END-OF-SELECTION.

Join:  SAP AG 1999

Um Join processa registros de dois ou mais infotipos. Os dados desses infotipos são fornecidos para
um período parcial específico.

Por exemplo: É necessário um relatório informando qual era o cargo e o endereço de um funcionário em
um período de tempo.

Os dados de endereço são os seguintes:


Pág. 19

E os dados de cargo são:

Se os dados de endereço e cargo forem fornecidos para períodos parciais específicos, ocorrem os
seguintes casos:

Período Endereço Cargo

01/2000 – 04/2000 Av. Vieira Souto / Borracheiro


05/2000 – 06/2000 Av. Vieira Souto / Esp. SAP Finanças
06/2000 – XX/XXXX Av. Sernambetiba / Esp. SAP Finanças

O comando para efetuar um join é:

PROVIDE * FROM Pmmmm


* FROM Pnnnn
BETWEEN PN/BEGDA AND PN/ENDDA.

Os períodos parciais dos infotipos do join são definidos nos campos BEGDA e ENDDA.

Os dados de cada infotipo do join devem estar disponíveis durante todo o período de validade do
infotipo. Os quadros temporais dos registros de infotipo não podem se sobrepor; dessa forma, o join não
pode conter infotipos com ligação temporal “três”.

Os quadros temporais dos registros se sobrepõem se um infotipo for lido sem quaisquer restrições de
subtipo. Por exemplo, o infotipo ENDEREÇOS (infotipo 0006), tem os subtipos residência permanente,
residência secundária e endereço residencial.

Os quadros temporais se sobreporão se todos os endereços forem lidos.


Pág. 20

O código ABAP do programa para o join de dados de endereço acima é:


REPORT ZHRRPxxx.
TABLES: PERNR.
INFOTYPES: 0001, 0006.
GET PERNR.
PROVIDE * FROM P0001
* FROM P0006 BETWEEN PN/BEGDA AND PN/ENDDA
WHERE P0006-SUBTY EQ ‘1’. “Residência permanente
WRITE:/ PERNR-PERNR, P0001-STELL, P0006-STRAS,
P0006-BEGDA, P0006-ENNDA.
ENDPROVIDE.

Às vezes, não há dados disponíveis para um determinado infotipo no período parcial selecionado.
Períodos de validade não podem se sobrepor, mas pode haver intervalos de tempo.

A variável Pnnnn_VALID reconhece se os dados estão disponíveis para o infotipo Pnnnn no período
parcial especificado. Nesse caso, a variável Pnnnn_VALID contém o valor ‘X”.

Esse exemplo de ocorrência de intervalo de tempo, pode existir entre os infotipos 0002 (Dados
Pessoais) e 0006 (Endereços).

REPORT ZHRRPxxx.
TABLES: PERNR.
INFOTYPES: 0002, 0006.
GET PERNR.
PROVIDE * FROM P0002
* FROM P0006 BETWEEN PN/BEGDA AND PN/ENDDA
WHERE P0006-SUBTY EQ ‘1’. “Residência permanente
IF P0006_VALID EQ ‘X’.
WRITE:/ PERNR-PERNR, P0002-NACHN, P0006-ORT01,
P0006-BEGDA, P0006-ENNDA.
ENDIF.
ENDPROVIDE.

Nesse caso é gerada uma lista apenas se estiverem disponíveis dados de endereço. O período em que
houver somente dados pessoais, é suprimido.

2. Screening

Como os critérios de seleção necessários dependem do relatório, o usuário deve definir a dimensão
da tela de seleção. Para isso é necessário atribuir o relatório a uma classe de relatório.

Com a atribuição de relatórios de base de dados lógico PNP a classes de relatório, pode-se modificar o
aspecto da tela de seleção. Desse modo é possível suprimir campos de entradas não necessários do
ponto de vista empresarial em alguns relatórios.
Pág. 21

No caso em que a tela de seleção standard SAP não satisfaça as necessidades, existe a possibilidade
de criar uma ou várias classes de relatórios próprias e assim estabelecer o aspecto de seleção para
essas classes.

A classe de relatório define e analisa os critérios de seleção e chaves de função necessários


(matchcode, ordenação,...).

Todos os relatórios standard HR já estão atribuídos às classes de relatórios SAP. A todos os relatórios
do cliente, que não esteja atribuída nenhuma classe de relatório, por default é atribuída a classe
‘00000000’ própria do cliente, caso ela exista; senão, é atribuída a classe de relatório standard SAP
‘ ‘.

Os nomes das classes de relatório possuem oito caracteres:

SEPDAnnn

Esses caracteres possuem o seguinte significado:

Caracter Significado Valores válidos


S Ordenar Não utilizar ordenação
X Utilizar ordenação
E Período de seleção de dados Igualdade se aplica
Período de seleção de pessoas X Igualdade não se aplica
P Área de liquidação, período e ano de folha pag. Linha não é exibida
X Linha é exibida
M Linha é exibida e o campo é
obrigatório
D Período de seleção de dados 0 Linha não é exibida
1 Data chave; apenas a date “DE”
está em modo de entrada
2 Intervalo; as datas “DE” e “ATÉ”
estão em modo de entrada
A Período de seleção de pessoas Igual ao período de seleção de dados
nnn Número seqüencial, iniciando com 001
Pág. 22

A classe de report é selecionada na tela de características do programa. Quando você coloca o banco
de dados lógico, ele disponibiliza um botão Classe de Report HR que uma vez selecionado, a tela
abaixo será exibida:

Na tela acima, através do matchcode será selecionado uma classe de report.

3. Authorization Check
Pág. 23

Authorization Check

Report
Personal data
Authorization check

-
+

 SAP AG 1999

O módulo de HR faz uma distinção entre dois tipos de autorização, uma para pessoas e outra para
dados.

O banco de dados lógico faz este check automaticamente.

Quando não estiver utilizando o banco de dados lógico , utilizar o módulo de função:
HR_CHECK_AUTHORITY_INFTY.

Banco de Dados Lógico GET Database Driver


PA-PAD ( PNP PERNR SAPDBPNP
Empregado)
PA-APP ( PAP APPLICANT SAPDBPAP
Candidato)
PD PCH OBJEC SAPDBPCH

EXERCÍCIO_B: Criar uma lista de funcionários , utilizando o banco de dados lógico PNP. Os seguintes
campos deverão ser exibidos:

Número Pessoal do Empregado ( PERNR-PERNR)


Pág. 24

Nome do Empregado (PERNR-ENAME)

Data de Nascimento ( P0002-GBDAT)

EXERCÍCIO_C: Criar uma lista de candidatos , utilizando o banco de dados lógico PAP. Os seguintes
campos deverão ser exibidos:

Número do Candidato ( APPLICANT-APLNO)

Nome do Candidato (P0002-VNAMC + P0002-NCHMC)

Data de Nascimento ( P0002-GBDAT)

MACROS
Assim como os subprogramas e os módulos de função, as macros podems ser usadas para modularizar
programas. Elas são muito utilizadas no módulo de HR.

As macros são definidas com o comando DEFINE.


Pág. 25

Elas podem ser utilizadas em qualquer programa que utiliza banco de dados lógico. Em programas
que não utilizam o banco de dados lógico, o include que contém a macro desejada deve ser
mencionado. Por exemplo, para o banco de dados lógico PNP, o include que contém macros é o
DBPNPMAC.

As macros definidas na tabela TRMAC podem ser utilizadas por todos os relatórios.

Dependendo do relatório a ser impresso, geralmente não é necessário todos os registros de infotipos.
Nesse caso utilizamos algumas das instruções macros abaixo:

RP-PROVIDE-FROM-LAST Pnnnn SPACE PN/BEGDA PN/ENDDA.

ou

RP-PROVIDE-FROM-FIRST Pnnnn SPACE PN/BEGDA PN/ENDDA.

Essas instruções disponibilizam o registro mais recente ou mais antigo no período de seleção de dados
PN/BEGDA a PN/ENDDA.

Os parâmetros da instrução acima são:


Pnnnn -> Infotipo;
SPACE -> Subinfotipo (Quando não está disponível, SPACE);
PN/BEGDA -> Data de Início;
PN/ENDDA -> Data de Fim.
Pág. 26

Processing a Specific Infotype Record

Data selection January December

January December
Table
Pnnnn

GET PERNR.
RP_PROVIDE_FROM_LAST <Pnnnn> SPACE PN-BEGDA PN-ENDDA.
IF PNP-SW-FOUND = 1.
WRITE...
ENDIF.
 SAP AG 1999

No exemplo acima, o usuário quer o registro mais recente.

Lista de Macros: abaixo seguem algumas macros ligadas ao banco de dados lógico PNP, que estão na
tabela TRMAC. Algumas delas são utilizadas em eventos específicos.

Data definition
RP-LOWDATE-HIGHDATE ( define as constants – LOWDATE (18000101) e HIGHDATE(99991231)
para comparações)

Ex: RP-LOWDATE-HIGHDATE.
...
GET PERNR.
...
IF Pnnnn-ENDDA EQ HIGH-DATE.

Initialization
RP-SEL-EIN-AUS-INIT ( esta macro permite que somente os funcionários ativos sejam selecionados)
Pág. 27

Start-of-selection
RP-SET-NAME-FORMAT
RP-FETCH-ALTER-PERID
RP-SET-KEY-DATE

Selection (GET PERNR)


RP-SEL-CALC
RP-WRITE-ALTER-PERID
RP-MAKE-ADDRESS
RP-EDIT-ADDRESS
RP-READ-ALL-TIME-ITY
RP-EDIT-NAME
RP-INIT-BUFFER
RP-IMP-Cn-xx
RP-EXP-Cn-xx
RP-REF-Cn-xx

Top-of-page
RP-STICHTAG
RP-ZEITRAUM

Em qualquer ponto: (Selection, End-of-selection,...)

1. Obtenção de dados:
RP-READ-INFOTYPE
RP-READ-T001P
RP-READ-T5D0P
RP-READ-PAYROLL-DIR

2. Processamento de dados:
RP-PROVIDE-FROM-FRST
RP-PROVIDE-FROM-LAST

3. Modificação de dados:
RP-UPDATE

Exemplo de atualização da macro RP-UPDATE:

Em casos excepcionais (Ex.: Infotipos próprios do cliente), pode ser necessário que sejam efetuados
relatórios utilitários para efetivar uma modificação direta nos dados pessoais nas tabelas da base de
dados.
Pág. 28

As modificações são efetuadas em três etapas:

 Seleção dos registros do infotipos que serão modificados;


 Efetuar as modificações, colocando os dados em uma tabela alternativa;
 Efetivar a gravação da tabela alternativa na base de dados.

Exemplo:

INFOTYPES: nnnn NAME TAB_OLD,


nnnn NAME TAB_NEW.

GET PERNR.
PROVIDE * FROM TAB_OLD WHERE...
(Nesse ponto, efetua-se as modificações necessárias)
TAB_NEW[ ] = TAB_OLD[ ].
APPEND TAB_NEW. (Efetua a gravação na tabela alternativa)
ENDPROVIDE.
RP-UPDATE TAB_OLD TAB_NEW.

A atualização da base de dados se efetua com a macro RP-UPDATE, utilizando como parâmetros a
tabela interna TAB_OLD com os registros ainda não modificados e a tabela interna TAB_NEW com os
registros modificados.

Obs: As modificações de chaves da tabela, deletar ou inserir dados não são possíveis.
Não são efetuadas verificação de consistência dos dados modificados, por esse motivo é
recomendado que os dados sejam alterados através de um batch-input.

EXERCÍCIO_D: Criar uma lista de funcionários , utilizando o banco de dados lógico PNP. Os seguintes
campos deverão ser exibidos:

Número Pessoal do Empregado ( PERNR-PERNR)


Nome do Empregado (PERNR-ENAME)
Área de Recursos Humanos ( nome (T001P-BTEXT) do código da área de recursos humanos
(P001-WERKS)

Considerar o registro mais recente do infotipo 1. Utilizar as macros:

 RP-PROVIDE-FROM-LAST e RP-READ-T001P

FUNÇÕES
Dentro do HR, você pode ler registros de um infotipo sem a utilização de banco de dados lógico. Para
isto, utlizamos a função HR_READ_INFOTYPE.
Reading Infotypes Without Logical DB (1)
Pág. 29

PAnnnn

INFOTYPES: <nnnn>.
...
CALL FUNCTION
'HR_READ_INFOTYPE'...

Reading Infotypes Without Logical DB (2)

 SAP AG 1999
INFOTYPES: 0002.
DATA: return LIKE SY-SUBRC.

CALL FUNCTION 'HR_READ_INFOTYPE'


EXPORTING
. . .
PERNR = <person>
INFTY = '0002'
BEGDA = <begdat>
ENDDA = <enddat>

IMPORTING
SUBRC = return
TABLES
INFTY_TAB = P0002
EXCEPTIONS
INFTY_NOT_FOUND = 1
OTHERS = 2.

 SAP AG 1999

A função HR_READ_INFOTYPE tem como objetivo ler os registros de uma pessoa ( funcionário ou
candidato) de acordo com o critério de seleção. Os valores são retornados em tabelas internas
contendo a estrutura da tabela do infotipo.

Esta função realiza um check de autorização.

A maioria das funções em HR tem as duas letras iniciais começadas por HR, RH ou RP. Para encontrá-
las utilizar a transação SE37.
Pág. 30

Exemplos de funções:

RP_GET_HIRE_DATE Determina a data de admissão do Empregado


HR_ECM_READ_OBJECT Descrição do Objeto ( STEXT, SHORT)
RH_READ_INFTY_1000 Determina os dados dos objetos de PD
RH_READ_INFTY_1001 Ligações entre os objetos de PD
RH_STRUC_GET Determina a estrutura organizacional
BAPI_EMPLOYEE_ENQUEUE Trava um número de pessoal, antes de atualizar dados
BAPI_EMPLOYEE_DEQUEUE Libera o número do pessoal que estava travado
HR_INFOTYPE_OPERATION Manutenção do Infotipo (MOD, COPY, DEL,INS, LIS9)
HR_CHECK_AUTHORITY_INFTY Verifica autorização

EXERCÍCIO_E: Criar uma lista de funcionários , utilizando a função RH_READ_INFOTYPE. Os


seguintes campos deverão ser exibidos:

Número Pessoal do Empregado ( P0002-PERNR)

Nome do Empregado (P0002-CNAME)

Data de Nascimento ( P0002-GBDAT)


Pág. 31

CLUSTERS

Database Tables in HR

PAnnnn HR data (master and time data)

PCL1 Database for HR work areas

Accounting results
PCL2 (Time, trip costs, payroll)

PCL3 Recruitment data

PCL4 Documents

PCL5 Personnel cost planning

 SAP AG 1999

As tabelas de dados PAnnnn contém dados classificados por infotipos.

As tabelas PCLn são tipos de tabelas de importação e exportação de dados. Elas são definidas no
programa através do comando TABLES.

As tabelas da base de dados do tipo PCLn estão divididas em subáreas conhecidas como clusters de
dados.

O file PCL1 possui informações originadas no registro de tempos, por exemplo, folhas de salários por
rendimento ou textos de infotipo suplementares.

O file PCL2 possui informações derivados, como resultados do cálculo da folha de pagamento. Possui
também todos os esquemas de folha de pagamento gerados.

O file PCL3 possui os dados de candidatos.

O file PCL4 possui os documentos de modificação para dados mestre HR e recrutamento.


Pág. 32

No file PCL1, encontraremos, entre outras, as seguintes áreas de dados:

B1 DADOS TEMPORAIS

G1 SALÁRIO POR RENDIMENTO DO GRUPO

L1 SALÁRIO POR INCENTIVO INDIVIDUAL

PC CALENDÁRIO PESSOAL

TE DESPESAS DE VIAGEM/RESULTADOS DA LIQUIDAÇÃO

TS DESPESAS DE VIAGEM/DADOS MESTRES

TX TEXTOS PARA INFOTIPOS

ZI INTERFACE PARA CONTABILIDADE DE CUSTOS/GESTÃO DE MATERIAIS

No file PCL2, encontraremos, entre outras, as seguintes áreas de dados:

B2 RESULTADO DAS LIQUIDAÇÕES DE TEMPOS

CD CLUSTER-DIRECTORY

PS ESQUEMA GERADO

PT TEXTO PARA O ESQUEMA GERADO

RX RESULTADO DO CÁLCULO DA FOLHA DE PAGAMENTO/INTERNACIONAL

RN RESULTADO DO CÁLCULO DA FOLHA DE PAGAMENTO/POR PAÍSES (N = IND. PAÍS HR)

ZL PLANO DE TURNOS PESSOAL


Pág. 33

No file PCL3, encontramos as seguintes áreas de dados:

AP LOG DE AÇÃO/PLANO DE DATAS

TY DB Table
TEXTOS PARA OS INFOTIPOS DOS
Administration/ PCLnCANDIDATOS

PCLn
IMPORT TABLES: PCLn.

A1 A2

EXPORT

Os arquivos de importação/exportação PCLn são administrados com os comandos IMPORT e


EXPORT. Você pode usar estes comandos para armazenar objetos de dados como campos, estruturas
ou tabelas internas. Os dados são lidos e gravados usando uma chave única.
 SAP AG 1999

As macros RMAC RP-IMP-Cn-xx e RP-EXP-Cn-xx são fornecidas para os dados de importação e


exportação, onde n é o número do arquivo ( 1 = PCL1, 2 = PCL2) e xx é a identificação do cluster.

Os dados de diferentes áreas de aplicação HR são arquivados em cluster nos files PCLn.

Cada área de aplicação deve possuir um nome de cluster de dois caracteres . Também deve possuir
uma estrutura chave; 40 bytes do campo SRTFD estão disponíveis para essa estrutura.

Quando um registro é exportado para o file PCLn, a ID de cluster é gravada no campo RELID e o valor
chave no campo SRTFD.

As definições de dados de uma área de trabalho estão arquivadas em programas individuais


(INCLUDES) com uma convenção fixa para definição de nomes:

RPCnxyz0 onde:
Pág. 34

RPC = fixo
n = 1,2,3 ou 4 (para PCL1, PCL2, PCL3 ou PCL4)
xx = ID do cluster
y = agrupamento de países ( tabela T500L)

Ex: O programa RPC1TXO0 contém a definição de dados do cluster TX.

A estrutura chave do cluster é armazenada em um field string xy-KEY onde o número pessoal é o
primeiro elemento.

O nome da chave xy depende do cluster:

CLUSTER CHAVE XY
RA RX-KEY
B1 B1-KEY
G3 G3-KEY
XA RX-KEY

A chave RX-KEY é usada para todos os clusters Rx e Xx. Em todos os outros casos, o nome da chave
xy corresponde à chave do cluster.
Pág. 35

FOLHA DE PAGAMENTO

Schemas & rules

PAnnnn

PAYROLL PCL2
DRIVER
HBRCALC0 - Brasil
PCL2 xy

xy

PAYROLL RESULTS

H99_DISPLAY_PAYRESULT - versão 4.6 C

 SAP AG1999

Rubricas são os valores que compõe o pagamento do funcionário. Como exemplo desconto de
INSS, bonificação, vale refeição, etc..
Algumas são valores fixos e outras são calculadas em tempo de execução do programa de cálculo da
folha de pagamentos.
Tabela de rubricas: T512W.

A forma como a folha de pagamento é processada varia de empresa para empresa. Algumas
possuem benefícios e descontos que outras não possuem, conforme o ramo de atuação, política interna
e uma série de outros fatores.
Dentre esses descontos e benefícios, alguns podem ser eliminados, outros são criados.
Imaginem se pensarmos a nível global.
Como tratar os fatores da legislação trabalhista que mudam com freqüência para cada país?
Para possibilitar a implementação dessa série de mudanças no modo como a folha é calculada, sem a
necessidade de alteração do programa standard, foi criado o Esquema de Cálculo de Pessoal.
Pág. 36

Nota É importante ressaltar que mesmo com a existência do esquema, não foi possível
manter uma única versão do programa da Folha de Pagamento para todos os países. Existe um
standard para específicos para alguns países ou grupo de países. O nome do standard utilizados pelo
Brasil é HBRCALC0.

O esquema nada mais é do que um conjunto de regras que informam ao programa de Cálculo
de Folha de Pagamento como o mesmo deve trabalhar para apurar o salário de um funcionário. O
esquema é definido como um conjunto de instruções. Composto de uma série de funções, algumas
destas funções executam processamentos diretos e outras processam regras. As regras são comandos
que possibilitam realizar cálculos, envolvento informações numéricas e também informações cadastrais
dos funcionários.

Transação PE01 – manutenção esquema

Transação PE02 – manutenção regras

Transação PE03 – manutenção das features

Transação PE04 – manunteção das funções

Para criação de uma nova função, utilizar o símbolo % como caracter inicial.

Colocando o nome da função na tela inicial da transação PE04, clicar no botão <Criar>. Em seguida, a
tela abaixo será exibida para definição das características da função. O consultor funcional é
responsável por esta definição.
Pág. 37

O código da nova função fica em um programa específico PCBURXX0, onde XX é variável. No caso do
Brasil, o include que contém as funções é o PCBURBR0. Este include exige chave de acesso na
primeira vez que é utilizado.
O nome do FORM consiste de fuxxxxx onde xxxxx é o nome da função criada na PE04.

Sugestão para inclusão das novas funções:

 No include PCBURXX0, criar um include ZCPCBURXX0


 Colocar as funções no include ZCPCBURXX0

Exemplo de uma função nova criada:

*----------------------------------------------------------------------*
* Include ZPCBURZBR0 *
*----------------------------------------------------------------------*
*---------------------------------------------------------------------*
* Calculo da DMA - Diferença do mês anterior
*---------------------------------------------------------------------*
FORM fu%test.

DATA:
w_dtant LIKE p0008-begda,
w_2000 LIKE p0015-betrg.

CONSTANTS:
c_2000 LIKE p0015-lgart VALUE '2000'.

w_dtant = aper-begda - 30.

*--Leitura do infotipo
rp_read_infotype pernr-pernr 0008 p0008 '18000101' '99991231'.

*--Buscar salario do empregado


LOOP AT p0008.
IF p0008-begda <= w_dtant AND
p0008-endda >= w_dtant.
IF p0008-lga01 = 'M010'.
Pág. 38

w_2000 = p0008-bet01.
ELSE.
w_2000 = p0008-bet01 * p0008-divgv.
ENDIF.
ENDIF.
ENDLOOP.

it-lgart = c_2000.
it-betrg = w_2000.
APPEND it.

ENDFORM. "FU%TEST

Cuidado Como estes forms são utilizados pelo DRIVE da folha de pagamento algumas regras
devem ser seguidas:

 Importante lembrar que qualquer desenvolvimento em funções e operações deve prever a


possibilidade de um reprocessamento já que o processamento da Folha de Pagamento pode
ser excluído e refeito.

 Não utilizar o comando MESSAGE para emissão de mensagens. Ao invés disso é necessário a
chamada do FORM FILL_MSGTAB. Isso porque além da folha tratar vários funcionários de
uma vez, o que dificultaria a visualização das mensagens, ao chamar esse form indicando erro, o
processamento para o funcionário corrente é abortado e seu número é separado na árvore de log
como funcionários processados com erro. Todas as mensagens emitidas via FILL_MSGTAB são
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)
Pág. 39

'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 conteúdo das tabelas RT, IT e OT é necessário
alimentar a tabela T52BW – INPUT E OUTPUT DE FUNÇÃO via transação SM30.

O cluster da folha de pagamento é o resultado do processamento da folha de pagamento para um


funcionário em um determinado mês. Esse resultado fica armazenado em tabelas cluster no BD e podem
ser visualizados sem a necessidade de uma nova execução do programa de cálculo.

O programa para visualização do cluster é o HBRCLSTR.


NotaPara o manuseio do cluster existem macros e funções especiais, como por exemplo as
funções CU_READ_RGDIR e PYXX_READ_PAYROLL_RESULT.
Um outro método 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 funcionários:
É necessário informar o Banco de Dados Lógico PNP nos atributos do programa.

REPORT ZEXEMPLO_CLUSTER.

* Declarações ----------------------------------------------------------
TABLES: PCL1, "Cluster 1 HR
PCL2, "Cluster 2 HR
ITCPP,
PERNR. "Funcionários

*- 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 recuperação do Cluster

DATA:
SUBRC LIKE SY-SUBRC,
FBEG LIKE SY-DATUM, "Início período
FEND LIKE SY-DATUM. "Fim período

*- Parâmetros Seleção --------------------------------------------------


PARAMETERS PMES LIKE QPPNP-PABRP.
PARAMETERS PANO LIKE QPPNP-PABRJ.

*- Eventos -------------------------------------------------------------
START-OF-SELECTION.
"Move o 1o. dia e o último do mês informado no parâmetro para FBEG e
"FEND
CONCATENATE PANO PMES '01' INTO FBEG.
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
EXPORTING
DAY_IN = FBEG
Pág. 40

IMPORTING
LAST_DAY_OF_MONTH = FEND.

"Executa para cada funcionário. Banco de dados lógico 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 contém todos os processamentos de folha realizados


"para o funcionário.
LOOP AT RGDIR.

"Verifica se existe processamento de folha para o mês


"solicitado no parâmetro de execução nesse funcionário
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.

ANEXO I – INFOTIPOS PA

PA0001 Registro mestre HR: infotipo 0001 (atrib.org.)


PA0002 Registro mestre HR infotipo 0002 (Dados pessoais)
PA0003 Registro mestre HR infotipo 0003 (Status folha pag.)
PA0004 Registro mestre HR infotipo 0004 (Deficiência)
PA0005 Registro mestre pessoal: infotipo 0005 (direito a férias)
PA0006 Registro mestre HR infotipo 0006 (Endereços)
PA0007 Registro mestre pessoal infotipo 0007 (tempo de trabalho)
PA0008 Reg.mestre HR infotipo 0008 (Remuneração base)
Pág. 41

PA0009 Reg.mestre HR infotp.0009 (coordenadas bancárias)


PA0010 HR Master Record: Infotype 0010 (Capital Formation)
PA0011 Reg.mestre HR infotipo 0011 (Transfs.bancárias ext.)
PA0012 HR Master Record: Infotype 0012 (Fiscal Data - Germany)
PA0013 Infotipo Seguro social Alemanha
PA0014 Reg.mestre HR infotp.0014 (Pagamentos e deduções const.)
PA0015 Reg.mestre HR infotp.0015 (pagamentos adicionais)
PA0016 Registro mestre HR infotipo 0016 (Elementos do contrato)
PA0017 Registro mestre HR: infotp.0017 (Privilégios viag.)
PA0019 Registro mestre HR infotipo 0019 (Datas)
PA0020 HR Master Record: Infotype 0020 (DUEVO)
PA0021 Registro mestre HR infotipo 0021 (Família)
PA0022 Registro mestre HR infotipo 0022 (Formação)
PA0023 Registro mestre HR infotipo 0023(ativids.em outras empresas)
PA0024 Registro mestre HR infotipo 0024 (Qualificações)
PA0025 Registro mestre HR infotipo 0025 (Avaliações)
PA0026 HR Master Record: Infotype 0026 (Company Pension Plan)
PA0027 Reg.mestre HR infotipo 0027 (Distribuição custos)
PA0028 Registro mestre HR infotipo 0028 (saúde)
PA0029 HR Master Record: Infotype 0029 (Workers' Compensation)
PA0030 Registro mestre HR infotipo 0030(Procurações)
PA0031 Registro mestre HR infotipo 0031 (Nº pessoal de referência)
PA0032 Registro mestre HR infotipo 0032 (Acordos internos)
PA0033 International Infotype 0033: Statistics Exceptions
PA0034 Registro mestre HR infotipo 0034 (Funções internas)
PA0035 Reg.mestre HR infotp.0035 (Instruções da firma)
PA0036 HR Master Record: Infotype 0036 (Social Insurance CH)
PA0037 Registro mestre HR infotipo 0037 (Seguro)
PA0038 HR Master Record: Infotype 0038 (Tax - CH)
PA0039 HR Master Record: Infotype 0039 (Add. Org. Assign. CH)
PA0040 Registro mestre HR infotipo 0040 (Cessões)
PA0041 Registro mestre HR infotipo 0041 (indicações de data)
PA0042 HR Master Record: Infotype 0042 (Tax - Austria)
PA0043 HR Master Record: Infotype 0043 (Family Allowance - A)
PA0044 HR Master Record: Infotype 0044 (Social Insurance - A)
PA0045 Registro mestre HR: infotipo 0045 (empr.)
PA0046 HR Master Record: Infotype 0046 (Pension Fund - CH)
PA0048 HR Master Record: Infotype 0048 (Residence Status - CH)
PA0049 HR Master Record: Infotype 0049 (Red.Hrs./Bad Weather)
PA0050 Registro mestre pessoal infotipo 0050 (registro horas)
PA0051 HR Master Record: Infotype 0051 (ASB/SPI Data)
PA0052 Infotipo registro mestre HR 0052 (seguro rendimento)
PA0053 HR Master Record: Infotype 0053 (Pension Reserves)
PA0054 Infotp.registro mestre HR 0054 (Consel.empresa)
PA0055 HR Master Record: Infotype 0055 (Previous Employer - A)
PA0056 HR Master Record: Infotype 0056 (Sick Certificates-A)
PA0057 Registro mestre HR infotipo 0057 (afiliação)
PA0058 HR Master Record: Infotype 0058 (Commuter Lump Sum A)
PA0059 HR Master Record: Infotype 0059 (Social Insurances - NL)
PA0060 HR Master Record: Infotype 0060 (Wage Tax - NL)
PA0061 HR Master Record: Infotype 0061 (Social Insurance - E)
PA0062 HR Master Record: Infotype 0062 (Tax - E)
PA0063 HR Master Record: Infotype 0063 (Social Fund - NL)
PA0064 HR Master Record: Infotype 0064 (Social Insurance - F)
PA0065 HR Master Record: Infotype 0065 (Tax - GB)
Pág. 42

PA0066 HR Master data infotype 0066 - Canadian garnishment: order


PA0067 HR master data infotype 0067 - Canadian garnishment: debt
PA0068 HR master data infotype 0068 - Canadian garnishment: adjust
PA0069 HR Master Record: Infotype 0069 (Nat. Insurance - GB)
PA0070 HR Master Record: Infotype 0070 (Court Orders - GB)
PA0071 HR Master Record: Infotype 0071 (Pension Funds - GB)
PA0072 HR Master Record: Infotype 0072 (Tax - DK)
PA0073 HR Master Record: Infotype 0073 (Private Pensions - DK)
PA0074 HR Master Record: Infotype 0074 (Vacation/SH DK)
PA0075 HR Master Record: Infotype 0075 (ATP Pension - DK)
PA0076 HR Master Record: Infotype 0076 (Workers Compensation NA)
PA0077 Registro mestre HR infotipo 0077 (outros dados da pessoa)
PA0078 Registro mestre HR infotipo 0078 (empréstimo-pag.&imp.)
PA0079 Não relevante para português
PA0080 Registro mestre pessoal: infotipo 0080 (proteção matern.)
PA0081 Registro mestre pessoal: infotipo 0081 (serviço militar)
PA0082 Registro mestre pessoal: infotipo 0082 (result.dds.ausên.)
PA0083 Registro mestre pessoal: infotipo 0083 (compensações)
PA0084 HR Master Record: Infotype 0084 (Sickness Pay Control - GB)
PA0085 HR Master Record: Infotype 0085 (Work Incapacity Periods GB)
PA0086 HR Master Record: Infotype 0086 (SSP/SMP Exclusions GB)
PA0088 HR Master Record: Infotype 0088 (SMP Record - GB)
PA0090 HR Master Record: Infotype 0090 (Various Payee Keys)
PA0092 HR Master Record: Infotype 0092 (Seniority - E)
PA0093 HR Master Record: Infotype 0093 (Previous Employer - D)
PA0094 HR Master Record: Infotype 0094 (Residence Status - NA)
PA0095 HR Master Record: Infotype 0095 (Tax Canada)
PA0096 HR Master Record: Infotype 0096 (Tax - USA)
PA0097 Já não é utilizado - vai ser eliminado
PA0098 HR Master Record: Infotype 0098 (Profit Sharing - F)
PA0099 Já não é utilizado - vai ser eliminado
PA0100 HR Master Record: Infotype 0100 (SI B)
PA0101 HR Master Record: Infotype 0101 (Tax B)
PA0102 HR Master Record: Infotype 0102 (Grievances NA)
PA0103 HR Master Record: Infotype 0103 (Bond Purchases NA)
PA0104 HR Master Record: Infotype 0104 (Bond Denominations NA)
PA0105 Registro mestre HR infotipo 0105 (comunicações)
PA0106 HR Master Record: Infotype 0106 (Related Persons NA)
PA0107 HR Master Record: Infotype 0107 (Work Schedule B)
PA0108 HR Master Record: Infotype 0108 (Personal Data B)
PA0109 HR Master Record: Infotype 0109 (Contract Elements B)
PA0110 HR Master Record: Infotype 0110 (Pensions NL)
PA0111 HR Master Record: Infotype 0111 (Garnishment Admin. D)
PA0112 HR Master Record: Infotype 0112 (Garn.Repaym. D)
PA0113 HR Master Record: Infotype 0113 (Garnishment Int. D)
PA0114 HR Master Record: Infotype 0114 (Garnishable Amount D)
PA0115 Reg.mestre HR infotipo 0115 (Penhora casos espec.% salário)
PA0116 HR Master Record: Infotpye 0116 (Garn.Transfer D)
PA0117 HR Master Record: Infotype 0117 (Garnishment Comp.)
PA0118 HR Master Record: Infotype 0118 (Child Allowance D)
PA0119 HR Master Record: Infotype 0119 (Annual Income CA D)
PA0120 HR Master Record: Infotype 0120 (Pension Fund Trans. CH)
PA0121 Registro mestre HR infotipo 0121 (priorid.nº pessoal ref.)
PA0122 HR Master Record: Infotype 0122 (Child Allowance Bonus D)
PA0123 Já não utilizado - é eliminado
Pág. 43

PA0124 Já não é utilizado - vai ser eliminado


PA0125 HR Master Record: Infotype 0125 (Garnishment B)
PA0126 Não relevante para português
PA0127 HR Master Record: Infotype 0127 (Commuting NL)
PA0128 Registro mestre HR infotipo 0128 (administr.txt.)
PA0129 Registro mestre HR infotipo 0129 (atribuição nºs txt.)
PA0130 HR Master Record: Infotpye 0130 (Checking Procedures)
PA0131 HR Master Record: Infotype 0131 (Garn.Mgmt.Data A)
PA0132 HR Master Record: Infotpye 0132 (Garnishment A)
PA0133 HR Master Record: Infotype 0133 (Garnsh.Interest A)
PA0134 HR Master Record: Infotype 0134 (Garnishable Amount A)
PA0135 HR Master Record: Infotpye 0135 (Garn.Spec.Cond. A)
PA0136 HR Master Record: Infotype 0136 (Garnish.Trans A)
PA0137 HR Master Record: Infotype 0137 (Garnish.Comp. A)
PA0138 HR Master Record: Infotype 0138 (Family/Ref.Pers B)
PA0139 Registro mestre HR infotipo 0139 (Nº candidato do empregado)
PA0140 HR Master Record: Infotype 0140 (SI Basic Data JP)
PA0141 HR Master Record: Infotype 0141 (SI Premium Data JP)
PA0142 HR Master Record: Infotype 0142 (Residence Tax JP)
PA0143 HR Master Record: Infotype 0143 (Life Insurance JP)
PA0144 HR Master Record: Infotype 0144 (Property Accum. JP)
PA0145 HR Master Record: Infotype 0145 (Personnel Tax Status JP)
PA0146 HR Master Record: Infotype 0146 (Y.E.A. Data JP)
PA0147 HR Master Record: Infotype 0147
PA0148 HR Master Record: Infotype 0148 (Family JP)
PA0149 HR Master Record Infotype 0149 (Tax Data South Africa)
PA0150 HR Master Record Infotype 0150 (Social Insurance SA)
PA0151 HR Master Record Infotype 0151 (Ext.Insurance South Africa)
PA0154 HR master record, infotype 0154 (Social Security data)
PA0155 HR master record, infotype 0155 (Additional admin. data)
PA0156 HR master data, infotype 0156 (Tax deductions)
PA0157 HR master record, infotype 0157 (User administration data)
PA0158 HR master record, infotype 0158(Amounts paid by 3rd parties)
PA0159 HR master data, infotype 0159 (Seniority)
PA0160 HR master record, info-type 0160 (Family allowance)
PA0161 HR Master Record: Infotype 0161 (Limits IRS)
PA0162 HR Master Record: Infotype 0162 (Ins. Y.E.T.A Data JP)
PA0165 Registro mestre HR infotipo 0165 (limitação deduções)
PA0167 Reg.mestre pessoal: infotipo 0167 (planos de saúde)
PA0168 Reg.mestre de pessoal: infotipo 0168 (planos de seguro)
PA0169 Reg.mestre pessoal: infotipo 0169 (plns.poup.)
PA0170 Reg.mestre pessoal: infotipo 0170 (contas poupança)
PA0171 Reg.mestre de pessoal: infotipo 0171 (dds.gerais de benefs.)
PA0172 Reg.mestre de pessoal: infotipo 0172 (seguro de pensão)
PA0173 Tax card information
PA0174 <Lønns- og trekkoppgave> info
PA0177 HR Master Record: Infotype 0177 (Act proport.labor part.for)
PA0179 HR Master Record: Infotype 0179 (Tax SG)
PA0180 Alternative Address Data (Thailand)
PA0181 HR Master Record: Infotype 0181 [Add. Funds] (SG)
PA0182 HR Master Record: Infotype 0182 [Alternative Names] (SG)
PA0183 HR Master Record: Infotype 0183 [Awards] (SG)
PA0184 HR Master Record: Infotype 0184 [Resume text] (SG)
PA0185 HR Master Record: Infotype 0185 [Identification] (SG)
PA0186 HR Master Record: Infotype 0186 [Social Insurance] (SG)
Pág. 44

PA0187 Additional family data


PA0188 Tax (Australia)
PA0189 HR Master Record Infotype 0189 (Construction Industry Wages)
PA0190 HR Master Data Record Infotype 0190 (BuildingTradePrevERDat)
PA0191 HR Master Record Infotype 0191 (BuildingTradeReimbursExpens)
PA0192 Personnel Master Record Infotype 0192 (BuildingTrade Attrib)
PA0194 HR Master Record Infotype 0194 (Garnishment Document)
PA0195 HR Master Record Infotype 0195 (Garnishment Order)
PA0196 HR Master Record:Infotype 0196 (Employee Provident Fund MY)
PA0197 HR Master Record:Infotype 0197 (SOCSO Contributions MY)
PA0198 Sheduled Tax Deductuion Malaysia
PA0199 Tax deduction CP38 / Additional amt / Bonus - Malaysia
PA0200 HR Master Record, Infotype 0200 (Garnishments DK)
PA0201 Personnel master record infotype 0201 (basic pension amnts)
PA0202 HR master data infotype 0202 (Entitlements)
PA0203 HR master record infotype 0203 (Pension/Reserve Status)
PA0204 HR Master Record, Infotype 0204 (DA/DS Statistics DK)
PA0207 HR Master Record: Infotype 0207 (Residence Tax Area)
PA0208 HR Master Record: Infotype 0208 (Work Tax Area - USA)
PA0209 HR Master Record: Infotype 0209 (Unemployment Insurance USA)
PA0210 HR Master Record: Infotype 0210 (W4 USA)
PA0211 Reg.mestre pessoal: infotipo 0211 (beneficiárs.auts.COBRA)
PA0212 Reg.mestre pessoal: infotipo 0212 (planos saúde COBRA)
PA0213 Additional family information - Malaysia
PA0215 Building Trade Transaction Data
PA0216 Garnishment Adjustment
PA0217 Infotype 0217 (INSEE code)
PA0218 Infotype 0218 (number of pension fund)
PA0219 Reg.mestre pessoal: infotipo 0219 (organizações externas)
PA0220 Superannuation (Australia)
PA0221 HR Master Record: Infotype 0221 (Manual Checks)
PA0222 HR Master Record for Infotype 0222 (Company Cars GB)
PA0224 Tax information - inf. 0224 - Canada
PA0225 HR Master Record for Infotype 0225 (Company Cars GB 2)
PA0227 Tax file number (Australia)
PA0230 HR Master Record: Infotype 0230 / View 0008 (PSG)
PA0231 HR Master Record: Infotype 0231 / View 0001 (PSG)
PA0232 Personal-Master Record Infotype 0232 (Child Allowance) (D)
PA0233 HR-F master record infotype 0233 ('Bilan Social')
PA0234 HR Master Record Infotype 0234 (Add. Withh. Inform. - USA)
PA0235 HR Master Record: Infotype 0235 (Other Taxes - USA)
PA0236 Reg.mestre pessoal: infotipo 0236 (planos crédito)
PA0237 HR Master Record: Infotype 0237 / View for 0052 (PSG)
PA0241 Indonesian Tax Data
PA0242 JAMSOSTEK Details, Indonesia
PA0261 Leave Accrual Australia
PA0264 HR Master Record: Infotype 0264/view for Infotype 0021
PA0265 HR Master Record: Infotype 0265 / Special Regulations (PSG)
PA0266 HR Master Record: Infotype 0266 / View 0027 (PSG)
PA0267 HR Master Record: Infotype 0267 (One time Payment off-cycle)
PA0268 HR Master Record Infortype view 0045 and 0268 (Loan JPN)
PA0269 HR Master Record: Infotype 0269 (ADP Information USA)
PA0270 Registro mestre pessoal: infotipo 0270 (pagamentos COBRA)
PA0271 HR master data infotype 0271 (Public Sector statistics)
PA0272 HR master record - infotype 0272 (Garnishment F)
Pág. 45

PA0273 HR Master Record: Infotype 0273 (Tax - SE)


PA0274 HR Master Record: Infotype 0274 (Insurance - SE)
PA0275 HR Master Record: Infotype 0275 (Garnishment - SE)
PA0276 HR Master Record: Infotype 0276 (OPIS - SE)
PA0277 HR Master Record: Infotype 0277 (Exceptions - SE)
PA0278 HR master record infotype 0278 (PF basic data [CH])
PA0279 HR master record infotype 0279 (Indiv.values for PF [CH])
PA0280 HR Master Record Infotype 0280/View for 0016
PA0281 HR Master Record Infotype 0281/View for 0045
PA0283 Registro mestre HR infotipo 0283 (arquivamento)
PA0288 HR CH: HR Master Record Infotype 0021 (Suppl. Switzerland)
PA0302 Registro mestre HR infotipo 0302 (medidas supl.)
PA0303 HR Master Record: Infotype 303 (reductn tax/soc.ins.contrNL)
PA0304 Basic pay - additional information
PA0305 HR master record, infotype 0305 (Previous employer)
PA0306 HR master record, infotype 0306 (Family data)
PA0309 IRD Number Infotype NZ
PA0310 Superannuation NZ
PA0311 Leave Adjustments - NZ
PA0312 Leave History Adjustments NZ
PA0313 Employee Taxation Detail Infotype NZ
PA0314 I0314: Days for Vacation Allow. and Sal.Deducs (DK/N)
PA0315 CATS: infos.emissor
PA0317 HR Master Record: Infotype 0317 (special arrangements)
PA0318 HR Master Record: Infotype Family data for Indonesia (0318)
PA0319 Indonesia Private Insurances
PA0320 Official housing
PA0321 Employee accommodations
PA0322 HR Master Data Record Infotype 0322 (Pensions and Rel. Ben.)
PA0323 HR Master Record Infotype 0323 (Pension Plan)
PA0326 HR Master Record IT 0326 (Imputation to Pension Payments)
PA0329 HR master record infotype 0329 ( Sideline Job)
PA0330 Infotype 0330 (Non-monetary remuneration)
PA0331 Registro mestre HR: infotp.0331 (imp.- PT)
PA0332 Reg.mestre HR: infotipo 0332 (segurança social - PT)
PA0333 Reg.mestre HR: infotipo 0333 (deficiência - P)
PA0334 Reg.mestre HR: infotipo 0334
PA0335 Reg.mestre HR: infotipo 0335 (visão de infotipo 21 - PT)
PA0336 Reg.mestre HR: infotipo 0336 (visão de infotipo 2 - PT)
PA0337 Reg.mestre HR: infotipo 0337 (classificações prof. - PT)
PA0341 HR - Master Record Infotype 341 (DUEVO Start)
PA0342 HR Master Record: Infotype 0342 (HK Extension to I0002)
PA0343 HR Master Record: Infotype 0343 (Contract HK)
PA0344 HR Master Record: Infotype 0344 (Familiy members HK)
PA0345 HR Master Record: Infotype 0345 (Hong Kong Tax)
PA0346 HR Master Record: Infotype 0346 (Contribution plan)
PA0347 HR Master Record: Infotype 0347 (Entitlement plan)
PA0348 HR Master Record: Infotype 0348 (HK Appraisal and bonus)
PA0349 HR Master Record: Infotype 0349 (Eligibility grouping)
PA0351 HR Master Record: Infotype 0351 (Country Information)
PA0352 NHI for Family member (TW)
PA0353 Income Tax Taiwan
PA0354 Labor Insurance Taiwan
PA0355 National Health Insurance Taiwan
PA0356 Employment Stabilization Fund (TW)
Pág. 46

PA0357 Saving Plan (TW)


PA0358 Employee Welfare Fund (TW)
PA0359 HR Master Record : Infotype 0359 (PRSI Ireland)
PA0360 HR Master Record : Infotype 0360 (PRSI Ireland)
PA0361 HR Master Record : Infotype 0361 (Pensions Admin. - IE)
PA0362 HR Master Record: Infotype Membership for Indonesia (0362)
PA0363 Previous employment period
PA0364 Infotype Tax TH
PA0365 Social Security TH
PA0366 Provident Fund THAILAND
PA0367 HR Master Record: Infotype 0367 (SI-Addit.Notif.Data A)
PA0368 Rehabilitants and challenged persons
PA0369 HR Master Record: Infotype 0369 (IMSS data)
PA0370 HR Master Record: Infotype 0370 (INFONAVIT credit data)
PA0371 HR Master Record: Infotype 0371 (Previous Jobs Wages)
PA0372 Master data: Infotype 0372 (Gross Daily Wage)
PA0373 HR loan repayment plan JP (for P0268)
PA0374 Infortype 0374: General Eligibility
PA0375 Reg.dds.mestre pessoal: infotipo 0375 (dds.benefs.adicions.)
PA0376 Reg.dds mestre pessoal: infotipo 0376 (dds.benefs.médicos)
PA0377 Reg.dds mestre pessoal: infotipo 0377 (outros planos)
PA0378 Reg.dds mestre pess.infotipo 0378 (motivo ajuste benefs.)
PA0379 Reg.dds mestre pess.infotipo 0379 (plns.aquisição ações)
PA0380 Registro mestre HR infotipo 0380 (adapt.remuneração)
PA0381 Registro mestre HR infotp.0381(admissibilidade plano remun.)
PA0382 Registro mestre HR infotipo 0382 (ações)
PA0383 Registro mestre HR infotipo 0383 (Pacote remuner.)
PA0384 Registro mestre HR infotipo 0384
PA0386 HR Master Record: Infotype 0386 (VHI Scheme)
PA0387 HR Master Record : Infotype 0387 (Starter's Details)
PA0388 HR Master Record: Infotype 0388 (Union JP)
PA0389 Income Tax: General indicators
PA0390 Income Tax: Deductions
PA0391 Income Tax: Other employers information
PA0392 Social Security: General data
PA0393 Family data: Calendar year schooling assistance
PA0394 Family data: Additional information
PA0395 Registro mestre HR: infotipo 0395 (atrib.organiz.externa)
PA0396 Registro mestre HR: infotipo 0396 (atrib.expatriação)
PA0397 Infotipo 0021 Família
PA0398 Infotipo 0016 - Acordos corporativos e contratuais
PA0399 HRMS-VE: Income Tax Infotype table (IT0399)
PA0400 HRMS-VE: CSS Infotype table (IT0400)
PA0401 HRMS-VE: Benefits Infotype table (IT401)
PA0402 Registro mestre HR infotipo 0402
PA0403 Registro mestre HR infotipo 0403
PA0404 HR Master Record: Infotype 0404 (Military Service Taiwan)
PA0405 Personnel Master Record Infotype 0405 (Absence Events)
PA0406 HR-PSG: Infotype 0406 (Pension information)
PA0407 HR master record, infotype 0407 (Additional absence info)
PA0408 HR Master Record: Infotype 0408 (CBS NL)
PA0409 HR Master Record: Infotype 0409 (External Agencies NL)
PA0410 Infotipo 0410 - Vale-transporte
PA0411 Taxation Philippines - infotype
PA0412 HR-SG: Family Data ( View infotype 0412 for IT0021 )
Pág. 47

PA0415 Registro mestre HR infotp.0415


PA0416 Infotp.compensação contingente tempos, tabela BD
PA0421 HR master record, infotype 0421 (Special payments)
PA0422 SSS Philippines infotype
PA0423 HR Master Record: Infotype 0423
PA0426 Legal order
PA0427 Debts by legal order
PA0428 Beneficiary data (Additional information)
PA0433 HR Master Record Infotype 0433/View for 0009
PA0434 HR Master Record Infotype 0434/View for 0011 (GB Version)
PA0437 Empregos simultâneos (BR)
PA0438 HR Master Record: Infotype 0438
PA0439 Registro mestre HR infotipo 0439 (transf.dados)
PA0440 HR Master Record: Infotype 0440 (Receipts)
PA0442 HR Master Record: Infotype 0442
PA0447 HR Master Record for Infotype 0447
PA0448 HR Master Record for Infotype 0448
PA0449 HR Master Record: Infotype 0449
PA0450 HR Master Record: Infotype 0450
PA0451 HR Master Record: Infotype 0451
PA0452 HR Master Record: Infotype 0452
PA0453 HR Master Record: Infotype 0453
PA0454 HR Master Record: Infotype 0454
PA0455 HR Master Record: Infotype 0455
PA0456 HR Master Record: Infotype 0456
PA0457 HR Master Record: Infotype 0457
PA0458 HR Master Record for Infotype 0458
PA0459 HR Master Record for Infotype 0459
PA0460 HR Master Record for Infotype 0460
PA0467 Personnel master data Infotype 0467 (SI addit.notif. pl.c.A)
PA0468 Reg.mestre pessoal p/infotipo 0468
PA0469 Reg.mestre pessoal p/infotipo 0469
PA0470 Reg.mestre pessoal p/infotipo 0470 (perfis de viagens)
PA0471 Reg.mestre pessoal p/infotipo 0471 (preferências de vôo)
PA0472 Reg.mestre pessoal p/infotipo 0472 (preferências de hotel)
PA0473 Reg.mestre pessoal p/infotipo 0473 (prefer.carro de aluguel)
PA0474 Reg.mestre pessoal p/infotipo 0474 (preferências de trem)
PA0475 Reg.mestre pessoal p/infotipo 0475 (programas do cliente)
PA0476 Personnel Master Record for Infotype 0476 (Deductions Spain)
PA0477 Personnel Master Record for Infotype 0477 (Ded. Spain: Debt)
PA0478 Personnel Master Record for Infotype 0478 (Ded. Spain: Adj.)
PA0480 Personnel Master Record for Infotype 0480
PA0482 HRMS-VE: Additional Family/Pers.Refer. data Infotype(IT0021)
PA0483 Infotype 0483 - Data entry from CAAF - Italy only
PA0491 HR Master Record: Infotype 0491
PA0506 Tip Indicators
PA0510 HR Master Record: Infotype 0510 (Tax-sheltered annuity)
PA0525 Child care
PA0546 HR Master Record: Infotype 0546 (Termination Data)
PA0547 HR Master Record: Infotype 0547
PA0561 Tax data
PA0900 Registro mestre HR tipo info 0900 (dados vendas e distr.)
PA0901 Registro mestre HR infotipo 0901 (dds.compra)
PA2001 Registro horas pessoal: infotipo 2001 (ausências)
PA2002 Registro horas pessoal: infotipo 2002 (presenças)
Pág. 48

PA2003 Registro horas pessoal: infotipo 2003 (substituição)


PA2004 Registro horas pessoal: infotipo 2004 (disponibilidade)
PA2005 Registro horas pessoal: infotipo 2005 (horas extras)
PA2006 Registro horas pessoal: infotipo 2006 (contigente ausências)
PA2007 Registro horas pessoal infotipo 2007 (autorização presença)
PA2010 Registro horas pessoal: infotipo P2010 (info remun.empr.)
PA2012 Registro horas pessoal: infotipo 2012 (revisão do saldo)
PA2013 Infotipo reg.tempo pess.2013 (correções contingente)
PA2500 Registro mestre HR para infotipo 2500
PA2501 Registro mestre HR infotipo 2501
PA2502 Registro mestre HR infotipo 2502
PB0001 Registro mestre HR: infotipo 0001 (atrib.org.)
PB0002 Registro mestre HR infotipo 0002 (Dados pessoais)
PB0006 Registro mestre HR infotipo 0006 (Endereços)
PB0009 Reg.mestre HR infotp.0009 (coordenadas bancárias)
PB0022 Registro mestre HR infotipo 0022 (Formação)
PB0023 Registro mestre HR infotipo 0023(ativids.em outras empresas)
PB0024 Registro mestre HR infotipo 0024 (Qualificações)
PB0028 Registro mestre HR infotipo 0028 (saúde)
PB0041 Registro mestre HR infotipo 0041
PB0077 Registro mestre HR infotipo 0077
PB0105 Registro mestre HR infotipo 0105 (comunicações)
PB0108 HR Master Record: Infotype 0108 (Personal Data B)
PB0185 HR Master Record: Infotype 0185 (Personal ID)
PB0336 Reg.mestre HR: infotipo 0336 (visão de infotipo 2 - PT)
PB0342 HR Master Record: Infotype 0342 (HK Extension to I0002)
PB0343 HR Master Record: Infotype 0343 (Contract HK)
PB0395 Registro mestre HR: infotipo 0395 (atrib.organiz.externa)
PB0396 Registro mestre HR: infotipo 0396 (atrib.expatriação)
PB4000 Infotipo 4000 ações rel.cand.
PB4001 Infotp.4001 candidaturas
PB4002 Infotipo 4002 atrib.de vagas
PB4003 Infotipo 4003 (operações cand.)
PB4004 Dados candidato infotipo 4004 (status tarefas repetitivas)
PB4005 Infotipo 4005 (nº pessoal do candidato interno)

ANEXO II – ESTRUTURAS PERNR E APPLICANT


Estrutura PERNR

CAMPO DESCRIÇÃO
PERNR No. Pessoal
MASSN Tipo de Medidas
MASSG Motivo da Medida
STAT1 Status específico do cliente
STAT2 Status ocupação
STAT3 Status pagamento especial
BUKRS Empresa
WERKS Área de Recursos Humanos
PERSG Grupo de empregados
PERSK Subgrupo de empregados
VDSK1 Chave de organização
Pág. 49

GSBER Divisão
BTRTL Subárea de Recursos Humanos
JUPER Pessoa Jurídica
ABKRS Área de processamento de Folha de Pagamento
ANSVH Vínculo empregatício
KOSTL Centro de custo
ORGEH Unidade Organizacional
PLANS Posição
STELL Função
MSTBR Área mestre
SACHA Encarregado folha de pagamento
SACHP Encarregado para dados mestre de pessoal
SACHZ Encarregado do registro de horas
SNAME Nome do empregado
ENAME Nome editado do empregado
OTYPE Categoria do Objeto
SBMOD Grupo de encarregados
KOKRS Área de contabilidade de custos
FISTL Centro Financeiro
GEBER Fundo
MASNG Medida, Motivo da medida
STATU Campo concatenado: status 1, 2 e 3
XBWBK Área RH, Subárea RH, Centro Custo
KOKTL Área Contabilidade de Custos, Centro Custo
XPGPK Grupo, Subgrupo empregados
SASBA Modif. Encarregado, encarregado folha pag.
SASBP Modif. Encarregado, encarregado pessoal
SASBZ Modif. Encarregado, encarregado tempos
DAYPS Data de início de período de seleção de pessoas

Estrutura APPLICANT

CAMPO DESCRIÇÃO
APLNO No. Pessoal
ENAME Nome editado do empregado
SNAME Nome do empregado
BUKRS Empresa
WERKS Área de Recursos Humanos
BTRTL Subárea de Recursos Humanos
PERSG Grupo de candidatos
PERSK Segmentação de candidatos
RESRF Responsável de pessoal pela candidatura
OFFID Anúncio da Vaga
SPAPL Grupo de candidatos espontâneos
APSTA Status global do candidato
STREA Motivo do status do candidato
MASSN Tipo de ação relativa a candidato
REFEM Código de Referência
RFPER Empregado de Referência
Pág. 50

ANEXO III – SOLUÇÕES DOS EXERCÍCIOS

EXERCÍCIO_B: Criar uma lista de Empregados

*&---------------------------------------------------------------------*
*& Report ZHR_TREINA_B00
*& *
*&---------------------------------------------------------------------*
*& Criar uma lista de funcionários
*&
*&---------------------------------------------------------------------
REPORT ZHR_TREINA_B00.

* Tables
tables: PERNR.

* Infotypes
infotypes: 0002. "Registro mestre HR infotipo 0002 (Dados pessoais)

* Evento START-OF-SELECTION
START-OF-SELECTION.

* Preenchimento das tabelas dos infotipos


GET PERNR.

PROVIDE * FROM P0002 BETWEEN PN-BEGDA AND PN-ENDDA.

WRITE: / p0002-pernr, " No. Pessoal


sy-vline,
pernr-ename, "Nome do Funcionário
sy-vline,
p0002-gbdat. "Data de Nascimento

ENDPROVIDE.

EXERCÍCIO_C: Criar uma lista de Candidatos

*&---------------------------------------------------------------------*
*& Report ZHR_TREINA_C00
*& *
*&---------------------------------------------------------------------*
*& Criar uma lista de candidatos
*&
*&---------------------------------------------------------------------
REPORT ZHR_TREINA_C00.

* Tables
Pág. 51

tables: APPLICANT.

* Infotypes
infotypes: 0002. "Registro mestre HR infotipo 0002 (Dados pessoais)

* Variáveis
data: vg_nome(40) type c.

* Evento START-OF-SELECTION
START-OF-SELECTION.

* Preenchimento das tabelas dos infotipos


GET APPLICANT.

PROVIDE * FROM P0002 BETWEEN PAPBEGDA AND PAPENDDA.

concatenate p0002-vnamc p0002-nchmc into vg_nome


separated by space.

WRITE: / applicant-aplno, " No. Candidato


sy-vline,
vg_nome, "Nome do Candidato
sy-vline,
p0002-gbdat. "Data de Nascimento

ENDPROVIDE.

EXERCÍCIO_D: Criar uma lista de Empregados utilizando macros

*&---------------------------------------------------------------------*
*& Report ZHR_TREINA_D00
*& *
*&---------------------------------------------------------------------*
*& Determinar uma lista de funcionários com a sua Àrea de Recursos
*& Humanos mais recente
*&---------------------------------------------------------------------
REPORT ZHR_TREINA_D00.

* Tables
tables: PERNR, "Seleções standard para reporting de dados mestre HR
T001P."Áreas/subáreas HR

* Infotypes
infotypes: 0001. "Registro mestre HR: infotipo 0001 (atrib.org.)

* Evento START-OF-SELECTION
START-OF-SELECTION.

* Preenchimento das tabelas dos infotipos


GET PERNR.

* determina o registro mais recente


rp-provide-from-last p0001 space pn-begda pn-endda.

* determina o nome da área de recursos humanos


rp-read-t001p p0001-werks p0001-btrtl space.

WRITE: / pERNR-pernr, " No. Pessoal


sy-vline,
pernr-ename, "Nome do Funcionário
sy-vline,
t001p-btext. "Texto da Area de Recursos Humanos

EXERCÍCIO_E: Criar uma lista de Empregados utilizando funções


Pág. 52

*&---------------------------------------------------------------------*
*& Report ZHR_TREINA_E00
*& *
*&---------------------------------------------------------------------*
*& Exibir dados do funcionário sem utilização de Banco de Dados Lógico
*&---------------------------------------------------------------------
REPORT ZHR_TREINA_E00.

* Tables
TABLES: PA0001.

* Infotypes
infotypes: 0002.

* Tabelas Internas
data: begin of t_dados occurs 0,
pernr like p0002-pernr,
cname like p0002-cname,
gbdat like p0002-gbdat,
end of t_dados.

* Parâmetros de Seleção
select-options: s_pernr for pa0001-pernr no intervals.

* Evento START-OF-SELECTION
START-OF-SELECTION.

loop at s_pernr.

CALL FUNCTION 'HR_READ_INFOTYPE'


EXPORTING
TCLAS = 'A'
PERNR = s_pernr-low
INFTY = '0002'
BEGDA = sy-datum
ENDDA = '99991231'
TABLES
INFTY_TAB = p0002
EXCEPTIONS
INFTY_NOT_FOUND = 1
OTHERS = 2.

if not p0002[] is initial.

clear t_dados.
T_DADOS-PERNR = P0002-PERNR.
T_DADOS-CNAME = P0002-CNAME.
T_DADOS-GBDAT = P0002-GBDAT.
append t_dados.

endif.

endloop.

* Evento END-OF-SELECTION
END-OF-SELECTION.

IF NOT T_DADOS[] IS INITIAL.


WRITE: / T_DADOS-pernr, " No. Pessoal
sy-vline,
T_DADOS-cname, "Nome do Funcionário
sy-vline,
T_DADOS-gbdat. "Data de Nascimento
ENDIF.
Pág. 53

ANOTAÇÕES:

Você também pode gostar