|
v7: Как закрыть модальное окно сразу же после открытия из него формы | ☑ | ||
---|---|---|---|---|
0
snaiper
17.12.12
✎
12:36
|
Добрый день.
Есть обработка "Выбор из справочника по подстроке", которая, по понятным причинам, открывается обычно модально. Обработка эта модифицирована, в частности, на её форме появилась кнопка, открывающая отчёт "Остатки ТМЦ", где в множественный фильтр автоматически добавляются все строки, найденные вызвавшей обработкой. После открытия отчёта "Остатки ТМЦ" хочется закрыть форму обработки "Выбор...", чтобы она не мешала свернуть отчёт и работать с другими документами. Код: Процедура ПоКнопкеОстатки() //...// Параметры.Установить("ТаблицаМФ", ТаблицаМФ); глОбновить = 0; Форма.Закрыть(0); ОткрытьФорму("Отчет.ОстаткиТМЦ", Параметры); Возврат; КонецПроцедуры Не помогает, всё равно висит открытое, пока я не сформирую отчёт и не закрою форму. Тогда закрываются обе, как будто процедура ПоКнопкеОстатки() ждёт закрытия немодальной формы. |
|||
1
Kreont
17.12.12
✎
12:38
|
ЭтаФорма.Закрыть();
|
|||
2
Ёпрст
17.12.12
✎
12:38
|
(0) любое открытие формы из модальной формы будет открыто так же модально, rtfm
|
|||
3
Ёпрст
17.12.12
✎
12:39
|
пок не закроешь модальную форму с отчетом по остаткам, твоя форма подбора не закроется
|
|||
4
snaiper
17.12.12
✎
12:43
|
(1) {Обработка.ВыборИзСправочникаПоПодстроке.Форма.Модуль(565)}: Переменная не определена (ЭтаФорма) :-(
(2) o'k, то есть без извращений (вроде отложенного открытия отчёта, в т.ч. через внешние файлы, обработки ожидания и ВК) эта эстетическая задача нерешаема? |
|||
5
Ёпрст
17.12.12
✎
12:44
|
(4) убери модальность - делай что хочешь
|
|||
6
Масянька
17.12.12
✎
12:45
|
Процедура ПоКнопкеПолучитьЦены()
Предупреждение("Закройте файл с прайс-листом."); Параметры = СоздатьОбъект("СписокЗначений"); Параметры.ДобавитьЗначение(гТабВыборка, "Данные"); Параметры.ДобавитьЗначение(ДокументПрайсЛист, "Прайс"); ОткрытьФормуМодально("Отчет", Параметры, ".....\ПоискЦен.ert"); Перерисовка(); КонецПроцедуры // ПоКнопкеПолучитьЦены Поиск цен - код: Перем РабочаяТаблица; Перем ДокументПрайсЛист; Перем МожноЗакрыть; //****************************************************************************** Процедура Выполнить() ... тут происходит поиск МожноЗакрыть = 1; КонецПроцедуры // Выполнить //****************************************************************************** Процедура ПриОткрытии() МожноЗакрыть = 0; РабочаяТаблица = Форма.Параметр.Получить("Данные"); ДокументПрайсЛист = Форма.Параметр.Получить("Прайс"); Форма.Закрыть(); КонецПроцедуры // ПриОткрытии //****************************************************************************** Процедура ПриЗакрытии() Выполнить(); СтатусВозврата(МожноЗакрыть); КонецПроцедуры // ПриЗакрытии |
|||
7
snaiper
17.12.12
✎
12:53
|
(5) Спасибо.
(6) Спасибо. Значит, в любом случае закрывать поиск вручную. |
|||
8
Ёпрст
17.12.12
✎
12:53
|
(6) какая наивность
|
|||
9
Масянька
17.12.12
✎
12:55
|
(8) Хорош наезжать. Чего не так-то?
|
|||
10
Ёпрст
17.12.12
✎
12:57
|
(9) см (2)
|
|||
11
Масянька
17.12.12
✎
12:59
|
(10) Я знаю, автор тоже (вроде) понял.
|
|||
12
Ёпрст
17.12.12
✎
13:00
|
(11) ну и ? чего тогда за бредятинку в (6) советуешь ?
:))) |
|||
13
Ёпрст
17.12.12
✎
13:00
|
форма с подбором не закроется, пока отчет по останкам не закроет.
|
|||
14
Масянька
17.12.12
✎
13:04
|
(12) Почему бредятинка?
|
|||
15
Ёпрст
17.12.12
✎
13:05
|
подумай.
|
|||
16
Cthulhu
17.12.12
✎
13:07
|
(15): судя по разжеванному в (10) и последовавшему вопросу (14) - не в коня корм.
|
|||
17
Масянька
17.12.12
✎
13:09
|
(15) Я код кинула после твоего поста про НЕ модальность. Сам и думай.
|
|||
18
Ёпрст
17.12.12
✎
13:14
|
(17):))
Да ? и тут же в коде предлагаешь сделать это ? ОткрытьФормуМодально ? :) |
|||
19
Масянька
17.12.12
✎
13:16
|
(18) Мне - так нужно (пока открыта форма - идет поиск, поиск прошел - форма закрылась). Автор почитает и может чего полезного почерпнет для своей задачи.
|
|||
20
Ёпрст
17.12.12
✎
13:17
|
Автор, тебе поможет следующее:
в глобальничке, в Процедура глПоискПоПодстроке(Конт, СписокПолей = "") Экспорт в СписокПараметров передаешь ышо один параметр, например Вася, в самой поделке, по кнопке останки в Вася пихаешь, что он Федя и закрываешь форму, далее в этой проце, после ОткрытьФормуМодально пишешь код, что если Вася = Федя, то ОткрытьФорму с отчетом по останкам и передаешь в отчет параметром полученные найденные элементы из обработки подбора.. Наслаждайся. |
|||
21
ADirks
17.12.12
✎
19:41
|
А кстати, если окно перед открытием другой формы сделать немодальным (FormEx'ом)? Не пробовал, но вдруг?
|
|||
22
ADirks
17.12.12
✎
19:47
|
не, гоню... это для всего 1С-ного окна
|
|||
23
snaiper
18.12.12
✎
10:54
|
(19) Безусловно! Ознакомился с интересом :)
(20) Что же, как я и думал в (4), придётся открывать отчёт отложенно (т.е. из глПоиска...). Кстати, тоже не самый плохой вариант. Так и сделаю. (12), (16) за что ж вы так с девушкой? Она ведь как лучше хочет. |
|||
24
Ёпрст
18.12.12
✎
11:06
|
(23) мот это бородатый дядька ?
нам отсюда не видно. |
|||
25
Cthulhu
18.12.12
✎
21:51
|
(24): ну, или как это бывает в интернетах с грудастыми стройными блондинками, и вовсе - старый, толстый, потный и лысый педофил, ммм?..
|
|||
26
snaiper
19.12.12
✎
12:37
|
(24) (25) Предпочитаю об этом не думать, когда разговариваю с человеком. Просто неудобно как-то сразу стало. Ладно, тему можно закрыть.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |