You are on page 1of 88

SAP R/3

Desenvolvendo em ABAP/4
Instrutor: Glicrio Covizzi cruca@msn.com

Contedo
 Histrico  Viso Geral ABAP  Dicionrio de Dados  Editor ABAP  Modularizao e Estrutura de programas  Open SQL Report/Listas  Programas de Carga (BDC)  Module Pool  SapScript

Histrico
Em 1972, cinco engenheiros de sistemas decidiram 1972, abandonar seus empregos e, apostando numa idia bastante extravagante para a poca, abrir uma nova empresa. empresa. Surgia a SAP . A idia por trs dessa iniciativa era a criao de uma soluo nica, totalmente integrada, capaz de automatizar todos os processos inerentes a uma empresa. 33 anos e 12 milhes de empresa. usurios depois, a SAP surge como uma das maiores empresas de software do mundo. mundo. A primeira em software de gesto empresarial. empresarial. Empregando mais de 30 mil pessoas em 50 pases diferentes, contando com mais de mil e quinhentos parceiros e 88 mil instalaes. instalaes.

Viso Geral
 Qual a funo do SAP R/3?
oferecer um conjunto integrado, de aplicativos empresariais de grande escala. escala. O conjunto padro de aplicativos integrados com cada sistema R/3 R/3 o seguinte: seguinte: PP (Production Planning - planejamento de produo) MM (Materials Management - gerenciamento de materiais) SD (Sales and Distribution - vendas e distribuio) FI (Financial Accounting - contabilidade financeira) CO (Controlling - controladoria) AM (Fixed Assets Management - gerenciamento de ativos fixos) PS (Project System - sistema de projeto) WF (Workflow - fluxo de trabalho) IS (Industry Solutions - solues de industria) HR (Human Resources - recursos humanos) PM (Plant Maintenance - manuteno das instalaes) QM (Quality Management - gerenciamento da qualidade)

Viso Geral
O R/3 vem predefinindo com os aplicativos empresariais bsicos R/3 necessrios maioria das grandes corporaes. Esses corporaes. aplicativos coexistem em um ambiente homogneo. Eles so homogneo. projetados para funcionar utilizando desde um nico banco de dados e um conjunto (muito grande) de tabelas. tabelas. Os tamanhos de banco de dados de produo atuais variam de 12 gigabytes a aproximadamente 3 terabytes. Cerca de 8.000 terabytes. tabelas de banco de dados so distribudas com o produto R/3 R/3 padro. padro.

Viso Geral
 O que ABAP
ABAP a linguagem de programao que a SAP criou para desenvolver as aplicaes do R/3, focada em tarefas comerciais R/3 especificas e totalmente voltada para atender as necessidades dos usurios deste software, como: processamento de dados em como: massa, moeda especifica, mltiplos idiomas, etc. etc. Falando em banco de dados o ABAP tambm tem suas particularidades, o desenvolvedor no necessita conhecer o banco no qual est rodando o R/3, apenas cabe ao programador conhecer R/3 o Open SQL. SQL.

Viso Geral
 Ambiente de Trabalho
O ambiente de trabalho do ABAP normalmente dividido da seguinte maneira:
Ambiente de desenvolvimento (desenvolvimento ABAP e customatizao funcionais / testes). Ambiente de Qualidade (realizao dos testes de usurios para aprovao final). Ambiente de Produo (processamento real dos dados da empresa).

Viso Geral
 Ambiente de desenvolvimento
Local onde o ABAP ir criar seus programas (objetos) no client especifico para isso, os objetos criados so armazenados a uma Classe de desenvolvimento e tambm a um Change Request/Task. Request/Task. No final do projeto cada desenvolvedor libera sua Request para ser aprovada e assim transportada para outro ambiente. ambiente.

Viso Geral
 Client dependent / independent
A base de desenvolvimento normalmente dividida client ou mandante, alguns objetos quando criados em um determinado client somente so enxergados ali e outros so enxergados em todos os clients. clients.
Cdigo fonte de programas INDEPENDENT Telas, Menus e Funes INDEPENDENT Estruturas de tabela, elementos de dados e dominios INDEPENDENT Registros de dados da tabela DEPENDENT Obejtos de Texto, Formulrios SapScript DEPENDENT

Viso Geral
 Particularidades
