27.11.2007, 13:17 | #1 |
MCTS
|
setTmpData
Привет всем. Возник такой вопрос. Есть метод в котором объявлены две переменные одной временной таблицы:
X++: AnyTmpTable tmp1; AnyTmpTable tmp2; X++: tmp1.insert(); X++: select tmp2; X++: tmp2.setTmpData(tmp1); Вопрос. Как вернуть эти два курсора к первоначальному состоянию? То есть чтобы они указывали на разные области данных |
|
27.11.2007, 13:24 | #2 |
SAP
|
X++: while select tmp1 { tmp2 = tmp1.data(); tmp2.write(); } |
|
27.11.2007, 13:25 | #3 |
Участник
|
Если при этом вы хотите сохранить данные в обоих курсорах - то ответ, думаю, никак.
Файл то всего один. И раздваиваться он врядли будет. То есть нужно именно скопировать все записи из одного курсора в другой (добавляя новые записи). Если же данные из tmp2 можно "потерять", то просто tmp2 = null; к примеру |
|
|
За это сообщение автора поблагодарили: Eldar9x (1). |
27.11.2007, 13:32 | #4 |
MCTS
|
можно и даже нужно.
X++: tmp1 = null; tmp2 = null; |
|
27.11.2007, 13:45 | #5 |
MCTS
|
а после обнуления указателей эти файлы временных таблиц останутся на диске как мусор? Как то не хорошо получается... Надо тогда еще что-нибудь вроде delete tmp1; delete tmp2;
Последний раз редактировалось Eldar9x; 27.11.2007 в 13:47. |
|
27.11.2007, 13:49 | #6 |
Участник
|
по идее все очищается, при обнулении последней ссылки
|
|
27.11.2007, 14:08 | #7 |
Участник
|
Да. Файлы автоматически удаляются, когда на них больше не ссылаются объекты Аксапты
|
|