gifts2017

Подбор в модальном режиме

Опубликовал Antonio Petti (Некто A. Petti) в раздел Программирование - Практика программирования

Как известно если в 1С:Предприятии форма открыта в модальном режиме, то использование стандартного подбора становится проблематичным. А иногда хочется и того и другого :).
Предлагаемый пример показывает как можно выкрутится. Алгоритм можно встроить в любую конфигурацию практически без изменений.

Еще одна штучка десятилетней давности.

В архиве конфигурация с примером работы.

Изредка выручает.

Скачать файлы

Наименование Файл Версия Размер
DemoMod.rar 104
.rar 11,63Kb
11.02.10
104
.rar 11,63Kb Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. baa (baa) 11.02.10 13:54
Вы прямо радуете своими "давностями". Пригодиться!
3. bulpi bulpi (bulpi) 19.02.10 19:35
А зачем эта странная функция
Функция ВзятьКонтекст(Конт) Экспорт
Возврат Конт;
КонецФункции
????
Я проверил, работает и без нее, просто :
ОткрытьФормуМодально("Справочник.Товары.ПодборМодально",Контекст);
4. Antonio Petti (Некто A. Petti) 21.02.10 21:46
(3) А я помню? Это написано в 1999 году :o
Эта конструкция, помнится, родом из 7.5. Если, я не ошибаюсь, контекст просто так не передавался, а только через переменную. По крайней мере во всех 1С-овских конфигурациях той поры, контекст передавался именно так.
5. Артур Аюханов (artbear) 22.02.10 10:02
(3) Федор Езеев в свое время написал статью "Зачем нужна функция глВзятьКонтекст"
http://1c.alterplast.ru/articles/tale_4.html
6. Antonio Petti (Некто A. Petti) 22.02.10 10:28
(5) :) О, именно "...слепое следование каким-то внутренним стандартам кодирования, принятым в 1С при написании типовых."
7. bulpi bulpi (bulpi) 22.02.10 13:08
(5)
Спасибо, теперь понятно. Оказалось, не глупость.
8. Аркадий Кучер (Abadonna) 20.09.12 04:52
(7)
Спасибо, теперь понятно. Оказалось, не глупость.

Как раз именно полная глупость, и Езеев к такому же выводу приходит.
Процедура Сформировать()
      Перем Конт;                      
	 Конт="Это переданный контекст, будет Форма.Параметр"; 
	ОткрытьФормуМодально("Отчет",Конт,КаталогИБ()+"01.ert"); 
	Сообщить(Конт);
КонецПроцедуры
...Показать Скрыть

А в 01.ert напиши:
Процедура ПриОткрытии()   
	Сообщить(Форма.Параметр);
КонецПроцедуры                             
                                                     
Процедура ПриЗакрытии()   
       Форма.Параметр="Я закрылась";
КонецПроцедуры                     
...Показать Скрыть

И все прекрасно отработает. Без всяких глВзятьКонтекст.
глВзятьКонтекст - идиотизм на уровне:
Функция глВзятьДва() Экспорт
   Возврат 2:
КонецФункции
//.........
Два = глВзятьДва();
...Показать Скрыть
Прикрепленные файлы:
9. tazmag tazmag (tazmag) 20.09.12 17:34
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа