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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.08.2005, 11:35   #1  
Roman812 is offline
Roman812
Участник
 
21 / 10 (1) +
Регистрация: 29.06.2005
? ошибка при обновлении smmQuotationLine
В форме "предложения" при изменении некоторых полей (датасорс smmQuotationTable) из метода modified вызывается обновление соответствующего поля в smmQuotationLine (методы типа SetLinePrognosisId и др.). В этих методах выполняется код вида:
ttsbegin;

while select forupdate smmQuotationLine where smmQuotationLine.quotationId == this.quotationId
{
smmQuotationLine.<поле> = this.<поле>;
smmQuotationLine.doUpdate();
}

ttscommit;

Ошибка возникает в случае, когда пользователь нажимает ESC и НЕ СОХРАНЯЕТ изменения в форме. При следующем открытии предложения выясняется, что значения полей записи в smmQuotationLine изменились (ясное дело, после .doUpdate()), а значения в smmQuotationTable остались старыми (произошёл "откат").

Вопрос: подскажите, как наиболее корректно обойти эту багу?

Мысль: фактическое обновление данных в smmQuotationLine осуществлять только при вызове метода update() таблицы smmQuotationTable. В этом случае возникают попутные вопросы: а) как непосредственно из метода smmQuotationTable.update() узнать, какие поля были изменены и б) как в этом случае из метода modifiedField(_fieldId) обновить данные в нижней части формы, где smmQuotationLine, без физического изменения значений в smmQuotationLine (т.е. как-то изменить form.datasource...?)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при обновлении моделей petergunn DAX: Программирование 1 08.12.2011 14:14
Ошибка в формате числа. 36AC DAX: Программирование 7 19.10.2006 10:04
Ошибка: "Ошибка в суммы в валюте XXX. Необходимо округлить до '0.00'. Std DAX: Функционал 3 18.07.2006 11:22
Ошибка при обновлении перекресных ссылок msav DAX: Администрирование 3 02.04.2004 13:49
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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