타 시스템에서 데이터를 받아 sap 테이블에 올리고 있습니다.
그런데 타 시스템 데이터 중 null 값이 존재를 하네요..
널 값을 space로 바꾸고 싶은데
어떻게 처리 해야 할지요???
댓글 6
-
e-abap
2007.05.22 03:08
-
강진규
2007.05.22 03:59
null 인지 여부를 알아야지 초기값으로 세팅을 할텐데..
null 여부를 어떻게 걸려야 할까요??
-
w
2007.05.22 04:17
IF 변수 is initial.
작업처리...
ENDIF.
-
강진규
2007.05.22 05:49
감사합니다.
-
김태은
2007.05.23 18:28
initial도 되지만 변수 = space도 되지않나요?
저도 맨날 헷갈려서;;;
-
鵬의 날개
2007.05.23 19:19
네 space도 됩니다...변수가 캐릭터 타입일때는요,..^^
if 변수 = initial 은 변수의 초기값이면 이라는 구문인데...
변수가 캐릭터 타입이면 초기값은 공백 숫자형이면 0 일자형이면 00000000 이런식이죠...^^
null값으로 받더라도 abap 변수로 넘어오면 초기값으로 다 세팅합니다.
예를들어 char은 space로, integer는 0으로...
그런데 native sql로 바로 테이블에 넣어버리면 null이 들어가겠죠..
오라클 db단에서 null은 아무런 값도 존재하지 않지만, sap에서는 모든 필드를 update 하기때문에 각 타입의 초기값으로 오라클 테이블에 저장합니다.
오라클에서 is null은 abap에서 is initial과 동일하다고 생각하셔도 큰 무리는 없을거 같습니다.