• Nenhum resultado encontrado

Academia SAP Abap_Interna

N/A
N/A
Protected

Academic year: 2021

Share "Academia SAP Abap_Interna"

Copied!
239
0
0

Texto

(1)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 1/239

ACADEMIA INTERNA

ABAP / SAP R3

(2)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 2/239

Introdução SAP R/3

Dicionário de Dados*

Programação

Relatórios

 ALV*

On Line*

Batch-Input/Call Transaction*

SapScript*

Exits

* exercícios

Cronograma

(3)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna

www.softtek.com.br 

 

3/239

Click to edit Master title style

3

3

3

3

(4)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 4/239

Objetivos

O que é SAP R/3

Funcionais e Basis Components

 Arquitetura

Projetos

(5)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 5/239

 

(6)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 6/239

SAP - R/3

Gestão Empresarial - ERP

Integração

 Acesso a informação em tempo real e segura

Tomada de decisão

(7)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 7/239

 

(8)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 8/239

R/3

Cliente / Servidor

ABAP/4

FI

Contabilidade

Financeira

CO

Controladoria

AM

Ativos. Fixos

PS

Gerenc. de

Projetos

OC

Comunicação

IS

Solucões

Setoriais

MM

Gerenc.de

Materiais

HR

Recursos

Humanos

SD

Vendas e

Distribuição

PP

Plan. da

Produção

QM

Controle de

Qualidade

PM

Manutenção

da Planta

Sistemas

abertos

Arquitetura

Cliente/Servidor

Modelo de dados

empresariais

Desenhado

para todo

tipo de negócios

Multinacional

Funcionalidades

sofisticadas

Soluções integradas

(9)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 9/239

Sistema R/3

Sales & Distribution : A solução completa para o

gerenciamento integrado de todas tarefas para vendas,

faturamento e expedição.

Materials Management : O processo completo de compras,

com suporte integrado de resultados e planejamento de

produção.

Production Planning : O sistema de PCP ajustável para

todos os tipos de produção com suporte integrado de

resultados e do gerenciamento de compras.

Quality Management : O sistema para o controle da

qualidade assegurada em todas as áreas da cadeia

logística.

Plant Maintenance : A solução independente de indústria

para a administração da manutenção de sistemas

produtivos.

(10)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 10/239

Human Resources Management : Desde o

processamento integrado de administração RH,

gerenciamento de tempo e despesas de viagens até

a folha de pagamento.

Human Resources Planning : Planejamento

organizacional, posicionamento, desenvolvimento

educacional e controle do custo de pessoal em um

sistema totalmente integrado.

 

(11)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 11/239

Financial Accounting: Uma ampla visão do desempenho

que inclui gerenciamento de caixa, banco eletrônico,

controladoria financeira, orçamento de caixa e

consolidação. 

Controlling: Contabilidade de custos, desde a

contabilidade de centros de custos e de elementos de

custos até a análise de lucratividade.

Asset Management : O gerenciamento completo de todos

os ativos fixos, desde da contabilidade tradicional de ativos

e gerenciamento técnico de ativos até a controladoria de

investimentos.

Project Information System : A integração de todas as

áreas de serviços para o planejamento de projetos,

processamento e controle

.

 

Executive Information System (EIS) :  Acesso rápido aos

dados, fatos e representações gráficas para decisões

gerenciais.

 

(12)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 12/239

Estrutura Organizacional

Grupo de empresas

 Armazém

Organização de

compras

Sociedade

Centro

0001

1000

001

0002

2000

3000

0002

0004

0005

0002

0003

WM

0088

0001

0001

(13)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 13/239

Módulo FI e suas funções

Contabilidade Geral

Contas a Receber

 

Controlling Financeiro

 

Gestão Orçamentária

 

Consolidação

 

 Ativos

 

Financeiros

FI-FI

FI-LC

FI-FM

FI-FC

FI-AR

FI-AP

FI-GL

Contas a Pagar

 

(14)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 14/239

Contabilidade Empresarial

 

Base Dados Documentos

Contabilidade Geral

MM

SD

HR

 AM

MM

Fornecedores

Clientes

Pessoal

 Ativos

Materiais

FI

FI

Consolidação

Ledgers

PCB

 

Custos

de

Projetos

JOB

 

Ordens

de

Custos

CCA

 

Contab.

Centros

Custos

PC

 

Custo de

Produtos

PA

 

 Análise de

Rentabilidade

PM-PP

(15)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 15/239

Contas a Pagar

Compensação

Fornecedor

Qualificação

de fornecedor

Estatísticas

 Antecipações

Promissórias

Pagtos.

parciais

Relatórios

Previsão de cobrança e pagto.

Registro demoeda 

Rankings

EDI

Gestão e prevenção de

tesouraria

CO

 Auditoría

MM

Recebto.

Pedido de

compra

Fatura

EDI

Pagtos

Cheque

Transferência

Compensação

Letras

Pagar

Recebto.

Cálculo de

interesses

Cartas a forn.

Confirmação

de saldos

Correspondência

Pagtos

ã

(16)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 16/239

Gestão de Materiais - Processo de Abastecimento

Gestão de Pedidos

Follow-up de Pedidos

Pedidos

Fatura

 Verificação de faturas

Entrada de mercadoria

e gestão de estoques

Gestão de

Materiais

Seleção de fornecedores

 Associação de fonte aquisição

Planejamento

Fornecedor

Contrato marco

Planejamento

de necesidades

(17)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 17/239

Logística - R/3

Plano de Vendas

 Vendas

Distribuição

Faturamento

SD

Compras

Gestão de Estoques

 Verif. Facturas

MM

Custo de Produtos

Controle

de produção

Planej. Capacidade

MRP

Planej, Produção

PP

Planej. Paradas

Manutenção

Planej. Inspeção

Gestão de inspeção

Controle em planta

PDC

PM

QM

PP-SFC

FI

CO

AM

HR

CAD CAM CAP CAQ

Provedor

Cliente

Contabil.

Financeira

Contabilid.

de Custos

 Ativos

(18)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 18/239

Recursos Humanos

