Показать сообщение отдельно
Старый 05.08.2015, 17:48   #5  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,653 / 1158 (42) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
На последний вопрос сам спросил - сам ответил Нужно использовать метод data() соответствующей табличной переменной или MAP.

X++:
CustVendTable = true ? CustVendTable.data(VendTable::find(...)) : CustVendTable.data(CustTable::find(...));
X++:
// перебор записей в DataSource формы
    for (lookupJournalTable = (dataSource && dataSource.getFirst(1) ? journalTable.data(dataSource.getFirst(1)) : journalTable);
         lookupJournalTable;
         lookupJournalTable = (dataSource ? dataSource.getNext() : null))
{
...
}

Тут следует заметить, что явное преобразование типов требуется только в том случае, если вычисляемые типы тринарного оператора имеют разное значение. Например, вот такой код будет откомпилирован без ошибок.

X++:
CustVendTable = true ? VendTable::find(...) : VendTable::find(...);
__________________
- Может, я как-то неправильно живу?!
- Отчего же? Правильно. Только зря...
За это сообщение автора поблагодарили: Ruff (2), S.Kuskov (2).