Os programas e outros objetos do repositrio criados pelo cliente devem estar no namespace, ou seja, seus nomes devem comear com as letras Z ou Y (com exceo dos campos em append structures, que devem comear po ZZ ou YY). YY). Os clientes s devem alterar objetos com nomes fora dessa especificao quando expressamente orientados pela SAP (notas de correo)

Dicionrio de Dados
Interface entre Programas
Programas

e Banco de Dados.
ABAP Dicionrio

Banco de Dados

Dicionrio de Dados
O dicionrio ABAP (ABAP dictionary) permite a criao e administrao de todas as definies de dados do SAP. SAP. Podem ser definidas tabelas, vises, ndices, elementos de dados, domnios e objetos de bloqueio. bloqueio. Todos os dados que entram no Dicionrio ABAP esto disponveis ao longo do sistema SAP. SAP. Atravs do mecanismo de ativao todas as alteraes entram em vigor em todos os componentes pertinentes ao sistema. sistema. O Dicionrio ABAP est ativamente integrado no ABAP Development Workbench. Cada mudana afeta imediatamente os Workbench. programas e telas de ABAP. ABAP. Toda informao que importante para o ambiente de operao, como tamanho de campo e tipo de campo, tirada do Dicionrio ABAP. ABAP.

Dicionrio de Dados
 Tipos de Dados
Type Description of type C N D T X I P F Character Numeric string Date (YYYYMMDD) Time (HHMMSS) Byte (hexadecimal) Integer Packed number Floating point number Initial value Space '00...0' '00000000' '000000' X'00' 0 0 '0.0'

Dicionrio de Dados
 Dados definidos no programa
Entre as formas de tipos de dados mostrados acima, as mais usadas no desenvolvimento de programas ABAP/4 so:
1 - Estrutura: consiste em vrios Estrutura: campos com tipos de dados elementares e tem tamanho fixo. fixo. (array) 3 Tabela Interna: uma Interna: estrutura que pode variar em tamanho, no que diz respeito a linhas. linhas. (matriz) Os outros tipos acima, so variaes dos dois j explicados e muito pouco utilizados nos programas. programas.

Dicionrio de Dados
 Exemplo de criao de tipo de dados
TYPES: texto02 TYPE c. TYPES: BEGIN OF nome_tel, nome(50) TYPE c, fone(15) TYPE c, BEGIN OF nome_tel.

Dicionrio de Dados
 Tipos de Dados
Domnio: Domnio: a definio tcnica do campo, onde colocamos o tipo de dados, o tamanho do campo e tabela de valores possveis. possveis. Elemento de Dados: a definio semntica para um campo Dados: individual, nele colocamos os textos do campo e amarramos a um domnio. domnio. Tabela Transparente (database table): so as tabelas que table): possuem um estrutura criada no dicionrio de dados e que so refletidas no banco de dados. dados. Viso: Viso: agrupamento de tabelas transparentes que possuem ligaes entre si. si.

Dicionrio de Dados
 Entendendo Domnio e Elemento de Dados

Dicionrio de Dados
 Caractersticas tcnicas das tabelas
Quando uma tabela definida no dicionrio de dados do R/3, R/3 devem ser definidas as caractersticas tcnicas (technical settings) para a tabela. Essas caractersticas so usadas para otimizar o tabela. acesso e a armazenagem da tabela individualmente. individualmente. Valores que necessitam de preenchimento: preenchimento:
Descrio Classe de entrada Campo MANDT (especifica qual o mandante). Tipo de dados Categoria de tamanho

Dicionrio de Dados
 SE11

Dicionrio de Dados
 Criando Tabela Transparente

Dicionrio de Dados
 Criando tabela transparente

Dicionrio de Dados
 Criando Tabela Transparente

Dicionrio de Dados
 Criando Tabela Transparente

Editor ABAP
 SE38 Criando um novo programa

Editor ABAP
 Criando um novo programa

Editor ABAP
 Criando um novo programa

Editor ABAP
 Criando um novo programa
- Ativando programa

Editor ABAP
 Tela de seleo
 SELECTION-SCREEN SELECTION PARAMETER  SELECT-OPTIONS SELECTEx.: TABLES: MARA
SELECTION-SCREEN BEGIN OF BLOCK bloco3 WITH FRAME TITLE text-003. PARAMETER: p_num1 TYPE i. PARAMETER: P_MATNR LIKE MARA-MATNR. SELECTION-SCREEN end of BLOCK bloco3. SELECTION-SCREEN BEGIN OF BLOCK bloco4 WITH FRAME TITLE text-004. SELECT-OPTIONS: S_MATNR FOR MARA-MATNR. SELECTION-SCREEN end of BLOCK bloco4.

Editor ABAP
 Comandos
DATA: DATA: utilizado para definir uma varivel de qualquer tipo (simples, estrutura ou tabela interna). DATA: V_num TYPE i. DATA: v_matnr LIKE mara-matnr. maraDATA: begin of t_mara occurs 0, matnr LIKE mara-matnr, maraend of t_mara. MOVE ou = : esses so os comandos de atribuio de valores. MOVE: 2 to v_num, 'MATERIAL to v_matnr. ou v_num = 2. v_matnr = MATERIAL.

Editor ABAP
 Comandos
IF e CASE: so utilizados como comparativos na lgica do ABAP. CASE:
CASE p_sin. WHEN '+'. v_num = p_num1 + p_num2. WHEN ''-'. v_num = p_num1 + p_num2. WHEN OTHERS. ENDCASE.

IF p_sin = '+'. Ou v_num = p_num1 + p_num2. ELSEIF p_sin = ''-'. v_num = p_num1 + p_num2. ELSE. ENDIF.

Editor ABAP
 Comandos
TABLES: TABLES: disponibiliza a estrutura da tabela do banco de dados, para ser
utilizada dentro do programa, obrigatria essa disponibilizao quando a tabela vai ser utilizada no FOR.

MESSAGE: MESSAGE: utilizado para abrir caixa de dialogo com mensagens.


MESSAGE I368(00) with Erro XXXXX.

LOOP AT: utilizado pra ler o contedo de uma tabela AT: LOOP AT itab. WRITE: / itab-name, itab-fone. itabitabENDLOOP.

Editor ABAP
 Modularizao
REPORT... * Declarao de variveis, constantes, tabela internas, ... * Tela de seleo INITIALIZATION. Primeiro passo a ser executado no programa, antes da tela de seleo e antes da lgica de processamento. AT SELECTION-SCREEN. SELECTIONExecuta logo aps sair da tela de seleo, utilizado para fazer tratamentos de obrigatoriedade de campos e similares. TOP-OFTOP-OF-PAGE. Executa quando encontrado o primeiro comando WRITE dentro da lgica principal, utilizado para colocar cabealho, textos que devem sair em todas as pginas. START-OFSTART-OF-SELECTION. Entre o START-OF-SELECTION e o END-OF-SELECTION, se encontra a lgica principal START-OFEND-OFdo programa, quando programamos de uma forma estruturada colocamos aqui apenas chamadas de sub-rotinas, para evitar poluio de cdigo. subPERFORM ... END-OF-SELECTION. END-OFAT LINE-SELECTION. LINESomente executado se o usurio der um duplo click em uma linha mostrada no relatrio, ou marcar a linha e pedir para ver detalhe, utilizada para listas interativas, drill-down. drillAT USER-COMMAND. USERSomente executado se o usurio der um click em algum objeto do menu, utilizado para listas com botes de interao.

Open SQL
O ABAP oferece um conjunto de comandos que permite realizar operaes com os dados armazenados no banco, o Open SQL. A idia SQL. central do Open SQL prover uma linguagem de acesso ao banco independente de plataforma. Os comandos Open SQL tm de passar pelo plataforma. interpretador ABAP, que os traduz para os comandos SQL do banco de dados que esteja sendo utilizado. utilizado. Comandos Dentro do Open SQL, podem-se utilizar os seguintes comandos: podemSELECT: permite a leitura de dados do banco de dados. INSERT: insere dados no banco. UPDATE: atualiza dados. MODIFY: atualiza dados existentes ou os acrescenta caso no existam no banco. DELETE: apaga registros do banco de dados.

 Testando SELECT
 SY-SUBRC SY SY-DBCNT SY-

Open SQL
 LUW COMMIT e ROLLBACK.
Quando trabalhamos com alterao nos dados do banco, bom sabermos que todas as alteraes que estamos fazendo ainda no aconteceram efetivamente no banco, isso s ocorre quando encontra-se o primeiro encontracommit: commit: Exemplo: INSERT <tabela1>. IF SY-SUBRC = 0. SYINSERT <tabela2>. IF SY-SUBRC = 0. SYCOMMIT WORK. ELSE. ROLLBACK WORK. ENDIF. ENDIF.

Open SQL
 SELECT
