Форум Кладовочки АЛьФ`а

Общие вопросы => 7.7 => Тема начата: Злоп от 23 октября 2024, 00:20

Название: Режим открытия формы списка, получить в самой форме...?
Отправлено: Злоп от 23 октября 2024, 00:20
Справочник. Форма списка - одна.
Открывается эта форма списка, программно или интерактивно - не суть.
Можно ли как-то получить режим открытия формы - как она открыта? Просто, для выбора, для подбора?
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: Харлампий Дымба от 23 октября 2024, 01:11
Форма.РежимВыбора()
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: Злоп от 23 октября 2024, 02:23
если для нескольких - значит это форма в режиме подбора.
а если для выбора одного - это может быть и форма подбора с флагом выбора одного значения или Спр.Выбрать
- как их различить?
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: АЛьФ от 23 октября 2024, 10:51
Насколько я понимаю, подбор всегда не модально открывается, а выбор в любом случае модально. Нет?
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: Злоп от 23 октября 2024, 11:25
В извращенных случаях и подбор может модально открываться.
Но подсказка мне понравилась.
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: Злоп от 23 октября 2024, 11:27
Это я к тому, чтобы при разных режимах открытия активизировать разные реквизиты.
Например просто открыли форму - активизировать кнопку "Закрыть". Для Выбора открыта форма - фокус сразу на VyX ставить...
Название: Re: Режим открытия формы списка, получить в самой форме...?
Отправлено: Харлампий Дымба от 23 октября 2024, 15:17
Цитата: АЛьФ от 23 октября 2024, 10:51Насколько я понимаю, подбор всегда не модально открывается, а выбор в любом случае модально. Нет?
Там действительно много вариантов, тоже была такая мысль. Но если обычный интерактивный выбор - то форма также открывается немодально.

К тому же есть странное отклонение от документации: Форма.РежимВыбора() - никогда не даёт "2 - форма открыта для выбора нескольких значений.", хотя казалось бы для ОткрытьПодбор("Справочник.Товары",,,1) должна вернуться именно двойка. Поправка: дает. Но не в ПриОткрытии(), а уже после того как форма открылась.
Еще одна странность: ОткрытьПодбор("Товары") работает также как ОткрытьПодбор("Справочник.Товары") - хотя в документации такая возможность не описана.
Недокументрированное КонтекстПодбора не подошло, так как это обращение к контексту открытой формы из родительской формы.

По итогам у меня получилось так:
 
Выбор групп я смотрел для себя, чтоб разобраться, когда как отрывается, вдруг кому пригодится.

Отличить из открытой формы как она открыта: через ОткрытьПодбор() или интерактивно для выбора - у меня не получилось.
1С, например, не заморачивалась особо: в типовой ТиС для справочника Номенклатуры три формы списка: "Основная", "ДляПодбора", "ДляВыбора". Можно сделать так же, в конфе пробежаться поиском по ОткрытьПодбор() и проставить открытие формы списка "ДляПодбора", а в формах списка справочника указать в качестве основной "Основная", а для выбора - "ДляВыбора".