본문 바로가기
SAP

BEx 워크북: 엑셀 종료 오류 회피하기

by wizmusa 2010. 1. 1.

SAP BExBEx

 BEx Query를 삽입한 워크북을 갱신하거나 새로 고침 했을 때 한참 실행하다가 엑셀 자체가 종료되어 버리는 오류가 꽤 발생합니다. Repair mode에서 실행했는데도 오류가 발생하지요. 엑셀 파일 크기가 큰 경우에 자주 나타나는 현상인데 해결책은 다음과 같습니다.

1. 변수 버튼을 누르고 변수 입력 창이 나타나면 취소 버튼을 누름
2. 벡스 표가 사라지고 빈 셀만 나타나면 엑셀 파일을 저장함
3. 벡스 세팅에서 'Repair mode' 체크가 되어 있음을 확인하고 워크북 문서를 닫음
4. 워크북 문서를 다시 염
5. 변수를 갱신하거나 새로 고침을 실행함

 자, 이게 전부입니다. 간단하죠?

 이제 오류의 원인과 해결책에 대해 부연해 보겠습니다.

 이러한 오류의 원인은 BEx Analyzer가 내부적으로 엑셀의 셀 이름 기능을 활용하는데 BEx의 버그 때문에 몇 차례 변수 변경을 하는 경우 워크북 내의 셀 이름이 잘 지워지지 않습니다. SAP에서 이미 이 문제를 인지하고 워크북 파일을 읽는 시기에 쓰레기라고 판단한 셀 이름을 지우는 임시변통 Repair mode를 만들었지요. 안타깝게도 repair mode 상황에서도 쓰레기 셀 이름을 쓰레기라 판단하지 못하는 경우가 많아서 쓰레기 셀 이름이 쌓이고 쌓이다 보니 사용자 PC의 RAM의 한계를 넘어 버려서 엑셀이 종료돼 버린 것이지요.

 때문에 램이 1GB인 PC에서는 오류가 나는 워크북이 램 2GB PC에서는 돌아가는 일도 꽤 있었습니다. 달마다 열이 하나씩 늘어나는 식으로 만든 워크북이라면 10월까지는 나왔는데 11월부터는 돌아가지 않았던 적도 있었습니다. (내용 열이 10열이었는데 11열이 되면서 램 용량 초과)

 이 때, 변수 입력 창을 부르고 취소 버튼을 누르면 벡스 표의 내용이 '표면적으로' 사라집니다. 다시 문서를 읽을 때에 BEx Analyzer는 워크북에 남은 BEx가 생성한 셀 이름을 전부 쓰레기라 마음 편히 판단하고 말끔히 지워 버립니다. 컴퓨터가 잘 판단하도록 인간이 돕는 셈이지요. 참 쉽죠?


반응형

'SAP' 카테고리의 다른 글

SAP의 번역 체계가 궁금하다  (6) 2010.01.28
같은 방향을 보는 SAP와 Oracle  (2) 2009.12.11
SDN 블로그에 못 들어가네요  (0) 2009.11.20