Мы все знаем, что у компании "1С" было много разных версий платформы 1С, нас сейчас будут интересовать одни из последних версий на момент написания этой статьи, это версии 1С 8.2 и 1С 8.3. Если Вам приходилось работать в обеих этих версиях то Вы, скорее всего, заметили различия в интерфейсах данных версий , для пользователей они отличаются только внешне. По сути, выбор обычного или управляемого приложения говорит системе, какие формы для отображения нужно запускать, обычные или управляемые , а также какой клиент приложения будет использоваться по умолчанию, толстый или тонкий. Более подробную информацию по клиентам читайте в статье «Что такое толстый и тонкий клиент в 1С, а также их различия».

Обычное приложение 1С (обычные формы, обычный интерфейс, версия 1С 8.2)

В 1С 8.2 возможна работа только с обычными формами, в режиме обычного приложения . На изображении ниже показана база в режиме работы "обычное приложение 1С" (обычные формы).

Управляемое приложение 1С (управляемые формы, управляемый интерфейс, версия 1С 8.3)

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

Чем отличаются обычное и управляемое приложение 1С?

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

И Data Transfer Object к структуризации кода, управляемой формы в среде 1С 8.2.

Введение

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

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

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

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

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

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

Рассмотрим структуру кода (модуль формы) в нескольких формах одной типовой конфигурации и попробуем найти закономерности.
Под структурой будем понимать секции кода (чаще всего это блоки комментариев) выделенные разработчиком для группировки методов и директивы компиляции этих методов.
Пример 1:
Секция обработчиков событий Метод – наклиенте Метод – насервере Метод - наклиенте Секция служебных процедур и функций Вспомогательные функции управления вводом
Пример 2:
Служебные процедуры и функции Документы оплаты Ценности Обработчики событий
Пример 3:
Служебные процедуры на сервере Служебные процедуры на клиенте Служебные процедуры на сервере без контекста Обработчики событий шапки Обработчики событий команд
Пример 4:
Процедуры общего назначения Обработчики событий формы Процедуры подсистемы «контактная информация»
По сути, структура кода отсутствует, или мягче говоря, она аналогична тому, что было в формах 8.1:

  • Неинформативные слова «Общие, Служебные, Вспомогательные».
  • Робкие попытки разделить клиентские и серверные методы.
  • Часто методы группируются по интерфейсным элементам «Работа с табличной частью Товары, Контактной информацией».
  • Произвольное расположение методов и групп кода. Например, Обработчики событий могут быть в одной форме вверху, в другой внизу, в третьей вообще не выделены и т.д.
  • И не будем забывать, что это все в рамках одной конфигурации.
  • Да бывают конфигурации, в которых слова «Общие, Служебные, Вспомогательные» всегда находятся на одних и тех же местах но…
Зачем нужна структура кода?
  • Упрощение сопровождения.
  • Упрощение обучения.
  • Фиксация общих/важных/удачных принципов.
  • …ваш вариант
Почему существующий стандарт разработки от фирмы 1С не помогает?
Посмотрим опубликованные на дисках ИТС и в различных «Пособиях разработчика…» принципы, рекомендуемые при написании управляемой формы.
  • Минимизируйте число серверных вызовов.
  • Максимум вычислений на сервере.
  • Неконтекстные вызовы сервера быстрее контекстных.
  • Программируйте с учетом клиент-серверного взаимодействия.
  • и т.п.
Это лозунги, абсолютно верные, но как их реализовать? Как минимизировать число вызовов, что значит программировать в клиент-серверном режиме?

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

Клиент-серверное взаимодействие используется в различных программных технологиях не один десяток лет. Ответ на обозначенные в предыдущем разделе вопросы давно известен и суммирован в двух базовых принципах.
  • Remote Facade (далее Интерфейс удаленного доступа)
  • Data Transfer Object (далее Объект переноса данных)
Слово Мартину Фаулеру , его описание данных принципов:
  • каждый объект, потенциально предназначенный для удаленного доступа, должен иметь интерфейс с низкой степенью детализации , что позволит максимально уменьшить количество вызовов, необходимых для выполнения определенной процедуры. … Вместо того, чтобы запрашивать счёт и все его пункты отдельно, надо считать и обновить все пункты счёта за одно обращение. Это влияет на всю структуру объекта.…Запомните: интерфейс удаленного доступа не содержит логики домена .
  • …если бы я был заботливой мамой, то обязательно сказал бы своему ребенку: «Никогда не пиши объекты переноса данных!» В большинстве случаев объекты переноса данных представляют собой не более чем раздутый набор полей … Ценность этого омерзительного монстра состоит исключительно в возможности передавать по сети несколько элементов информации за один вызов - прием, который имеет большое значение для распределенных систем.
Примеры шаблонов в платформе 1С
Прикладной программный интерфейс доступный разработчику при разработке управляемой формы, содержит много примеров данных принципов.
Например метод ОткрытьФорму(), типичный «огрубленный» интерфейс.
ПараметрыОткрытия = Новый Структура("Параметр1, Параметр2, Параметр3", Значение1, Значение2, Значение3); Форма = ОткрытьФорму(ИмяФормы, ПараметрыОткрытия);
Сравните с принятым в v8.1 стилем.
Форма = ПолучитьФорму(ИмяФормы); Форма.Параметр1 = Значение1; Форма.Параметр2 = Значение2; Форма.Открыть();

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

  • ДанныеФормыСтруктура
  • ДанныеФормыКоллекция
  • ДанныеФормыСтруктураСКоллекцией
  • ДанныеФормыДерево
Преобразование системных объектов переноса данных в прикладные типы и обратно выполняется методами:
  • ЗначениеВДанныеФормы()
  • ДанныеФормыВЗначение()
  • КопироватьДанныеФормы()
  • ЗначениеВРеквизитФормы()
  • РеквизитФормыВЗначение()
Часто явное преобразование используется при адаптации существующего решения. Методы могут ожидать (использовать особенности) входные параметры, например ТаблицаЗначений, а не ДанныеФормыКоллекция, или метод был определен в контексте прикладного объекта и стал недоступен для прямого вызова из формы.
Пример 1С v8.1:
// на клиенте в контексте формы ЗаполнитьКэшПользователей(ПодразделениеСсылка)
Пример 1С v8.2:
// на сервере в контексте формы ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); ОбработкаОбъект.ЗаполнитьКэшПользователей(ПодразделениеСсылка); ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект");

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

  • Примитивные типы (строка, число, булево)
  • Структура
  • Соответствие
  • Массив
  • Ссылки на прикладные объекты (уникальный идентификатор и текстовое представление)
Пример: метод принимает список заказов для изменения статуса и возвращает клиенту описание ошибок.
&НаСервереБезКонтекста Функция СерверИзменитьСтатусЗаказов(Заказы, НовыйСтатус) Ошибки = Новый Соответствие(); // [заказ][описание ошибки] Для Каждого Заказ Из Заказы Цикл НачатьТранзакцию(); Попытка ДокОб = Заказ.ПолучитьОбъект(); …. другие действия, возможно не только с заказом… Исключение ОтменитьТранзакцию(); Ошибки.Вставить(Заказ, ОписаниеОшибки()); КонецПопытки; КонецЦикла; Возврат Ошибки; КонецФункции // СерверИзменитьСтатусЗаказов()

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

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

//////////////////////////////////////////////////////////////////////////////// // <(c) Автор="" Дата=""/> // <Описание> // // //////////////////////////////////////////////////////////////////////////////// // ПЕРЕМЕННЫЕ МОДУЛЯ //////////////////////////////////////////////////////////////////////////////// // НА СЕРВЕРЕ //******* СОБЫТИЯ НА СЕРВЕРЕ ******* &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) //Вставить содержимое обработчика КонецПроцедуры //******* ИНТЕРФЕЙС УДАЛЕННОГО ДОСТУПА ******* //******* БИЗНЕС-ЛОГИКА НА СЕРВЕРЕ ******* //////////////////////////////////////////////////////////////////////////////// // ОБЩИЕ МЕТОДЫ КЛИЕНТА И СЕРВЕРА //////////////////////////////////////////////////////////////////////////////// // НА КЛИЕНТЕ //******* БИЗНЕС-ЛОГИКА НА КЛИЕНТЕ ******* //******* КОМАНДЫ ******* //******* СОБЫТИЯ НА КЛИЕНТЕ ******* //////////////////////////////////////////////////////////////////////////////// // ОПЕРАТОРЫ ОСНОВНОЙ ПРОГРАММЫ

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

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

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

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

В открывшемся окне устанавливаем флажок «Отображать команду «Все функции» и закрепляем результат нажатием кнопки «Применить».

Теперь в том же Главном меню (оранжевая кнопка с треугольником) мы видим раздел «Все функции»

В котором все то, что мы так привыкли видеть в Бухгалтерии 2.0 в разделе «Операции»:

2) Теперь рассмотрим возможности программы в плане настройки интерфейса ТАКСИ. Например, сейчас у меня программа выглядит вот так:

Т.е. разделы сверху. Открытых окна в закладках внизу. Давайте посмотрим как изменить расположение всех элементов рабочего окна программы. Опять открываем главное меню и находим там раздел «Настройка панелей».

Дальше все просто. Левой кнопкой мыши захватываем тот раздел, положение которого хотим изменить и перетаскиваем туда, где хотим видеть эту панель. Например, так: «Панель открытых» я подниму наверх, а «Панель разделов» перетащу в левую часть окна.

Нажимаем кнопку «Применить» или «Ок» и вуа-ля, вот как стала выглядеть наша программа:

Возможно, кому-то так работать будет удобнее.

3) Еще один совет по настройке программы. Как правило, у каждого бухгалтера есть какие-то разделы или отчеты, которыми он пользуется ежедневно. Ну, например, ОСВ или ОСВ по счету. И было бы очень удобно, если они будут всегда рядом, всегда под рукой. Этого можно добиться весьма простым приемом, поместив необходимые отчеты в раздел «Избранное». Найдем в разделе «Отчеты» оборотно-сальдовую ведомость. Наведя на нее указать мыши, мы видим рядом серую звездочку.

Кликнув по ней, мы отметим выбранный отчет как «Избранное»

Раздел «Избранное» с помощью уже известного нам редактора панелей поместим, например, внизу рабочего окна программы.

4) И еще один «секрет» по настройке интерфейса программы. В различных разделах программы есть документы, которыми некоторые не пользуются никогда. Ну, просто в силу специфики деятельности организации. Например, в разделе «Покупки» документы, связанные с ЕГАИС.

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

В появившемся окне мы видим две колонки. Слева-команды которые можно добавить на наш рабочий стол. А справа, те команды которые есть на нашем рабочем столе. Находим с правой колонке раздел ЕГАИС и нажимаем на кнопку «Удалить»

Соответственно, документы которые находятся в правой колонке можно добавить на рабочий стол по кнопке «Добавить»

5) Ну и напоследок, для тех, кто никак не хочет привыкать к интерфейсу «Такси». Можно изменить интерфейс на тот, который был в первых версиях бухгалтерии 3.0.

В разделе «Администрирование» находим пункт «Интерфейс»

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

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

Для интереса посмотрим, что же такое интерфейс, аналогичный Бухгалтерии 7.7.

Ну не знаю, не знаю. Я пожалуй вернусь к привычному для меня «Такси».

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

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

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

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



Рисунок 2.5 - Главное окно программы «1С:Бухгалтерия 8»

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

Файл – команды данного меню предназначены для работы с файлами. Эти команды знакомы пользователям Windows: к ним относятся, например, команды Новый, Открыть, Сохранить, Сохранить как, Печать, Предварительный просмотр, Выход и др.

Правка – в состав данного меню включены команды редактирования, поиска данных и замены данных. Они также знакомы пользователям Windows: Вырезать, Копировать, Вставить, Выделить все, Найти и др.

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

Банк , Касса , Покупка , Продажа , Склад , Производство , ОС , НМА , Зарплата , Кадры – эти пункты меню предназначены для ведения соответствующего участка бухгалтерского учета. В них содержится полный набор журналов, первичных документов, справочников по обрабатываемому участку учета.

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

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

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

Окна – в этом меню содержатся команды, предназначенные для управления окнами программы: Расположить подряд, Расположить горизонтально, Расположить вертикально, Закрыть все и др.

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

В программе имеется два типа панелей инструментов: плавающая панель (находится ниже главного меню) и жесткие панели инструментов (располагаются в каждом окне программы - справочниках, документах, отчетах и др.).

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

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

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

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

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

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

Таблица 2.1 - Описание стандартных действий по работе с программой

Действие Описание «Горячие» клавиши Кнопки в панели инструментов
Добавить Добавить новый документ, новую строчку в документ, новый элемент в справочник «Insert» (Ins)
Добавить группу Добавить новую группу элементов в справочнике (создание иерархических справочников) «Ctrl» +«F9»
Удалить Пометить на удаление документ, элемент в справочнике, удалить строчку в документе «Delete» (Del)
Копировать Добавить новый (документ, строчку в документе, элемент в справочнике) путем копирования уже имеющегося «F9»
Открыть элемент в списке Открыть (например, для изменения) документ в журнале, строчку в документе, элемент в справочнике «F2»
Открыть список Открыть для выбора элемента список (журнал документов, справочник) «F4» или
Обновить Обновить текущий список (в справочнике, документе, отчете и др). «Ctrl» + «Shift» + «R»
Ввести на основании Создать документ на основании другого документа -
Провести Проведение документа -
Отмена проведения Отмена проведения документа -
Результат проведения Открыть результат проведения документа: формирование проводок в регистре бухгалтерии и записей в других регистрах -
Записать Сохранить (например, измененный или новый) документ, элемент в справочнике без закрытия формы «Ctrl» + «S» или
Записать и закрыть форму (для документа с проведением) Сохранить (например, измененный или новый) документ, элемент в справочнике с закрытием формы, а для документа - и с проведением «Ctrl» + «Enter» или
Открыть справку Открыть справку о документе, справочнике и др. объектах программы F1
Интерфейс всех прикладных решений системы «1С:Предприятия 8» имеет единую концепцию, основанную на использовании стандартных элементов, предоставляемых платформой. Благодаря такому подходу пользователи, знакомые с каким-либо одним прикладным решением, могут быстро освоить работу с любыми другими прикладными решениями системы «1С:Предприятия 8». 2.6. Администрирование работы пользователей в программе «1С:Бухгалтерия 8» При работе пользователей с системой «1С:Предприятие 8» в сети важное значение имеют разделение доступа и интеграция. Каждый пользователь системы должен иметь свободный доступ к общей информации, такой, как справочники. С другой стороны, необходимо, чтобы каждый пользователь имел дело только с той информацией, которая необходима ему для работы, и никак не мог своими действиями повлиять на работу других пользователей или на работоспособность системы в целом. Конфигуратор системы «1С:Предприятие» содержит развитые средства администрирования, предназначенные для решения указанных задач. Прежде всего, в процессе создания конфигурации создается необходимое число типовых наборов прав (ролей и интерфейсов), описывающих полномочия различных категорий пользователей на доступ к информации, обрабатываемой системой (рисунок 2.6). Роли могут быть заданы в достаточно широких пределах - от возможности только просмотра ограниченного числа видов документов до полного набора прав по вводу, просмотру, корректировке и удалению любых видов данных, а также по их полям и отдельным записям (группам записей). Все составные части конфигурации тесно связаны между собой и требуют, как правило, согласованного внесения изменений (особенно это касается пользовательских прав). Так, назначение ролей может выполняться только для существующих объектов конфигурации (конкретных документов, журналов, справочников, отчетов). Добавление в структуру конфигурации нового объекта должно сопровождаться внесением соответствующих изменений в роли. Для эффективной работы пользователей в процессе настройки конфигурации задачи для каждого пользователя может быть создан индивидуальный пользовательский интерфейс. Такой интерфейс включает команды главного меню и панели инструментов, настроенные на работу пользователя с той информацией, доступ к которой разрешен его набором прав. Система учитывает назначение прав на объекты при построении пользовательского командного интерфейса. Если, например, пользователю запрещен просмотр какого-либо справочника, то команда открытия формы списка этого справочника будет удалена из командного интерфейса автоматически.
Рисунок 2.6. - Окно конфигурация с типовым набором прав (ролей и интерфейсов) В системе «1С: Предприятие 8» существует возможность создания списка пользователей, которым разрешена работа с системой. Этот список будет использоваться для авторизации пользователя при его входе в систему. Для каждого пользователя может быть установлен пароль на вход в систему. Он используется для подтверждения прав пользователей на работу в системе «1С:Предприятие 8». Список пользователей системы «1С:Предприятие 8» не является частью конфигурации задачи. Он создается отдельно в конкретной организации, в которой используется система. Вызов на экран осуществляется выбором в режиме «Конфигуратор» пункта меню Администрирование → Пользователи. Окно со списком пользователей имеет командную панель для ведения списка (создание, редактирование и удаление) и табличное поле с двумя колонками. В колонке Имя выводится список пользователей, зарегистрированных для работы с системой «1С:Предприятие». Колонка Полное имя может содержать расшифровку имени, выданного в первой колонке. Для добавления нового пользователя следует нажать на пиктограмму Добавить . В открывшемся окне Пользователи на закладке Основные указывается Имя, Полное имя, Пароль. На закладке Прочие указываются: Доступные роли, Основной интерфейс, Язык (рисунок 2.7).



Рисунок 2.7.- Создание пользователя в списке пользователей конфигурации

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

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

Для выгрузки информационной базы и создания архива используется пункт Администрирование → Выгрузить информационную базу . Для загрузки информационной базы из архива выбирается пункт Администрирование → Загрузить информационную базу .


ТЕСТОВЫЕ ВОПРОСЫ ПО ТЕМЕ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


Close