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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.08.2008, 20:44   #1  
Volodymyr is offline
Volodymyr
Участник
 
36 / 21 (1) +++
Регистрация: 03.11.2006
Адрес: Киев
ttsbegin ttscommit and changecompany()
Привет.
Кто подскажет что происходит при таких условиях:
X++:
 ttsbegin;
    changecompany("BAB")
    {
        ttsbegin;
        .....
        ttscommit;
    }
 ttscommit;
Не могу понять почему когда делается второй ttscommit, то вызывается ttsbegin.

Ниже можно не смотреть, просто привожу описания задачи, и появляющейся проблемы при вызове вторым ttscommit'ом ttsbegin'а.

Задача такая:
находимся в одной компании, при создании линии на форме у Юзера спрашивается из какой компании использовать номерную серию. Номерная серия из выбраной компании используется.

Решение:
создал класс NumberSeqFormHandlerMoe в нем перегрузил методы formMethodDataSourceDelete..... где просто добавил changecompany(Выбор Юзера).

Все вродебы хорошо работает. Только не все ) Так как второй ttscommit вызывает ttsbegin, то таблица NumberSequenceList не апдейтится на предмет использования номеров, так как ttsbegin сбрасывает параметры (resetAbort) необходимый для апдейта.

Если снимаю верхний ttsbegin-ttscommit, то все работае.
Но снять его я не могу потомучто
X++:
 void delete()
 {
    ttsbegin; -     ttsbegin
    element.numberSeqFormHandler().formMethodDataSourceDelete();
    super();
    ttscommit;
 }
Если кто дочитает буду рад =)
Всем спасибо!
 


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

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

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