EX.: SELECT MATNR MAKTX INTO TABLE T_RELATORIO FROM MAKT WHERE MATNR IN S_MATNR AND SPRAS EQ SY-LANGU. SY-

Open SQL
 INNER JOIN
Ex.: SELECT T1~MATNR T2~MAKTX INTO TABLE T_RELATORIO FROM MARA AS T1 INNER JOIN MAKT AS T2 ON T1~MATNR EQ T2~MATNR WHERE T1~MATNR IN S_MATNR AND T2~SPRAS EQ SY-LANGU. SY-

Open SQL
 FOR ALL ENTRIES
EX.: SELECT MATNR MAKTX INTO TABLE T_RELATORIO FROM MAKT FOR ALL ENTRIES IN T_MARA WHERE MATNR EQ T_MARA-MATNR T_MARAAND SPRAS EQ SY-LANGU. SY-

Report/Lista
 Criando uma lista simples
ex.: REPORT ZLISTAXX NO STANDARD PAGE HEADING LINELINE-SIZE 126 LINE-COUNT 50. LINETABLES MAKT. SELECT * FROM MAKT. WRITE / MAKT-MATNR. MAKTWRITE MAKT-MAKTX. MAKTENDSELECT.

Report/Lista
 Mudando a apresentao dos campos
Podemos mudar a cor com a opo COLOR do comando WRITE; WRITE; podemos mudar a intensidade da cor com a opo INTENSIFIED {ON|OFF}, transformar o campo num HOTSPOT para uso em listas com drill-down, e mudar o posicionamento dos drillcampos com WRITE AT. AT.

 LIBS

Report/Lista
 Mudando a apresentao dos campos
Ex.:
WRITE: / SPFLI-CARRID COLOR 4 INTENSIFIED OFF HOTSPOT SPFLICENTERED. WRITE:/ SPFLI-CARRID COLOR 5 INVERSE. SPFLIFORMAT COLOR 3. WRITE: /10(5) SPFLI-CARRID COLOR 2 INTENSIFIED OFF HOTSPOT. SPFLI-

Report/Lista
 Criando uma lista complexa
    
AT LINE-SELECTION LINETOP-OFTOP-OF-PAGE DURING LINE-SELECTION LINEHIDE SYSY-LSIND (usado quando se tem vrios nveis de lista) WINDOW STARTING AT <col> <lin> ENDING AT <col> <lin>

Programas de Carga
 SHDB

Programa de Carga
 SHDB

Programas de Carga
 BATCH INPUT
So mais utilizados para grandes massas de dados, pois, ele no faz a execuo automtica da entrada dos dados, ele apenas armazena os dados da BDC em uma local chamado PASTA, e esses dados carregados somente sero processados quando essa pasta for executada na transao SM35. SM35.
BDC_OPEN_GROUP BDC_INSERT BDC_CLOSE_GROUP

Programas de Carga
 CALL TRANSACTION
So mais utilizados para menor quantidade de dados, ou interfaces on-line que necessitam da resposta do processamento onlogo aps a execuo. execuo.
CALL TRANSACTION <transao> USING <tabela interna BDC> MODE <A> exibir passo a passo <E> somente erros <N> no exibir MESSAGES <tabela interna para armazenar as mensagens> UPDATE <modo de gravao (S) Sncrono>

Programas de Carga
 Trabalhando com arquivo texto
WS_UPLOAD WS_DOWNLOAD OPEN DATASET READ DATASET CLOSE DATASET BACKGROUND

Programas de Carga
 Tabela BDCDATA

Module Pool
 SE80

Module Pool
On Principais componentes de um programa On-Line:
 Development environment  ABAP/4 Dictionary  Screen Painter  ABAP/4  Menu Painter  Runtime environment  Dialog processor  ABAP/4 processor

 Particularidade

 Nome do programa inicia-se com SAP + M (module pool) + Z ... inicia-

Module Pool
 Para criao de uma tela, devem ser seguidos os seguintes passos:
    Defina os componentes bsicos da tela ( screen attributes ). Desenhe o Layout da tela utilizando o fullscreen editor Defina os atributos dos campos ( field list ) Escreva o fluxo lgico da tela. ( flow logic )

 Os mais importantes componentes do programa ABAP so

encontrados nos seguintes objetos:  Global data ou Estruturas do dicionrio no TOP include (declarao de dados )  Module PBO ( Process Before Output )  Module PAI ( Process After Input )  Sub-rotinas ( se necessrio ) Sub-

