AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.04.2004, 09:22   #1  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
? ttsabort - как вернуть первоначальные данные?
Внутри ttsbegin ... ttsabort производил манипуляции с данными.
И пока не перезагрузишься или не сделаешь reread() результат действия ttsabort'а почему-то не виден. Все select'ы возвращают изменённые значения.
Если какая-то запись была изменена, то вернуть её к первоначальному состоянию можно только зная RecId. А если я не знаю RecId записей которые менял?
Как сделать reread не для конкретной записи, а для таблицы (или лучше всех таблиц) целиком?
Или может использовать не ttsbegin ... ttsabort?
__________________
Дмитрий
Старый 26.04.2004, 10:09   #2  
dn is offline
dn
Участник
Самостоятельные клиенты AX
 
486 / 159 (6) ++++++
Регистрация: 26.03.2003
Адрес: Москва
попробуй reseach().
p.s. Вместо вызова ttsabort рекомендуется генерить exception, хотя в данном случае это вряд ли поможет.
Старый 26.04.2004, 12:22   #3  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
Всё просто

class Dictionary
public static void dataFlush( [tableId _tableId = ALL] )
__________________
Дмитрий
Старый 18.05.2004, 10:27   #4  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
Но всё меняется когда приходят они. В смысле когда работаешь под тонким клиентом.
Dictionary::dataFlush() не помогает
также как не помогают appl.flushcompanycache(curext()) и другие подобные им процедуры.
__________________
Дмитрий
Старый 18.05.2004, 15:07   #5  
RAks is offline
RAks
Участник
 
11 / 10 (1) +
Регистрация: 10.05.2002
Привет, если вызвать на сервере, то же не помогает?
Старый 18.05.2004, 15:23   #6  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
Да, вызов на сервере тоже не помогал, но я тут откопал функцию flush.
Ей передаёшь табличную переменную, с которой проблемы возникают и она её ... вобщем сложно сказать что она с ней делает, но проблем типа "невозможно отредактировать запись, запись не выбиралась для обновления" после использования ttsbegin-ttsabort вроде не возникает, даже на тонком клиенте.
__________________
Дмитрий
Старый 19.05.2004, 11:32   #7  
Damn is offline
Damn
Участник
 
436 / 154 (6) ++++++
Регистрация: 28.05.2003
Адрес: в глуши
На самом деле оказывается проблема глубже.
flush тоже не помогает. Вернее помогает если его делать дважды - сначала на сервере, потом на клиенте.
Так как в данном случае мы имеем два кэша.
Хотя если внутри ttsbegin-ttsabort случается throw error() то обновление обоих кэшей происходит автоматически. Сложно вобщем всё это как-то.
__________________
Дмитрий
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Помогите выгрузить данные maag DAX: Функционал 0 30.11.2006 12:06
Данные из всех компаний zipo DAX: Программирование 18 16.05.2006 23:26
Демо версия. Какие демо-данные взять? Spider DAX: Прочие вопросы 4 11.07.2005 13:48
Демо-данные как начальные настройки Sharf2000 DAX: Функционал 12 29.06.2004 16:07
Неправильно выбираются данные через query Pegiy DAX: Программирование 2 11.06.2004 16:43

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 14:59.