Цитата:
Сообщение от
Tiruvileijadal'
Silence, Вы так удивились тому, что в цикле находится условие, почему? Это как-то противоестественно?
Да как раз наоборот. Просто первое что пришло в голову это:
- QueryRun что то выбрал
- цикл не While, а Do...While
- If находится все цикла QueryRun
Цитата:
Сообщение от
Tiruvileijadal'
У меня куча таких вот использований, но с такой проблемой столкнулась впервые

(в тех циклах все зашибись и правильно работалет, как ни странно)
У меня Ваш код работает как и должен, без каких либо несанкционированных телодвижений.
А как Вы определили, что QueryRun пустой? У вас наверняка логическая ошибка в запросе. Проверьте группировки и агрегирующие функции.
Скорее всего QueryRun, что то выбрал, но с группировкой. Соответственно в таблице не полная запись, а лишь те поля по которым шла группировка.
И при попытке
X++:
ltvd1 = qr.get(tablenum(SUG_LedgerTransDimentionsDetails));
select Description from dim where dim.Num == ltvd1.Dimension[i]
ltvd1.Dimension не имеет значения.