[QUOTE]
Изначально опубликовано bucken
Цитата:
2. Интересует почему не работает конструкция - которая должна работать.
И ЭТО ГЛАВНЫЙ ВОПРОС.
Кажется вам уже ответили почему она не должна работать.
Цитата:
3. А вот поводу cursor().data() а не cursor() была привидена ссылка яствено указываешь зачем это надо.
Я по той ссылке мало того что не нашёл никаких доводов что это надо, более того, любопытства ради набросл у себя форму с временной таблицей TmpItemQty и кнопкой с кодом:
PHP код:
void clicked()
{
TmpItemQty ItemQty;
;
ItemQty.setTmpData( TmpItemQty_ds.cursor() );
select sum( Qty ) from ItemQty;
info( "Итог: " + real2str( ItemQty.Qty ) );
}
Так вот, она РАБОТАЕТ и без всяких побочных эффектов!
И действительно, если написать
PHP код:
...ItemQty.setTmpData( TmpItemQty_ds.cursor().data() );...
То Аксапта вылетает. И это логично, если присмотреться к описанию метода .data(). (Более того, логично почему он работает для невременных таблиц.) Копия таблицы полученная из метода data() просто обязана "разлинковываться" от своего буфера в памяти, и вообще непонятно что потом с этим data() делать.
Цитата:
4. Дальний диалог не целесообразен.
Зря вы тут занервничали. Правильно вам всё говорят.