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

Обновлено: 05.07.2024

Способы построение богатого пользовательского интерфейса на управляемых формах 1С

Данный обзор появился в рамках стартапа «Проект Доминикана» и является своеобразным отчетом о проделанной работе перед сообществом 1С.

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

Можно ли воспользоваться другими средствами построения пользовательского интерфейса, отличного от управляемых форм 1С? Да, можно. Ниже перечислены альтернативы. Все альтернативы основаны на html, который запускается внутри Поле HTML документа. Упор сделан на технологии, интегрируемые внутрь 1С. Существуют принципиально отличные технологии, например, написание собственного клиента с доступом к 1С через веб-сервисы, но такие подходы здесь не рассматриваются.

Active X

У Active X, на мой взгляд, больше всего недостатков среди всех способов:

2. Потребность в установке дополнительных компонентов на стороне клиента, например, VC++ runtime, ATL. Можно ATL/MFC статически присоединить к библиотеке, но размер ocx/dll увеличится значительно.

3. Жесткая привязка к Windows и IE. Технология от Microsoft, поэтому на Linux работать не будет, использование веб-клиента ограничено IE.

4. Особые требования по настройке безопасности в веб-браузере. Просто так на веб-клиенте ActiveX запустить не получится.

Способ подключения к 1С WinForms-компонентов через Active X описан здесь


Для сравнения такие воронки в 1С:




ниже сравнение из 1С


Rich Internet Application

Подключение к 1С на примере Silverlight подробно описано в статье




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

HTML + JS

Стандартный метод (HTML) для типовых конфигураций 1С. Хорош, когда требуется разместить простейшие html-элементы управления (кнопки, надписи). Если проект усложняется, форматирование становится сложно управляемым из-за противоречия между современными браузерами в веб-клиенте 1С и древним IE6/7 в тонком клиенте. Как следствие появляются разные нехорошие эффекты.


Так получилось в тонком клиенте:



Так получилось в тонком клиенте


Выводы

Основные сравнительные характеристики выведены в таблицу. Победители по каждой обозначены цветом. Цвет показывает, что победителями стали HTML+JS (что ожидаемо по типовым конфигурациям) и RIA.

* На сложных проектах, когда идет взаимный обмен данными между 1С и интерфейсом использование на Linux затруднительно. В большинстве подходов по интеграции используется Windows-элемент управления WebBrowser Control.

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

Все способы позволяют встроить на управляемую форму «неродные» элементы управления. Ни один вариант не позволит встроить в «неродной» элемент управления элемент управления 1С или управляемую форму 1С. Соответственно, интерфейс нужно планировать без вложенностей, недопустимо, когда, например, в Silverlight-плагин вложена таблица 1С.

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

Обычный интерфейс

Обычный интерфейс пользователям и разработчикам 1С хорошо знаком, он существует со времени выхода платформы “1С:Предприятие 8.0”. На данный момент (март 2012) обычное приложение используется в следующих типовых конфигурациях:

1. “1С:Управление производственным предприятием 8”, редакция 1.3
2. “1С:Управление торговлей 8”, редакция 10.3
3. “1С:Бухгалтерия 8”, редакция 2.0
4. “1С:Зарплата и Управление персоналом 8”, редакция 2.5

Основные особенности обычного интерфейса это:
1. Наличие главного меню.
2. Неизменность главного меню для всех пользователей независимо от их прав доступа и каких-либо настроек.
3. Для разных пользователей можно создавать разные интерфейсы.

Обычный_интерфейс_1С

Обычный интерфейс «Бухгалтерия предприятия, редакция 2.0»

Как запустить обычный интерфейс если по умолчанию запускается тонкий клиент? Смотри в: Запуск обычного приложения в УТ 11

Обычная форма

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

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

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

Управляемый интерфейс (синоним командный интерфейс) — состоит из команд и окон, является динамическим, т.е. доступность тех или иных команд зависит от прав пользователей, настроек, сделанных в конфигурации и других параметров.

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

Управляемый_интерфейс_командный_интерфейс_1С

Управляемый интерфейс «Управление торговлей, редакция 11.0»

Главное преимущество управляемого интерфейса – возможность работы в веб-клиенте (веб-браузере). Нет необходимости ставить платформу 1С на компьютер. Для пользователей на операционной системе Lin­ux, для доступа к информационной базе 1С используется веб-браузер Mozil­la Firefox.

Управляемая форма

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

В платформе 8.2 основной интерфейс управляемый работает на управляемых формах, но платформа 8.2 пот поддерживает и обычный интерфейс с обычными формами.

Сочетания клавиш в Управляемом интерфейсе “1С:Предприятия 8.2”.

Пожалуйста оставляйте комментарий мне важно Ваше мнение.

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

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

Прочитав статью, вы узнаете:

  • Какую роль в формировании структуры меню играет подсистема?
  • Как сформировать разделы меню 1-го и 2-го уровня?
  • Как настроить состав команд, отображаемых в разделах меню?
  • Для чего нужен редактор Командного интерфейса и как с ним работать?
  • Как настроить Командный интерфейс основного раздела?

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

В статье рассматривается интерфейс «Такси» конфигурации, разработанной на платформе 1C 8.3.4.496. Информация актуальна для текущих релизов платформы.

Подсистемы. Настройка интерфейса с помощью подсистем

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

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

