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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.10.2014, 05:07   #1  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
Блин, впервые столкнулся с проблемой за столько лет.. Оказывается если в аксапте есть две любые формы открытые одновременно, не важно откуда, но через код:
FR.Init();
FR.run();
FR.wait();
То первую открытую фиг закроешь. Закрываются только в обратном открытию порядке.
FR.detach() - помогает закрытию, но в моем случае надо было ждать результата от формы поэтому FR.detach() лишний.
Соглашусь, ситуация специфическая.. но вот же наткнулся все-таки)
Я в DAX4 пробовал.
Старый 22.10.2014, 08:08   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,449 / 1792 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Perc Посмотреть сообщение
FR.detach() - помогает закрытию, но в моем случае надо было ждать результата от формы поэтому FR.detach() лишний.
Как так, и ждать надо и закрывать нужно чтобы было можно?

Делайте detach второй формы не заранее, а после того как уже можно не ждать. Или я неправильно понял ситуацию?
Старый 22.10.2014, 11:15   #3  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Как так, и ждать надо и закрывать нужно чтобы было можно?

Делайте detach второй формы не заранее, а после того как уже можно не ждать. Или я неправильно понял ситуацию?
Я случайно обратил внимание на форме диалога:
Box::yesYesAllNoCancel("Текст", DialogButton::No);
Потом так вышло, что запустил другую операцию, с аналогичным запросом не закрыв первую с запросом. Начал закрывать первую - не закрывается. Начал разбираться - что это подглючивает? Оказалось в моем коде все нормуль. Это wait так работает..
Бороться с ньюансом этим не стал. Да честно говоря и не представляю как это делать малой кровью в общем случае.
Но все таки, как уже сказал АndyD, это баг. Код то на закрытие отрабатывает, а форма висеть остается.
Старый 22.10.2014, 08:57   #4  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от Perc Посмотреть сообщение
Блин, впервые столкнулся с проблемой за столько лет.. Оказывается если в аксапте есть две любые формы открытые одновременно, не важно откуда, но через код:
FR.Init();
FR.run();
FR.wait();
То первую открытую фиг закроешь. Закрываются только в обратном открытию порядке.
FR.detach() - помогает закрытию, но в моем случае надо было ждать результата от формы поэтому FR.detach() лишний.
Соглашусь, ситуация специфическая.. но вот же наткнулся все-таки)
Я в DAX4 пробовал.
Каждый вызов wait() запускает новый цикл обработки сообщений.
Команда на закрытие первой формы просто не доходит до первого цикла и не обрабатывает вторым, поскольку не предназначена контролируемому этим циклом окну.
Есть отрицательный эффект при этом - хоть сообщение о закрытии формы до цикла не доходит и форма не закрывается, но в самом formRun сопутствующие закрытию окна события отрабатываю
__________________
Axapta v.3.0 sp5 kr2
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как обновить форму, если добавление через кнопку? Arahnid DAX: Программирование 5 21.05.2007 11:18
Как "насильно" закрыть форму ? vitalyCh DAX: Программирование 2 06.10.2006 16:26
Можно ли редактировать форму, если на нее наложен addRange? Hans DAX: Программирование 10 22.05.2006 16:35
Как программно закрыть форму? Red Stranger DAX: Программирование 8 11.05.2005 16:04
Проблема - не получается редактировать форму shestakov DAX: Программирование 1 18.12.2001 13:32
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

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

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