§ 9.3. Форма выбора: вернуть одно значение в поле

Откройте поступление и нажмите кнопку выбора рядом с полем «Контрагент». Откроется список контрагентов — похожий на тот, что открывается из раздела, но ведёт он себя иначе: двойной щелчок не открывает карточку, а закрывает окно и подставляет выбранного контрагента в поле. Это не список. Это форма выбора — и отличает её не устройство, а задача.

1. Роль, в которой зовут эту форму

У справочника есть отдельная строка основных форм — форма для выбора. Документация описывает её так: это форма, «которая будет вызвана системой для выполнения стандартных действий для выбора элемента или группы справочника».

что происходиткакую роль зовёт платформа
пользователь открыл список из разделаформу списка
пользователь нажал выбор в полеформу для выбора
выбирают папку, а не элементформу для выбора группы

Если строка формы выбора пуста, платформа строит автоформу — такую же, как для списка, только в режиме выбора. Поэтому они и похожи: собраны по одним правилам, а вызваны с разными целями.

2. Что меняется в режиме выбора

Задача другая — и поведение формы меняется, хотя элементы те же.

списоквыбор
зачем открылинайти и посмотретьвернуть значение в поле
двойной щелчокоткрывает карточкуподставляет значение и закрывает окно
чем заканчиваетсяпереходом к записивозвратом в поле, из которого позвали
кто ждёт результатаниктополе документа

У таблицы для этого есть свойство — режим выбора. Включает его не разработчик: документация помечает, что на клиенте оно доступно только для чтения, — режим ставит платформа, когда открывает форму для выбора.

Список отвечает на вопрос «что тут есть». Форма выбора отвечает на вопрос «какое из этих значений вы имели в виду».

3. Закрываться или остаться

У формы есть свойство «закрывать при выборе». Документация говорит о нём прямо: это признак того, что форму нужно закрывать после выбора, по умолчанию он включён, а если выключить, «можно использовать форму для выбора нескольких позиций или элементов».

значениекак ведёт себя форма
включено, по умолчаниювыбрали одно значение — окно закрылось
выключеноокно остаётся, можно выбирать ещё

Вторая строка — это и есть форма подбора, знакомая всем, кто работал с торговыми программами: выбрали товар, он встал строкой в документ, окно осталось открытым — выбирайте следующий. Правило чтения простое: форма выбора не закрылась — проверьте это свойство. Чаще всего её задумали для подбора.

4. Когда формы выбора не будет вовсе

Иногда выбор происходит без всякого окна: щёлкнули по полю — выпал короткий список значений. Решает это свойство справочника — способ выбора.

способ выборачто увидит пользователь
из формыоткроется форма выбора
быстрый выборвыпадающий список прямо в поле
обоими способамидоступно и то и другое; что показать сразу, решает отдельный флажок быстрого выбора

Рабочее правило: коротким справочникам быстрый выбор к месту — единиц измерения пять, и окно для них лишний шаг. Длинным он не годится: выпадающий список на тысячу строк бесполезен, там нужна форма с поиском и отбором.

Есть и третий путь к значению. Начните печатать «бум» прямо в поле — платформа сама найдёт бумагу; формы при этом не открывается вовсе. Называется это вводом по строке, а поля, по которым так искать, задают у объекта списком.

5. Откуда у формы выбора отбор

Форма выбора часто показывает не всё. Причина — в поле, из которого её позвали: вместе с просьбой выбрать платформа передаёт форме ограничения.

что виднооткуда это
в списке только часть записейотбор, заданный у поля в форме, откуда позвали
выбрать можно только элемент, но не папкутак задано у поля
список уже позиционирован на значениив поле уже было значение

Для читателя это важный поворот: странности формы выбора объясняются не в ней самой. Увидели в форме выбора половину справочника — смотрите свойства того поля, из которого её вызвали: отбор задан там.

6. Как узнать форму выбора в чужой конфигурации

Признаки читаются по роли и свойствам.

признакчто значит
форма стоит в строке «основная форма для выбора»её зовут при выборе
у таблицы включён режим выбораформа работает на возврат значения
свойство «закрывать при выборе» выключеноэто подбор, а не одиночный выбор
в форме есть свои команды вроде «Подобрать»работа идёт прямо здесь

Последняя строка — частый случай в торговых конфигурациях: форма выбора разрастается до рабочего места, где человек набирает корзину. Про «одно значение» это уже не разговор, и к таким формам мы ещё вернёмся в этой главе.

7. В Конфигураторе и в Предприятии

Посмотрим на три пути к значению.

  1. Откройте поступление и нажмите выбор у поля «Контрагент»: открылась автоформа выбора. Выберите контрагента — окно закрылось, значение в поле.

  2. В том же поле напечатайте первые буквы названия контрагента. Платформа подставит значение без всякой формы — это ввод по строке.

  3. В Конфигураторе откройте справочник «Единицы измерения» и задайте ему быстрый выбор.

Здесь будет снимок экранасвойство способа выбора у справочника «Единицы измерения»
  1. Обновите конфигурацию и откройте карточку товара: в поле единицы измерения теперь выпадающий список, а не окно.

  2. Оставьте это как есть, а «Товарам» быстрый выбор не задавайте.

Главное в одном абзаце

Форма выбора — это не отдельное устройство, а роль: платформа зовёт её, когда значение надо вернуть в поле. Строка «основная форма для выбора» указывает, какую форму взять; если строка пуста, строится автоформа, поэтому список и выбор так похожи. В режиме выбора форма ведёт себя иначе: двойной щелчок подставляет значение и закрывает окно, а режим выбора у таблицы включает сама платформа. Свойство «закрывать при выборе» решает, закроется окно после первого значения или останется для подбора нескольких. Иногда формы выбора не будет вовсе: короткому справочнику задают быстрый выбор — выпадающий список прямо в поле, а ввод по строке находит запись по набранным буквам. Отбор, с которым открылась форма выбора, приходит из поля, откуда её позвали, — там и надо искать причину, если показана только часть записей.


Справочник и документ мы читали рядом, как будто это одно и то же. Но у документа есть дата, номер и проведение, а у справочника их нет. Чем формы документа отличаются от форм справочника и что из этого следует для чтения?

Контрольные вопросы

  1. В какой роли платформа зовёт форму выбора?
  2. Почему форма выбора так похожа на форму списка?
  3. Что меняется в поведении формы, когда её открыли для выбора?
  4. Кто включает режим выбора у таблицы?
  5. Что делает свойство «закрывать при выборе» и для чего его выключают?
  6. В каких случаях формы выбора не будет вовсе?
  7. Где искать причину, если форма выбора показывает только часть записей?

Упражнения

По образцу. Нажмите выбор у поля «Склад» в поступлении и скажите, какая форма открылась и почему именно она.

Своё: кому быстрый выбор. Пройдите по справочникам «Канцтоваров» и решите, какому из них стоит задать быстрый выбор, а какому нет. Объясните каждое решение.

Ловушка: «выбрал товар — окно закрылось, а надо десять». Кладовщик жалуется, что набирать десять товаров в документ неудобно. Что можно изменить и где?

Обратный ход. В чужой конфигурации форма выбора контрагентов показывает только покупателей, хотя в справочнике есть и поставщики. Где искать причину?

На чтение. В форме выбора товаров есть таблица остатков по складам и своя команда «Подобрать». Что это за форма и зачем её такой сделали?

Ответы — в конце части.