TRABALHANDO COM STRING ABAP


Este artigo descreve a manipulação de dados LITERAIS, contendo os principais comandos de pesquisa, concatenação, trocas de textos. O abap é uma linguagem de fácil manipulação de dados, este artigos descreve os principais comandos usados no dia-dia de desenvolvimento ABAP/4.

TIPO: PDF

BAIXAR: TRABALHANDO COM STRING ABAP

 

04 – NOTA FISCAL – J_1B_BRANCH_READ


Está função trás os dados de uma determinada Planta (BRANCH) de uma EMPRESA. Lembrando que uma EMPRESA pode ter mais de uma PLANATA ( BRANCH).

 Template: CALL FUNCTION ‘J_1B_BRANCH_READ’
      
EXPORTING
        BRANCH                  = 
        COMPANY                 = 
     
IMPORTING
       ADDRESS                 = 
       BRANCH_RECORD           = 
       CGC_NUMBER              = 
       ADDRESS_VALUE           = 
     
EXCEPTIONS
       BRANCH_NOT_FOUND        = 
1
       ADDRESS_NOT_FOUND       = 
2
       COMPANY_NOT_FOUND       = 
3
       
OTHERS                  = 4. Entrada: BRANCH                                     =          CHAR 04   (  Character 04) BUKRS                                        =          CHAR 04   (  Character 04)  Saída: ADDRESS                                 =          SADR ( Tabela de gerenciamento de Endereços de uma companhia)          BRANCH_RECORD                 =          J_1BBRANCH ( Tabela que contém os dados da planta) CGC_NUMBER                         =          J_1BCGC (Elemento de Dados do tipo NUMC 14)  Exemplo: DATA: LS_BRANCH    TYPE J_1BBRANCH,
      LS_SADR      
TYPE SADR,
      LV_CGC       
TYPE J_1BCGC,
      LS_ADDR1_VAL 
TYPE ADDR1_VAL.

DATABEGIN OF COMPANY OCCURS 1,
               BUKRS   
TYPE J_1BNFDOC-BUKRS,
               BRANCH  
TYPE J_1BNFDOC-BRANCH,
        
END OF COMPANY.

SELECT BUKRS BRANCH
  
FROM J_1BNFDOC
  
INTO TABLE COMPANY
  
UP TO 1 ROWS.

LOOP AT COMPANY.

    CALL FUNCTION ‘J_1B_BRANCH_READ’
      
EXPORTING
        BRANCH                  = COMPANY-BRANCH
        COMPANY                 = COMPANY-BUKRS
     
IMPORTING
       ADDRESS                 = LS_SADR
       BRANCH_RECORD           = LS_BRANCH
       CGC_NUMBER              = LV_CGC
       ADDRESS_VALUE           = LS_ADDR1_VAL
     
EXCEPTIONS
       BRANCH_NOT_FOUND        = 
1
       ADDRESS_NOT_FOUND       = 
2
       COMPANY_NOT_FOUND       = 
3
       
OTHERS                  = 4.

    IF SY-SUBRC = 0.
      
WRITE: / LS_SADR-ADRNR, LS_SADR-NATIO,                 LS_SADR-ANRED, LS_SADR-NAME1,                 LS_SADR-NAME2, LV_CGC.
    
ENDIF.

ENDLOOP.         

MODIFY TABELA INTERNA


O comando MODIFY é usado para realizar modificações e valores já existentes, podendo ser utilizado para altera valores de uma DYNPRO, tabelas standard, tabelas Z e ate mesmo uma tabela interna. Para modificar uma tabela interna usando o comando MODIFY, basta seguinte a seguinte lógica. 

Lógica 1: Uma tabela interna contém 1 ou N campo, em algum momento esta tabela foi carregada por  um SELECT ou qualquer outro tipo de comando que pode carregar uma tabela interna, porém pode acontecer que um dos campos não podem vir dados de uma forma, por exemplo, quando um campo tiver valores negativo este devem se calculados para positivos, ou uma data esta menor do que a desejada, para realizar estas alterações basta usar os comando MODIFY que modifica uma campo ou mais de uma linha por.  Exemplo 1. será carregado em uma tabela interna os dados referentes a contabilidades de FI, este dados será selecionados e carregados na tabelas interna, após a tabela carregada, será verificados o índice atual da tabela onde será modificado o valor do campo BUZEI para 002 para linhas de índice par e 001 para linha de índice impar,  quando o índice for par o campo WEBTR será modificado para SPACE. 

SINTAXE DE MODIFY. 

MODIFY {TABELA_INTERNA} INDEX  {INDICE} TRANSPORTING CAMPO1 … CAMPO N. 

Os campos devem estar separados por espaços, este campos serão os campos que serão modificados na tabelas interna. Lembrando que para controlar o INDEX de uma tabela INTERNA se estiver usando o comando LOOP AT tabela_INTERNA, a variável SY-TABIX contém o índice atual da tabela e os campos a serem alterados deve ser carregados antes do comando. Exemplo:  

DATA: BEGIN OF T_BSIK OCCURS 0,

               BUKRS LIKE BSIK-BUKRS,

               LIFNR LIKE BSIK-LIFNR,

               BELNR LIKE BSIK-BELNR,

               UMSKZ LIKE BSIK-UMSKZ,

               BLART LIKE BSIK-BLART,

               XBLNR LIKE BSIK-XBLNR,

               ZFBDT LIKE BSIK-ZFBDT,

               DMBTR LIKE BSIK-DMBTR,

               DMBE2 LIKE BSIK-DMBE2,

               WRBTR LIKE BSIK-WRBTR,

               BUZEI LIKE BSIK-BUZEI,

               GJAHR LIKE BSIK-GJAHR,

               BLDAT LIKE BSIK-BLDAT,

               SHKZG LIKE BSIK-SHKZG,

               ZBD1T LIKE BSIK-ZBD1T,

         END OF T_BSIK.

  CLEAR: T_BSIK, T_BSIK[].

  SELECT BUKRS LIFNR BELNR UMSKZ BLART XBLNR ZFBDT DMBTR

         DMBE2 WRBTR BUZEI GJAHR BLDAT SHKZG ZBD1T

          FROM BSIK    INTO TABLE T_BSIK

    WHERE LIFNR = ‘0000000111’.

   DATA CHAVE TYPE I VALUE 0.

   LOOP AT T_BSIK.

    IF CHAVE = 0.

       MOVE SPACE TO T_BSIK-WRBTR.

       MOVE ‘002’ TO T_BSIK-BUZEI.

       MODIFY T_BSIK INDEX SY-TABIX TRANSPORTING BUZEI WRBTR.

       CHAVE = 1.

     ELSE.

        MOVE ‘001’ TO T_BSIK-BUZEI.

       MODIFY T_BSIK INDEX SY-TABIX TRANSPORTING BUZEI.

       CHAVE = 0.     ENDIF.     WRITE: / T_BSIK-BUZEI, T_BSIK-WRBTR. 

  ENDLOOP.

Lógica 2: Uma tabela interna contém 1 ou N campo, em algum momento esta tabela foi carregada por  um SELECT ou qualquer outro tipo de comando que pode carregar uma tabela interna, porém pode acontecer que um dos campos não podem vir dados de uma forma, por exemplo, altera todos os valores de dados de uma coluna onde o valor seja positivo ou negativo. Exemplo 2. será carregado em uma tabela interna os dados referentes a contabilidades de FI, este dados será selecionados e carregados na tabelas interna, após a tabela carregada, os campos da coluna referentes ao campo BUZEI quando for 001 alterar todos para 002. 

SINTAXE DE MODIFY. 

MODIFY {TABELA_INTERNA} TRANSPORTING CAMPO ….. CAMPON WHERE  CAMPO  {<, >, <=, >=, =, <>} [  valor ]. 

Os campos devem estar separados por espaços, estes campos serão os campos que serão modificados na tabelas interna. Antes os campos devem ser carregados. 

 DATA: BEGIN OF T_BSIK OCCURS 0,

               BUKRS LIKE BSIK-BUKRS,

               LIFNR LIKE BSIK-LIFNR,

               BELNR LIKE BSIK-BELNR,

               UMSKZ LIKE BSIK-UMSKZ,

               BLART LIKE BSIK-BLART,

               XBLNR LIKE BSIK-XBLNR,

               ZFBDT LIKE BSIK-ZFBDT,

               DMBTR LIKE BSIK-DMBTR,

               DMBE2 LIKE BSIK-DMBE2,

               WRBTR LIKE BSIK-WRBTR,

               BUZEI LIKE BSIK-BUZEI,

               GJAHR LIKE BSIK-GJAHR,

               BLDAT LIKE BSIK-BLDAT,

               SHKZG LIKE BSIK-SHKZG,

               ZBD1T LIKE BSIK-ZBD1T,

         END OF T_BSIK.

  CLEAR: T_BSIK, T_BSIK[].

  SELECT BUKRS LIFNR BELNR UMSKZ BLART XBLNR ZFBDT DMBTR

         DMBE2 WRBTR BUZEI GJAHR BLDAT SHKZG ZBD1T

          FROM BSIK    INTO TABLE T_BSIK

    WHERE LIFNR = ‘0000000111’.

  *//**** Modifica todos os campos ****\\* DE UMA SO VEZ

MOVE ‘002’ TO T_BSIK-BUZEI.

MODIFY T_BSIK TRANSPORTING BUZEI WHERE BUZEI = ‘001’.

  LOOP AT T_BSIK.   

 WRITE / T_BSIK-BUZEI. 

 ENDLOOP.

03 – Nota Fiscal – J_1B_NF_PARTNER_READ


Está função retorna os dados de um determinado parceiro da nota fiscal,  onde uma nota fiscal pode ter vários parceiros e um parceiro pode estar em varias notas a tabelas que armazenas os dados de parceiros da nota fiscal é: 

J_1BNFNAD      =          Dados do parceiro da nota Fiscal

J_1BINNAD        =          Dados de endereço do parceiro da nota Fiscal  

Template: CALL FUNCTION ‘J_1B_NF_PARTNER_READ’
  
EXPORTING
    PARTNER_TYPE                =
    PARTNER_ID                  =
   DOC_NUMBER                   =
   PARTNER_FUNCTION             =
   OBJ_ITEM                     =
 
IMPORTING
   PARNAD                       =
 
EXCEPTIONS
   PARTNER_NOT_FOUND            = 
1
   PARTNER_TYPE_NOT_FOUND       = 
2
   
OTHERS                       = 3.  

Entrada: 

PARTNER_TYPE                                  =          Tipo do parceiro                

PARTNER_ID                                        =          Id (Identificação do Parceiro)  Saída: PARNAD                                                =          Estrutura contendo os dados de nome e endereços do parceiro. 

Exemplo: 

DATABEGIN OF WK_HEADER OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFDOC.
DATAEND OF WK_HEADER.

DATA BINNAD  TYPE J_1BINNAD.SELECT * FROM J_1BNFDOC INTO TABLE WK_HEADER WHERE DOCNUM = ‘889’.

READ TABLE WK_HEADER INDEX 1.CALL FUNCTION ‘J_1B_NF_PARTNER_READ’
  
EXPORTING
    PARTNER_TYPE                 = WK_HEADER-PARTYP
    PARTNER_ID                   = WK_HEADER-PARID
 
IMPORTING
   PARNAD                       = BINNAD
 
EXCEPTIONS
   PARTNER_NOT_FOUND            = 
1
   PARTNER_TYPE_NOT_FOUND       = 
2
   
OTHERS                       = 3.

IF SY-SUBRC = 0. WRITE: /  BINNAD-ANRED,
          BINNAD-NAME1,
          BINNAD-NAME2,
          BINNAD-NAME3,
          BINNAD-NAME4,
          BINNAD-STRAS,
          BINNAD-ORT01,
          BINNAD-ORT02,
          BINNAD-REGIO.
ENDIF. As demais são opcionais 

DO ….. ENDDO


Bloco de iteração ( LOOP ) com sentenças logicas OU numerica, onde a iteração acontece enquanto a sentenção logica não for verdadeira ou a expressão numerica não for atingida. Em abap não existe FOR com em outras linguagem, pois o DO …  ENDDO faz a mesmo coisa de um for ou de um proprio (REPIT), lembrando que a grande diferença desta iteração com o WHILE … ENDWHILE é que mesmo que a expressão logica ou Numerica não seja verdadeira haverá sempre um iteração, ja no WHILE … ENDWHILE somente haverá uma iteração se a expressção for verdadeira.

Sintaxe:

DO.

 {BLOCO com a sentenças ABAP da iteração}

 para sair desta iteração é necessario utilizar o comando EXIT, quando for atingido a expressão logica o comando exit terminará a sentenxa Iterativa do DO … ENDDO e irá para o proximo comando se tiver.

ENDDO.

Exemplo:

DO.  WRITE: / ‘SY-INDEX – inicio da SY-INDEX:’, (3) SY-INDEX.

    IF SY-INDEX = 10.

                   EXIT.

      ENDIF.

WRITE: ‘Fim do SY_INDEX:’, (3) SY-INDEX.

ENDDO.

Para utilizar o DO … ENDDO com um for regressivo use a sintaxe:

DO numero de iteração TIMES.

   {BLOCO com a sentenças ABAP da iteração}

ENDDO.

Exemplo:

DO 50 TIMES.    WRITE: / ‘SY-INDEX :’, (3) SY-INDEX.

ENDDO.

A variavel  SY-INDEX  é a variavel de Sistema responsavel por coletar o numero de iteração do BLOCO WHILE  mesmo contendo uma variavel propria, como nos exemplos acimas, o ABAP com esta variavel que é do proprio sistema R/3

WHILE .. ENDWHILE


Bloco de iteração ( LOOP ) com sentenças logicas, onde a iteração acontece enquanto a sentenção logica não for verdadeira.

WHILE    SENTENÇA_LOGICA.

 <Blocos das sentenças da iteração WHILE>

ENDWHILE.

A sintaxe WHILE do ABAP é:

DATA CONTADOR TYPE I VALUE 0.WHILE CONTADOR <> 10.         WRITE: / ‘Numero de iterações:’, CONTADOR.

CONTADOR = CONTADOR + 1.

ENDWHILE.

CONTADOR = 0.

SKIP.

WHILE CONTADOR < 10.

          WRITE: / ‘Numero de iterações:’,  CONTADOR.

CONTADOR = CONTADOR + 1.

ENDWHILE.

CONTADOR = 10.

SKIP.

WHILE CONTADOR > 0.

          WRITE: / ‘Numero de iterações:’, CONTADOR.

CONTADOR = CONTADOR – 1.

ENDWHILE.

CONTADOR = 10.

SKIP.

WHILE CONTADOR = 10.

A variavel  SY-INDEX  é a variavel de Sistema responsavel por coletar o numero de iteração do BLOCO WHILE  mesmo contendo uma variavel propria, como nos exemplos acimas, o ABAP com esta variavel que é do proprio sistema R/3

02 – Nota Fiscal – J_1B_NF_VALUE_DETERMINATION


Está função carregas os totais de impostos de uma determinada nota fiscal, os totais sobre os itens e sobre a nota fiscal.   Template: CALL FUNCTION ‘J_1B_NF_VALUE_DETERMINATION’
  
EXPORTING
    NF_HEADER          =
 
IMPORTING
   EXT_HEADER          =
  
TABLES
   NF_ITEM            =
   NF_ITEM_TAX        =
   EXT_ITEM            =
   EXT_TOTAL_TAX       =.
 

Entrada:  

NF_HEADER                 =                     Estrutura do tipo J_1BNFDOC (contendo dados de uma determinada nota fiscal X). 

NF_ITEM                         =                     Tabela contendo os itens de uma determinada nota fiscal X  

Saída: 

EXT_HEADER               =                     Estrutura contendo dados adicionais da notas tais como: valor total da nota fiscal, valores totais de impostos. A estrutura é do tipo J_1BINDOC.

EXT_ITEM                      =          Tabela contendo os dados Totais de impostos de todos os itens da nota fiscal informada. A tabela é do tipo J_1BINLIN.

 Exemplos:

 DATABEGIN OF WK_HEADER.
        
INCLUDE STRUCTURE J_1BNFDOC.
DATAEND OF WK_HEADER.
DATABEGIN OF WK_HEADER_ADD.
        
INCLUDE STRUCTURE J_1BINDOC.
DATAEND OF WK_HEADER_ADD.
DATABEGIN OF WK_PARTNER OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFNAD.
DATAEND OF WK_PARTNER.
DATABEGIN OF WK_ITEM OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFLIN.
DATAEND OF WK_ITEM.
DATABEGIN OF WK_ITEM_TAX OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFSTX.
DATAEND OF WK_ITEM_TAX.
DATABEGIN OF WK_ITEM_ADD OCCURS 0.
        