Классификация объектов по Подсистемам

В дальнейшем можно выстроить фильтр дерева объектов по Подсистемам.

При этом имеется возможность управления: включать для выбранных Подсистем объекты подчиненных Подсистем и родительских Подсистем или нет.

Управление Подсистемами в Конфигурации

Классификация объектов по Подсистемам создает удобство при создании Ролей.

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

Объект Роль по подсистемам

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

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

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

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

Структура подсистем

Панель разделов

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

Вложенные (подчиненные) подсистемы

Структура подсистем

Панель навигации 1С

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

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

В последнем случае объект будет отображаться дважды: и внутри вложенной Подсистемы и отдельно в Панели навигации. В большинстве случаев это не совсем правильно.

1С Конфигурация - объект в Подсистеме

Объект в панели навигации, объект внутри вложенной Подсистемы

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

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

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

Конфигурация 1С:Предприятие

Отметить, что некоторый объект конфигурации принадлежит какой-либо Подсистеме можно тремя способами.

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

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

Объекты подсистемы

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

Диалоговое окно Дополнительно

1С Конфигурация Дополнительно

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

При перемещении курсора по объектам дерева конфигурации в окне Дополнительно высвечивается соответствующая информация по подсистемам.

При создании объекта конфигурации по умолчанию Платформа 8.3 не проставляет привязку объекта ни к какой подсистеме.

Т.е. разработчик должен сам зайти на эту закладку и проставить соответствующие галочки.

Если разработчик этого не выполнит, то система определит отсутствие принадлежности к Подсистемам как ошибку.

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

Ошибки в конфигурации

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

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

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

Настройка 1С:Предприятие

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

Для Подсистем в Окне редактирования можно снять флаг Включать в командный интерфейс.

Настройка Подсистем

При этом Подсистемы не будут отображаться в командном интерфейсе. Если нет ни одной Подсистемы, которая должна быть включена в командный интерфейс, то для новых объектов Платформа 8.3 не проверяет принадлежность к какой-либо подсистеме.

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

Данный редактор можно вызвать из окна редактирования Подсистемы нажатием на кнопку Командный интерфейс (на закладке Основные).

Редактирование Подсистемы

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

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

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

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

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

Видимость по ролям может принимать три значения: либо для данной роли элемент будет невидимым (1); либо будет виден всегда, не зависимо от того, какой флаг выставлен в колонке видимости (2); либо флаг видимости по роли будет наследоваться от флага общей видимости (3).

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

Иногда бывает необходимо сразу менять командный интерфейс в нескольких Подсистемах. В платформе 1C:Предприятие 8 существует сервисный инструмент, который позволяет редактировать командный интерфейс сразу нескольких Подсистем.

Данный инструмент вызывается из контекстного меню корневого узла ветки Подсистемы.

Все подсистемы

Редактируем командный интерфейс нескольких Подсистем в 1С:Предприятие 8

В открывшемся окне можно быстро перемещаться по Подсистемам и редактировать командные интерфейсы. Кроме того, в данном окне можно редактировать состав Подсистемы. Также можно перемещать объекты в Панели навигации и Панели действий.

Кроме того, можно даже изменить подчиненность Подсистемы. Для этого есть специальная кнопка Переместить подсистему.

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

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

Корневой узел конфигурации

Командный интерфейс основного раздела Конфигурации

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

Следует иметь в виду, что при удалении Подсистем Платформа, к сожалению, не проверяет: входит ли в данную подсистему хоть один объект или не входит.

На этом завершим наше знакомство с настройкой структуры меню информационной базы. В следующей статье мы продолжим наше знакомство с Управляемым интерфейсом и рассмотрим, какие возможности предоставляет платформа «1С:Предприятие 8» для работы со списками.


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

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

Концепция пользовательского интерфейса системы 1С:Предприятие 8 ориентирована на комфортную эффективную работу и соответствует современным тенденциям.

Основное окно

При запуске системы в режиме 1С:Предприятие открывается основное окно программы.

Концепция пользовательского интерфейса

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

Концепция пользовательского интерфейса

Конструирование рабочего пространства

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

Концепция пользовательского интерфейса

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

Концепция пользовательского интерфейса

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

Концепция пользовательского интерфейса

Начальная страница

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

Концепция пользовательского интерфейса

Панель разделов

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

Концепция пользовательского интерфейса

Раздел

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

Концепция пользовательского интерфейса

Команды

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

Панель функций текущего раздела

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

Концепция пользовательского интерфейса

Главная панель

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

Концепция пользовательского интерфейса

Меню функций

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

Концепция пользовательского интерфейса

Глобальный поиск

Концепция пользовательского интерфейса

Избранное

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

Концепция пользовательского интерфейса

История

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

Концепция пользовательского интерфейса

Центр оповещений

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

Концепция пользовательского интерфейса

Текущий пользователь

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

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

Концепция пользовательского интерфейса

Главное меню

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

Концепция пользовательского интерфейса

Вспомогательные окна

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

Концепция пользовательского интерфейса

Меню формы

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

Концепция пользовательского интерфейса

Ссылки на данные

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

Концепция пользовательского интерфейса

Панель открытых

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

Концепция пользовательского интерфейса

Информационная панель

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

Концепция пользовательского интерфейса

Поддержка корпоративного стиля

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

Читайте также: