Translate this blog

segunda-feira, 9 de setembro de 2013

Pegar valores dos domínios / Get domain values


 Português  Preencher um campo de um relatório com dados de uma tabela transparênte pode ser fácil, levando em consideração que você saiba fazer um SELECT. O que complicava, no meu caso, era quando existia a necessidade de pegar os valores de um domínio. A solução que achava na epoca era colocar os valores fixos, hardcode mesmo!

Mas sempre há uma maneira de tornar a solução mais inteligente! No caso, podemos usar tanto alguns SELECTs quanto uma função Standard. As tabelas que contém informação dos domínios são DD07L (valores fixos) e DD07T (textos descritivos) e a função é a GET_DOMAIN_VALUES:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
   DATA: t_dd07v TYPE TABLE OF dd07v,
        s_dd07v TYPE dd07v.
 
   CALL FUNCTION 'GET_DOMAIN_VALUES'
     EXPORTING
      domname         = 'J_1BMATORG'
*      TEXT            = 'X'
*      FILL_DD07L_TAB  = ' '
     TABLES
      values_tab      = t_dd07v
*      VALUES_DD07L    =
     EXCEPTIONS
      no_values_found = 1
       OTHERS          = 2.
 
   LOOP AT t_dd07v INTO s_dd07v.
     WRITE: s_dd07v-ddlanguage.  "Código do idioma
     WRITE: s_dd07v-valpos.      "Valores fixos
     WRITE: s_dd07v-ddtext, /.      "Texto com a descrição
   ENDLOOP.

Nenhum comentário:

Postar um comentário