![]() |
#8 |
Administrator
|
Проверил. Условная точка останова нормально работает.
Проверял на PU36 и Visual Studio 2017 Имеем форму SalesTable, метод run(). Вот такой код: X++: void run() { int designatedTabNo = 1; SalesTable salesTableLocal; if (TradeFormHelper::isCalledFromListPage(element.args())) { designatedTabNo = 3; } // Set proper TAB explicitly. lineViewTab.tab(designatedTabNo); super(); // Остальной код я не стал копировать сюда } В методе run() переменная designatedTabNo принимает значение 1 изначально, но если форма SalesTable была вызвана из формы SalesTableListPage, то ее значение меняется на 3. Форма SalesTable также может быть вызвана не из формы списка, а при переходе к заказу на продажу из, допустим формы накладной при выборе пункта меню "Показать подробности". В этом случае переменная designatedTabNo не меняет своего значения на 3. Тестируем. Ставим точку останова на строку lineViewTab.tab(designatedTabNo); Можно до присоединения к процессу (Attach to process), можно после этого. Наводим мышкой на красную точку, всплывает менюшка Выбираем шестеренку и вводим условие designatedTabNo == 3. Жмем Close и тестируем. Система сваливается в отладку, если мы пытаемся открыть карточку заказа на продажу из списка заказов на продажу (формы SalesTableListPage) и не сваливается в отладку, если мы пытаемся перейти к заказу на продажу из формы накладной клиента. Само собой, если мы отсоединимся от процесса - то в отладку мы не свалимся
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 14.09.2020 в 13:01. |
|
|
За это сообщение автора поблагодарили: trud (2), raz (5). |
|
|