Gastos de Viagens

Salários

Organizacão de

Rec. Humanos

Planejamento de

Rec. Humanos

Control de custos

de Rec. Humanos

Gestão

de Tempos

Relatórios

estatísticas

Datos Mestres

de Pessoal

FI / CO

Contabilidade Financeira / Analítica

PP

Controle e planejamento

de produção

PM

Manutenção

HR

(19)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 19/239

 

(20)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 20/239

ABAP

 A

B

 A

P

/

4

dvanced

usiness

pplication

rogramming

(21)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 21/239

www.softtek.com.br 

 

Click to edit Master title style

21

21

21

21

(22)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 22/239

 Arquitetura em 3 camadas

Banco de Dados

R/3

Application Server

Presentation Server

(23)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 23/239

Banco de Dados

R/3

(24)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 24/239

Servidores

Servidor

DV4

Servidor

QA4

Servidor

PR4

 Ambiente de

(25)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 25/239

Mandantes

Servidor

DVL

Mandante

003

Mandante

120

R

t‟

(26)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 26/239

Request‟s

 Ambiente de desenvolvimento: client 200

Task

(27)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 27/239

Transporte

Servidor

DV4

Servidor

QA4

Servidor

PR4

 Ambiente de

(28)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 28/239

www.softtek.com.br 

 

Click to edit Master title style

28

28

28

28

(29)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 29/239

Fases

Levantamento - BC

Modelagem dos processos atuais

Como deverão ser os processos - BC

Customização

Desenvolvimentos - BC

Validação - BC

Testes individuais/integrados - BC

Produção - BC

Melhorias - BC

(30)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 30/239

www.softtek.com.br 

 

Click to edit Master title style

30

30

30

30

(31)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 31/239

www.softtek.com.br 

 

Click to edit Master title style

31

31

31

31

(32)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 32/239

Objetivos

O que é dicionário de dados

Elementos do dicionário de dados

Como utilizar o dicionário de dados

Levantamento de informações no R/3

(33)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 33/239

Integração

Gerenciamento de Dados

 –

 Atribuição

 –

Descrição e Significado

 Ativação dos Dados

Banco de Dados

R/3

(34)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 34/239

Tabela

DICIONÁRIO ABAP/4

DEFINIÇÃO LÓGICA DA TABELA

BANCO DE DADOS

DEFINIÇÃO FÍSICA DA TABELA

Campo 1

Campo 2

Campo 3

Campo 4

Tabela

Tabela

Campo 1

Campo 2

Campo 3

Campo 4

(35)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 35/239

Dicionário ABAP/4

Banco de Dados R/3

Tabela 1

Tabela 2

Tabela “n”

 

“DB UTILITY”

 

Tabela 1

Campo 1

Campo 2

Campo 3

Campo 4

Campo 5

Tabela 2

Campo 1

Campo 2

Tabela “n”

 

Campo 2

Campo 3

Campo 5

 Sistema de gerenciamento de banco de dados

relacional

 Dados trabalhados via SQL

(36)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 36/239

Elementos do Dicionário de Dados

Tabelas - armazenam dados

Estruturas - não armazenam dados

Visões - join de tabelas e restrição de campos

Campos

Elementos de dados

Domínios

 Ajuda de pesquisa

(37)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 37/239

 AMBIENTE DE DESENVOLVIMENTO

Ferramentas

Modelagem

de Dados

Telas

 AMBIENTE DE EXECUÇÃO DA APLICAÇÃO

Interpretador

Controle de

Diálogo

Interfaces

Módulos

Banco de Dados

R/3

(38)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 38/239

www.softtek.com.br 

 

Click to edit Master title style

38

38

38

38

(39)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 39/239

Elemento de Dados e Domínios

Elemento de Dados

Domínio

Utiliza

Utiliza

Definição Semântica

 

Definição Técnica

 

Tabela

Campo

Banco de

Dados R/3

(40)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 40/239

Generalizando

Domínio

Tabela 1

Tabela 2

Tabela 3

Tabela 4

Tabela 5

Elemento de Dados 1

Elemento de Dados 2

Elemento de Dados 3

(41)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 41/239

Foreign Key

Table T1

Field 1

Field 2

Field 3

Field 4

Primary Key

Table T2 (check table)

Field A

Field B

Field C

Field D

Primary Key

(42)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 42/239

Estruturas

As estruturas possuem os mesmos elementos das tabelas mas

não armazenam dados. Só estão preenchidas em run-time.

(43)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 43/239

www.softtek.com.br 

 

Click to edit Master title style

43

43

43

43

Visões

Vi õ

(44)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 44/239

Banco de

Dados R/3

Tabela 1

Tabela 2

Tabela “n”

 

View

(45)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 45/239

(46)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 46/239

www.softtek.com.br 

 

Click to edit Master title style

46

46

46

46

Levantamento de Informações

Funções

(47)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 47/239

F1 - Ajuda (Help)

F9 - Informação técnica

Funções

Exercício

(48)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 48/239

Exercício

1. Criar uma tabela Z no dicionário de dados, com o nome ZTESTE_001.

Layout :

- DOCUMENTO

chave numérico

10

- ITEM

chave numérico

05

- TEXTO

alfa

40

- MATERIAL

numérico

06

- QUANTIDADE

numérico

04

- PRECO_UNITARIO

numérico

15(02)

- PRECO_TOTAL

numérico

15(02)

 Os desenvolvimentos devem ser amarrados em uma mesma request. A descrição

da request deve começar por : “TREIN ABAP ????

-

... “

 

???? : Iniciais do nome, para identificar o usuário.

 Os elementos de dados e seus domínios devem ser criados. Objetos Z.

(49)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 49/239

2.

Preencher manualmente a tabela criada, com os registros abaixo, via diálogo

de atualização (SE11/SM30).

Documento

Item Texto

Material

Qtde Preço

Unit

Preço

Tot

1000000001

00001 Documento teste 001 900001

0010

10,00

1000000001

00002 Documento teste 001 900002

0012

12,00

1000000002

00001 Documento teste 001 900001

0009

100,00

1000000002

00002 Documento teste 001 900003

0020

25,00

500,00

1000000002

00003 Documento teste 001 900003

0009

50,00

Exercício -

continuação

(50)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 50/239

(51)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 51/239

SE38/SE80 - Navegação

(52)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 52/239

Tipos de progamas possíveis

Estrutura geral de um programa abap

Criando um novo programa

(53)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 53/239

Declaração de tabelas

Tabelas do dicionário de dados

TABLES : tabela01, tabela02, … .

 

Tabelas internas

DATA: BEGIN OF t_tabela01 OCCURS 0,

campo1(16) TYPE c,

campo2

LIKE tabela01-campo,

...

END OF t_tabela01.

DATA: BEGIN OF t_tabela02 OCCURS 0.

INCLUDE STRUCTURE tabela02.

DATA: END OF t_tabela02.

 

(54)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 54/239

Como funciona o Header Line

1001

ABC

A90S

23,00

1002

DEF

J82J

02,03

2003

GHI

KK89

00,01

Header Line

Registros da Tabela

Obs.: os registros são trabalhados no Header e posteriormente

levados à tabela.

(55)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 55/239

Declaração de estrutura

Estrutura

DATA: BEGIN OF e_tabela01,

campo1(16) TYPE c,

campo2

LIKE tabela01-campo,

...

END OF e_tabela01.

DATA: BEGIN OF e_tabela02.

INCLUDE STRUCTURE tabela02.

DATA: END OF e_tabela02.

 

1001

ABC

A90S

23,00

Estrutura

Obs.: a estrutura é criada apenas em tempo de execução, nunca

gravada.

(56)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 56/239

Declaração de variáveis

Variávieis

- Por referência a outro campo de tabela já existente :

DATA: variavel01

LIKE tabela01-campo01.

- Pelo tipo que queremos :

DATA: variavel02(04) TYPE i.

- Uma variável com a estrutura de outra :

DATA: variavel03

LIKE tabela02.

(57)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 57/239

Tipos de dados

Tipos

I

->

inteiro (4 bytes c/ sinal)

N

->

numérico (só números)

P

->

compactado

F

->

ponto flutuante

C

->

caracter

D

->

data (AAAAMMDD)

T

->

hora (HHMMSS)

X

->

hexadecimal (sequência de bytes)

Obs.: se não for atribuído tipo a variável, esta será definida como

caracter, automáticamente.

(58)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 58/239

Tela de seleção

(59)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 59/239

Tela de seleção

SELECTION-SCREEN BEGIN OF BLOCK bloco1

WITH FRAME TITLE 

 text-001.

SELECT-OPTIONS: s_period FOR sy-datum

OBLIGATORY.

SELECTION-SCREEN END OF BLOCK bloco1.

SELECTION-SCREEN BEGIN OF BLOCK bloco2 WITH FRAME TITLE text-002.

SELECT-OPTIONS: s_pernr FOR pa0000-

pernr,

“Crachá

 

...

SELECTION-SCREEN END OF BLOCK bloco2.

SELECTION-SCREEN: BEGIN OF BLOCK bloco3 WITH FRAME TITLE text-014.

SELECT-OPTIONS: s_tipo

FOR zthrvrub-tipo NO INTERVALS,

s_awart FOR pa2001-awart NO INTERVALS. "Ausência

SELECTION-SCREEN: END OF BLOCK bloco3.

(60)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 60/239

Tela de seleção

SELECTION-SCREEN BEGIN OF BLOCK bloco4

WITH FRAME TITLE 

 text-032.

PARAMETERS: p_data LIKE sy-datum

OBLIGATORY.

SELECTION-SCREEN END OF BLOCK bloco4.

SELECTION-SCREEN BEGIN OF BLOCK BLOCO5 WITH FRAME TITLE TEXT-033.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS: P_FAB RADIOBUTTON GROUP RADI.

SELECTION-SCREEN COMMENT 5(30) TEXT-034

FOR FIELD P_FAB.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

PARAMETERS: P_CD RADIOBUTTON GROUP RADI.

SELECTION-SCREEN COMMENT 5(30) TEXT-035

FOR FIELD P_CD.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK BLOCO5.

SELECTION-SCREEN SKIP 1.

O comando SKIP pula o número de linhas identificado

 

SELECTION-SCREEN ULINE.

O comando ULINE imprime uma linha contínua

 

(61)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 61/239

Eventos de um programa Abap

INITIALIZATION:

Onde se pode setar variáveis e preencher

atributos ao se inicializar o programa.

START-OF-SELECTION: Corpo principal do programa. Onde as

seleções de dados são feitas e informações

trabalhadas.

END-OF-SELECTION:

Não é obrigatório, mas costuma-se utilizar

este ponto para impressão de relatórios e

finalização do processo.

TOP-OF-PAGE:

Este evento se processa antes do primeiro

dado ser impresso em cada página. Pode ser

usado como cabeçalho, em companhia do

NO STANDARD PAGE HEADING.

END-OF-PAGE:

Este evento ocorre quando se ultrapassa o

número de linhas da página corrente.

Ou quando se passa de uma página à outra.

(62)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 62/239

IF

-

IF… ENDIF.

 

Este comando permite que se desvie o fluxo do programa, dependendo da condição. Para

encerrar usa-se: ENDIF, pode-se ainda ELSEIF e ELSE. O programa só irá executar a condição

correta.

IF <condição>

 

ENDIF.

Exemplo: IF VBAP-VBELN IS INITIAL.

MESSAGE E001(ZSSI).

ENDIF.

-IF... ELSE... ENDIF.

IF <condição>

 

ELSE.

 

ENDIF.

Exemplo.: IF VBAP-VBELN is INITIAL.

MESSAGE E001(ZSSI).

ElSE.

MOVE VBAP-VBELN TO W_VBELN.

ENDIF.

Comandos básicos IF

(63)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 63/239

-

IF …ELSEIF…ELSEIF…ENDIF.

 

IF <condição1>

 

ELSEIF <condição2>

...

ELSEIF <condição3>

...

ENDIF.

Exemplo.: IF VBAP-VBELN is INITIAL.

MESSAGE E001(ZSSI).

ElSEIF not VBAP-VBELN is INITIAL .

MOVE VBAP-VBELN TO W_PERNR.

ELSEIF not VBAP-VBELN is INITIAL AND

W_VBELN

is INITIAL.

MOVE VBAP-VBELN TO W_VBELN.

ENDIF.

Comandos básicos IF

(64)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 64/239

LOOP

-

LOOP …ENDLOOP.

 

LOOP AT <itab>.

 

 

 

ENDLOOP.

LOOP AT <itab> WHERE <condição>.

 

 

 

ENDLOOP.

Comandos básicos LOOP

(65)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 65/239

CASE

-

CASE …ENDCASE.

 

É um controle baseado em índice de objeto de dados. Este controle deve ser concluído

com ENDCASE.

CASE <f>.

WHEN <f 01> [OR <f 02> OR ...].

...

WHEN <f 03>.[OR <f 04> OR ...]

...

WHEN <f 05> [OR <f 06> OR ...].

...

WHEN ...

...

WHEN OTHERS.

...

ENDCASE.

Exemplo: CASE W_DATA(02).

When ‘01’.

 

W_DATA = W_DATA + 1.

When ‘02’.

 

W_DATA = W_DATA + 2.

When others.

Clear W_DATA.

ENDCASE.

Comandos básicos CASE

(66)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 66/239

DO

-

DO …ENDDO.

 

Repete o processamento que está dentro de DO e ENDDO.

Terminando com os comandos EXIT, STOP e REJECT.

Pode usar CONTINUE, para terminar o passo do DO e continuar o passo seguinte.

DO < n > TIMES.

...

ENDDO.

Exemplo1:

DO 10 TIMES.

IF VBAK-VBELN eq VBAK-VBELN.

W_VBELN = VBAK-VBELN.

ENDIF.

ENDDO.

Exemplo2:

DO.

IF VBAK-VBELN is INITIAL.

EXIT.

ELSEIF VBAK-VBELN in P_VBELN.

CONTINUE.

ENDIF.

ENDDO.

Comandos básicos DO

(67)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 67/239

 WHILE

- WHILE …ENDWHILE .

 

Repete o processamento que está dentro de WHILE e ENDWHILE, se a expressão é verdadeira.

A cada passagem a expressão é verificada.

Pode usar CONTINUE , para terminar o passo do WHILE e continuar o passo seguinte.

WHILE expressão.

 

 

ENDWHILE.

Exemplo:

WHILE W_WRITE <= 10.

WRITE: / TEXT-001.

W_WRITE = W_WRITE + 1.

ENDWHILE.

CHECK

- CHECK

Para encerrar uma sub-rotina usa-se, frequentemente, ENDFORM.

Podemos terminar antes, usando os comandos EXIT e CHECK.

Se a expressão lógica estabelecida no CHECK for falsa, a sub-rotina será encerrada.

Se a expressão CHECK for aplicada a um LOOP, encerra-se o LOOP.

CHECK SY-SUBRC = 0.

Comandos básicos

 

 WHILE / CHECK

(68)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com http://slidepdf.com/reader/full/academia-sap-abapinterna 68/239

 MOVE

- MOVE

MOVE <c1> TO <c2> .

<c4> = <c3> = <c1>

-MOVE utilizando tabela interna

MOVE <itab1> TO <itab2>.

<itab2> = <itab1>

A citação acima tem o mesmo efeito que <itab2> = <itab1>.

- MOVE-CORRESPONDING

Este comando move os campos idênticos de uma estrutura para outra.

MOVE-CORRESPONDING <struct1> TO <struct2>.

Comandos básicos

 

 MOVE

(69)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 69/239

 WRITE

-WRITE

É comum os campos saírem justificados a esquerda. Os campos numéricos são alinhados a

direita.

Exemplos:

WRITE <f>.

WRITE: /TEXT-001, TEXT-002, TEXT-003+2(8).

WRITE: /002 TEXT-004.

Opções:

... NO-ZERO.

... NO-SIGN.

... DD/MM/YY.

... MM/DD/YY.

... DD/MM/YYYY.

... MM/DD/YYYY.

... DDMMYY.

... CURRENCY w.

... DECIMALS d.

... ROUND R.

... UNIT u.

... USING EDIT MASK mask.

... UNDER g.

... NO-GAP.

... LEFT-JUSTIFIED.

... CENTERED.

... RIGHT-JUSTIFIED.

Comandos básicos

 

 WRITE

(70)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 70/239

CLEAR

-CLEAR

Reseta o valor da variável. Também aplica-se a estruturas e tabelas, limpando o header line,

mas não interferindo nos dados

 no caso de tabelas.

Se a variável for alfanumérica, volta a ser branco. Se for numérica, retorna a zero.

Exemplos:

CLEAR <var1>.

CLEAR <t_tab1>.

“limpa o header line da tabela

 

SKIP

-SKIP n

Realiza o salto de linhas. A variável

n

 identifica a quantidade de linhas a ser pulada.

Exemplos:

SKIP.

“Irá pular 1 linha –

 mesmo efeito que SKIP 1

SKIP 10.

“Irá pular 10 linhas

 

ULINE

-ULINE

Imprime uma linha corrente.

Exemplos:

ULINE.

“Imprime linha corrente da largura da página

ULINE /35(50).

“Linha começará na posição 35 e terá comprimento

 

de 50 bytes

Comandos básicos

 

 

CLEAR/SKIP/ULINE

(71)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 71/239

COMENTÄRIOS

Algumas das formas como podemos documentar um programa ABAP.

* -> um asterisco na frente da linha, já serve para comenta-lá toda.

-> a aspas dupla, na mesma linha do código, serve para comentar dali para frente.

Exemplos:

*

IF t001-text IS INITIAL.

*

ADD 1 TO w_number.

*

ENDIF.

IF t001-text IS INITIAL.

continue.

“Comando para sair do Loop atual

 

ENDIF.

Comandos básicos

 

 Comentários

(72)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 72/239

FORM

-

FORM … ENDFORM.

 

Define uma subrotina dentro do programa ABAP. Pode ser executada a qualquer momento, dentro

do programa.

Exemplos:

FORM f_leitura_bseg.

Instruções.

EDFORM.

Opções:

FORM <nome_form> USING p_variavel_referencia

CHANGING p_variavel_valor

TABLES p_tabela.

Instruções

ENDFORM.

PERFORM

-PERFORM

Executa chamadas de subrotinas do programa ABAP.

Exemplos:

PERFORM f_leitura_bseg.

Opções:

PERFORM <nome_form> USING v_variavel_referencia CHANGING v_variavel_valor

TABLES t_tabela.

Comandos básicos

 

 

FORM/PERFORM

(73)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 73/239

CLEAR

-CLEAR

Limpa/Inicializa a header line da tabela interna.

Exemplo:

CLEAR t_tabela01.

REFRESH

-REFRESH

Este comando limpa os dados da tabela interna. Não libera a memória carregada.

Exemplo:

REFRESH t_tabela01.

FREE

-FREE

Este comando apaga os dados da tabela interna, liberando a memória onde ela estava

carregada.

Exemplo:

FREE t_tabela01.

Tabela interna

 

 Limpeza e Inicialização

(74)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 74/239

READ

-

READ…

 

Realiza a leitura de dados de uma tabela interna.

READ TABLE <table01> WITH KEY …

 

READ TABLE <table02> INDEX …

 

Exemplos:

READ TABLE table01 WITH KEY nome = w_nome.

“Busca por campo específico

 

READ TABLE table02 INDEX w_index.

“Busca por posição do registro

 

SY-SUBRC

-SY-SUBRC

É um campo de sistema, que retorna o resultado do último comando processado.

Se estiver abaixo de um READ, retorna a condição de processamento do mesmo. Se SY-SUBRC = 0,

Significa que foi processado corretamente. Diferente disso, ERRO.

Exemplos:

READ TABLE table WITH KEY nome = w_nome.

IF sy-subrc <> 0.

WRITE: /001 ‘Erro na leitura do arquivo…’.

 

ENDIF.

Tabela interna

 

 READ / Leitura

(75)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 75/239

abe a

e a

/ G a a do

 APPEND

-APPEND

Para incluir novos registros na tabela interna.

APPEND <table01>.

Exemplos:

CLEAR table01.

“Limpa a header line da tabela

 

table01-

nome

= ‘Jose’.

 

table01-cracha

= v_cracha.

table01-

situacao = ‘Ativo’.

 

APPEND table01.

“Insere o registro na tabela table01

 

APPEND I_BKPF

BUKRS

GJAHR

BELNR

BUDAT

5510

1999

72000001555

25.10.1999

5510

1999

72000001554

25.10.1999

5510

1999

72000001553

25.10.1999

5510

1999

72000001552

25.10.1999

(76)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 76/239

 MODIFY

-MODIFY

Comando para alterar registro de uma tabela interna.

MODIFY <itab>.

Exemplos:

MODIFY t_tabela01.

Opções:

MODIFY t_tabela02 INDEX sy-index.

DELETE

-DELETE

Comando para deleção de registro de uma tabela interna.

DELETE <itab>.

Exemplos:

DELETE t_tabela01.

Opções:

DELETE t_tabela02 INDEX sy-index.

DELETE t_tabela03 WHERE cracha = 3005.

DELETE t_tabela04 FROM 3 to 5.

(77)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 77/239

COLLECT

-COLLECT <itab01>.

Este comando também insere registros na tabela interna. A particularidade é que, ele analisa

os campos alfanuméricos. Estes sendo iguais, ele realiza a soma dos campos numéricos.

 NAME

PRICE

LH

100000

AR

50000

FL

10000000

LH

50000

Soma os campos numéricos

150000

(78)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 78/239

SORT

-SORT

Comando utilizado para se sortear a tabela interna.

SORT <itab>.

Exemplos:

SORT t_tabela01.

Opções:

SORT t_tabela02 BY campo2 campo3.

SORT t_tabela03 BY campo4 ASCENDING campo5 DESCENDING.

DESCRIBE

-DESCRIBE

Comando para gerar informações sobre determinada tabela interna.

DESCRIBE TABLE <itab> LINES …

 

Exemplos:

DESCRIBE TABLE t_tabela01 LINES LINHAS

“Nº linhas preenchidas

 

OCCURS OCORRENCIA. “Nº ocorrências na def. da tabela

 

Obs.: As variáveis utilizadas para se obter o resultado (LINHAS/OCORRENCIA) devem ser

definidas com tipo inteiro (I).

(79)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 79/239

SELECT

-SELECT

Comando SQL utilizado para leitura das informações de uma tabela do banco de dados SAP.

Possui diversas variações.

-Select de todos os campos de uma tabela.

SELECT * FROM <tabelaSAP>.

instruções.

ENDSELECT.

Obs.: O comando SELECT em si, pede um ENDSELECT para fechá-lo. Em algumas variações isto não

se faz necessário.

Esta variação não é um modo eficiente para acesso ao banco. Não indicado, mesmo com

inclusão da clausula WHERE.

-Select para variáveis.

SELECT campo1 campo2 campo3 … INTO (var01, var02, var03, …)

 

FROM <tabelaSAP>

WHERE <condição>.

-Select inserindo em uma tabela interna.

SELECT <campos> INTO TABLE <t_tabela01>

FROM <tabelaSAP>

WHERE <condição>.

(80)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 80/239

-Select inserindo dados em determinados campos de uma tabela interna.

SELECT <campos> INTO CORRESPONDING FIELDS OF TABLE <t_tabela01>

FROM <tabelaSAP>

WHERE <condição>.

-Select inserindo dados em uma tabela, usando como base os dados de outra já preenchida.

SELECT <campos> INTO TABLE <t_tabela02>

FROM <tabelaSAP>

FOR ALL ENTRIES IN <t_tabela01>

WHERE <condição>.

Obs.1: Se ao buscar os registros com FOR ALL ENTRIES, e dois registros forem iguais, o

sistema só irá trazer um. Portanto CUIDADO com este tipode select. Sempre buscar um

campo que garanta a unicidade dos dados.

Obs.2: Sempre verificar se a tabela interna, de referência< tabela interna1>, contêm dados

e os mesmo estejam ordenados.

(81)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 81/239

-Select para buscar apenas um registro específico.

SELECT SINGLE <campos> INTO TABLE <t_tabela01>

FROM <tabelaSAP>

WHERE <condição>.

Obs.: Para o uso do SELECT SINGLE, deve-se utilizar a chave completa da tabela. Se não

possuir as chaves todas, utilizar a opção UP TO 1 ROWS.

SELECT <campos> INTO TABLE <t_tabela01>

FROM <tabelaSAP>

UP TO 1 ROW

WHERE <condição>.

ENDSELECT.

-Select com range de valores.

SELECT <campos> INTO TABLE <t_tabela01>

FROM <tabelaSAP>

WHERE <campo> BETWEEN <valor1> AND <valor2>.

-Select em um intervalo de valores

SELECT <campos> INTO TABLE <t_tabela01>

FROM <tabelaSAP>

WHERE <campo> IN (valor_mínimo,valor_máximo).

(82)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 82/239

INSERT

-INSERT

1.Insere registros na tabela do dicionário.

INSERT INTO <tabelaSAP> [ FROM ][ VALUES ] <estrutura>.

Exemplos:

TABLES: SPFLI.

DATA: WA LIKE SPFLI.

WA-CARRID

= 'LH'.

WA-CITYFROM = 'WASHINGTON'.

 

INSERT INTO SPFLI VALUES WA.

WA-CARRID

= 'UA'.

WA-CITYFROM = 'LONDON'.

 

INSERT SPFLI FROM WA.

Grava os valores da estrutura WA

na tabela SPFLI.

Mesmo feito do comando

acima.

(83)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 83/239

INSERT

2.Insere registros na tabela do dicionário, a partir de uma tabela interna.

INSERT INTO <tabelaSAP> FROM TABLE <t_tabela01> [ ACCEPTING DUPLICATE KEYS ].

Exemplos:

TABLES: SPFLI.

DATA: ITAB LIKE SPFLI OCCURS 10 WITH HEADER LINE.

ITAB-CARRID = 'UA'.

ITAB-CONNID = '0011'.

APPEND ITAB.

ITAB-CARRID = 'LH'.

ITAB-CONNID = '1245'.

APPEND ITAB.

ITAB-CARRID = 'AA'.

ITAB-CONNID = '4574'.

APPEND ITAB.

INSERT SPFLI FROM TABLE ITAB.

(84)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 84/239

UPDATE

-UPDATE

1.Modifica registros na tabela do dicionário. Um registro por vez.

UPDATE <tabelaSAP> [ FROM <estrutura> ].

Exemplos:

TABLES: SPFLI.

DATA: WA LIKE SPFLI.

MOVE 'AA'

TO WA-CARRID.

MOVE '0064'

TO WA-CONNID.

MOVE 'WASHINGTON' TO WA-CITYFROM.

 

UPDATE SPFLI FROM WA.

MOVE 'LH'

TO SPFLI-CARRID.

MOVE '0017'

TO SPFLI-CONNID.

MOVE 'BERLIN'

TO SPFLI-CITFROM.

 

UPDATE SPFLI.

(85)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 85/239

UPDATE

2.Modifica registros na tabela do dicionário. Vários registros por vez.

UPDATE <tabelaSAP> SET <S1> .. <Sn> [ WHERE condição ].

Exemplos:

TABLES: SFLIGHT.

UPDATE SFLIGHT SET PLANETYPE = 'A310'

FLPRICE

= FLPRICE - '10000'

WHERE CARRID = 'LH'.

3. Modifica registros na tabela do dicionário, a partir de uma tabela interna.

UPDATE <tabelaSAP> FROM TABLE <t_tabela01>.

Exemplos:

TABLES: SPFLI.

DATA: ITAB LIKE SPFLI OCCURS 10 WITH HEADER LINE.

ITAB-CARRID = 'UA'. ITAB-CONNID = '0011'.

APPEND ITAB.

ITAB-CARRID = 'LH'. ITAB-CONNID = '1245'.

APPEND ITAB.

ITAB-CARRID = 'AA'. ITAB-CONNID = '4574'.

APPEND ITAB.

 

UPDATE SPFLI FROM TABLE ITAB.

(86)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 86/239

 MODIFY

-MODIFY

Este comando também altera registros na tabela do dicionário, mas contém uma diferença

importante. Com este comando, se o registro a ser alterado não for encontrado, ele é

inserido na tabela do dicionário.

Segue o mesmo esquema do comando UPDATE.

MODIFY <tabelaSAP> [ FROM <estrutura> ].

MODIFY <tabelaSAP> FROM TABLE <t_tabela01>.

Exemplos:

TABLES: SPFLI.

DATA: WA LIKE SPFLI.

MOVE 'AA'

TO WA-CARRID.

MOVE '0064'

TO WA-CONNID.

MOVE 'WASHINGTON' TO WA-CITYFROM.

 

MODIFY SPFLI FROM WA.

TABLES: SPFLI.

DATA ITAB LIKE SPFLI OCCURS 10 WITH HEADER LINE.

ITAB-CARRID = 'UA'. ITAB-CONNID = '0011'.

APPEND ITAB.

ITAB-CARRID = 'LH'. ITAB-CONNID = '1245'.

APPEND ITAB.

ITAB-CARRID = 'AA'. ITAB-CONNID = '4574'.

APPEND ITAB.

 

MODIFY SPFLI FROM TABLE ITAB.

(87)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 87/239

DELETE

-DELETE

1.Deleta registros da tabela do dicionário.

DELETE <tabelaSAP> FROM <estrutura>.

Exemplos:

TABLES: SPFLI.

DATA: WA LIKE SPFLI.

MOVE 'AA'

TO WA-CARRID.

MOVE '0064' TO WA-CONNID.

DELETE SPFLI FROM WA.

2.Deleta registros da tabela do dicionário. Vários registros por vez.

DELETE FROM <tabelaSAP> WHERE <condição>.

Exemplos:

TABLES: SFLIGHT.

DELETE FROM SFLIGHT WHERE PLANETYPE = 'A310' AND

CARRID

= 'LH'.

„Serão deletados os registros na estrutura

WA, de acordo com os campos chave.

(88)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 88/239

DELETE

3. Modifica registros na tabela do dicionário, a partir de uma tabela interna.

DELETE <tabelaSAP> FROM TABLE <t_tabela01>.

Exemplos:

TABLES SPFLI.

DATA ITAB LIKE SPFLI OCCURS 10 WITH HEADER LINE.

ITAB-CARRID = 'UA'.

ITAB-CONNID = '0011'.

APPEND ITAB.

ITAB-CARRID = 'LH'.

ITAB-CONNID = '1245'.

APPEND ITAB.

ITAB-CARRID = 'AA'.

ITAB-CONNID = '4574'.

APPEND ITAB.

DELETE SPFLI FROM TABLE ITAB.

Os registros são deletados baseando-se

nos campos chave.

(89)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 89/239

COMMIT WORK

Efetiva as operações realizadas nas tabelas para o SAP.

Enquanto o COMMIT não é executado, o SAP trabalha em uma área separada. Só carrega as

modificações para o banco, quando o comando é executado.

ROLLBACK WORK

Desfaz as modificações efetuadas pelo programa, antes de ser executado o COMMIT.

Após a execução do COMMIT, o ROLLBACK não mais consegue desfazer as modificações.

Exemplos:

 

COMMIT WORK.

 

<instruções>

 

DELETE FROM bkpf WHERE …

 

 

<intruções>

 

INSERT zteste_001 from zteste_001.

IF sy-subrc <> 0.

ROLLBACK WORK.

continue.

ELSE.

COMMIT WORK.

ENDIF.

Primeira gravação.

Insere registros na tabela.

Se ocorrer erro na inserção, desfaz tudo

o que foi feito após o primeiro COMMIT.

Efetiva operações realizadas até este

COMMIT.

Deleta registros da tabela.

(90)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 90/239

CONCATENATE

Utilizado para concatenar/juntar várias strings em uma só.

CONCATENATE <var1> <var2> … <varN> INTO <varDESTINO> [ SEPARATED BY <carac> ].

 

CONDENSE

Utilizado para eliminar os espaços em branco de uma string.

CONDENSE <string> [ NO-GAPS ].

TRANSLATE

Utilizado para transformar os caracteres em maiúsculos ou minúsculos. E também para

converter uma string a partir de outra.

TRANSLATE <string> TO UPPER CASE.

TRANSLATE <string> TO LOWER CASE.

TRANSLATE <string1> USING <string2>.

DATA: STRING1 (10) VALUE 'AbCdEfGhIj',

STRING2 (20) VALUE 'AxbXCydYEzfZ'.

TRANSLATE STRING1 USING STRING2.

WRITE / STRING1.

A saída será a seguinte string : xXyYzZGhIj

 A string utilizada para o TRANSLATE,

STRING2 tem a seguinte instrução :

A

 x

b

 X

C

 y

d

 Y

E

 z

f

 Z

(91)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 91/239

REPLACE

Substitui o conteúdo de uma string por outra, em uma outra string destino.

Exemplos:

DATA: T(10)

STRING LIKE T,

VALUE 'abcdefghij',

STR1(4)

VALUE 'cdef',

STR2(4)

VALUE 'klmn',

STR3(2)

VALUE 'kl',

STR4(6)

VALUE 'klmnop'.

STRING = T.

REPLACE STR1 WITH STR2 INTO STRING.

WRITE / STRING.

A saída na string será a seguinte : abklmnghij

STRING = T.

REPLACE STR1 WITH STR3 INTO STRING.

WRITE / STRING.

STRING = T.

A saída na string será a seguinte : abklghij

REPLACE STR1 WITH STR4 INTO STRING.

WRITE / STRING.

A saída na string será a seguinte : abklmnopgh

(92)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 92/239

SEARCH

Permite que se busque uma string em uma cadeia de caracteres ou em uma tabela interna.

SY-SUBRC = 0, string encontrada.

SY-FDPOS = , retorna a posição em que foi encontrada.

SY-SUBRC = 4, string não encontrada.

SEARCH <string> FROM <string_procurada>.

SEARCH <t_tabela01> FOR <string_procurada> [ AND MARK ].

Obs.: No caso de busca em tabela interna, a variável SY-TABIX retorna a linha em que a

string procurada foi encontrada.

STRLEN

Devolve o tamanha da string referenciada.

v_tamanho = STRLEN( ‘IVAN RODRIGO’ ).

 

v_tamanho = STRLEN( TEXT-001 ).

(93)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 93/239

RELATÓRIOS

(94)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 94/239

Comandos de saída/Opções de formatação :

WRITE

FORMAT

NEW-PAGE

Eventos :

TOP-OF-PAGE

END-OF-PAGE

Elementos de texto :

TEXT-SYMBOLS

HEADINGS

SELECTION TEXTS

System fields

Comando WRITE

(95)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 95/239

 WRITE

Formato de saída dos tipos de dados pré-definidos :

Tipo Dado

Tamanho Saída

Positioning

C

tamanho do campo

esquerda

D

8

esquerda

F

22

direita

I

11

direita

N

tamanho do campo

esquerda

P

2 * tamanho do campo + 1

direita

T

6

esquerda

X

2 * tamanho do campo

esquerda

Revendo as opções do comando WRITE:

... NO-ZERO.

... NO-SIGN.

... DD/MM/YY.

... MM/DD/YY.

... DD/MM/YYYY.

... MM/DD/YYYY.

... DDMMYY.

... CURRENCY w.

... DECIMALS d.

... ROUND R.

... UNIT u.

... USING EDIT MASK mask.

... UNDER g.

... NO-GAP.

... LEFT-JUSTIFIED.

... CENTERED.

... RIGHT-JUSTIFIED.

(96)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 96/239

 WRITE

Exemplos:

WRITE: ‘****************’.

 

WRITE: ‘Date’, sy

-datum.

WRITE: ‘Time’, sy

-uzeit.

WRITE: 5 `****************’.

 

WRITE: /10 ‘Usuário:’, 30 sy

-uname.

SKIP 2.

ULINE.

ULINE /5(40).

V_DATUM = SY-DATUM.

V_UZEIT = SY-UZEIT.

WRITE: 5 ‘Datum’, 20 V_DATUM DD/MM/YYYY.

 

WRITE: /10 ‘Time’, 25 V_TIME USING EDIT MASK ‘__:__:__’.

 

(97)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 97/239

FORMAT

-Trabalhando com cores.

Opções para se modificar as cores da lista, via comando FORMAT.

1.

… COLOR n [ON]

 

or

… COLOR OFF

 

2.

… INTENSIFIED [ON]

 

or

… INTENSIFIED OFF

 

3.

… INVERSE [ON]

 

or

… INVERSE OFF

 

4.

… HOTSPOT [ON]

 

or

… HOTSPOT OFF

 

5.

… INPUT [ON]

 

or

… INPUT OFF

 

6.

… RESET

 

FORMAT INTENSIFIED OFF.

FORMAT INTENSIFEID.

FORMAT COLOR COL_KEY.

FORMAT COLOR COL_TOTAL INTENSIFIED OFF.

WRITE: /05 V_TOTAL COLOR COL_POSITIVE.

(98)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 98/239

 NEW-PAGE

O comando NEW-PAGE inicia uma nova página, durante o processamento da lista.

Ele não imprime páginas em branco. Ele as ignora.

O comando incrementa o contador de páginas do sistema

 variável SY-PAGNO.

Para ser executado, a opção NO STANDARD PAGE HEADING deve ser colocada no programa.

END-OF-PAGE

O comando é executado sempre a área definida para impressão na página acaba.

LINE-SIZE col

Cria o report com <col> colunas por linha.

LINE-COUNT n(m)

Cria o report com <n> linhas por página, das quais (m) linhas serão reservadas para o

processamento do comando END-OF-PAGE.

 ALGUNS CAMPOS DO SISTEMA PARA CRIAÇÃO DE LISTAS

SY-PAGNO : número da página corrente.

SY-LINNO : número da linha corrente.

(99)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 99/239

ALV

(100)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 100/239

O Alv (Abap List Viewer) Grid é uma ferramenta flexível para

exibição de relatórios ou árvore.

 São disponibilizados botões que permitem ao usuário

manipular os dados (classificar, filtrar e somar).

 Além dos botões standards do sistema, é possível criar

novos botões conforme a necessidade do usuário.

Isto pode eliminar certas etapas no processo de

gerenciamento de eventos para controles .

(101)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 101/239

O Abap List Viewer padroniza e simplifica o uso de listas e

relatórios no sistema R/3. O Abap List Viewer fornece

interfaces e formatos de lista padronizados para todas as

listas e relatórios.

Pode-se especificar os campos a serem exibidos no relatório

e modificar a seqüência em que esses campos são exibidos.

 Além disso, pode-se ajustar a largura das colunas

individuais para atender a requisitos específicos.

(102)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 102/239

O List Viewer permite :

Usar variantes de exibição standard predefinidas pela SAP .

Ordenar os dados : crescente e decrescente.

Ordenar as linhas de acordo com os valores das

colunas, em seqüência crescente ou decrescente.

Definir um filtro.

Exibir somente os campos desejados.

Formar totais e subtotais.

Em uma lista, é possível calcular totais e

subtotais de uma ou mais colunas selecionadas.

(103)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 103/239

Exibição de informações detalhadas.

Pode-se acessar informações detalhadas de linhas

individuais da lista.

Pesquisa.

É possível pesquisar informações específicas.

Impressão de listas e pré-visualização.

Pode-se imprimir as listas e chamar uma pré- exibição

antes de imprimir.

(104)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 104/239

Exportação de dados.

Pode-se copiar as listas, por exemplo, para uma

planilha ou gravá-las como arquivo local.

Deslocar colunas.

O Alv Grid é formado basicamente por :

- Uma barra de ferramenta

- Um título

- Uma lista de saída.

(105)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 105/239

Programa : Z_ALV_SIMPLE.

(106)

5/21/2018 Academia SAP Abap_Interna - slidepdf.com

http://slidepdf.com/reader/full/academia-sap-abapinterna 106/239

O programa endereçado no link

E x e m p l o A L V 0 1.d o c  

 

contém as estruturas necessárias para se desenvolver um

programa mais abrangente e formatado.

Referências

Documentos relacionados

Para migração de ambientes SAP Business Suite com banco de dados SAP HANA, recomendamos verificar a SAP note 1872170 para estimar os requerimentos de memória para a instancia EC2

SAP S/4HANA Analytics + SAP Business Warehouse (BW/4HANA). Realidade transacional + Análise histórica temporal e planejamento com

SAP HANA user configures virtual tables in SAP HANA Studio using SAP HANA SDA and SAP HANA IoT Integrator by OSIsoft. SAP HANA IoT Integrator by OSIsoft controls access to PI

A Figura 12 mostra um exemplo de aplicação de uma carga uniformemente distribuída em um elemento SHELL, considerando uma sobrecarga de 2,5 kN na direção da gravidade..

Avaliando as características analisadas pelo equipamento HVI (High Volume Instruments) da fibra de algodoeiro em função da aplicação de subdoses de 2,4-D sal colina e

C ( ) Muita dedicação, perseverança, disciplina, atingir seus sonhos e objetivos com determinação e amor, sacrifício, trabalho duro, quando a gente quer,

posição ou tenclencia aos estados morbidos, fica-nos melhor resumir a diathese como constitnIçào allergica, sendo exacta a de· nombuH:fto de ,HllflH'se aHergl&lt;~a, onde de-.

Mais especificamente, ao considerar o caso do modelo de diferenças em diferenças da taxa de roubos no qual se admite dois bairros de mesma renda média, mesma taxa de desemprego, mesmo