본문 바로가기

Ⅰ. ERP/1. ABAP

[SAP ABAP] UNION 사용 시, 주의 점 / 꿀팁

728x90

UNION 사용할 때는 구조체가 같아야한다.

구조체를 선언해주지 않고 @data( itab )을 사용할 경우에는 구조체가 같아야하는데 한 쪽은 0, 한 쪽에서 값을 넣으려면 한 쪽을 0으로 만들되 데이터 형식은 맞춰주어야하기 때문에 이를 이용한다. 

 CAST( 0 AS CURR( 15,2 ) ) AS  P_A

예를 들면 이렇게 사용 가능하다는 말이다.

SELECT 
     SUM( a~fkimg_sal + a~fkimg_rtn + a~fkimg_rfs ) AS _mng,   
     SUM( a~fkimg_add ) AS _add,                               
     SUM( a~ordch + a~adjch + a~rtnch + a~rfsch )   AS _net,    
         CAST( 0 AS CURR( 15,2 ) ) AS _net_y,                  
         a~waerk,
    FROM DBtable AS a

  UNION ALL
  
  SELECT
         CAST( 0 AS QUAN( 13,3 ) ) AS _mng,                     
         CAST( 0 AS QUAN( 13,3 ) ) AS _add,                    
         CAST( 0 AS CURR( 15,2 ) ) AS _net,                    
     SUM( a~ordch + a~adjch + a~rtnch + a~rfsch ) AS _net_y,   
         a~waerk,
    FROM DBtable2 AS a 
    INTO TABLE @DATA(lt_temp).
728x90

'Ⅰ. ERP > 1. ABAP' 카테고리의 다른 글

[ABAP] BP 관련 TABLE  (0) 2023.08.07
[SAP ABAP] CBO 프로그램 수정 소스  (0) 2023.07.19
[SAP ABAP] HR 공식 국가공휴일 가져오는 Function  (0) 2023.07.18
[ABAP] BDC 레코딩 만들기  (0) 2023.07.13
[ABAP] Screen language  (0) 2023.04.27