Показать сообщение отдельно
Старый 26.01.2021, 22:33   #1  
alicedr is offline
alicedr
Участник
 
173 / 43 (2) +++
Регистрация: 06.07.2012
Адрес: Канада
AX2012 R3 modal form - "unbalanced TTS" при нажатии CTRL+V, TAB или правом клике мышью
AX2012 R3. Клиент хочет добавить логику при ручном создании sales order confirmation: в самом конце процесса проверяются некоторые данные, и всплывает модальная форма с вариантами развития событийб где пользователь должен определить что делать дальше.

Форма вызывается так:

X++:
args = new Args();
            args.name(formstr(xxxRecoverDialog));
            args.record(log);
            formRun = classFactory::formRunClassOnClient(Args);
            formRun.init();
            formRun.run();
            formRun.wait();
В самой форме
X++:
public void run()
{
    super();
    this.wait(true);
}
Проблема возникает если пользователь нажимает TAB, CTRL+V или просто кликает правой кнопкой мыши на форме: "Unbalanced TTS".
Датасорс формы read-only. Никакой логики на active, write и т.д.
TTS есть только в методах которые вызываются кнопками, и при дебагге они не вызываются - т.к. на кнопки мы не нажимаем.

Единственный TTS begin который присутствует в момент когда форма вызывается, это внешний TTS от sales order confirmation.

Если честно, вообще не понимаю что происходит (((