data: begin of trans occurs 0,
x type x value '00',
c_00 type c value ' ',
soh type x value '01',
c_01 type c value ' ',
stx type x value '02',
c_02 type c value ' ',
etx type x value '03',
c_03 type c value ' ',
eot type x value '04',
c_04 type c value ' ',
enq type x value '05',
c_05 type c value ' ',
ack type x value '06',
c_06 type c value ' ',
bel type x value '07',
c_07 type c value ' ',
bs type x value '08',
c_08 type c value ' ',
ht type x value '09',
c_09 type c value ' ',
lf type x value '0A',
c_0a type c value ' ',
vt type x value '0B',
c_0b type c value ' ',
ff type x value '0C',
c_0c type c value ' ',
cr type x value '0D',
c_0d type c value ' ',
so type x value '0E',
c_0e type c value ' ',
si type x value '0F',
c_0f type c value ' ',
dle type x value '10',
c_10 type c value ' ',
dc1 type x value '11',
c_11 type c value ' ',
dc2 type x value '12',
c_12 type c value ' ',
dc3 type x value '13',
c_13 type c value ' ',
dc4 type x value '14',
c_14 type c value ' ',
nak type x value '15',
c_15 type c value ' ',
syn type x value '16',
c_16 type c value ' ',
etb type x value '17',
c_17 type c value ' ',
can type x value '18',
c_18 type c value ' ',
em type x value '19', "#EC NO_M_RISC3
c_19 type c value ' ',
sub type x value '1A',
c_1a type c value ' ',
esc type x value '1B',
c_1b type c value ' ',
fs type x value '1C',
c_1c type c value ' ',
gs type x value '1D',
c_1d type c value ' ',
rs type x value '1E',
c_1e type c value ' ',
us type x value '1F',
c_1f type c value ' ',
end of trans.
data: begin of tfile occurs 0,
rec(2800) type c,
end of tfile.
translate tfile using trans. 에러발생시점.
에러내용 : "TRANS" must be a character-type data object (data type C, N, D, T or STRING).
translate를 통해서 tfile 값을 using을 이용해서 해당 패턴을 변경하는건데요.
에러내용은 trans 테이블 선언타입이 C,N,D,T,STRING 변경해야 한다고 하는데요.
TYPE X는 멀로 변경해야 할지 모르겠습니다. 해당 타입을 첨 접하다 보니 어떻게 수정해야 할지 모르겠네요.
해답을 주세요..^^
X타입은 멀로 대체 해야 합니까?
댓글 4
-
두잉
2011.02.15 20:20
-
원니컴
2011.02.15 22:02
C type 변경해봤지만.....변환시 글씨가 짤려서 들어가네요..그래서 오류가 발생됩니다. typeX를 대체할 타입을 못 찾는게 문제인것 같습니다. -
특정단어
2011.02.15 23:30
안녕하세요?
아래 링크 참조하시구요..
http://www.sapfans.com/forums/viewtopic.php?f=13&t=183216
잠깐 뒤져보니까.. 결국 unicode 시스템이 되면서 발생하는 문제더군요.
클래스 CL_ABAP_CONV_IN_CE 를 이용하시면 되겠습니다.
x type은 byte 타입이잖아요? byte 타입은 text(type c) 또는 int로 변환 가능합니다.
ascii code와 16진수->10진수 변환을 생각하시면 될 듯..
예제는 해당 클래스의 문서에 잘 정리되어 있었습니다.
* translate -> F1 -> obsolete 구문 설명 -> class CL_ABAP_CONV_IN_CE 안내 -> 클래스 문서 참조..
-
원니컴
2011.02.16 02:33
정말 감사합니다. 하늘에서 빛이 내려오는것 같아요..^^
패턴을 위한 것이어서 TYEP C LENGTH 2. 로 하면 되지 않을까요?