Module Pool
 DEFININDO O FLOW CONTROL
 No permitido:  IF  MOVE  PERFORM 

Module Pool
 Criar um Tela

Module Pool
 Menu Painter

Module Pool
 ...

Um dia terminarei

SAPScript
 SE71  Ferramenta que auxilia o desenvolvedor Abap a criar
relatrios com formatao grfica
 Formatao de fontes (tamanho,tipo)  Box  Figuras ( logomarcas )

SAPScript
 Header - Cabealho

SAPScript
 Basic Setting - Configurao da pgina

SAPScript
 Page Informaes do relatrio

SAPScript
 Windows Janelas do relatrio

SAPScript
 Page Windows Posio da Page na Window

SAPScript
 Page Windows Posio da Page na Window

SAPScript
 Pargrafo sublinhado Tamanho da fonte, tipo de letra, negrito, itlico ou

SAPScript
 Text Elements

SAPScript
 SAPSCRIPT a partir do programa
Abrindo Formulrio
MOVE: 'LOCL' TO ITCPO-TDDEST, "Impressora '' TO ITCPO-TDIMMED, "Imediato '' TO ITCPO-TDDELETE, "Deleo apos impressao P_EXIBI TO ITCPO-TDPREVIEW,"Exibir antes da impresso '' TO ITCPO-TDGETOTF. CALL FUNCTION 'OPEN_FORM' EXPORTING DEVICE = 'PRINTER' DIALOG = 'X' FORM = 'ZSAPCURSOXX' LANGUAGE = 'P' OPTIONS = ITCPO EXCEPTIONS CANCELED =1 DEVICE =2 FORM =3 OPTIONS =4 UNCLOSED =5 MAIL_OPTIONS =6 ARCHIVE_ERROR =7 MORE_PARAMS_NEEDED_IN_BATCH = 8 OTHERS = 9. IF SY-SUBRC <> 0. MESSAGE E368(00) WITH TEXT-007. ENDIF.

SAPScript
 Chamando um TEXT_ELEMENT
CALL FUNCTION 'WRITE_FORM' EXPORTING ELEMENT = 'ITEM' * FUNCTION = 'SET' * TYPE = 'BODY' WINDOW = 'MAIN' * IMPORTING * PENDING_LINES = EXCEPTIONS ELEMENT =1 FUNCTION =2 TYPE =3 UNOPENED =4 UNSTARTED =5 WINDOW =6 BAD_PAGEFORMAT_FOR_PRINT = 7 OTHERS = 8.

SAPScript
 Ativando e Testando Formulario

SAPScript
 Fechando o Formulrio
CALL FUNCTION 'CLOSE_FORM' * * * * IMPORTING RESULT = I_RESULT TABLES OTFDATA = I_OTF EXCEPTIONS UNOPENED =1 BAD_PAGEFORMAT_FOR_PRINT = 2 SEND_ERROR =3 OTHERS = 4.

Modulo Avanado

Contedo
 SAP Query  Relatrio ALV  Dicas de Performance de Programas

Query
 Ferramenta que possibilita a emisso de relatrios, que auxilia no
desenvolvimento do relatrio de uma forma quase easy. easy.  Constituio: Constituio:  Grupo de Usurios  rea Funcional  Query

Query
 Definindo rea de Trabalho
 rea Standard dependente de Mandante  rea Global independente de Mandante

Query
 rea Funcional SQ02
 Onde sero relacionadas as tabelas e campos que estaro disponveis para se fazer a Query

Query
 Grupo de Usurios SQ03
 Deve-se relacionar os Usurio e reas Funcionais Deve-

Query
 Query Lista Bsica SQ01

Relatrio ALV
 O ALV padroniza e simplifica a exibio e operao
de listas e relatrios no sistema R/3. Fornece R/3 interfaces e formatos padronizados para todas as listas e relatrios. relatrios.

Relatrio ALV
 Barra de ferramentas

Obs.: SE80 Grupo de Funo SLVC_FULLSCREEN

Relatrio ALV
Total e Subtotal
Selecione a coluna com valor numrico, e escolha Total. Para Total. subtotal, escolha uma coluna qualquer. qualquer. Sempre primeiro necessrio totalizar uma coluna com o boto de somatria e s ento definir os subtotais. subtotais.

Relatrio ALV
Microsoft Excel
exportarmos para o Excel, algumas particularidades no sero enviadas: enviadas: Assim, se a intenso e gerar o relatrio para envia-lo ao Excel, enviano perca tempo com formataes. formataes. Apenas o bsico transferido. transferido. Temos trs opes para exportar a listagem para o Microsoft Excel, vamos ver a sada de cada uma delas. delas. Ao

Relatrio ALV
Microsoft Excel Opo Excel Macros SAP
Com essa opo, o R/3 envia o R/3 relatrio para o Excel e j apresenta vrias barras de ferramentas prprias para que voc tenha as mesmas facilidades. facilidades. Repare na figura, que as opes de ferramentas do prprio Excel no aparecem. Para voltar aparecem. utilize a opo do menu Report e depois Exit. Exit.

Relatrio ALV
Microsoft Excel Opo Tabela
a forma mais simples de exportao. exportao. Veja que o R/3 R/3 mantem as barras de ferramentas do Excel e apenas inclui o relatrio na planilha. planilha.

Relatrio ALV
Microsoft Excel Opo Tabela Pivot
Nessa opo o R/3 abre o Excel e R/3 monta o relatrio que permanece com algumas funes. funes. Mesmo que o seu Excel no esteja exibindo a barra de ferramentas Tabela Dinmica, a comunicao R/3 Excel vai R/3 passar a exibi-la, para o acesso exibiaos recursos do relatrio. relatrio.

Relatrio ALV
Modificar layout
Essa opo engloba as funes do Filtro, Totalizar, Subtotalizar, Ordenar, Selecionar colunas, Ocultar colunas, etc. Vejamos etc. cada guia de opo. opo. Na parte da esquerda, temos as colunas que esto visveis no relatrio. relatrio. Na parte direita, temos todas as disponveis. disponveis. Veja que j temos aqui, a possibilidade de informar quais campos pretendemos totalizar. totalizar.

Relatrio ALV
Modificar layout
Na guia ordenao, informamos quais campos queremos classificar, em qual ordem e ainda, se desejamos um subtotal por esse campo. campo.

Relatrio ALV
Modificar layout
Na guia filtro definimos por qual campo (ou quais) gostaramos de delimitar o resultado.
A opo Viso raramente utilizada. utilizada. No se cria vises do relatrio. relatrio. muito mais utilizado e simples as opes de layout. layout. Na guia Viso voc pode utilizar templates do Excel ou do Crystal Reports. Tambm h Reports. pouca documentao sobre o assunto. assunto. Os layouts que voc cria, no deixam de ser vises diferentes de um mesmo relatrio. relatrio.

Relatrio ALV
Modificar layout
Na guia de Representao voc pode alterar algumas opes no formato de seu relatrio. Marque relatrio. ou desmarque os checkboxes. checkboxes.

Relatrio ALV
Modificar layout
O formato que seu relatrio estiver no momento pode ser salvo. O flag salvo. Config.prelim vai indicar qual o Config.prelim layout default. default. Da mesma forma possvel mudar o formato de seu relatrio a qualquer momento. momento. Basta selecionar outro layout salvo. Na salvo. figura abaixo, temos apenas um. um.

Relatrio ALV
 Inserindo uma figura no cabealho

Isso melhora bem a aparncia dos relatrios. Veja que temos at a relatrios. possibilidade de inserir figura em background, como na Web. O texto Web. tambm configurvel, voc pode inserir vrias linhas e alterar o tamanho da fonte. fonte. No exemplo acima foi utilizado como background a imagem ALV_BACKGROUND e o nome do logotipo ENJOYSAP_LOGO. ENJOYSAP_LOGO. A tabela com todas as figuras disponveis a BDS_CONN05, CLASS = BDS_CONN05, PICTURES. PICTURES. Transao OAER visualizar imagens.

Relatrio ALV
 Inserindo uma figura no cabealho
call function 'REUSE_ALV_GRID_DISPLAY' EXPORTING i_callback_program = v_repid i_background_id = 'ALV_BACKGROUND' i_callback_top_of_page = 'ZF_TOP_OF_PAGE' * i_callback_pf_status_set = 'ZF_STATUS' i_callback_user_command = 'ZF_USER_COMMAND' it_fieldcat = t_fieldcat[] is_layout = v_layout it_sort = t_sort[] i_default = 'X' i_save = 'A' is_variant = v_variante is_print = v_print TABLES t_outtab = t_alv EXCEPTIONS program_error =1 others = 2. call function 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING i_logo = 'ENJOYSAP_LOGO' it_list_commentary = t_listheader.

You might also like