INCLUDE STRUCTURE J_1BINLIN.
DATAEND OF WK_ITEM_ADD.
DATABEGIN OF WK_HEADER_MSG OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFFTX.
DATAEND OF WK_HEADER_MSG.
DATABEGIN OF WK_REFER_MSG OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFREF.
DATAEND OF WK_REFER_MSG. CALL FUNCTION ‘J_1B_NF_DOCUMENT_READ’
    
EXPORTING
      DOC_NUMBER         = 
‘890’
    
IMPORTING
      DOC_HEADER         = WK_HEADER
    
TABLES
      DOC_PARTNER        = WK_PARTNER
      DOC_ITEM           = WK_ITEM
      DOC_ITEM_TAX       = WK_ITEM_TAX
      DOC_HEADER_MSG     = WK_HEADER_MSG
      DOC_REFER_MSG      = WK_REFER_MSG
    
EXCEPTIONS
      DOCUMENT_NOT_FOUND = 
1
      DOCUM_LOCK         = 
2
      
OTHERS             = 3.

WRITE: / WK_HEADER-DOCNUM, WK_HEADER-NFTYPE,
         WK_HEADER-DOCTYP, WK_HEADER-DIRECT,
         WK_HEADER-DOCDAT.
SKIP.

LOOP AT WK_ITEM.WRITE: / WK_ITEM-DOCNUM, WK_ITEM-ITMNUM, WK_ITEM-MATNR,
         WK_ITEM-BWKEY,  WK_ITEM-BWTAR,  WK_ITEM-CHARG,
         WK_ITEM-MATKL,  WK_ITEM-MAKTX.

ENDLOOP.  CALL FUNCTION ‘J_1B_NF_VALUE_DETERMINATION’
    
EXPORTING
      NF_HEADER   = WK_HEADER
    
IMPORTING
      EXT_HEADER  = WK_HEADER_ADD
    
TABLES
      NF_ITEM     = WK_ITEM
      NF_ITEM_TAX = WK_ITEM_TAX
      EXT_ITEM    = WK_ITEM_ADD.

SKIP.LOOP AT WK_ITEM_ADD.  

WRITE: /  WK_ITEM_ADD-DOCNUM,
            WK_ITEM_ADD-ITMNUM,
            WK_ITEM_ADD-NFQTY,
            WK_ITEM_ADD-NFUNT,
            WK_ITEM_ADD-NFPRI,
            WK_ITEM_ADD-NFNET,
            WK_ITEM_ADD-NFFRE,
            WK_ITEM_ADD-NFINS.
ENDLOOP.

01 – Nota FISCAL – J_1B_NF_DOCUMENT_READ


J_1B_NF_DOCUMENT_READ Está função faz a leitura dos dados de uma determinada nota fiscal, onde é informado o numero do documento fiscal “DOCNUM” e é retornado as estruturas: 

J_1BNFDOC     =          Cabeçalhos da nota fiscal

J_1BNFNAD     =          Parceiros da nota fiscal

J_1BNFLIN        =          Itens da nota fiscal

J_1BNFSTX      =          Impostos da nota fiscal por itens

J_1BNFFTX      =          Mensagens de Header da nota fiscal

J_1BNFREF      =          Notas Fiscais referentes a Header de mensagens Template: CALL FUNCTION ‘J_1B_NF_DOCUMENT_READ’
  
EXPORTING
    DOC_NUMBER               =
 
IMPORTING
   DOC_HEADER               =
  
TABLES
    DOC_PARTNER              =
    DOC_ITEM                 =
    DOC_ITEM_TAX             =
    DOC_HEADER_MSG           =
    DOC_REFER_MSG            =
   DOC_OT_PARTNER           =
 
EXCEPTIONS
   DOCUMENT_NOT_FOUND       = 
1
   DOCUM_LOCK               = 
2
   
OTHERS                   = 3.

Entrada:   DOC_NUMBER         =    J_1BNFDOC-DOCNUM  

Saídas: 

DOC_HEADER             =                     J_1BNFDOC

DOC_PARTNER           =                     J_1BNFNAD

DOC_ITEM                     =                     J_1BNFLIN

DOC_ITEM_TAX           =                     J_1BNFSTX

