Привет.
Кто подскажет что происходит при таких условиях:
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;
}
Если кто дочитает буду рад =)
Всем спасибо!