Как работают формы в 1с
Разработка интерфейса в 1С состоит из двух частей – разработка меню или рабочего стола и разработка экранных форм 1С. Окна, с которыми пользователь работает в 1С, называют экранные формы 1С или просто формы 1С.
Пользователи в программе работают с формами 1С. Мало того — пользователи видят только формы 1С. Поэтому с точки зрения удобства работы в программе это один из важных элементов. При этом убить времени на разработку формы 1С можно больше, чем на программирование самого сложного алгоритма.
Частой ошибкой программистов является попытка нарисовать все по своему вкусу. Сделать фон синим, а надписи зеленым. Или желтый на черном. Или как он ему нравится в какой-то другой его любимой программе.
К сожалению, этот подход ошибочен, так как пользователи привыкли работать с типовыми формами 1С, которых в конфигурации большинство. Рисовать собственный велосипед, помечать его надписями Courier вида «Copyright Vasya Pupkin» — это явно дурной тон.
Сейчас мы с Вами пройдем краткий ликбез по рисованию форм 1С.
Что такое Формы 1С
Форма 1С – это метод представления объекта 1С пользователю. Обычно форма представляет собой ряд полей, которые требуется заполнить и набор кнопок (команд меню) для управления. Форма 1С есть у большинства объектов 1С.
В толстом клиенте 1С используются «обычные» формы 1С. Это значит, что программист просто рисует мышкой форму 1С также как это делается в Visual Studio и других фреймфорках.
В тонком клиенте 1С и веб клиенте 1С используются управляемые формы 1С. Это значит, что их размер, форму 1С и расположение на них полей нельзя изменить мышкой. Они генерируются автоматически на основании настроек. Про управляемые формы 1С мы поговорим в следующих уроках.
Большинство форм 1С типовых конфигураций в 1С имеют свое, типовое представление, привычное пользователю.
- Форма списка 1С
В 1С есть множество списков. Когда мы говорим «справочник номенклатуры», то подразумеваем «список элементов номенклатуры (т.е. товаров)». Когда мы говорим документы банка, то имеем ввиду «список документов ПКО и РКО». Для отображения списков есть формы списков 1С. Это всегда табличная часть на всю форму 1С и над ней командная панель с кнопками Добавить, Скопировать и т.п., отображенными в виде картинок. Колонки и их порядок можно посмотреть в любом типовом справочнике и документе.
- Форма элемента/документа 1С
Когда с помощью списка пользователь определился, с каким конкретным документом он собирается работать – открывается форма документа/элемента справочника 1С.
Она обычно состоит из шапки (списка обязательных полей) и закладок с таблицами. Вверху находится также панель с кнопками, но на ней часто бывают текстовые меню Действия, Цены и валюта, Операция. - Форма выбора 1С
Похожа на форму списка 1С. Зачастую форма списка 1С и используется в качестве формы выбора 1С. Она используется в том случае, когда при заполнении документа (или элемента справочника) пользователь нажимает кнопку выбора «…» и открывается форма 1С для выбора значения.
- Форма отчета 1С
o Верхняя командная панель, обычно с кнопкой Настройка, по нажатию на которую открывается вторая форма отчета 1С – форма Настроек
o Выбор периода «С .. ПО . кнопка изменения периода»
o Одно или несколько полей быстрых отборов (например организация)
o Большое табличное поле, куда будет выведен отчет
o Кнопка формирования обычно вверху, крайняя справа «Сформировать».
- Форма обработки 1С
o Имеет часто две командных панели – вверху и внизу, кнопка запуска и закрытия обычно внизу справа.
o Может не иметь формы вообще (см. использование обработок как классы)
o У отчетов и обработок формы списка нет.
Как работают формы 1С
Логика (порядок) работы пользователя в 1С следующая:
- Пользователь заходит в программу, видит интерфейс (в толстом клиенте обычно это меню, в тонком клиенте рабочий стол)

- Пользователь выбирает пункт меню или гиперссылку на рабочем столе – открывается форма списка 1С

- В форме списка 1С пользователь выбирает команду (например добавить) или существующий элемент списка (элемент справочника или документ) и начинает работать с формой 1С.

