1с управляемый интерфейс работа с формами

Базовый принцип программирования управляемой формы в 1С

Цель статьи – показать применение шаблонов Remote Facade и Data Transfer Object к структуризации кода, управляемой формы в среде 1С 8.2.

Введение

Начнем с небольшого описания понятия «управляемая форма» и связанных концепций платформы 1С. Знатоки платформы могут пропустить этот раздел.

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

Обозначим проблему

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

Рассмотрим структуру кода (модуль формы) в нескольких формах одной типовой конфигурации и попробуем найти закономерности.
Под структурой будем понимать секции кода (чаще всего это блоки комментариев) выделенные разработчиком для группировки методов и директивы компиляции этих методов.
Пример 1:

Зачем нужна структура кода?
Почему существующий стандарт разработки от фирмы 1С не помогает?

Шаблоны проектирования или мудрость поколений

Примеры шаблонов в платформе 1С

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

Сравните с принятым в v8.1 стилем.

Структурируем код

Источник

Редактор формы

Редактор формы используется для создания и редактирования форм объектов прикладного решения. Формы объектов используются системой для визуального отображения данных в процессе работы пользователя.

000000085 1

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

В отдельном окне, в нижней части редактора, отображается внешний вид формы в режиме 1С:Предприятие.

Редактирование элементов

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

Страницы, закладки

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

Редактор позволяет добавить в форму несколько элементов ГруппаСтраницы, каждая из которых может содержать несколько элементов ГруппаСтраница.

Например, форма документа может содержать один элемент ГруппаСтраницы, которому подчинены несколько элементов ГруппаСтраница с заголовками Изображение, Характеристики и Описание:

000000085 2

Тогда в режиме 1С:Предприятие она будет выглядеть следующим образом:

000000085 3

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

000000085 4

Например, закладки можно расположить снизу:

000000085 5

Элементы

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

000000085 6

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

000000085 7

Располагая элементы выше/ниже в дереве, подчиняя их другим элементам и задавая свойства элементов-групп можно задавать порядок, в котором пользователь будет обходить элементы управления формы при вводе и редактировании данных. В режиме 1С:Предприятие элементы формы будут обходиться в порядке их иерархии и в соответствии с тем, какой тип группировки выбран для групп: вертикальная или горизонтальная.

Разделители

Разделители являются специальными элементами, с помощью которых возможно перераспределение пространства формы без изменения ее размеров. Платформа в режиме 1С:Предприятие самостоятельно добавляет эти элементы в форму. Разделитель обладает способностью «захватываться» мышью и перемещаться внутри формы в ее пределах с учетом возможности расположения других элементов и ориентации разделителя:

000000085 8

При перемещении разделителя, все элементы, связанные с разделителем, будут изменять свои размеры или перемещаться.

Модуль формы

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

Реквизиты формы

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

000000085 9

Если у формы существует основной реквизит, определяющий поведение формы, отличное от типового, — он выделяется жирным шрифтом.

Командный интерфейс формы

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

000000085 10

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

Команды формы

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

000000085 11

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

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

Параметры формы

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

Источник

Управляемый интерфейс «1С:Предприятие 8» (бесплатная статья по Программированию в 1С)
из цикла статей «Первые шаги в разработке на 1С»

О чем эта статья

Статья продолжает цикл статей «Первые шаги в разработке на 1С».

Начиная с версии 8.2 в платформе 1С, параллельно к классическому обычному многооконному интерфесу, был разработан совершенно новый интерфейс, который получил название Управляемый интерфейс. Именно он позволил организовать работу с информационной базой в веб-браузере.

В данной статье представлено знакомство с управляемым интерфейсом со стороны пользователя.

Применимость

В этой статье рассматривается Управляемый интерфейс конфигурации, разработанной на платформе 1C 8.3.4.482. Следует отметить, что сегодня Управляемый интерфейс, разработанный на платформе «1С:Предприятие» редакции 8.2, считается устаревшим и рекомендуется использовать его следующую версию, которая получила название «Такси». Но старый вариант управляемого интерфейса никуда не делся, и чтобы в дальнейшем не возникло путаницы с терминологией, платформа редакции 8.3 стала классифицировать интерфейсы по вариантам: вариант «Версия 8.2» (старый) и вариант «Такси» (новый).

Интерфейс «Такси» является более удобным и эргономичным, он гораздо проще в освоении начинающим пользователям. С точки зрения разработки прикладных решений управляемый интерфейс «Версии 8.2» и «Такси» практически не отличаются друг от друга. Главное отличие наблюдается в пользовательском режиме, но и оно не столь кардинально, как может показаться на первый взгляд. Поэтому рекомендуем ознакомиться с этой информацией.

Управляемый интерфейс

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

image0014

Создание новых элементов справочников и документов рекомендуется без использования списков (из Панели действий).

Это связано с тем, что при работе на тонких каналах связи для открытия списка потребуется какое-то дополнительное время.

Для оптимизации передаваемых данных любое редактирование объекта (элемента справочника) также осуществляется в отдельном диалоговом окне.

При создании новых объектов появляется соответствующее оповещение (Область оповещения – в правом нижнем углу экрана).

