Интерфейсные механизмы 1с это

Обновлено: 04.07.2024

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

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

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

Режимы основного окна

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

  • «Рабочее место» - и скрыть все панели;
  • «Полноэкранное рабочее место» - помимо вышеописанного, разворачивает основное окно на весь монитор, скрывая в т.ч. и кнопки, управляющие окном;
  • «Киоск» - скрывается все вышеперечисленное плюс гиперссылка с именем пользователя и кнопка «О программе», что удобно для внешних пользователей.

Формы

Формы используются для вывода и изменения информации в БЛ. Пример: в справочнике «Номенклатура» могут быть введены несколько форм для различных целей - редактирование элементов, отображение списков и проч. В платформе функционируют формы, не увязанные с объектами формы, т.н. общие. Например, для документов имеются формы просмотра, выбора из списка, просмотра отдельных документов и проч., для справочников - список элементов, отображение нескольких элементов, групп, выбор элементов и т.п. Т.н. автогенерируемые формы позволяют разработчику не трудиться над созданием абсолютно всех возможных форм – разработчик просто добавляет новый объект, а система генерирует нужный формы в нужный момент работы. Управляемые формы присутствуют как на клиенте, так и на сервере, не работают с прикладными объектами, которые функционируют лишь на сервере и лишь тогда, когда запущены некоторые операции.

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

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

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

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

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

Планировщик

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

Документы

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

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

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

Диаграммы

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

Диаграмма

Схемы

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

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

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

  • «горячие» клавиши;
  • стандартные клавиши навигации
  • программа экранного доступа NVDA;
  • совместимость Microsoft UI Automation.

Внимание: этот функционал не доступен в веб-клиенте.

Общие интерфейсные механизмы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Раздел

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

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

Команды

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

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

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

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

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

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

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

Меню функций

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

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

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

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

Избранное

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

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

История

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

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

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

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

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

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

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

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

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

Главное меню

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

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

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

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

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

Меню формы

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

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

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

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

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

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

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

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

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

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

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

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

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

Привет, Хабр!
В этой статье мы начнем рассказ о том, как устроена внутри платформа «1С:Предприятие 8» и какие технологии используются при ее разработке.

image

Нативные приложения

  • STL (в частности, строки, контейнеры и алгоритмы)
  • множественное наследование, в т.ч. множественное наследование реализации
  • шаблоны
  • исключения
  • умные указатели (собственная реализация)

Компоненты

  • Разделение способствует лучшему проектированию, в частности лучшей изоляции кода
  • Из набора компонентов можно гибко собирать разные варианты поставки:
    • Например, инсталляция тонкого клиента будет содержать wbase, но не будет backend
    • а на сервере wbase, наоборот, не будет
    • оба варианта будут, конечно, содержать nuke и bsl
    • Предоставляет фабричные методы, позволяющие создать класс из другой компоненты зная только его название (без раскрытия реализации)
    • Предоставляет инфраструктуру умных указателей с подсчетом ссылок. За временем жизни SCOM-класса не нужно следить вручную
    • Позволяет узнать реализует ли объект конкретный интерфейс и автоматически привести указатель на объект к указателю на интерфейс
    • Создать объект-сервис, всегда доступный через метод get_service и т.д.

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

    Для поддержки сервисов SCOM предлагает дополнительную, достаточно сложную инфраструктуру. Центральным в ней является понятие SCOM-процесса, который служит контейнером для запущенных сервисов (т.е. выполняет роль Service Locator), а также содержит привязку к локализуемым ресурсами. SCOM процесс привязывается к потоку ОС. Благодаря этому внутри приложения можно вот так получать сервисы:

    Более, того переключая логические (SCOM) процессы привязанные к потоку, можно получить практически независимые с точки зрения информационного пространства приложения, выполняющиеся в рамках одного потока. Так устроен наш тонкий клиент, работающий с файловой базой — внутри одного процесса ОС находятся два SCOM-процесса, один связан с клиентом, а второй — с сервером. Такой подход позволяет унифицировать написания кода, который будет работать как на локальной файловой базе, так и в «настоящем» клиент-серверном варианте. Цена за такое единообразие — накладные расходы, но практика показывает, что они того стоят.

    На основе компонентной модели SCOM реализована и бизнес-логика и интерфейсная часть 1С: Предприятия.

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

    Кстати, об интерфейсах. Мы не используем стандартные контролы Windows, наши элементы управления реализованы напрямую на Windows API. Для Linux-версии сделана прослойка, работающая через библиотеку wxWidgets.
    Библиотека элементов управления не зависит от других частей «1С:Предприятия» и используется нами еще в нескольких небольших внутренних утилитах.

    За годы развития 1С:Предприятие внешний вид контролов менялся, но серьезное изменение принципов произошло только один раз, в 2009 году, с выходом версии 8.2 и появлением «управляемых форм». Помимо изменения внешнего вида, фундаментально изменился принцип компоновки формы — произошел отказ от попиксельного позиционирования элементов в пользу flow-компоновки элементов. Кроме того, в новой модели элементы управления работают не напрямую с доменными объектами, а со специальными DTO (Data Transfer Objects).
    Эти изменения позволили создать веб-клиент «1С:Предприятия», повторяющий С++ логику контролов на JavaScript. Мы стараемся поддерживать функциональную эквивалентность между тонким и веб клиентами. В том случае, когда это невозможно, например, из-за ограничений доступных из JavaScript API (например, возможности работы с файлами очень ограничены), мы часто реализуем нужную функциональность при помощи расширений браузеров, написанных на C++. На данный момент мы поддерживаем Internet Explorer и Microsoft Edge (Windows), Google Chrome(Windows), Firefox (Windows и Linux) и Safari (MacOS).

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

    image


    Интерфейс 1С на ОС Linux

    image


    Интерфейс 1С на мобильном устройстве

    image


    Интерфейс 1С на ОС Windows

    image


    Интерфейс 1С — веб-клиент

    Open source

    Заключение

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

    Как реализована мобильная платформа 1С?
    Описание внутреннего устройства веб-клиента?
    Или, может быть, Вам интересен процесс выбора фич для новых релизов, разработки и тестирования?

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

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


    Пользователь может изменять состояние окна в соответствии со своими предпочтениями и восстанавливать исходное положение окна, определенное в системе.

    Окно, находящееся в обычном состоянии может перемещаться только в пределах главного окна прикладного решения. Например, окно списка справочника Контрагенты может перемещаться только в пределах главного окна:


    Б) Пользовательские интерфейсы

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

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

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


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

    Редактор пользовательских интерфейсов


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

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

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

    Переключить интерфейс можно и программно при помощи метода ПереключитьИнтерфейс(<Имена интерфейсов>) КоллекцииЭлементовУправленияИнтерфейсами.

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


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


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

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

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


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


    При создании нового интерфейса программа создает панель "Главное меню". В окне редактора панели создаются системные и пользовательские подменю. Системные подменю отмечены подчеркиванием.

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

    Меню и панели инструментов имеют древовидную структуру. На первом уровне находятся основные подменю.

    На последующих уровнях могут располагаться элементы трех типов: Действие, Подменю и Разделитель.

    Действие непосредственно связано с выполнением каких-либо действий.

    Подменю служит для дополнительной группировки команд и подменю.

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


    Для создания нового подменю необходимо для Главного меню выбрать подменю <Новая>, для панели инструментов - кнопку . В свойстве Тип необходимо указать тип ("Действие" - для команды, "Подменю" или "Разделитель").При выборе типа подменю "Действие" открывается окно "Выбор действия". Окно имеет 3 закладки, на которых действия разделены по действиям над объектами конфигурации, запуску процедур модуля приложения и общих модулей или стандартные действия общего назначения.

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

    На закладке "Модули" выбирается процедура, расположенная в модуле приложения или общем модуле. В список процедур включаются только те процедуры, которые являются внешними (имеют в заголовке процедуры ключевое слово "Экспорт") и не имеющие формальные параметры.

    На закладке "Общие" выбирается стандартное действие, например: сохранение и печать документа, завершение работы программы и т.д.

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

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