- Закончив работать с документом, пользователь закрывает форму документа 1С и возвращается в форму списка 1С. Закончив с ней – возвращается к меню.
Таким образом пользователь работает всегда с формами 1С, начиная с форма списка 1С и переходя к форме элемента 1С. Если программист не нарисовал формы, то 1С генерирует формы по умолчанию. Они естественно лишены идеальной красоты и совершенства, но работать позволяют.
Автоматически сгенерированная форма списка 1С обычно содержит минимум полей (код/наименование и дата/номер соответственно). Автоматически сгенерированная форма элемента обычно содержит все поля (реквизиты), перечисленные сверху вниз.
Задача формы 1С – открыться и ждать действий пользователя. При действии – отреагировать. Таким образом основу модуля формы 1С составляют обработчики событий. Это такие функции, которые вызываются тогда, когда пользователь совершает какое то действие на форме 1С.
Где находятся формы 1С
В режиме 1С Предприятие при выборе практически любого объекта 1С (справочника, документа, отчета, обработки и т.п.) Вам откроется форма этого объекта.
В конфигураторе, в окне конфигурации, выберите нужный Вам объект, раскройте его ветку, чтобы увидеть вложенную ветку Формы 1С.

Другой вариант – открыть редактор объекта (два раза мышкой или поставить курсор и Enter) и перейти на закладку Формы 1С.

Здесь расположен список форм 1С. Одну из добавленных форм 1С можно добавить как форма по-умолчанию (форма списка 1С, форма элемента 1С и так далее).
Создание форм 1С
Чтобы добавить новую форму 1С, нужно нажать кнопку Добавить (Ins на клавиатуре). Чтобы войти в существующую – нажмите на нее два раза мышкой.

Конструктор предложит Вам выбрать вид формы 1С – форма элемента 1С, списка. Здесь же можно добавить или убрать командные панели на форме 1С. Чаще всего эти настройки оставляются как есть, по умолчанию.

Открывается форма 1С, заполненная по умолчанию — на нее добавились все реквизиты объекта 1С, которые есть. Отметить галочками конкретный список требуемых полей можно на второй закладке конструктора.

Ненужные реквизиты можно удалить. Для этого выделите одно или несколько полей и нажмите Del.

Чтобы в освободившееся место сдвинуть другие реквизиты –выделите их так же и перетащите мышкой.

Чтобы добавить на форму 1С новые реквизиты, нажмите кнопку на панели Размещение данных (меню Форма/Размещение данных), установите галочки на тех элементах, которые нужно добавить, а также галочки «Вставить надписи» и «Разместить автоматически».


По другому можно просто добавить элемент управления, нажав соответствующую кнопку на панели внизу или выбрав в меню Форма/Вставить элемент управления. Нажмите на элементе управления (поле) два раза левой кнопкой мыши и откроются его свойства. Свойство «Данные» содержит название реквизита объекта 1С. Здесь его можно изменить или назначить.


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

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

Чтобы изменить размер формы 1С, просто подведите курсор к краю формы 1С, нажмите левую кнопку мышки и просто перетащите край формы 1С.

Чтобы форма 1С заработала – т.е. делала что-то в ответ на действия пользователя – нужно добавить функции обработчики. Войдите в свойства любого элемента (щелкнув на нем два раза левой кнопкой мыши) или самой формы 1С (аналогично на заголовке формы). В самом низу окна свойств есть раздел «События». Выберите удобное событие (для всех полей это обычно «ПриИзменении», для формы «ПриОткрытии») и нажмите кнопку с лупой. Откроется ее обработчик события.

Для кнопок добавление происходит так же. Однако кроме произвольных обработчиков можно выбрать один из стандартных для этой формы (для формы справочника это одни стандартные действия, для формы документа – другие). Просто выберите одно из стандартных действий в свойстве «Действие» или нажмите крестик, если хочется сделать свой обработчик.

Проголосовать за этот пост:
Формы
Формы в 1С:Предприятии предназначены для отображения и редактирования информации, содержащейся в базе данных. Формы могут принадлежать конкретным объектам конфигурации или существовать отдельно от них и использоваться всем прикладным решением в целом.
Например, справочник Номенклатура может иметь несколько форм, которые будут использоваться для определенных целей — редактирования элемента справочника, отображения списка и т. д.:

Наряду с этим, могут существовать общие формы, не принадлежащие конкретным объектам конфигурации — общие формы.

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

А у документа Поступление товаров и услуг состав основных форм будет уже другим:

Таким образом, если пользователь захочет посмотреть список справочника Номенклатура или список документов Поступление товаров и услуг, система откроет соответствующую форму, назначенную в качестве формы списка для этих объектов.
Автогенерируемые формы
Важной особенностью системы 1С:Предприятие 8 является механизм автогенерируемых форм. Этот механизм освобождает разработчика от необходимости создания всех возможных форм для каждого из объектов конфигурации. Разработчику достаточно добавить новый объект конфигурации, а система сама сгенерирует в нужные моменты работы пользователя необходимые формы для отображения информации, содержащейся в этом объекте.
Таким образом, разработчику нужно создавать собственные формы объектов прикладного решения лишь в том случае, если они должны иметь отличия (другой дизайн или специфическое поведение) от форм, автоматически генерируемых системой.
Связь формы с данными
Принадлежность формы тому или иному объекту конфигурации не определяет состав данных, которые отображаются в форме. То, что форма принадлежит, например, справочнику Номенклатура, позволяет назначить ее одной из основных форм для этого справочника, но никак не определяет, какие же именно данные будет отображать эта форма, и каково будет ее поведение.
Для того чтобы связать форму с данными, используются реквизиты формы, в которых указывается перечень данных, отображаемых формой. Все формы, сами по себе, имеют одинаковое поведение, независимо от того, какие данные они отображают. Однако один из реквизитов формы может быть назначен для нее основным (он выделяется жирным шрифтом), и в этом случае стандартное поведение формы и ее свойства будут дополнены в зависимости от того, какой тип имеет основной реквизит формы:

Например, если в качестве основного реквизита формы будет назначен документ Поступление товаров и услуг, то при закрытии формы система будет запрашивать подтверждение записи и проведения этого документа. Если же основным реквизитом формы назначить, скажем, справочник Номенклатура, то подобного запроса подтверждения при закрытии формы возникать не будет.
Структура формы
Основная особенность форм заключается в том, что они не нарисованы разработчиком детально, «по пикселям». Форма в конфигурации представляет собой логическое описание состава формы. А конкретное размещение элементов выполняется системой автоматически при отображении формы.
Отображаемая часть формы (видимая пользователю) описывается как дерево, включающее элементы формы.

Элементы могут представлять собой поля ввода, флажки, переключатели, кнопки и т. д. Кроме того, элемент может быть группой, включающей другие элементы. Группа может представляться как панель с рамкой, панель со страницами (закладками), собственно страница, командная панель. Помимо этого элемент может представлять собой таблицу, которая тоже включает элементы (колонки). Структура элементов описывает то, как будет выглядеть форма.

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

На основе этого логического описания система автоматически формирует внешний вид формы для отображения пользователю. При этом системой учитываются различные свойства отображаемых данных (например, тип), чтобы максимально удобно для пользователя расположить элементы формы.

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

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

Механика работы форм
Функционирование управляемых форм имеет следующие отличительные особенности:
- Форма существует и на клиенте и на сервере
Она осуществляет клиент-серверное взаимодействие (передачу данных и оформительских свойств элементов) - Форма не работает с прикладными объектами
В форме используются специальные универсальные объекты ДанныеФормы… Прикладные объекты работают только на сервере и только во время выполнения некоторых операций

При открытии формы:
- Объект считывается из базы данных
- Объект конвертируется в данные формы
- Объект удаляется из памяти
- Данные формы передаются на клиента
При записи данных из формы:
- Данные формы получаются с клиента
- Данные формы конвертируются в объект
- Объект записывается в базу данных
- Объект удаляется из памяти

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

Авторы: В.А. Ажеронок, А.В. Островерх, М.Г. Радченко, Е.Ю. Хрусталева
Управляемые формы 1С 8.3
Начиная с версии 8.2 в программе начали применяться новые принципы разработки интерфейса и взаимодействия юзеров с базой данных. Наименование этой технологии — «Управляемое приложение».
Больше всего переделали механизмы построения форм и процесс контакта пользователя программы и базы данных. Стандартный режим пока что поддерживается платформой, однако в скором времени всем, кто пользуется программой, придется перейти на управляемые формы.
Отличительные черты управляемых форм
Для обычных юзеров управляемая форма документа в программе отличается от стандартной лишь видом. А для разработчика это абсолютно другой механизм, имеющий свои законы, правила и условия. В приложении изменили многое, но по мнению опытных разработчиков программы главными являются такие нововведения, как:
- Платформа самостоятельно формирует структуры формы и местоположение полей. До этого разработчики описывали расположение поля, указывали пиксели. Сейчас же получится только указать тип группировки.
- Форма представляет собой реквизиты (ее данные) и команды (выполняемые опции).
- Код формы делается на каждой стороне. Форма — это объект конфигурации, который создается на сервере и отображается на клиенте. То есть, она объединяет клиентскую и серверную часть.
- На клиентской стороне перестали функционировать многие виды данных и теперь нет возможности поменять сведения в информационной базе.
- Для каждой операции или опции нужно указывать директиву компиляции (она представляет из себя специальную настройку). Необходима для определения места выполнения кода и может принимать несколько значений:
- Наклиенте;
- НаСервере;
- НаСервереБезКонтекста;
- НаКлиентеНаСервере;
- НаКлиентеНаСервереБезКонтекста.
Последнее значение достаточно остро стоит в режиме управляемых форм. В том случае, если разработчик не очень хорошо разбирается в директивах и во взаимодействии сервера и клиента, ему будет трудно создать управляемую форму.
Обновленные основы построения управляемых форм в приложении имеют общую черту — трехзвенную архитектуру. В нее включены клиентские устройства, сервер 1С и СУБД, где хранится информация.
Редактирование управляемой формы теперь тоже стало осуществляться по-другому. Поменялись некоторые аспекты, разработчики версии 7.7, в которой отсутствовали управляемые формы, могут удивиться.
Изменения претерпел тип конструктора форм. Вы с легкостью сможете его увидеть. Для этого требуется открыть одну из форм объекта конфигурации. При открытии показывается окно, разделенное на такие отделы, как:
- Компоненты интерфейса формы. В левом верхнем углу находится окно. В нем перечислены поля, отраженные на данной форме. С их помощью обеспечивается взаимодействие приложения и пользователя.
- Реквизиты формы. Справа сверху находятся сведения, с которыми функционирует форма. В них хранятся данные клиентской стороны.
- Показ управляемой формы. Снизу можно рассмотреть предварительный вид, основываясь на компонентах интерфейса.
- Модуль формы. Категория, содержащая процедуры и опции, применяемые этой формой. Здесь размещен код алгоритмов взаимодействия приложения как с пользователем, так и с базой информации.

