XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 | sejin7940 |
---|
XE 1.5 에서는 확장변수에 값이 없어도 DB에 모든 확장변수가 생성되었었는데
XE 1.7 어느 순간에 이게 막혔나보군요 (언제 막힌건지는 모르겠지만 ^^)
(사실 외부에서 확장변수만 강제변경할때는 빈 값도 다 있는게 좋은데.. update만 하면 되었는데
이제는 있는지 여부부터 확인한 후, 있으면 update, 없으면 insert 시켜야하는군요..
과도한 DB 량을 줄이는 데에는 기여하지만 은근히 까다로워졌네요 ^^;)
암튼, 앞은 사설이고..
사용자정의 값이 없는 경우 해당 사용자정의 값이 저장되지 않게 처리하는 문구가
insertDocument 쪽에서는 제대로 되는데, updateDocument 쪽에서는 제대로 안 되네요
insertDocument 에서는
XE 1.5 에서
$value = ''; , if(!isset($value)) continue; 였던걸,
$value = NULL; , if($value == NULL) continue; 로 바꾸면서 버그픽스가 된듯한데
updateDocument 에서는 여전히 $value = ''; , if(!isset($value)) continue; 로 남아있어서,
무조건 다 생성이 되네요
document.controller.php 에서
function updateDocument 함수에서 확장변수 입력부분에서
$value = ''; 를 $value = NULL; 로 바꾸고
if(!isset($value)) continue; 를 if($value == NULL) continue; 로 바꿔야할듯 싶습니다.