§ 0.3. Форма как единица интерфейса: разговор о чём-то одном

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

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

1. Одно окно — один предмет

Вернёмся к четырём окнам и спросим о каждом не «как оно устроено», а «о чём оно».

окноо чём оно
карточка товараоб одном товаре — «Ручка шариковая»
карточка поступленияоб одном документе — поступление № 12
список товарово справочнике «Товары» целиком
отчёт об остаткахоб одном вопросе — сколько товара на складах

Предметы разные: товар, документ, справочник, вопрос. Но у каждого окна он один. Карточка ручки не рассказывает заодно о бумаге, карточка поступления № 12 — о поступлении № 13, а список товаров не превращается по ходу дела в список контрагентов. Всё, что есть в окне, — поля, таблицы, кнопки — служит одному предмету.

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

Форма — это разговор системы с пользователем по поводу одного объекта.

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

2. Строже: форма в дереве конфигурации

Образ разговора помогает удержать главное, но в Конфигураторе нет ветки «Разговоры». Что там есть на самом деле, удобно записать тремя строками:

образ    форма — реплика системы
         об одном предмете
строго   объект конфигурации, который
         описывает одно окно
где      ветка «Формы» внутри объекта
         или «Общие формы» в «Общих»

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

Справочники
└── Товары
    ├── Реквизиты
    │   ├── Артикул
    │   └── ЕдиницаИзмерения
    ├── Табличные части
    ├── Формы         ← формы товара
    ├── Команды
    └── Макеты
Здесь будет снимок экранасправочник «Товары» в дереве конфигурации, ветки раскрыты

Если форму решили сделать общей для многих объектов, она лежит в ветке «Общие», среди общих форм. Правило выходит простым: где предмет разговора, там и заданные для него формы.

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

3. Пять слов разговора

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

в разговорев 1Сгде в Конфигураторе
репликаформаветка «Формы» объекта
предмет репликиосновной реквизит формывкладка «Реквизиты» редактора формы
видимая часть репликиэлемент формывкладка «Элементы»
глаголкомандавкладка «Команды»
оглавлениекомандный интерфейсв дереве конфигурации, вне формы

Оговорка про предмет: у карточки он лежит в одном месте — в основном реквизите формы. У списка и отчёта роль предмета играют свои данные, и о них книга скажет в своё время.

Одно предупреждение сразу. «Реквизит формы» — не то же, что реквизит товара из дерева конфигурации, хотя слово одно. Реквизит товара — его свойство, которое хранится в базе; реквизит формы — данные, которые форма объявляет у себя и с которыми работает, пока открыта. Различать их учит глава о данных формы, а до неё слово «реквизит» без уточнения будет значить реквизит объекта.

Приложим пять слов к знакомой форме — карточке поступления № 12:

слово разговорана карточке поступления
репликався карточка целиком
предметсамо поступление № 12
видимые частиполя «Номер», «Контрагент», «Склад», таблица товаров
глаголы«Провести и закрыть», «Записать»
оглавлениеразделы и команды программы, через которые её открыли

Заметьте, что предмет на экране не виден сам по себе: видно его отражение — номер, поставщик, строки товаров. Сам документ живёт в базе, а форма держит его у себя, пока открыта, и показывает по частям. Это различие ещё не раз пригодится.

4. С чего начинается чтение формы

Раз у каждой формы один предмет, первый вопрос к любой незнакомой форме — «о чём она?». Ответить на него часто помогает заголовок окна. Когда форму строит платформа, она пишет в заголовке имя предмета, а у карточек — ещё и в скобках, какого вида этот предмет. Автор формы может задать и свой заголовок, поэтому заголовок — подсказка, а не гарантия.

заголовок окнапредмет разговора
Ручка шариковая (Товары)один элемент справочника «Товары»
Поступление товаров 0000000012 от 15.03.2026один документ
Товарысправочник «Товары» целиком
Остатки товаров на складеодин вопрос

Остальные вопросы — из каких частей форма собрана, какие у неё глаголы, откуда она берёт данные — книга будет добавлять по одному, глава за главой. Но первым всегда остаётся этот.

Чтение формы начинается с вопроса «о чём она?». Первая подсказка — заголовок окна.

5. Где разговор перестаёт быть об одном

Образ разговора об одном объекте точно описывает большинство форм: карточки, списки, отчёты. Но у него есть граница, и о ней лучше знать заранее.

Представьте рабочее место кассира. В одном окне — товары покупателя, сумма, способ оплаты, сдача, кнопка печати чека. О каком одном объекте это окно? Ни о каком: оно не о товаре и не о документе, а о задаче — обслужить покупателя.

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

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

Большинство форм — про один объект. Но есть формы, у которых в центре задача, а не предмет. Устроены они из тех же деталей.

6. В режиме Предприятия

Проверим на «Канцтоварах», что у каждой формы один предмет и что заголовок его называет.

  1. Откройте карточку товара «Ручка шариковая» и прочитайте заголовок окна: имя предмета и, в скобках, его вид.

  2. Откройте список товаров. В заголовке — «Товары», без скобок: предмет — справочник целиком.

  3. Откройте список поступлений и нажмите «Создать». Откроется карточка документа, которого ещё нет, — и заголовок об этом скажет. Ничего не вводя, закройте её.

  4. Откройте поступление № 12 и нажмите кнопку «…» у поля «Контрагент». Откроется окно со списком контрагентов: его предмет — справочник «Контрагенты», а задача — выбрать из него одного. Закройте его, ничего не выбирая, а затем закройте и карточку.

Здесь будет снимок экранакарточка поступления № 12 с открытым окном выбора контрагента

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

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

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


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

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

  1. Что общего у всех окон программы, которые мы называем формами?
  2. О чём разговаривает карточка товара, а о чём — список товаров?
  3. Что такое форма, если сказать строго, и где она живёт в Конфигураторе?
  4. Назовите пять слов разговора и то, что каждому из них соответствует в 1С.
  5. По чему в Предприятии быстрее всего понять, о чём форма?
  6. Чем рабочее место кассира не похоже на карточку документа — и чем похоже?

Упражнения

Назовите предмет. Откройте в Предприятии карточку товара, список товаров, карточку поступления № 12, отчёт об остатках и окно выбора контрагента. Для каждого окна одной фразой ответьте: о чём оно?

Бланк из жизни. Возьмите бумажный бланк — квитанцию за квартиру, заявление в библиотеку, бланк заказа. О каком одном предмете он? Что в нём заполняет человек, а что уже напечатано заранее?

Ловушка: список — это много разговоров? Коллега рассуждает: «Список товаров — не одна реплика, а много: по одной на каждый товар, строк-то много». Прав ли он? Чем проверить?

Предмет по заголовку. Даны заголовки окон: «Контрагенты», «ООО «Ромашка» (Контрагенты)», «Поступление товаров (создание)», «Рабочее место кассира». Назовите предмет разговора в каждом. Какое окно не укладывается в «разговор об одном объекте» и почему?

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