Показать сообщение отдельно
Старый 26.02.2010, 12:18   #12  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от propeller Посмотреть сообщение
Дело именно в условии, потому что параметр AccountNum передал ИМЕННО значение а не кусок кода.
Не-а. Именно КУСОК КОДА - грубо говоря, фрагмент текста программы вида "AccountNum".
Измените тип переменной AccountNum и посмотрите, что получится:
X++:
    str AccountNum = "Клиент1";
    // AccountNum AccountNum = "Клиент1";
Имеем сообщение компилятора: "Контейнерные и текстовые поля не могут быть использованы в выражении WHERE."

Еще иллюстрация. Верните всё обратно, после чего внесите такие изменения:
X++:
    AccountNum AccountNum = "Клиент1";
    ..................    
    while select *
    from CustTable
    // where CustTable.AccountNum == %1
    where CustTable.AccountNum %1
    ..................    
    //#cycle(AccountNum,int1)
    #cycle(== AccountNum,int1)
}
Всё компилируется и работает.