DOC_HEADER_MSG  =                      J_1BNFFTX

DOC_REFER_MSG     =                     J_1BNFREF             

  Exemplo: DATABEGIN OF WK_HEADER.
        
INCLUDE STRUCTURE J_1BNFDOC.
DATAEND OF WK_HEADER.
DATABEGIN OF WK_HEADER_ADD.
        
INCLUDE STRUCTURE J_1BINDOC.
DATAEND OF WK_HEADER_ADD.
DATABEGIN OF WK_PARTNER OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFNAD.
DATAEND OF WK_PARTNER.
DATABEGIN OF WK_ITEM OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFLIN.
DATAEND OF WK_ITEM.
DATABEGIN OF WK_ITEM_TAX OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFSTX.
DATAEND OF WK_ITEM_TAX.
DATABEGIN OF WK_ITEM_ADD OCCURS 0.
        
INCLUDE STRUCTURE J_1BINLIN.
DATAEND OF WK_ITEM_ADD.
DATABEGIN OF WK_HEADER_MSG OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFFTX.
DATAEND OF WK_HEADER_MSG.
DATABEGIN OF WK_REFER_MSG OCCURS 0.
        
INCLUDE STRUCTURE J_1BNFREF.
DATAEND OF WK_REFER_MSG.

CALL FUNCTION ‘J_1B_NF_DOCUMENT_READ’
    
EXPORTING
      DOC_NUMBER         = 
‘890’
    
IMPORTING
      DOC_HEADER         = WK_HEADER
    
TABLES
      DOC_PARTNER        = WK_PARTNER
      DOC_ITEM           = WK_ITEM
      DOC_ITEM_TAX       = WK_ITEM_TAX
      DOC_HEADER_MSG     = WK_HEADER_MSG
      DOC_REFER_MSG      = WK_REFER_MSG
    
EXCEPTIONS
      DOCUMENT_NOT_FOUND = 
1
      DOCUM_LOCK         = 
2
      
OTHERS             = 3.WRITE: / WK_HEADER-DOCNUM, WK_HEADER-NFTYPE,
         WK_HEADER-DOCTYP, WK_HEADER-DIRECT,
         WK_HEADER-DOCDAT.

SKIP.LOOP AT WK_ITEM.

WRITE: / WK_ITEM-DOCNUM, WK_ITEM-ITMNUM, WK_ITEM-MATNR,
         WK_ITEM-BWKEY,  WK_ITEM-BWTAR,  WK_ITEM-CHARG,
         WK_ITEM-MATKL,  WK_ITEM-MAKTX.
ENDLOOP.

Formatando Saída ou Variavel MASK EDIT


Para converter uma saída de dados em uma pré formatação é necessario utilizar o argumento EDIT MASK do comando WRITE, podendo mover o valor formatado para uma variavel ou diretamente para a impressão de uma lista:

WRITE  valor  TO VARIVEL: Move um valor para uma variavel, equivalente ao comando MOVE valor To Variavel.  Para Formatar o valor é necessario utilizar a sintaxe:

WRITE valor_nao_formatado USING EDIT MASK ‘mascara’ TO variavel.

Exemplo:

REPORT Z_FORMATA.

SPAN { font-family: “Courier New”; font-size: 10pt; color: #000000; background: #FFFFFF; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; }DATA: CGC  TYPE c LENGTH 20,
      CGCF TYPE c LENGTH 20.

CGC = 05902635000106.
WRITE CGC USING EDIT MASK ‘RR__.___.___/____-__’ TO CGCF.

WRITE / CGCF.

DATA: TELEFONE  TYPE c LENGTH 14,
      TELEFONEF 
TYPE c LENGTH 14.

TELEFONE = 1938773344.

WRITE TELEFONE USING EDIT MASK ‘RR(__)____-____’  TO TELEFONEF.

WRITE / TELEFONEF.

OPENSQL – SQL do ABAP


Este artigo descreve a utilização de alguns comandos do OPENSQL do ABAP/4. O artigo não descreve os processo de acesso a base de dados apenas exemplifica os comandos do OPENSQL descrevendo os principais comandos usados no dia-dia dos programadores ABAP/4

Tipo:    PDF

Baixar: OPENSQL

Design a site like this with WordPress.com
Iniciar