Přiřadit SELECT výsledek pole, symbol

hlasů
2

Jsem nový ABAPkódování a jsem zmatená, proč zakomentovaný dotazu nefunguje.


REPORT  z_hello_world_local.

TYPES:  BEGIN OF bkpf_type,
          xblnr          TYPE bkpf-xblnr,
        END OF bkpf_type.

DATA: t_bkpf                 TYPE TABLE OF bkpf_type.

FIELD-SYMBOLS:  <bkpf>        TYPE bkpf_type.


*This query does not work?
*SELECT xblnr
*      INTO CORRESPONDING FIELDS OF <bkpf> UP TO 1 ROWS
*      FROM bkpf
*      WHERE belnr = '1800001017'.
*    ENDSELECT.
*
DATA: t_xblnr TYPE bkpf-xblnr.

*This query works and in my head it is roughly the same thing.
SELECT SINGLE xblnr
      INTO t_xblnr
      FROM bkpf
      WHERE belnr = '1800001017'.


write 'Done'.

Mám-li spustit zakomentovaný dotaz dostanu chybu:

Runtime chyby GETWA_NOT_ASSIGNED Datum a čas
08/26/2009 19:54:19

Krátký symbolů textu pole dosud nebyl přidělen.

Jakýkoliv pomoci chtěl bych být ocenil.

Položena 27/08/2009 v 01:59
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
5

Myslím, že místo se skrývá nějaký kód, který nalezne mezi <>. Vypadá to, že jste prohlášen za symbol pole, ale nemohu skutečně vidět, co jste ho jmenoval.

Předpokládám, že (na základě chyb a kousky kódu, které nemohu vlastně vidět), který se snažíte vybrat data přímo do symbolu pole. Můžete to udělat. Symbol pole není paměťová oblast, to je (v podstatě) ukazatel.

Dalo by se to některým z následujících způsobů:

data: wa_bkpf type bkpf_type.

select xblnr
  into corresponding fields of wa_xblnr
  up to 1 rows
  from bkpf
  where xblnr = '1800001017'.
endselect.

nebo

field-symbols: < bkpf > type bkpf_type.
append initial line to t_bkpf assigning < bkpf >.
select xlbnr
  into corresponding fields < bkpf >
  up to 1 rows
  from bkpf
  where xblnr = '1800001017'.
endselect.

V tomto případě se ukázal symbol pole na nový řádek, který jste přidali do vnitřní tabulku.

nebo

select xblnr
  into corresponding fields of table t_bkpf
  from bkpf
  where xlbnr = '1800001017'.

V tomto případě budete získávat veškeré dokumenty, které odpovídají a umístit přímo do vnitřní tabulku.

Odpovězeno 27/08/2009 v 13:40
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more