보통 데이타윈도우의 스트링 컬럼값에 디비에서 1000byte 이상인 비고 라던가 rmk,etc와 같은 값을 처리할때 일단 디테일 밴드와 해당컬럼의 프로퍼티중 포지션에 autosize height 를 체크하여 쓰고 있어요. 문제는 mle와는 달리 데이타윈도우 스트링 컬럼의 경우 다음과 같이 블랭크(스페이스) 부분을 처리할때 이부분이 무시되고 해당열의 문자부터 당겨져 보이는 버그(?)입니다. 예를들자면
mle의 경우
----------------
A...B
aa..bb
cc..dd
....ee
와 같이 보이던 스트링 값도 autosize height 를 이용한 데이타윈도우
스트링 컬럼 오브젝트에서는
-----------------
A...B
aa..bb
cc..dd
ee <----- 와 같이 보인다는 거죠 출력해도 역시
방법(? 트릭 !!)은 해당 컬럼에 ImportString 해준뒤 로우카운트로 for 루프를 돌면서 dw_1.SetItem(i, "string01", f_convert(ls_string))처리한다는거죠
/**** f_convert(string orig) return string *****/
DO
lPos = Pos (s_result, s_convert_crlf, lPos)
IF (lPos > 0) THEN
s_result = Replace (s_result, lPos, 2, s_crlf)
lPos += 2
END IF
LOOP UNTIL (lPos <= 0 OR lPos >= lLen)
return s_result
/***** end function ******/
결과는
------------
A...B
>aa..bb
>cc..dd
>....ee 와 같이 나오는 트릭으로
(.... 은 스페이스임)
/*******
I came across a curious problem the other day! I have a report in PBDelta that shows the scripts side by side. The scripts have leading blanks to show the structure of the code and can be quite long.
The problem I was having is that with autosize height switched off the code showed indented fine but was truncated at then end of the field, thus people could not see all their code. No problem I thought, I'll use autosize height.
The next problem was that with autosized height switched on the code all wrapped nicely and I could see it all but the indents on the code all went away.
I found a work around to this problem, by adding a non breaking space character to the beginning of the code. To insert this use use the old ALT-0160 trick (hold down ALT and type 0 1 6 0 on the numeric keypad, you can do this so insert any character if you know the code). Now the code shows all nicely indented and still wraps around at the end of the lines.
***/
이건 pbdr.com에서 참고해서 쓰긴 쓰는데 .. 음
그런데 좀 그렇죠 다른 방법이 없을 까요 ?????