Внизу имеется Панель истории, в которой отображаются последние созданные элементы. При необходимости, с помощью мышки можно вернуться к какому-либо из этих элементов и внести изменения.

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

image0023

Меню Все функции отображается, если установлена специальная галочка Отображать команду все функции в окне Параметры.

image0034

В этом же окне можно изменить вид интерфейса, выбрав внешний вид Формы в закладках или Формы в отдельных окнах.

Окно Параметры вызывается из главного меню. Для этого следует последовательно выбрать пункт Сервис, а потом Параметры.

В меню Все функции можно выбрать любой объект, к которому у пользователя есть право просмотра, а также есть доступ к набору стандартных функций.

image0042

Хотя перечень объектов, которые можно отобразить на рабочем столе, определяется в конфигураторе, существуют некоторые возможности по индивидуализации Рабочего стола в пользовательском режиме:

Переключитесь на Рабочий стол и в контекстном меню панели разделов выберите пункт Настройка рабочего стола.

image0053

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

Настройки Рабочего стола хранятся индивидуально для каждого пользователя.

image0063

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

В окне настройки Панели разделов можно изменять порядок следования разделов, включать и отключать видимость этих разделов (кнопками добавления и удаления) и управлять режимом отображения (Картинка, Текст или Картинка и текст).

image0073

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

image0081

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

image0092

Ранее мы уже говорили о существовании Области оповещения (при создании новых объектов) и Панели истории (размеры которой ограниченны).

Кроме того, историю действий с объектами можно посмотреть в специальном окне, которое вызывается нажатием одноименной кнопки слева внизу.

История сохраняется также между сеансами, но количество хранимых записей не более 200. Новые записи вытесняют старые.

image0102

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

image0113

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

image0121

Данная навигация работает только по формам, которые открывались в рабочей области.

image0132

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

Если это была ссылка на документ, то пользователь может, например, внести в него какие-то изменения. В форме элемента (например, документа) существует специальная кнопка.

image0141

При нажатии на эту кнопку появляется ссылка.

image0152

Другой пользователь, получивший ссылку, нажимает на кнопку Перейти по ссылке.

image0132

В появившемся окне “Переход по ссылке” вставляет полученную ссылку и нажимает кнопку Перейти. После чего открывается нужный документ.

image0171

Существует еще такой сервис, как Область избранного, в которой могут располагаться любые формы и любые ссылки.

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

image0182

Откроется меню, в котором нужно выбрать пункт Добавить в избранное.

image0191

Удалить элемент из Области избранного можно удалив его из окна “Настройка избранного”.

image0201

Как открыть данное окно показано на рисунке.

image0211

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

Line Breaker8

PDF-версия статьи для участников группы ВКонтакте

Если Вы еще не вступили в группу – сделайте это сейчас и в блоке ниже (на этой странице) появятся ссылка на скачивание материалов.

pdf download

Статья в PDF-формате

Вы можете скачать эту статью в формате PDF по следующей ссылке: Ссылка доступна для зарегистрированных пользователей)

Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)
Ссылка доступна для зарегистрированных пользователей)

Источник

Управляемые формы 1С 8.3

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

Отличительные черты управляемых форм

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

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

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

Изменения претерпел тип конструктора форм. Вы с легкостью сможете его увидеть. Для этого требуется открыть одну из форм объекта конфигурации. При открытии показывается окно, разделенное на такие отделы, как:

upr formi1

Принципы разработки управляемых форм

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

Разобраться, где осуществляется процедура, получится по названию директивы, которая прописана перед каждой процедурой и опцией в модуле формы. Формулировка «БезКонтекста» показывает, что сведения на управляемой форме не передаются в данную процедуру на сервер. А значит, в таких процедурах нельзя писать алгоритмы, которые опираются на значения, введенные юзером. Если формулировка не указана, тогда форма будет передаваться целиком с реквизитами и у вас получится обращаться к ним.

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

Обновленные правила разработки форм приложения принесут огромную пользу, если разработчики будут ими пользоваться. Изменения к лучшему заметят все. Как программисты, так и фирмы, осуществляющие деятельность в 1С и разработчики программы. Главные последствия верного использования управляемых форм:

Источник

Командный интерфейс

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

000000282 1

Все прикладные объекты конфигурации (справочники, документы, отчеты и т. д.) привязываются разработчиком конфигурации к подсистемам. Иерархия подсистем должна отражать структуру функциональности именно так, как она будет представляться пользователю.

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

000000282 2

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

000000282 3

Управление интерфейсом

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

000000282 4

Автоматический учет ролей / прав

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

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

000000282 5

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

000000282 6

Видимость по умолчанию

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

000000282 7

Функциональные опции

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

000000282 8

Пользовательская настройка

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

4455f

Авторы: В.А. Ажеронок, А.В. Островерх, М.Г. Радченко, Е.Ю. Хрусталева

Источник

Понравилась статья? Поделить с друзьями:
Добавить комментарий
  • Как сделать успешный бизнес на ритуальных услугах
  • Выездной кейтеринг в России
  • Риски бизнеса: без чего не обойтись на пути к успеху
  • 1с управляемые формы ширина колонок табличной части
  • 1с управляемые формы фиксация слева