Модальные окна или их эмуляция на платформе 8.3.10.2561 и выше.
Подскажите, кто в курсе. Конфигурация ЗКГУ 3.1.5.99 на платформе 8.3.10.2561. Работа в режиме обычного приложения, толстый клиент. Оказалось что функции Вопрос и Предупреждение не работают, и обработка с ними не запускается c диагнозом :
Каким образом в этой среде можно все таки организовать диалог с пользователем, чтобы он выбрал дальнейший путь исполнения программы. Если есть простейший пример, то желательно привести.
Похоже, что есть еще вариант установки Модальный Режим = Истина; тогда, возможно будут работать и те, старые функции: Вопрос и Предупреждение. Но судя по постам в Инфостарт это тоже не совсем простой вопрос. Меня бы такой вариант устроил больше, т.к. мы пока и не собираемся работать ни в каком режиме кроме как «Толстый Клиент» и режиме, кроме как «Обычное приложение».
< Использование модальных окон в данном режиме запрещено!>
Каким образом в этой среде можно все таки организовать диалог с пользователем, чтобы он выбрал дальнейший путь исполнения программы. Если есть простейший пример, то желательно привести.
Похоже, что есть еще вариант установки Модальный Режим = Истина; тогда, возможно будут работать и те, старые функции: Вопрос и Предупреждение. Но судя по постам в Инфостарт это тоже не совсем простой вопрос. Меня бы такой вариант устроил больше, т.к. мы пока и не собираемся работать ни в каком режиме кроме как «Толстый Клиент» и режиме, кроме как «Обычное приложение».
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) Попробую, конечно, но просто был пост(и не один) что установкой этого режима горю не поможешь.
Ок, спасибо, обяз. попрбую все.
(5) За раздел спасибо, и с "Показать" все попробую, тогда отпишу.
И как бы, есть новые методы ПоказатьПредупреждение и ПоказатьВопрос, но они требуют полностью переписывать логику работы.
Ок, спасибо, обяз. попрбую все.
(5) За раздел спасибо, и с "Показать" все попробую, тогда отпишу.
В общем то я вижу, что мой вопрос(ы) не сильно в теме этого раздела, но я так и не нашел раздел, куда бы его приткнуть ? Может в платформы ? А то в этом разделе мои вопросы носят "узкосудебный интерес", как мне теперь кажется. Это тоже вопрос.
чтобы не чесать репу
1. Открыть современную конфигурацию где уже запрещены модальные окна
(Ут, Бух, Зуп - ...дело вкуса)
2. В конфигураторе глобальным поиском по текстам модулей найти
ПоказатьПредупреждение и ПоказатьВопрос. Выбрать наиболее простые и логичные реализации указанных методов.
3. Оптимизировать их и переделать под шаблон
4. Все - созданные шаблоны можно использовать копипастом или из подстемы шаблонов.
Остальные пути освоения ноу-хау 1С к контексте кода будут длительнее по времени. Если вам не жаль вашего времени - опровергайте последний постулат.
1. Открыть современную конфигурацию где уже запрещены модальные окна
(Ут, Бух, Зуп - ...дело вкуса)
2. В конфигураторе глобальным поиском по текстам модулей найти
ПоказатьПредупреждение и ПоказатьВопрос. Выбрать наиболее простые и логичные реализации указанных методов.
3. Оптимизировать их и переделать под шаблон
4. Все - созданные шаблоны можно использовать копипастом или из подстемы шаблонов.
Остальные пути освоения ноу-хау 1С к контексте кода будут длительнее по времени. Если вам не жаль вашего времени - опровергайте последний постулат.
(7) Да, нет, Ваш метод мне очень нравится, спасибо. Только так и сам учусь.
(8) Нужно будет обязательно попробовать. Хотя выглядит как фантастика.
(3) Я был неправ, посты меня напугали. Действительно все работает. Спасибо. Только остаются след вопросы : 1) ЗКГУ вся написана на управляемых формах, а мой режим - "левый", для работы только с обычными формами. Но режим то Модальный Режим = Истина; будет при этом установлен на всю конфигурацию и базу. У меня то будут тогда формы работать, а вот как пойдет с управляемыми - это вопрос. 2) Наверное при обновлении конфигурации придется каждый раз устанавливать режим:
Модальный Режим = Истина; Хотя это и не очень большой труд.
(3) (7) - Наверное более правильно будет все таки пробиться с ПоказатьПредупреждение и ПоказатьВопрос.
(9) Пока не понял сути предложения, но возможно после попыток с "Показать" - дойдет.
(8) Нужно будет обязательно попробовать. Хотя выглядит как фантастика.
(3) Я был неправ, посты меня напугали. Действительно все работает. Спасибо. Только остаются след вопросы : 1) ЗКГУ вся написана на управляемых формах, а мой режим - "левый", для работы только с обычными формами. Но режим то Модальный Режим = Истина; будет при этом установлен на всю конфигурацию и базу. У меня то будут тогда формы работать, а вот как пойдет с управляемыми - это вопрос. 2) Наверное при обновлении конфигурации придется каждый раз устанавливать режим:
Модальный Режим = Истина; Хотя это и не очень большой труд.
(3) (7) - Наверное более правильно будет все таки пробиться с ПоказатьПредупреждение и ПоказатьВопрос.
(9) Пока не понял сути предложения, но возможно после попыток с "Показать" - дойдет.
(10) Там суть такова: например, в метод открытия формы вы передаете в качестве параметра т.н. ОписаниеОповещения, в котором прописывается имя экспортной клиентской процедуры и место ее вызова, а также дополнительные параметры (например, текущая строка таблицы); у экспортной процедуры чаще всего должно быть 2 обязательных параметра - в один передается результат, а в другой - дополнительные параметры, которые определили ранее; процедура из описания оповещения может вызываться программно с помощью ВыполнитьОбработкуОповещения, либо после того, как "отработает" логика вызванного метода, в который передается ОписаниеОповещения. При этом выполнение кода не прерывается, как раньше при открытии модальных окон.
Маленький примерчик:
Маленький примерчик:
&НаКлиенте
Процедура ВыбратьНоменклатуру()
Оповещение = Новый ОписаниеОповещения("ОткрытиеФормы_Завершение", ЭтотОбъект, Новый Структура);
//Если вызов идет из формы, то в этом случае процедура ОткрытиеФормы_Завершение должна располагаться в модуле формы
//Можно указать имя общего клиентского модуля и расположить процедуру в этом модуле, например, вместо ЭтотОбъект указать ОбщегоНазначенияКлиент,
//а процедуру ОткрытиеФормы_Завершение поместить в этот общий модуль
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора",,,,,,Оповещение);
//Если идет дальше код, то он будет выполняться сразу после открытия формы, а не после ее закрытия как раньше
КонецПроцедуры
&НаКлиенте
Процедура ОткрытиеФормы_Завершение(ВыбраннаяНоменклатура, ДопПараметры) Экспорт //будет вызвана после закрытия формы выбора
//ДопПараметры в данном примере будет пустой структурой
Если ВыбраннаяНоменклатура = Неопределено Тогда
//форму закрыли крестиком
Возврат;
КонецЕсли;
Номенклатура = ВыбраннаяНоменклатура;
//в данном примере вызывался метод ОткрытьФорму, поэтому в параметр ВыбраннаяНоменклатура передается
//значение, которое передавалось в качестве параметра при закрытии формы выбора, т.е. при вызове метода Закрыть(ЗначениеВыбора);
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот