문제

댓글을 달린 쿼리가 작동하지 않는 이유에 대해 혼란스러워합니다.


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'.

주석을 달린 쿼리를 실행하면 오류가 발생합니다.

런타임 오류 getwa_not_assigned 날짜 및 시간
08/26/2009 19:54:19

짧은 텍스트 필드 기호는 아직 할당되지 않았습니다.

이 런타임 오류가 발생하는 이유는 무엇입니까?

도움이 되었습니까?

해결책

나는 당신이 필드 기호로 직접 데이터를 직접 선택하려고한다고 생각합니다 (실제로 볼 수없는 코드와 실제로 볼 수없는 코드에 따라). 당신은 그렇게 할 수 없습니다. 필드 기호는 메모리 영역이 아니며 (기본적으로) 포인터입니다.

다음 중 하나를 수행 할 수 있습니다.

data: wa_bkpf type bkpf_type.

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

또는

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.

이 경우 필드 기호를 내부 테이블에 추가 한 새 줄을 가리키는 것입니다.

또는

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

이 경우 일치하는 모든 문서를 검색하여 내부 테이블에 직접 배치합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top