Разработчики программы предлагают юзерам начать пользоваться управляемыми формами. Поэтому обучение основам разработки управляемых форм — исключительно вопрос времени. Начав взаимодействие с данным видом форм, вы сможете понять, что это этап, ведущий к стандартизации разработки и соблюдению единых правил. Способность взаимодействовать с управляемыми формами сделает вас более экспертным разработчиком.
Принципы разработки управляемых форм
Чтобы понять механизм управляемого режима в программе необходимо запомнить, что форма есть как на сервере, так и на стороне клиента. На клиенте данный объект является изображением интерфейса взаимодействия юзера с приложением. Все подсчеты, алгоритмы, математические операции и обработки должны происходить лишь на стороне сервера. Это обусловлено не только невозможностью применять многие опции и параметры на клиенте, но и требованием к быстродействию.
Разобраться, где осуществляется процедура, получится по названию директивы, которая прописана перед каждой процедурой и опцией в модуле формы. Формулировка «БезКонтекста» показывает, что сведения на управляемой форме не передаются в данную процедуру на сервер. А значит, в таких процедурах нельзя писать алгоритмы, которые опираются на значения, введенные юзером. Если формулировка не указана, тогда форма будет передаваться целиком с реквизитами и у вас получится обращаться к ним.
Разработчики программы советуют применять неконтекстные вызовы сервера, сокращать их число и пытаться не осуществлять вычислений на клиенте. Начинающие специалисты, которые не очень хорошо знают теоретическую часть, трудно соответствовать данным правилам и верно менять код. Перед тем, как начинать работать самостоятельно, необходимо открыть управляемую форму конфигурации, посмотреть на синтаксис и методы взаимодействия клиентской и серверной стороны.
&НаСервере Процедура ПолучитьПлатежноРасчетныеДокументыИзХранилища(НовыйАдресВХранилище) &НаСервереБезКонтекста Функция ЕстьРасчетыСКлиентом(ДокументОснование) &НаСервереБезКонтекста Процедура ЗаполнитьСписокВыбораКПП(СписокВыбора, Контрагент, ДатаСведений) &НаКлиенте Процедура ЗаполнитьГоловногоКонтрагентаЗавершение(ВыбранноеЗначение, ДополнительныеПараметры) &НаСервере Процедура УстановитьТекстПлатежноРасчетныхДокументов() &НаСервере Функция ЕстьЗаполненныеИсходныеДокументы()
Обновленные правила разработки форм приложения принесут огромную пользу, если разработчики будут ими пользоваться. Изменения к лучшему заметят все. Как программисты, так и фирмы, осуществляющие деятельность в 1С и разработчики программы. Главные последствия верного использования управляемых форм:
- Легкость сопровождения конфигурации и улучшенная читаемость кода. Таким образом можно сделать вывод, что последовательность действий, написанная одним сотрудником, получится поправить другим разработчикам, не тратя время.
- Разделение кода, который выполняется на сервере и клиентской стороне. Учитывая отличие функционала, доступного на каждой стороне, разделить их — наиболее правильный этап.
- Наиболее глубокое представление разработчиков о логике платформы, взаимодействия клиента, сервера, а также алгоритмов, которые они пишут. В версиях 8.0 и более ранних довольно часто можно было встретить формы справочников или документов, разработанные без понимания клиент-серверной части.
- Повышение быстродействия конфигураций и понижение нагрузки на компьютеры клиентов.
- Более низкие траты на закупку компьютеров для рабочих мест из-за отсутствия необходимости покупки мощного оборудования.
Выбор управляемой формы как главного режима запуска программы может преподнести некоторые сюрпризы. Однако с верным подходом данный этап принесет дивиденды, так как на него решаются многие пользователи программы 1C со всей страны. Учитывая, что фирма 1C рассчитывает развивать управляемые формы, оставаться на устаревших версиях — рискованное решение.
Работа с формами в «1С:Предприятии 8»
Для ввода и обработки информации, хранящейся в конфигурациях, написанных на платформе «1С:Предприятие 8.1», в пользовательском интерфейсе активно используются разнообразные формы. Если несколько упростить, то можно сказать, что формы — это те самые окна, которые открываются пользователем и которые отображают в том или ином виде необходимую ему информацию. В «1С:Предприятии 8.1» существует несколько основных типов форм. О назначении каждого из типов, о возможностях и особенностях работы с ними рассказывает в данной статье В.В. Рыбалка, фирма «1С».
Содержание
Начнем с самого часто используемого типа форм — формы списков. Этот тип форм используется в основном для отображения каких-либо списков элементов информации, хранящейся в конфигурации.
Например, формы списков вы можете увидеть при открытии разнообразных справочников, журналов документов, списков записей в регистрах конфигурации и т. п.
Общее у всех форм такого типа — наличие одного или нескольких списков элементов конфигурации в качестве основного объекта отображения, с которым вам предлагается работать.
Например, вызывая справочник «Контрагенты», мы получаем на экране как раз такую форму-список (рис. 1).
Как правило, кроме собственно списка, у форм такого типа присутствует командная панель с кнопками-действиями, которые выполняются над элементами данного списка.
При наведении (не нажатии!) мышью на одно из действий, вы получите краткое пояснения этого действия и «горячую» клавишу (или комбинацию клавиш) для его выполнения, если имеется такая возможность.
Кроме этого, в командной панели, как правило, присутствует элемент «Действия», где собраны все действия, которые можно выполнять над элементами данного списка.
При отметке какого-либо элемента в списке, можно нажать на нем правой кнопкой мыши. В результате вы получите список разрешенных действий для данного элемента.
Некоторые действия одинаковы для всех списков, некоторые созданы разработчиками конфигурации и могут отсутствовать в других формах списков.
Для часто используемых в форме списков действий назначены комбинации клавиш (подробнее об использовании «горячих» клавиш читайте в номере 10 (октябрь) «БУХ.1С» за 2007 год, стр. 8), использование которых повысит эффективность работы в программе:
Действие
Сочетание клавиш
Активация действия в командной панели
Добавить новый элемент
Пометка на удаление
Добавить группу (для справочников с иерархией)
Переместить элемент в другую группу (для справочников с иерархией)
Быстрый вход внутрь группы (для справочников с иерархией)
Выход на уровень выше
Добавить новый элемент копированием текущего
Изменить текущий элемент
В формах списков могут встречаться простые списки и деревья. Деревья — это иерархически подчиненные по определенному правилу элементы. На рис. 1 слева на форме видим как раз пример такого дерева — иерархический список вложенных друг в друга групп контрагентов.
В некоторых списках имеется возможность множественного выделения выбранных элементов с целью их групповой обработки. Для того, чтобы выделить несколько элементов (если это разрешено в списке), достаточно нажать клавишу Shift и прощелкать мышью необходимые элементы.
Для этого можно использовать клавиши со стрелками (вверх, вниз, вправо, влево), включая привычное всем нам страничное листание (PageUp/PageDown) в сочетании с этими клавишами. Работают также общепринятые «горячие» клавиши:
Действие
Сочетание клавиш
Выделить все от текущей позиции до начала списка
Выделить все от текущей позиции до конца списка
Выделить все элементы
Копирование текстового представления текущей ячейки в списке элементов
Форма списка
Начнем с самого часто используемого типа форм — формы списков. Этот тип форм используется в основном для отображения каких-либо списков элементов информации, хранящейся в конфигурации.
Например, формы списков вы можете увидеть при открытии разнообразных справочников, журналов документов, списков записей в регистрах конфигурации и т. п.
Общее у всех форм такого типа — наличие одного или нескольких списков элементов конфигурации в качестве основного объекта отображения, с которым вам предлагается работать.
Например, вызывая справочник «Контрагенты», мы получаем на экране как раз такую форму-список (рис. 1).
Как правило, кроме собственно списка, у форм такого типа присутствует командная панель с кнопками-действиями, которые выполняются над элементами данного списка.
При наведении (не нажатии!) мышью на одно из действий, вы получите краткое пояснения этого действия и «горячую» клавишу (или комбинацию клавиш) для его выполнения, если имеется такая возможность.
Кроме этого, в командной панели, как правило, присутствует элемент «Действия», где собраны все действия, которые можно выполнять над элементами данного списка.
При отметке какого-либо элемента в списке, можно нажать на нем правой кнопкой мыши. В результате вы получите список разрешенных действий для данного элемента.
Некоторые действия одинаковы для всех списков, некоторые созданы разработчиками конфигурации и могут отсутствовать в других формах списков.
Для часто используемых в форме списков действий назначены комбинации клавиш (подробнее об использовании «горячих» клавиш читайте в номере 10 (октябрь) «БУХ.1С» за 2007 год, стр. 8), использование которых повысит эффективность работы в программе:
Действие
Сочетание клавиш
Активация действия в командной панели
Добавить новый элемент
Пометка на удаление
Добавить группу (для справочников с иерархией)
Переместить элемент в другую группу (для справочников с иерархией)
Быстрый вход внутрь группы (для справочников с иерархией)
Выход на уровень выше
Добавить новый элемент копированием текущего
Изменить текущий элемент
В формах списков могут встречаться простые списки и деревья. Деревья — это иерархически подчиненные по определенному правилу элементы. На рис. 1 слева на форме видим как раз пример такого дерева — иерархический список вложенных друг в друга групп контрагентов.
В некоторых списках имеется возможность множественного выделения выбранных элементов с целью их групповой обработки. Для того, чтобы выделить несколько элементов (если это разрешено в списке), достаточно нажать клавишу Shift и прощелкать мышью необходимые элементы.
Для этого можно использовать клавиши со стрелками (вверх, вниз, вправо, влево), включая привычное всем нам страничное листание (PageUp/PageDown) в сочетании с этими клавишами. Работают также общепринятые «горячие» клавиши:
Действие
Сочетание клавиш
Выделить все от текущей позиции до начала списка
Выделить все от текущей позиции до конца списка
Выделить все элементы
Копирование текстового представления текущей ячейки в списке элементов
Форма элемента
Форма элемента — еще один распространенный тип представления информации, используемые в конфигурациях, созданных на платформе «1С:Предприятие 8.1».
Форма элемента, по сути, — это отображение какого-либо одного логического объекта конфигурации так, чтобы можно было просмотреть и, часто, отредактировать всю необходимую информацию о нем. Примеров форм элементов предостаточно.Рассмотрим форму элемента справочника «Контрагенты» — «Свет (Чертаново)» (см. рис. 2). (Открытие формы элемента из формы списка можно произвести двойным кликом мыши, а можно нажатием клавиши Enter).
Как правило, на форме элемента располагается вся необходимая информация о текущем объекте конфигурации, в нашем примере — о контрагенте. Причем, часто именно в форме элемента мы можем править текущие данные и именно форма элемента используется для ввода информации о новом объекте.
Чтобы не перегружать наше восприятие, информационное наполнение формы распределяется в ней по нескольким закладкам.
Закладки группируют по видам представляемой информации — в нашем примере это общая информация, адреса, контакты и информация по договорам и счетам.
Для форм элементов характерно наличие командных панелей сверху и/или снизу открываемого окна. Это командные панели формы с действиями, которые относятся к открытому объекту конфигурации целиком.
Как правило, сверху расположены разнообразные возможные действия над открытым объектом (включая уже знакомый нам раздел «Действия»), а снизу — основные варианты обработки действий пользователя с данными формы (например, «ОК» — сохранить и закрыть; «Записать» — сохранить правки в информационной базе, не закрывая окна формы; «Закрыть» — закрытие окна формы).
Обычно одна из команд назначена «кнопкой по умолчанию». Она активируется комбинацией клавиш Ctrl+Enter. Такая кнопка выделяется жирным (в нашем примере, это кнопка «ОК»).
Кроме этого, как правило, доступно еще одно действие по умолчанию — Ctrl+S, которое аналогично нажатию на «Записать».
Кроме командных панелей формы могут встречаться вспомогательные командные панели — на них располагаются действия, относящиеся к какому-либо информационному элементу открытого объекта конфигурации.
Посмотрим на рис. 3 — яркими примерами таких вспомогательных панелей являются панели, расположенные над списком банковских счетов (свои варианты действий, относящиеся только к банковским счетам) и над списком договоров контрагента (свои варианты — только для договоров).
Как правило, на форме элемента четко можно определить разницу между командными панелями формы и вспомогательными командными панелями.
Комбинация Alt+F10 работает и здесь, она активирует ту командную панель, с элементами которой пользователь работает в данный момент времени.
Полезно знать, что практически все действия на форме элемента можно выполнять без использования мыши.
Клавиатурное управление, как правило, значительно ускоряет процесс работы с данными. Например, нажатие на клавишу Enter или Tab, позволяет «перескакивать» с одного элемента формы на другой (следующий за ним). Нажатие Shift+Tab позволяет «скакать» по элементам в обратном направлении. Если вы находитесь в каком-либо поле ввода (например, на рис. 2 в группе контрагентов), достаточно написать первые буквы нужного вам элемента и нажать Tab и программа автоматически подставит нужный элемент в поле ввода (если он уникален в системе), либо предоставит автоматический список для уточнения вашего варианта.
Как правило, в быстром подборе таким способом для справочников можно использовать не только наименование элемента, но и его код, а для документов — номер. В форме элемента также доступны «горячие» клавиши:
Действие
Сочетание клавиш
Открыть форму выбора нужного элемента
Открыть форму элемента уже выбранного объекта в поле ввода
Очистить поле ввода
Быстрое переключение между закладками на форме, если они есть
Ctrl+PageUp и Ctrl+PageDown
Переключение активного элемента типа «Флажок»
Отказаться от внесенных изменений в текстовых элементах формы
Вернуть отмененное действие
Закрытие практически любой формы
Закрытие/открытие окна служебных сообщений (того, которое может появляться внизу)
При вводе новых объектов конфигурации при помощи форм элементов, обязательные для заполнения поля подчеркнуты красным. Например, для документа «Реализация товаров и услуг: Продажа, комиссия» такими полями являются поле «Контрагент» и поле «Договор» (рис. 4).
Выделять текстовые блоки можно мышью, а можно курсорами с нажатой клавишей Shift. Это бывает полезно для операций с буфером обмена.
Кстати, практически для всех элементов вы можете использовать копирование в буфер. Достаточно активировать нужный элемент и нажать Ctrl+C — в буфер скопируется текстовое представление элемента, если такое для него возможно.
Форма выбора
Кроме вышеописанных форм, часто применяется еще один тип — форма выбора. Как видно из названия, предназначена она в первую очередь для помощи пользователю в выборе какого-то объекта конфигурации (например, элемента справочника, документа и т. п.). Часто форму выбора вы можете видеть при заполнении данными нового объекта конфигурации (документа, элемента справочника, записи в регистре, проводка в плане счетов и т. п.). Например, на рис. 4 при выборе контрагента, мы получаем форму выбора, содержащую список контрагентов. Обратите внимание на действие «Выбрать», расположенное в командной панели формы «Контрагенты». Такое же действие вы сможете увидеть, нажав на нужный вам элемент в списке этой формы правой кнопкой мыши.
Часто в качестве форм выбора могут выступать формы списка требуемых в данный момент объектов конфигурации. Но могут быть и исключения — т. е. для выбора система может предоставлять вам форму, отличную от формы списка.
Как правило, в форме выбора можно выполнять массу подобных форме списка действий. Например, завести новый элемент. О том, какие действия возможны в данном случае, вы всегда сможете узнать из наполнения командной панели формы выбора и по тому, какие горячие клавиши работают, а какие нет.
Обратите внимание на то, что результат при нажатии клавиши Enter различается в форме списка и в форме выбора — там это правка текущего элемента, а здесь — его выбор.
Форма группы
Иногда, при вводе новой группы или правке существующей в том или ином справочнике, вы можете увидеть форму группы — специально разработанную форму для ввода данных, относящихся только к этой конкретной группе. По сути, форма группы идентична по своим возможностям форме элемента. Учитывать нужно, разве что, только тот факт, что вы редактируете данные группы, а не элемент этого справочника.
Аналогично форме выбора (элемента), в конфигурации могут существовать формы выбора групп — иногда они доступны, когда разработчик конфигурации требует явного выбора только группы какого-то определенного справочника. Явных отличий (кроме заполнения данными) эти формы от «обычных» форм выбора не имеют.
Для каждого объекта конфигурации, может быть задано при разработке несколько форм: разнообразные формы элемента, выбора, вспомогательные формы. Необходимо это, в первую очередь, для облегчения ввода и обработки информации, хранящейся в этом объекте. То есть набор форм, как правило, определяется на этапе создания конфигурации и в разных конфигурациях может отличаться друг от друга даже для однотипных объектов (например, в типовых конфигурациях «Бухгалтерия предприятия» и «Управление торговлей»).
В конфигурации могут встречаться и какие-то совсем специальные формы, решающие определенные задачи, заложенные в логику конкретной конфигурации. Они могут быть не привязаны к какому-либо конкретному объекту конфигурации — это так называемые «Общие формы». Что и как они отображают, решают разработчики конфигурации, а пользователь может понять их назначение из того контекста, в котором они открываются.
В любом случае, поведение элементов, расположенных на форме, как правило, идентично с точки зрения возможностей управления ими мышью или «горячими» клавишами.
Для всех форм характерно наличие специальной кнопки «Справка» в одной из общих командных панелей. Справка в данном случае — это вызов пояснений по работе с данной конкретной формой, если таковые предусмотрены разработчиком.
Если специальных пояснений нет, то вам отобразится общая информация по работе с текущим типом формы.
Вызвать справку можно, нажав клавишу F1.
Если в форме присутствует список, у которого возможно изменение порядка расположения элементов, вы увидите соответствующие действия в командной панели к нему относящейся — перемещение строк и их сортировка (рис. 5).
Кроме этого, в таком случае всегда доступны «горячие» клавиши Ctrl+Shift+Стрелка вверх и Ctrl+Shift+Стрелка вниз.
