Любое использование ссылок на массив допустимо, если оно правильно сбалансировано как () или []. Проблема, вероятно, в восходящем потоке, где массив объявляется или подготавливается. Мне приходилось отлаживать исторически странные случаи, подобные этому, когда один пользователь выполнял процесс совершенно иначе, чем другие, и бизнес-процесс... Во всяком случае, из-за какого-то «обойденного» процесса массив не был создается и, таким образом, вызывает сбой.
Всегда ли происходит сбой в одном и том же месте в процессе?
Я бы настоятельно рекомендовал отлавливать ошибки в процессе для этого «одного» пользователя. Хуже того, я бы поместил что-то в область кода что-то вроде...
if atc( "PersonsLoginName", sys(0)) > 0
TurnOnMyCustomDebugging() && for this special scenario trapping
endif
Кроме того, я не знаю, что у вас есть для процедур перехвата ошибок, но я бы получил дамп памяти во время ошибки и полный стек вызовов, который привел пользователя к этому моменту. Если вам нужна помощь в этом, дайте мне знать тоже.
person
DRapp
schedule
10.08.2010