Здравствуйте. Есть внеш. обработка, открывается модально. В ней - список внеш. отчётов. Любой отчёт открывается так же модально, без дополнительных усилий со стороны прогера. Вопрос: как открыть такой отчёт НЕмодально?
Здравствуйте. Есть внеш. обработка, открывается модально. В ней - список внеш. отчётов. Любой отчёт открывается так же модально, без дополнительных усилий со стороны прогера. Вопрос: как открыть такой отчёт НЕмодально?
> как открыть такой отчёт НЕмодально?<br><br>ОткрытьФорму()<br><br>
"Подробно:<br>в Редакторе Меню вставлен пункт Название "Пользовательские".... Команда - Отчеты.ВнешнийОткрыть, параметры ".\ExtForms\...\МенюОтчётовПользователя.ert", стоит галочка Открыть форму модально.<br>Т.е. когда юзер тычет в пункт меню Пользовательские, МОДАЛЬНО открывается форма, в которой списком выводятся названия отчётов, разрешённых для этого юзера. Подчёркиваю, форма открывается МОДАЛЬНО, если не модально - это для меня, для настройки списка отчётов.<br>Соотв. юзер выбирает в списке нужный отчёт и отчёт открывается:<br><br>ТекОтчёт = """";<br>Если СписокОтчётов.ВыбратьЗначение(ТекОтчёт,"Отчёты для "+СокрЛП(Пользователь.Код),1,60,0) = 1 Тогда<br> ОткрытьФорму("Отчет",,ТекОтчёт);<br>КонецЕсли; <br><br>НО! При таком раскладе выбранный отчёт открывается тоже в модальном режиме, и, к примеру, котрагентов выбрать уже не даёт! Как-то можно сделать так, чтобы выбранный отчёт открывался немодально, сохранив модальный режим для обработки МенюОтчётовПользоватея?"
Нельзя из модальнооткрытой формы открывать другие формы немодально.
"Надо все таки уйти от модального открытия МенюОтчётовПользователя.ert, иначе вы свою проблему не решите. Открывайте ее все таки в обычном режиме, а функционал блокировки настроек списка отчетов реализуйте не по проверке признака модальности формы, а, например, проверкой переданного в форму дополнительного параметра через Форма.Параметр;<br><br>Проблема актуальна и для механизмов подбора в модально открытых диалогах, то есть, формы подбора открываются тоже модально, причем на "заднем плане". Если открывать их не через подбор, а через форму выбора значения, то невозможен множественный выбор и создание новых элементов в справочниках, что неудобно. Приходится идти другим путем."
создаём новый пункт меню: Команда - Отчеты.ВнешнийОткрыть, параметры ".\ExtForms\...\МенюОтчётовПользователя.ert" - как передать параметр?
"Прямо здесь - никак. Вы и не передавайте его для режима открытия пользователем. Там в МенюОтчётовПользователя.ert напишите:<br>Процедура ПриОткрытии()<br> Парам=Форма.Параметр;<br> БлокироватьДобавлениеОтчетовВСписок=1;<br> Если ПустоеЗначение(Парам)=0 Тогда<br> Если ТипЗначенияСтр(Парам)="СписокЗначений" Тогда<br> Если Парам.Получить("РазрешитьДобавлениеОтчетовВСписок")=1 Тогда<br> БлокироватьДобавлениеОтчетовВСписок=0;<br> КонецЕсли;<br> КонецЕсли;<br> КонецЕсли;<br><br> Если БлокироватьДобавлениеОтчетовВСписок=1 Тогда<br> Форма.кнДобавитьВСписок.Доступность(0);<br> КонецЕсли;<br>...<br><br>Это будет блокировать пользователям настройку списка.<br><br>Для себя делаем так:<br>в меню своего интерфейса добавляем Команда - Отчеты.ВнешнийОткрыть, параметры ".\ExtForms\...\МенюОтчётовПользователяАдм.ert"<br><br>МенюОтчётовПользователяАдм.ert - дополнительная обработка, которая имеет такой текст:<br>Процедура ПриОткрытии()<br> СписокПараметров=СоздатьОбъект("СписокЗначений");<br> СписокПараметров.Установить("РазрешитьДобавлениеОтчетовВСписок",1);<br> ОткрытьФорму(".\ExtForms\...\МенюОтчётовПользователя.ert",СписокПараметров);<br> СтатусВозврата(0);<br> Возврат;<br>КонецПроцедуры<br><br>P.S. Можно и вообще без передачи параметра отработать. В МенюОтчётовПользователя.ert пишем:<br>Процедура ПриОткрытии()<br> Если НазваниеНабораПрав()<>"Администратор" Тогда<br> Форма.кнДобавитьВСписок.Доступность(0);<br> КонецЕсли;<br>..."
Спасибо. В принципе, я и сделала по названию набора прав ))). Просто изначальная задумка была такая: если открывается из меню - значит, простой юзер (даже я), а если другим путём (напр. Файл-Открыть) - тогда для настройки, неважно, кто именно открыл. Чтобы можно было прийти к бухам в гости и у каждого настроить отчёты под его чутким надзором. За раз настроить всё и больше там не появлятся. А так можно настраивать только в моей учётке - не всегда удобно. Но спасибо
26 апреля 2024 года — Форум пользователей «1С:Документооборота» |
1C:Лекторий: 18 апреля 2024 года — Бесплатная онлайн-лекция об актуализации ЕПСБУ в 2024 году на практических примерах в «1С:Бухгалтерии государственного учреждения». Серия 1С:Консалтинг для госсектора 1C:Лекторий: 25 апреля 2024 года — Бесплатная онлайн-лекция об учете НМА в 2024 году, практические рекомендации в 1С |