Page 1

Pág. 1

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

Recruitment

Hiring

Benefits Enrollment

Training H O T E L

Time statement

Employee Development & Salary Administration

Payroll

Travel

Time Reporting & Shift Planning

 SAP AG 1999

Divisão do módulo de HR : 1. 2. 3. 4.

Administração de Pessoal (PA) Estrutura organizacional (PD) Gerenciamento de Tempo (TM) Folha de Pagamento (PY)

Estrutura Organizacional:

O

T

O

C

S

A

T

Objetos: O – Organizational Unit – Áreas de Negócio, Setores C – Job - Cargos Genérico que descreve o Específico 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 K – Cost Center – Objeto de CO que pode ser relacionado com os objetos O ou S, sempre em PD. 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) identificar o período de validade.

e de término(ENDDA) para

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 Organizacional, Ligação do universo PA com PD PROVIDE * FROM Pnnnn IT0002: Dados Pessoais ( Nome, Sobrenome, Sexo, Estado Civil, etc) BETWEEN PN-BEGDA IT0008: Remuneração Base AND 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 Temporal

Infotipo

Descrição

Considerações

2 3

IT2001 IT0021

Ausências Familiares

Podem existir várias ausências com quebra de tempo 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, 0002, 0003,

“ Atribuição Organizacional “ Dados Pessoais “ 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, 0002, 0006, ....

"Actions "Personal Data "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. WRITE... ENDPROVIDE. or: LOOP AT P0002 WHERE ENDDA GE PN-BEGDA AND BEGDA LE PN-ENDDA. WRITE... ENDLOOP. PROVIDE * FROM P0006 BETWEEN PN-BEGDA AND PN-ENDDA WHERE P0006-SUBTY = '1'. WRITE... ENDPROVIDE.

Infotype loop

Infotype loop

Employee loop

Infotype loop

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 05/2000 – 06/2000 06/2000 – XX/XXXX

Av. Vieira Souto Av. Vieira Souto Av. Sernambetiba

/ / /

Borracheiro Esp. SAP Finanças 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 S E P

D

A nnn

Significado Ordenar

Valores válidos Não utilizar ordenação X Utilizar ordenação Período de seleção de dados Igualdade se aplica Período de seleção de pessoas X Igualdade não se aplica Á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 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 Período de seleção de pessoas Igual ao período de seleção de dados 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.

PA-PAD ( Empregado) PA-APP ( Candidato) PD

Banco de Dados Lógico PNP

GET PERNR

Database Driver SAPDBPNP

PAP

APPLICANT

SAPDBPAP

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

Table Pnnnn

January

December

January

December

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 TABLES INFTY_TAB EXCEPTIONS INFTY_NOT_FOUND OTHERS

= return = P0002 = 1 = 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 HR_ECM_READ_OBJECT RH_READ_INFTY_1000 RH_READ_INFTY_1001 RH_STRUC_GET BAPI_EMPLOYEE_ENQUEUE BAPI_EMPLOYEE_DEQUEUE HR_INFOTYPE_OPERATION

HR_CHECK_AUTHORITY_INFTY

Determina a data de admissão do Empregado Descrição do Objeto ( STEXT, SHORT) Determina os dados dos objetos de PD Ligações entre os objetos de PD Determina a estrutura organizacional Trava um número de pessoal, antes de atualizar dados Libera o número do pessoal que estava travado Manutenção do Infotipo (MOD, COPY, DEL,INS, LIS9) 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

PCL1

PCL2

HR data (master and time data)

Database for HR work areas Accounting results (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 CANDIDATOS Administration/ PCLn

PCLn IMPORT A1

TABLES: PCLn.

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 n xx y

= = = =

fixo 1,2,3 ou 4 (para PCL1, PCL2, PCL3 ou PCL4) ID do cluster 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 B1 G3 XA

RX-KEY B1-KEY G3-KEY 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

PCL2

PAYROLL 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 w_2000

LIKE p0008-begda, 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. Nota

Para 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, FEND LIKE SY-DATUM.

"Início período "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 PA0002 PA0003 PA0004 PA0005 PA0006 PA0007 PA0008

Registro mestre HR: infotipo 0001 (atrib.org.) Registro mestre HR infotipo 0002 (Dados pessoais) Registro mestre HR infotipo 0003 (Status folha pag.) Registro mestre HR infotipo 0004 (Deficiência) Registro mestre pessoal: infotipo 0005 (direito a férias) Registro mestre HR infotipo 0006 (Endereços) Registro mestre pessoal infotipo 0007 (tempo de trabalho) Reg.mestre HR infotipo 0008 (Remuneração base)


Pág. 41

PA0009 PA0010 PA0011 PA0012 PA0013 PA0014 PA0015 PA0016 PA0017 PA0019 PA0020 PA0021 PA0022 PA0023 PA0024 PA0025 PA0026 PA0027 PA0028 PA0029 PA0030 PA0031 PA0032 PA0033 PA0034 PA0035 PA0036 PA0037 PA0038 PA0039 PA0040 PA0041 PA0042 PA0043 PA0044 PA0045 PA0046 PA0048 PA0049 PA0050 PA0051 PA0052 PA0053 PA0054 PA0055 PA0056 PA0057 PA0058 PA0059 PA0060 PA0061 PA0062 PA0063 PA0064 PA0065

Reg.mestre HR infotp.0009 (coordenadas bancárias) HR Master Record: Infotype 0010 (Capital Formation) Reg.mestre HR infotipo 0011 (Transfs.bancárias ext.) HR Master Record: Infotype 0012 (Fiscal Data - Germany) Infotipo Seguro social Alemanha Reg.mestre HR infotp.0014 (Pagamentos e deduções const.) Reg.mestre HR infotp.0015 (pagamentos adicionais) Registro mestre HR infotipo 0016 (Elementos do contrato) Registro mestre HR: infotp.0017 (Privilégios viag.) Registro mestre HR infotipo 0019 (Datas) HR Master Record: Infotype 0020 (DUEVO) Registro mestre HR infotipo 0021 (Família) Registro mestre HR infotipo 0022 (Formação) Registro mestre HR infotipo 0023(ativids.em outras empresas) Registro mestre HR infotipo 0024 (Qualificações) Registro mestre HR infotipo 0025 (Avaliações) HR Master Record: Infotype 0026 (Company Pension Plan) Reg.mestre HR infotipo 0027 (Distribuição custos) Registro mestre HR infotipo 0028 (saúde) HR Master Record: Infotype 0029 (Workers' Compensation) Registro mestre HR infotipo 0030(Procurações) Registro mestre HR infotipo 0031 (Nº pessoal de referência) Registro mestre HR infotipo 0032 (Acordos internos) International Infotype 0033: Statistics Exceptions Registro mestre HR infotipo 0034 (Funções internas) Reg.mestre HR infotp.0035 (Instruções da firma) HR Master Record: Infotype 0036 (Social Insurance CH) Registro mestre HR infotipo 0037 (Seguro) HR Master Record: Infotype 0038 (Tax - CH) HR Master Record: Infotype 0039 (Add. Org. Assign. CH) Registro mestre HR infotipo 0040 (Cessões) Registro mestre HR infotipo 0041 (indicações de data) HR Master Record: Infotype 0042 (Tax - Austria) HR Master Record: Infotype 0043 (Family Allowance - A) HR Master Record: Infotype 0044 (Social Insurance - A) Registro mestre HR: infotipo 0045 (empr.) HR Master Record: Infotype 0046 (Pension Fund - CH) HR Master Record: Infotype 0048 (Residence Status - CH) HR Master Record: Infotype 0049 (Red.Hrs./Bad Weather) Registro mestre pessoal infotipo 0050 (registro horas) HR Master Record: Infotype 0051 (ASB/SPI Data) Infotipo registro mestre HR 0052 (seguro rendimento) HR Master Record: Infotype 0053 (Pension Reserves) Infotp.registro mestre HR 0054 (Consel.empresa) HR Master Record: Infotype 0055 (Previous Employer - A) HR Master Record: Infotype 0056 (Sick Certificates-A) Registro mestre HR infotipo 0057 (afiliação) HR Master Record: Infotype 0058 (Commuter Lump Sum A) HR Master Record: Infotype 0059 (Social Insurances - NL) HR Master Record: Infotype 0060 (Wage Tax - NL) HR Master Record: Infotype 0061 (Social Insurance - E) HR Master Record: Infotype 0062 (Tax - E) HR Master Record: Infotype 0063 (Social Fund - NL) HR Master Record: Infotype 0064 (Social Insurance - F) HR Master Record: Infotype 0065 (Tax - GB)


Pág. 42

PA0066 PA0067 PA0068 PA0069 PA0070 PA0071 PA0072 PA0073 PA0074 PA0075 PA0076 PA0077 PA0078 PA0079 PA0080 PA0081 PA0082 PA0083 PA0084 PA0085 PA0086 PA0088 PA0090 PA0092 PA0093 PA0094 PA0095 PA0096 PA0097 PA0098 PA0099 PA0100 PA0101 PA0102 PA0103 PA0104 PA0105 PA0106 PA0107 PA0108 PA0109 PA0110 PA0111 PA0112 PA0113 PA0114 PA0115 PA0116 PA0117 PA0118 PA0119 PA0120 PA0121 PA0122 PA0123

HR Master data infotype 0066 - Canadian garnishment: order HR master data infotype 0067 - Canadian garnishment: debt HR master data infotype 0068 - Canadian garnishment: adjust HR Master Record: Infotype 0069 (Nat. Insurance - GB) HR Master Record: Infotype 0070 (Court Orders - GB) HR Master Record: Infotype 0071 (Pension Funds - GB) HR Master Record: Infotype 0072 (Tax - DK) HR Master Record: Infotype 0073 (Private Pensions - DK) HR Master Record: Infotype 0074 (Vacation/SH DK) HR Master Record: Infotype 0075 (ATP Pension - DK) HR Master Record: Infotype 0076 (Workers Compensation NA) Registro mestre HR infotipo 0077 (outros dados da pessoa) Registro mestre HR infotipo 0078 (empréstimo-pag.&imp.) Não relevante para português Registro mestre pessoal: infotipo 0080 (proteção matern.) Registro mestre pessoal: infotipo 0081 (serviço militar) Registro mestre pessoal: infotipo 0082 (result.dds.ausên.) Registro mestre pessoal: infotipo 0083 (compensações) HR Master Record: Infotype 0084 (Sickness Pay Control - GB) HR Master Record: Infotype 0085 (Work Incapacity Periods GB) HR Master Record: Infotype 0086 (SSP/SMP Exclusions GB) HR Master Record: Infotype 0088 (SMP Record - GB) HR Master Record: Infotype 0090 (Various Payee Keys) HR Master Record: Infotype 0092 (Seniority - E) HR Master Record: Infotype 0093 (Previous Employer - D) HR Master Record: Infotype 0094 (Residence Status - NA) HR Master Record: Infotype 0095 (Tax Canada) HR Master Record: Infotype 0096 (Tax - USA) Já não é utilizado - vai ser eliminado HR Master Record: Infotype 0098 (Profit Sharing - F) Já não é utilizado - vai ser eliminado HR Master Record: Infotype 0100 (SI B) HR Master Record: Infotype 0101 (Tax B) HR Master Record: Infotype 0102 (Grievances NA) HR Master Record: Infotype 0103 (Bond Purchases NA) HR Master Record: Infotype 0104 (Bond Denominations NA) Registro mestre HR infotipo 0105 (comunicações) HR Master Record: Infotype 0106 (Related Persons NA) HR Master Record: Infotype 0107 (Work Schedule B) HR Master Record: Infotype 0108 (Personal Data B) HR Master Record: Infotype 0109 (Contract Elements B) HR Master Record: Infotype 0110 (Pensions NL) HR Master Record: Infotype 0111 (Garnishment Admin. D) HR Master Record: Infotype 0112 (Garn.Repaym. D) HR Master Record: Infotype 0113 (Garnishment Int. D) HR Master Record: Infotype 0114 (Garnishable Amount D) Reg.mestre HR infotipo 0115 (Penhora casos espec.% salário) HR Master Record: Infotpye 0116 (Garn.Transfer D) HR Master Record: Infotype 0117 (Garnishment Comp.) HR Master Record: Infotype 0118 (Child Allowance D) HR Master Record: Infotype 0119 (Annual Income CA D) HR Master Record: Infotype 0120 (Pension Fund Trans. CH) Registro mestre HR infotipo 0121 (priorid.nº pessoal ref.) HR Master Record: Infotype 0122 (Child Allowance Bonus D) Já não utilizado - é eliminado


Pág. 43

PA0124 PA0125 PA0126 PA0127 PA0128 PA0129 PA0130 PA0131 PA0132 PA0133 PA0134 PA0135 PA0136 PA0137 PA0138 PA0139 PA0140 PA0141 PA0142 PA0143 PA0144 PA0145 PA0146 PA0147 PA0148 PA0149 PA0150 PA0151 PA0154 PA0155 PA0156 PA0157 PA0158 PA0159 PA0160 PA0161 PA0162 PA0165 PA0167 PA0168 PA0169 PA0170 PA0171 PA0172 PA0173 PA0174 PA0177 PA0179 PA0180 PA0181 PA0182 PA0183 PA0184 PA0185 PA0186

Já não é utilizado - vai ser eliminado HR Master Record: Infotype 0125 (Garnishment B) Não relevante para português HR Master Record: Infotype 0127 (Commuting NL) Registro mestre HR infotipo 0128 (administr.txt.) Registro mestre HR infotipo 0129 (atribuição nºs txt.) HR Master Record: Infotpye 0130 (Checking Procedures) HR Master Record: Infotype 0131 (Garn.Mgmt.Data A) HR Master Record: Infotpye 0132 (Garnishment A) HR Master Record: Infotype 0133 (Garnsh.Interest A) HR Master Record: Infotype 0134 (Garnishable Amount A) HR Master Record: Infotpye 0135 (Garn.Spec.Cond. A) HR Master Record: Infotype 0136 (Garnish.Trans A) HR Master Record: Infotype 0137 (Garnish.Comp. A) HR Master Record: Infotype 0138 (Family/Ref.Pers B) Registro mestre HR infotipo 0139 (Nº candidato do empregado) HR Master Record: Infotype 0140 (SI Basic Data JP) HR Master Record: Infotype 0141 (SI Premium Data JP) HR Master Record: Infotype 0142 (Residence Tax JP) HR Master Record: Infotype 0143 (Life Insurance JP) HR Master Record: Infotype 0144 (Property Accum. JP) HR Master Record: Infotype 0145 (Personnel Tax Status JP) HR Master Record: Infotype 0146 (Y.E.A. Data JP) HR Master Record: Infotype 0147 HR Master Record: Infotype 0148 (Family JP) HR Master Record Infotype 0149 (Tax Data South Africa) HR Master Record Infotype 0150 (Social Insurance SA) HR Master Record Infotype 0151 (Ext.Insurance South Africa) HR master record, infotype 0154 (Social Security data) HR master record, infotype 0155 (Additional admin. data) HR master data, infotype 0156 (Tax deductions) HR master record, infotype 0157 (User administration data) HR master record, infotype 0158(Amounts paid by 3rd parties) HR master data, infotype 0159 (Seniority) HR master record, info-type 0160 (Family allowance) HR Master Record: Infotype 0161 (Limits IRS) HR Master Record: Infotype 0162 (Ins. Y.E.T.A Data JP) Registro mestre HR infotipo 0165 (limitação deduções) Reg.mestre pessoal: infotipo 0167 (planos de saúde) Reg.mestre de pessoal: infotipo 0168 (planos de seguro) Reg.mestre pessoal: infotipo 0169 (plns.poup.) Reg.mestre pessoal: infotipo 0170 (contas poupança) Reg.mestre de pessoal: infotipo 0171 (dds.gerais de benefs.) Reg.mestre de pessoal: infotipo 0172 (seguro de pensão) Tax card information <Lønns- og trekkoppgave> info HR Master Record: Infotype 0177 (Act proport.labor part.for) HR Master Record: Infotype 0179 (Tax SG) Alternative Address Data (Thailand) HR Master Record: Infotype 0181 [Add. Funds] (SG) HR Master Record: Infotype 0182 [Alternative Names] (SG) HR Master Record: Infotype 0183 [Awards] (SG) HR Master Record: Infotype 0184 [Resume text] (SG) HR Master Record: Infotype 0185 [Identification] (SG) HR Master Record: Infotype 0186 [Social Insurance] (SG)


Pág. 44

PA0187 PA0188 PA0189 PA0190 PA0191 PA0192 PA0194 PA0195 PA0196 PA0197 PA0198 PA0199 PA0200 PA0201 PA0202 PA0203 PA0204 PA0207 PA0208 PA0209 PA0210 PA0211 PA0212 PA0213 PA0215 PA0216 PA0217 PA0218 PA0219 PA0220 PA0221 PA0222 PA0224 PA0225 PA0227 PA0230 PA0231 PA0232 PA0233 PA0234 PA0235 PA0236 PA0237 PA0241 PA0242 PA0261 PA0264 PA0265 PA0266 PA0267 PA0268 PA0269 PA0270 PA0271 PA0272

Additional family data Tax (Australia) HR Master Record Infotype 0189 (Construction Industry Wages) HR Master Data Record Infotype 0190 (BuildingTradePrevERDat) HR Master Record Infotype 0191 (BuildingTradeReimbursExpens) Personnel Master Record Infotype 0192 (BuildingTrade Attrib) HR Master Record Infotype 0194 (Garnishment Document) HR Master Record Infotype 0195 (Garnishment Order) HR Master Record:Infotype 0196 (Employee Provident Fund MY) HR Master Record:Infotype 0197 (SOCSO Contributions MY) Sheduled Tax Deductuion Malaysia Tax deduction CP38 / Additional amt / Bonus - Malaysia HR Master Record, Infotype 0200 (Garnishments DK) Personnel master record infotype 0201 (basic pension amnts) HR master data infotype 0202 (Entitlements) HR master record infotype 0203 (Pension/Reserve Status) HR Master Record, Infotype 0204 (DA/DS Statistics DK) HR Master Record: Infotype 0207 (Residence Tax Area) HR Master Record: Infotype 0208 (Work Tax Area - USA) HR Master Record: Infotype 0209 (Unemployment Insurance USA) HR Master Record: Infotype 0210 (W4 USA) Reg.mestre pessoal: infotipo 0211 (beneficiárs.auts.COBRA) Reg.mestre pessoal: infotipo 0212 (planos saúde COBRA) Additional family information - Malaysia Building Trade Transaction Data Garnishment Adjustment Infotype 0217 (INSEE code) Infotype 0218 (number of pension fund) Reg.mestre pessoal: infotipo 0219 (organizações externas) Superannuation (Australia) HR Master Record: Infotype 0221 (Manual Checks) HR Master Record for Infotype 0222 (Company Cars GB) Tax information - inf. 0224 - Canada HR Master Record for Infotype 0225 (Company Cars GB 2) Tax file number (Australia) HR Master Record: Infotype 0230 / View 0008 (PSG) HR Master Record: Infotype 0231 / View 0001 (PSG) Personal-Master Record Infotype 0232 (Child Allowance) (D) HR-F master record infotype 0233 ('Bilan Social') HR Master Record Infotype 0234 (Add. Withh. Inform. - USA) HR Master Record: Infotype 0235 (Other Taxes - USA) Reg.mestre pessoal: infotipo 0236 (planos crédito) HR Master Record: Infotype 0237 / View for 0052 (PSG) Indonesian Tax Data JAMSOSTEK Details, Indonesia Leave Accrual Australia HR Master Record: Infotype 0264/view for Infotype 0021 HR Master Record: Infotype 0265 / Special Regulations (PSG) HR Master Record: Infotype 0266 / View 0027 (PSG) HR Master Record: Infotype 0267 (One time Payment off-cycle) HR Master Record Infortype view 0045 and 0268 (Loan JPN) HR Master Record: Infotype 0269 (ADP Information USA) Registro mestre pessoal: infotipo 0270 (pagamentos COBRA) HR master data infotype 0271 (Public Sector statistics) HR master record - infotype 0272 (Garnishment F)


Pág. 45

PA0273 PA0274 PA0275 PA0276 PA0277 PA0278 PA0279 PA0280 PA0281 PA0283 PA0288 PA0302 PA0303 PA0304 PA0305 PA0306 PA0309 PA0310 PA0311 PA0312 PA0313 PA0314 PA0315 PA0317 PA0318 PA0319 PA0320 PA0321 PA0322 PA0323 PA0326 PA0329 PA0330 PA0331 PA0332 PA0333 PA0334 PA0335 PA0336 PA0337 PA0341 PA0342 PA0343 PA0344 PA0345 PA0346 PA0347 PA0348 PA0349 PA0351 PA0352 PA0353 PA0354 PA0355 PA0356

HR Master Record: Infotype 0273 (Tax - SE) HR Master Record: Infotype 0274 (Insurance - SE) HR Master Record: Infotype 0275 (Garnishment - SE) HR Master Record: Infotype 0276 (OPIS - SE) HR Master Record: Infotype 0277 (Exceptions - SE) HR master record infotype 0278 (PF basic data [CH]) HR master record infotype 0279 (Indiv.values for PF [CH]) HR Master Record Infotype 0280/View for 0016 HR Master Record Infotype 0281/View for 0045 Registro mestre HR infotipo 0283 (arquivamento) HR CH: HR Master Record Infotype 0021 (Suppl. Switzerland) Registro mestre HR infotipo 0302 (medidas supl.) HR Master Record: Infotype 303 (reductn tax/soc.ins.contrNL) Basic pay - additional information HR master record, infotype 0305 (Previous employer) HR master record, infotype 0306 (Family data) IRD Number Infotype NZ Superannuation NZ Leave Adjustments - NZ Leave History Adjustments NZ Employee Taxation Detail Infotype NZ I0314: Days for Vacation Allow. and Sal.Deducs (DK/N) CATS: infos.emissor HR Master Record: Infotype 0317 (special arrangements) HR Master Record: Infotype Family data for Indonesia (0318) Indonesia Private Insurances Official housing Employee accommodations HR Master Data Record Infotype 0322 (Pensions and Rel. Ben.) HR Master Record Infotype 0323 (Pension Plan) HR Master Record IT 0326 (Imputation to Pension Payments) HR master record infotype 0329 ( Sideline Job) Infotype 0330 (Non-monetary remuneration) Registro mestre HR: infotp.0331 (imp.- PT) Reg.mestre HR: infotipo 0332 (segurança social - PT) Reg.mestre HR: infotipo 0333 (deficiência - P) Reg.mestre HR: infotipo 0334 Reg.mestre HR: infotipo 0335 (visão de infotipo 21 - PT) Reg.mestre HR: infotipo 0336 (visão de infotipo 2 - PT) Reg.mestre HR: infotipo 0337 (classificações prof. - PT) HR - Master Record Infotype 341 (DUEVO Start) HR Master Record: Infotype 0342 (HK Extension to I0002) HR Master Record: Infotype 0343 (Contract HK) HR Master Record: Infotype 0344 (Familiy members HK) HR Master Record: Infotype 0345 (Hong Kong Tax) HR Master Record: Infotype 0346 (Contribution plan) HR Master Record: Infotype 0347 (Entitlement plan) HR Master Record: Infotype 0348 (HK Appraisal and bonus) HR Master Record: Infotype 0349 (Eligibility grouping) HR Master Record: Infotype 0351 (Country Information) NHI for Family member (TW) Income Tax Taiwan Labor Insurance Taiwan National Health Insurance Taiwan Employment Stabilization Fund (TW)


Pág. 46

PA0357 PA0358 PA0359 PA0360 PA0361 PA0362 PA0363 PA0364 PA0365 PA0366 PA0367 PA0368 PA0369 PA0370 PA0371 PA0372 PA0373 PA0374 PA0375 PA0376 PA0377 PA0378 PA0379 PA0380 PA0381 PA0382 PA0383 PA0384 PA0386 PA0387 PA0388 PA0389 PA0390 PA0391 PA0392 PA0393 PA0394 PA0395 PA0396 PA0397 PA0398 PA0399 PA0400 PA0401 PA0402 PA0403 PA0404 PA0405 PA0406 PA0407 PA0408 PA0409 PA0410 PA0411 PA0412

Saving Plan (TW) Employee Welfare Fund (TW) HR Master Record : Infotype 0359 (PRSI Ireland) HR Master Record : Infotype 0360 (PRSI Ireland) HR Master Record : Infotype 0361 (Pensions Admin. - IE) HR Master Record: Infotype Membership for Indonesia (0362) Previous employment period Infotype Tax TH Social Security TH Provident Fund THAILAND HR Master Record: Infotype 0367 (SI-Addit.Notif.Data A) Rehabilitants and challenged persons HR Master Record: Infotype 0369 (IMSS data) HR Master Record: Infotype 0370 (INFONAVIT credit data) HR Master Record: Infotype 0371 (Previous Jobs Wages) Master data: Infotype 0372 (Gross Daily Wage) HR loan repayment plan JP (for P0268) Infortype 0374: General Eligibility Reg.dds.mestre pessoal: infotipo 0375 (dds.benefs.adicions.) Reg.dds mestre pessoal: infotipo 0376 (dds.benefs.médicos) Reg.dds mestre pessoal: infotipo 0377 (outros planos) Reg.dds mestre pess.infotipo 0378 (motivo ajuste benefs.) Reg.dds mestre pess.infotipo 0379 (plns.aquisição ações) Registro mestre HR infotipo 0380 (adapt.remuneração) Registro mestre HR infotp.0381(admissibilidade plano remun.) Registro mestre HR infotipo 0382 (ações) Registro mestre HR infotipo 0383 (Pacote remuner.) Registro mestre HR infotipo 0384 HR Master Record: Infotype 0386 (VHI Scheme) HR Master Record : Infotype 0387 (Starter's Details) HR Master Record: Infotype 0388 (Union JP) Income Tax: General indicators Income Tax: Deductions Income Tax: Other employers information Social Security: General data Family data: Calendar year schooling assistance Family data: Additional information Registro mestre HR: infotipo 0395 (atrib.organiz.externa) Registro mestre HR: infotipo 0396 (atrib.expatriação) Infotipo 0021 Família Infotipo 0016 - Acordos corporativos e contratuais HRMS-VE: Income Tax Infotype table (IT0399) HRMS-VE: CSS Infotype table (IT0400) HRMS-VE: Benefits Infotype table (IT401) Registro mestre HR infotipo 0402 Registro mestre HR infotipo 0403 HR Master Record: Infotype 0404 (Military Service Taiwan) Personnel Master Record Infotype 0405 (Absence Events) HR-PSG: Infotype 0406 (Pension information) HR master record, infotype 0407 (Additional absence info) HR Master Record: Infotype 0408 (CBS NL) HR Master Record: Infotype 0409 (External Agencies NL) Infotipo 0410 - Vale-transporte Taxation Philippines - infotype HR-SG: Family Data ( View infotype 0412 for IT0021 )


Pág. 47

PA0415 PA0416 PA0421 PA0422 PA0423 PA0426 PA0427 PA0428 PA0433 PA0434 PA0437 PA0438 PA0439 PA0440 PA0442 PA0447 PA0448 PA0449 PA0450 PA0451 PA0452 PA0453 PA0454 PA0455 PA0456 PA0457 PA0458 PA0459 PA0460 PA0467 PA0468 PA0469 PA0470 PA0471 PA0472 PA0473 PA0474 PA0475 PA0476 PA0477 PA0478 PA0480 PA0482 PA0483 PA0491 PA0506 PA0510 PA0525 PA0546 PA0547 PA0561 PA0900 PA0901 PA2001 PA2002

Registro mestre HR infotp.0415 Infotp.compensação contingente tempos, tabela BD HR master record, infotype 0421 (Special payments) SSS Philippines infotype HR Master Record: Infotype 0423 Legal order Debts by legal order Beneficiary data (Additional information) HR Master Record Infotype 0433/View for 0009 HR Master Record Infotype 0434/View for 0011 (GB Version) Empregos simultâneos (BR) HR Master Record: Infotype 0438 Registro mestre HR infotipo 0439 (transf.dados) HR Master Record: Infotype 0440 (Receipts) HR Master Record: Infotype 0442 HR Master Record for Infotype 0447 HR Master Record for Infotype 0448 HR Master Record: Infotype 0449 HR Master Record: Infotype 0450 HR Master Record: Infotype 0451 HR Master Record: Infotype 0452 HR Master Record: Infotype 0453 HR Master Record: Infotype 0454 HR Master Record: Infotype 0455 HR Master Record: Infotype 0456 HR Master Record: Infotype 0457 HR Master Record for Infotype 0458 HR Master Record for Infotype 0459 HR Master Record for Infotype 0460 Personnel master data Infotype 0467 (SI addit.notif. pl.c.A) Reg.mestre pessoal p/infotipo 0468 Reg.mestre pessoal p/infotipo 0469 Reg.mestre pessoal p/infotipo 0470 (perfis de viagens) Reg.mestre pessoal p/infotipo 0471 (preferências de vôo) Reg.mestre pessoal p/infotipo 0472 (preferências de hotel) Reg.mestre pessoal p/infotipo 0473 (prefer.carro de aluguel) Reg.mestre pessoal p/infotipo 0474 (preferências de trem) Reg.mestre pessoal p/infotipo 0475 (programas do cliente) Personnel Master Record for Infotype 0476 (Deductions Spain) Personnel Master Record for Infotype 0477 (Ded. Spain: Debt) Personnel Master Record for Infotype 0478 (Ded. Spain: Adj.) Personnel Master Record for Infotype 0480 HRMS-VE: Additional Family/Pers.Refer. data Infotype(IT0021) Infotype 0483 - Data entry from CAAF - Italy only HR Master Record: Infotype 0491 Tip Indicators HR Master Record: Infotype 0510 (Tax-sheltered annuity) Child care HR Master Record: Infotype 0546 (Termination Data) HR Master Record: Infotype 0547 Tax data Registro mestre HR tipo info 0900 (dados vendas e distr.) Registro mestre HR infotipo 0901 (dds.compra) Registro horas pessoal: infotipo 2001 (ausências) Registro horas pessoal: infotipo 2002 (presenças)


Pág. 48

PA2003 PA2004 PA2005 PA2006 PA2007 PA2010 PA2012 PA2013 PA2500 PA2501 PA2502 PB0001 PB0002 PB0006 PB0009 PB0022 PB0023 PB0024 PB0028 PB0041 PB0077 PB0105 PB0108 PB0185 PB0336 PB0342 PB0343 PB0395 PB0396 PB4000 PB4001 PB4002 PB4003 PB4004 PB4005

Registro horas pessoal: infotipo 2003 (substituição) Registro horas pessoal: infotipo 2004 (disponibilidade) Registro horas pessoal: infotipo 2005 (horas extras) Registro horas pessoal: infotipo 2006 (contigente ausências) Registro horas pessoal infotipo 2007 (autorização presença) Registro horas pessoal: infotipo P2010 (info remun.empr.) Registro horas pessoal: infotipo 2012 (revisão do saldo) Infotipo reg.tempo pess.2013 (correções contingente) Registro mestre HR para infotipo 2500 Registro mestre HR infotipo 2501 Registro mestre HR infotipo 2502 Registro mestre HR: infotipo 0001 (atrib.org.) Registro mestre HR infotipo 0002 (Dados pessoais) Registro mestre HR infotipo 0006 (Endereços) Reg.mestre HR infotp.0009 (coordenadas bancárias) Registro mestre HR infotipo 0022 (Formação) Registro mestre HR infotipo 0023(ativids.em outras empresas) Registro mestre HR infotipo 0024 (Qualificações) Registro mestre HR infotipo 0028 (saúde) Registro mestre HR infotipo 0041 Registro mestre HR infotipo 0077 Registro mestre HR infotipo 0105 (comunicações) HR Master Record: Infotype 0108 (Personal Data B) HR Master Record: Infotype 0185 (Personal ID) Reg.mestre HR: infotipo 0336 (visão de infotipo 2 - PT) HR Master Record: Infotype 0342 (HK Extension to I0002) HR Master Record: Infotype 0343 (Contract HK) Registro mestre HR: infotipo 0395 (atrib.organiz.externa) Registro mestre HR: infotipo 0396 (atrib.expatriação) Infotipo 4000 ações rel.cand. Infotp.4001 candidaturas Infotipo 4002 atrib.de vagas Infotipo 4003 (operações cand.) Dados candidato infotipo 4004 (status tarefas repetitivas) Infotipo 4005 (nº pessoal do candidato interno)

ANEXO II – ESTRUTURAS PERNR E APPLICANT Estrutura PERNR CAMPO PERNR MASSN MASSG STAT1 STAT2 STAT3 BUKRS WERKS PERSG PERSK VDSK1

DESCRIÇÃO No. Pessoal Tipo de Medidas Motivo da Medida Status específico do cliente Status ocupação Status pagamento especial Empresa Área de Recursos Humanos Grupo de empregados Subgrupo de empregados Chave de organização


Pág. 49

GSBER BTRTL JUPER ABKRS ANSVH KOSTL ORGEH PLANS STELL MSTBR SACHA SACHP SACHZ SNAME ENAME OTYPE SBMOD KOKRS FISTL GEBER MASNG STATU XBWBK KOKTL XPGPK SASBA SASBP SASBZ DAYPS

Divisão Subárea de Recursos Humanos Pessoa Jurídica Área de processamento de Folha de Pagamento Vínculo empregatício Centro de custo Unidade Organizacional Posição Função Área mestre Encarregado folha de pagamento Encarregado para dados mestre de pessoal Encarregado do registro de horas Nome do empregado Nome editado do empregado Categoria do Objeto Grupo de encarregados Área de contabilidade de custos Centro Financeiro Fundo Medida, Motivo da medida Campo concatenado: status 1, 2 e 3 Área RH, Subárea RH, Centro Custo Área Contabilidade de Custos, Centro Custo Grupo, Subgrupo empregados Modif. Encarregado, encarregado folha pag. Modif. Encarregado, encarregado pessoal Modif. Encarregado, encarregado tempos Data de início de período de seleção de pessoas

Estrutura APPLICANT CAMPO APLNO ENAME SNAME BUKRS WERKS BTRTL PERSG PERSK RESRF OFFID SPAPL APSTA STREA MASSN REFEM RFPER

DESCRIÇÃO No. Pessoal Nome editado do empregado Nome do empregado Empresa Área de Recursos Humanos Subárea de Recursos Humanos Grupo de candidatos Segmentação de candidatos Responsável de pessoal pela candidatura Anúncio da Vaga Grupo de candidatos espontâneos Status global do candidato Motivo do status do candidato Tipo de ação relativa a candidato Código de Referência 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:

Pag 1 programacao em abap hr  

Abap HR

Pag 1 programacao em abap hr  

Abap HR

Advertisement