Escolar Documentos
Profissional Documentos
Cultura Documentos
Abap Manual Basico Abap BW PDF
Abap Manual Basico Abap BW PDF
ABAP / BW
Histrico do Documento:
Verso Data da Reviso Redator
001 25.01.2012 Victor Dias da Silva
Page 1
Documento BI
ndice
1 INTRODUO 3
1.1 Contexto 3
1.2 Informaes 3
2 CONHECENDO O ABAP 4
2.1 ABAP 4
3 ACESSANDO O ABAP NO BW 7
3.1 Transformaes 7
3.1.1 Rotina Inicial. 7
3.1.2 Rotina no Campo. 8
3.1.3 Rotina Final. 9
4 DEBUG 11
4.1 Debug 11
4.5 Debug no BW 17
5 INFORMAES ADICIONAIS 19
Page 2
Documento BI
1 INTRODUO
1.1 CONTEXTO
O ABAP utilizado em grande parte do BW para obter e manipular informaes,
para que estas sejam consistentes e possam atender algumas especificidades na
gerao de dados.
1.2 INFORMAES
No BW os principais focos de desenvolvimento so as rotinas dentro das
Transformaes (Transformations), reconhecidas pelo smbolo , estas so:
"Rotina Inicial (Start Routine)"
"Rotina no Campo (Routine Field)"
"Rotina Final (End Routine)".
Page 3
Documento BI
2 CONHECENDO O ABAP
2.1 ABAP
Page 4
Documento BI
Page 5
Documento BI
Servir para o bom entendimento dos comandos que usaremos no BW, para
eventualmente carregar nossos dados.
Page 6
Documento BI
3 ACESSANDO O ABAP NO BW
3.1 TRANSFORMAES
Para as transformaes sempre usaremos os mesmos tipos de estruturas / tabelas
internas, pois os dados preenchidos nesta etapa sempre esto em uma estrutura
genrica standard.
Para entender a melhor forma de manipular a informao preciso conhecer o
conceito de quais so as etapas das informaes quando transferidas de um ponto
para outro.
Page 7
Documento BI
t_routine[] = SOURCE_PACKAGE[].
()
Crie seu cdigo usando a tabela t_routine.
()
SOURCE_PACKAGE[] = t_routine[].
Page 8
Documento BI
RESULT = t_cperson.
(...)
Page 9
Documento BI
t_routine[] = RESULT_PACKAGE[].
()
Crie seu cdigo usando a tabela t_routine.
()
RESULT_PACKAGE[] = t_routine[].
Page 10
Documento BI
4 DEBUG
4.1 DEBUG
O DEBUG ou Modo de Depurao a forma de executar um processo no SAP e
examin-lo durante a execuo, podendo verificar como iro se comportar o
preenchimento de uma tabela ou varivel.
ENTER.
Clique em executar .
Page 11
Documento BI
Page 12
Documento BI
De um duplo clique sobre o noma da tabela que deseja observar (veja que tabela
apareceu na area de valores).
Porm, ainda est vazia. Aperte novamente o F5 para que a seleo preencha a
tabela:
Se adicionarmos [] no final do nome da tabela, apresenta a quantidade de
registros.
Page 13
Documento BI
Page 14
Documento BI
Page 15
Documento BI
Page 16
Documento BI
4.5 DEBUG NO BW
Com as informaes acima, podemos agora, iniciar o Debug no BW. Este processo
ir acontecer em sua maioria nas transformaes, onde colocamos nossas rotinas e
utilizaremos o comando BREAK-POINT. Porm as outras formas de ativar o
depurador podem ser usadas, quando precisamos alterar uma User-Exit ou um
Enhancement, para estes usamos as mesmas formas de depurao usadas no ECC.
Um ponto interessante no BW, que podemos escrever nossos cdigos dentro das
transformaes e adicionar o comando BREAK-POINT no decorrer dos nossos
cdigos, pois, ele no ir travar a execuo das cargas. Assim, s acessamos o
Modo de Depurao quando optamos por ele.
Page 17
Documento BI
Page 18
Documento BI
5 INFORMAES ADICIONAIS
REPORT zteste_debug.
*----------------------------------------------------------------------*
* Tabelas
*----------------------------------------------------------------------*
TABLES: mara.
*----------------------------------------------------------------------*
* Tipos
*----------------------------------------------------------------------*
TYPES: BEGIN OF ty_mara,
matnr TYPE mara-matnr, " N Material
matkl TYPE mara-matkl, " Grupo de Mercadoria
ersda TYPE mara-ersda, " Data de Criao
meins TYPE mara-meins, " Unidade de Medida
END OF ty_mara,
BEGIN OF ty_makt,
matnr TYPE makt-matnr, " N Material
maktx TYPE makt-maktx, " Descrio do Material
END OF ty_makt,
BEGIN OF ty_fim,
matnr TYPE mara-matnr, " N Material
matkl TYPE mara-matkl, " Grupo de Mercadoria
ersda TYPE mara-ersda, " Data de Criao
meins TYPE mara-meins, " Unidade de Medida
maktx TYPE makt-maktx, " Descrio do Material
END OF ty_fim.
*----------------------------------------------------------------------*
* Tabelas Internas e Estruturas
*----------------------------------------------------------------------*
DATA: t_mara TYPE TABLE OF ty_mara WITH HEADER LINE, "Tab para material
t_makt TYPE TABLE OF ty_makt WITH HEADER LINE, "Tab para texto mat
t_fim TYPE TABLE OF ty_fim WITH HEADER LINE. "Tab de Apresentao
*----------------------------------------------------------------------*
* Variaveis e Constantes
*----------------------------------------------------------------------*
CONSTANTS: c_pt(2) TYPE c VALUE 'PT'. " Valor para idioma PT
*----------------------------------------------------------------------*
* Tela de Seleo
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: so_mat FOR mara-matnr OBLIGATORY.
PARAMETERS: p_spa TYPE makt-spras.
SELECTION-SCREEN END OF BLOCK b1.
Page 19
Documento BI
*----------------------------------------------------------------------*
* Seleo dos dados
*----------------------------------------------------------------------*
START-OF-SELECTION.
IF sy-subrc = 0.
SORT t_mara BY matnr.
IF p_spa IS INITIAL.
v_idioma = c_pt.
ELSE.
v_idioma = p_spa.
ENDIF.
IF sy-subrc = 0.
SORT t_makt BY matnr.
ENDIF.
ENDIF.
*----------------------------------------------------------------------*
* Preencher a tabela
*----------------------------------------------------------------------*
END-OF-SELECTION.
LOOP AT t_mara.
READ TABLE t_makt WITH KEY t_mara-matnr.
IF sy-subrc = 0.
t_fim-matnr = t_mara-matnr.
t_fim-matkl = t_mara-matkl.
t_fim-ersda = t_mara-ersda.
t_fim-meins = t_mara-meins.
t_fim-maktx = t_makt-maktx.
APPEND t_fim.
ENDIF.
WRITE /: t_fim.
ENDLOOP.
Uma grande diferena que podero encontrar que alguns clientes ainda no h o
ECC ento as telas, os cdigos e o Modo de Depurao ficam com aparncias
diferentes.
Page 20
Documento BI
Page 21
Documento BI
Page 22