Использование подсистем
1.1. С помощью подсистем решаются две методические задачи:
Сформировать глобальный командный интерфейс основного окна приложения, которое дает пользователю представление о функциональности приложения в целом.
Сгруппировать объекты метаданным по функциональному признаку для удобства разработки.
В простейшем случае, получившаяся для обоих задач структура подсистем конфигурации может совпадать.
Например, видимые для пользователей разделы командного интерфейса «Закупки», «Продажи» и пр. могут использоваться одновременно и при разработке: для быстрого отбора объектов в окне метаданных Конфигуратора, при переносе объектов в другие конфигурации, для задания ограничений области поиска при глобальном поиске по конфигурации и т.д.
У таких подсистем должен быть установлен флажок Включать в командный интерфейс.
1.2. В общем случае, подсистема, логически объединяющая некоторый набор объектов метаданных, может не совпадать с одним разделом командного интерфейса приложения. Для логического объединения набора объектов метаданных по функциональному признаку рекомендуется заводить в конфигурации отдельную иерархию подсистем, не включенных в командный интерфейс. У таких «функциональных» подсистем флажок Включать в командный интерфейс должен быть снят.
справочник Номенклатура логически относится к одной «функциональной» подсистеме « Нормативно-справочная информация », но доступен в командном интерфейсе одновременно в двух разделах – «Нормативно-справочная информация» и «Маркетинг»
в раздел командного интерфейса «Настройка и администрирование » помещаются команды открытия списков объектов, логически относящихся к тем «функциональным» подсистемам конфигурации, которые предоставляют возможность настройки для администратора системы.
1.3. При этом, общие модули, регламентные задания, константы, подписки на события и прочие объекты, не имеющие визуального представления в командном интерфейсе, рекомендуется включать только в состав «функциональных» подсистем.
Подсистемы в 1С 8.3
В управляемом приложении платформы 1С 8.2, а потом и 1С 8.3 имеется возможность формировать интерфейс приложения по подсистемам. В этой статье мы разберем основные принципы создания подсистем в 1С 8.3.
Как добавить подсистему в 1С
Прежде чем мы перейдем к вопросам связи подсистем управляемого приложения 1С и интерфейса 1С, научимся добавлять подсистемы в 1С. Делается это, конечно же, в конфигураторе 1С.
В конфигураторе 1С необходимо открыть дерево конфигурации, развернуть ветку Общие, и выделить мышкой ветку Подсистемы.
После этого, необходимо вызвать правой кнопкой мышки контекстное меню и нажать на кнопку Добавить этого меню.
У вас будет создана верхняя подсистема, которая сразу же появится в ветке конфигурации Подсистемы.
В поле имя вы можете внести имя подсистемы. А в поле синоним, то название, которое будет отображаться в интерфейсе. В ветке конфигурации название подсистемы поменяется автоматически.
Все подсистема добавлена, но это только малая часть работы.
Объекты подсистемы 1С
Если мы оставим всё как есть, то у наша подсистема в интерфейсе будет пустая. Для того, чтобы она была заполнена чем-либо, необходимо в эту подсистему добавить объекты. Делается это на закладке Состав, где в верхнем окне вы флажками отмечаете те объекты, которые должны войти в вашу подсистему.
В нижнем окне отмеченные объекты появятся автоматически.
После этого, ваша подсистема появится в пользовательском режиме 1С: Предприятия, и будет заполнена навигационными ссылками (команды навигации) выбранных выше объектов, посредством которых мы сможем перейти в форму списка нужного вам объекта (если отмечены документы и справочники).
Отображение подсистем в пользовательском режиме
У подсистем имеется свойство, которое отвечает за их отображение в командном интерфейсе 1С:Предприятия. Это свойство называется «Включать в командный интерфейс» (расположено на закладке Основные), и если выключить это свойство, то эта подсистема не будет отображаться в командном 1С:Предприятии. По сути, это свойство отвечает за видимость подсистемы в пользовательском режиме 1С.
Если мы выключим это свойство у какой-то подсистемы, то при наличии других подсистем, мы отключенную подсистему в командном интерфейсе не увидим (я сделал «за кадром» ещё одну подсистему НСИ). Именно отключение этого свойства, как правило, бывает причиной ошибки «подсистема не отображается в 1С».
Иконки подсистем 1С
Обычно подсистемы в 1С отображаются в виде стандартной иконки своеобразного круга, но разработчик может самостоятельно привязывать нужные иконки к подсистемам. Для этого сначала необходимо добавить стандартную общую картинку. Чтобы сделать это, нужно выделить ветку Общие картинки ветки общие, вызвать контекстное меню и выполнить команду «Добавить».
После этого, откроется окно общей картинки, где нужно ввести название, синоним, и, нажав на кнопку «Выбрать из файла», выбрать нужную картинку, которая хранится на Вашем компьютере
Если всё хорошо, то выбранная картинка отобразится в окошке формы.
После этого, вам необходимо открыть подсистему, картинку которой вы хотите добавить. На форме конструктора подсистемы нас интересует свойство Картинка (закладка Основные).
У этого свойства нажимаем на кнопку «…», откроется окно выбора картинок, где мы выберем ранее нами добавленную картинку, которая расположена в закладке «Из конфигурации».
После этих действий, нужная название общей картинки появится в свойстве Картинка подсистемы.
И также в пользовательском режиме.
Настройка подсистемы 1С
Уже сформированную подсистему 1С можно настроить так, чтобы она наиболее оптимально отображалась конечному пользователю.
Делается это в командном интерфейсе подсистемы. Для того, чтобы туда попасть, необходимо нажать на кнопку «Командный интерфейс» конструктора подсистемы (на закладке Основные).
Откроется командный интерфейс подсистемы, который вы можете изменять на свое усмотрение.
Например, мы можем «перетащить» документ в Важное, и отключить один справочник (снять флаг Видимость этого объекта). А также добавить команду на создание документа.
После нажатия кнопки ОК и обновления базы, командный интерфейс меню подсистемы изменится.
Таким образом разработчик может настраивать интерфейс 1С: Предприятия, так, как он считает, наиболее оптимально для пользователя.
Подчиненная подсистема 1С
По мимо подсистем верхнего уровня можно создавать подчиненные им подсистемы. Для создания подчиненной подсистемы, необходимо выделить нужную подсистему верхнего уровня, вызвать контекстное меню, в открывшемся меню развернуть подменю Добавить, в котором нужно выполнить команду Подчиненная подсистема.
Откроется знакомый конструктор подсистемы, где нужно ввести название и синоним этой подчиненной подсистемы. Сразу же новая подсистема отобразится в иерархии подсистем, как объект подчиненный верхней подсистеме (которая была выделена при добавление подчиненной).
Также, как добавляли объекты в подсистему верхнего уровня, включим нужные объекты в новую подчиненную подсистему.
Если мы сейчас сохраним конфигурацию, и обновим интерфейс, то внешний вид меню подсистемы поменяется – добавится новая группа.
Другие статьи по вопросам конфигурирования
Подробно вопросы разработки подсистем рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомиться с разработкой управляемого приложения.
Книга «Основы разработки в 1С: Такси» отлично подойдёт тем, кто уже начал программировать и испытывает определенные сложности с этой темой и тем, кто уже давно программирует, но ни разу еще не работал с управляемыми формами 1С
- Без сложных технических терминов;
- Более 600 страниц практического материала;
- Каждый пример сопровождается рисунком (скриншот);
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
Промо-код на скидку в 15% — 48PVXHeYu
Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»
- Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника;
Эти книги плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Лекция: Подсистемы
Подсистемы – это основные элементы для построения интерфейса «1С:Предприятия». Поэтому первое, с чего следует начинать разработку конфигурации, – это проектирование состава подсистем.
При этом перед разработчиком стоит важная и ответственная задача – тщательно продумать состав подсистем и затем аккуратно и осмысленно привязать к подсистемам те объекты конфигурации, которые он будет создавать.
В простых прикладных решениях можно не использовать подсистемы, но мы рассмотрим общий случай, когда подсистемы используются.
Объекты конфигурации Подсистема позволяют выделить в конфигурации функциональные части, на которые логически разбивается создаваемое прикладное решение.
Подсистемы верхнего уровня являются основными элементами интерфейса, так как образуют разделы прикладного решения.
Каждый объект конфигурации может быть включен в одну или сразу несколько подсистем, в составе которых он будет отображаться. Забегая вперед, скажем, что с помощью подсистем, используя видимость по ролям, можно предоставить пользователю удобный и функциональный интерфейс, не содержащий лишних элементов. Например, кладовщик должен иметь возможность принять и выдать товар, и ему совсем не нужно видеть все, что относится к области бухгалтерского учета и оказанию услуг
Давайте создадим в нашей конфигурации пять новых объектов конфигурации Подсистема, которые будут иметь имена:
- Бухгалтерия,
- РасчетЗарплаты,
- УчетМатериалов,
- ОказаниеУслуг,
- Предприятие.
Чтобы создать новые подсистемы, раскроем ветвь Общие в дереве объектов конфигурации, нажав на + слева от нее. Затем выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем пункт Добавить или нажмем соответствующую кнопку в командной панели окна конфигурации.
После этого система откроет окно редактирования объекта конфигурации. Оно предназначено специально для сложных объектов конфигурации и позволяет путем выполнения последовательных действий быстро создавать такие объекты.
Зададим имя подсистемы – Бухгалтерия. На основании имени платформа автоматически создаст синоним – Бухгалтерия.
Имя и синоним объекта конфигурации
Имя является основным свойством любого объекта конфигурации. При создании нового объекта система автоматически присваивает ему некоторое имя.
Можно использовать имя, присвоенное системой, но лучше заменить его своим, понятным именем. Имя можно задавать любое, главное чтобы оно начиналось с буквы и не содержало некоторых специальных символов (например, пробел). Для удобства чтения конфигурации принято составлять интуитивно понятные имена и, если они состоят из нескольких слов, удалять пробелы между словами и каждое слово начинать с большой буквы. Имя объекта является уникальным и служит для обращения к свойствам и методам объекта на встроенном языке.
Свойство Синоним также есть у любого объекта конфигурации. Оно предназначено для хранения альтернативного наименования объекта конфигурации, которое будет использовано в элементах интерфейса нашей программы, то есть будет показано пользователю. Поэтому на синоним практически нет никаких ограничений, и его можно задавать в привычном для человека виде.
Картинка подсистемы
В целях усовершенствования интерфейса приложения мы можем также задать картинку для отображения подсистемы.
Нажмем кнопку выбора в поле Картинка. В окне выбора картинки добавим картинку в список на закладке Из конфигурации. Для этого нажмем кнопку Добавить
Система создаст объект конфигурации Общая картинка и откроет окно редактирования его свойств. Дадим картинке имя Бухгалтерия. Чтобы задать саму картинку, нажмем кнопку Выбрать из файла. Далее укажем нужный файл с изображением.
Выбранная нами картинка появится в окне редактирования общей картинки.
Закроем окно редактирования объекта конфигурации Общая картинка и вернемся в окно выбора картинки для подсистемы Бухгалтерия. Мы видим, что в списке картинок на закладке Из конфигурации появилась добавленная нами картинка. Нажмем ОК.
После наших действий в дереве объектов конфигурации в ветке Общие картинки появилась картинка Бухгалтерия, которую мы можем редактировать и использовать в дальнейшем в нашей конфигурации.
Мы видим, что выбранная нами одноименная картинка установилась в качестве картинки для подсистемы.
Таким образом, в интерфейсе «1С:Предприятия» в качестве названия раздела будет показан синоним подсистемы, и над ним будет выводиться указанная картинка. Отсутствие картинки у подсистемы не препятствует отображению раздела в интерфейсе. В этом случае рядом с названием раздела отображается стандартная картинка по умолчанию.
Снова выделим ветвь Подсистемы, нажмем кнопку Добавить в дереве объектов конфигурации и создадим подсистемы с именами УчетМатериалов и ОказаниеУслуг. Установим для них в качестве картинок соответственно общие картинки Материалы и Услуги, добавив их из файлов Материалы и Услуги так же, как мы это делали для подсистемы Бухгалтерия.
Теперь воспользуемся другим способом для добавления подсистем. Вызовем контекстное меню одной из созданных подсистем. Выберем в нем пункт Добавить. Он разбивается на два подпункта. Выбор подпункта Подсистема позволяет добавить подсистему того же уровня иерархии, что и выделенная. Выбор подпункта Подчиненная Подсистема позволяет добавить подсистему, подчиненную выделенной.
Поскольку в нашей конфигурации не планируется сложной многоуровневой структуры, выберем первый вариант и добавим подсистему РасчетЗарплаты. Установим для нее в качестве картинки общую картинку Зарплата, добавив ее из файла Зарплата. В заключение добавим подсистему Предприятие с соответствующей картинкой для доступа к административным и сервисным функциям.
Запустим «1С:Предприятие» в режиме отладки и увидим результат наших изменений. Вид разрабатываемого нами приложения изменился.
Сразу под заголовком приложения с названием нашей конфигурации и областью системных команд располагается панель разделов приложения, где и отражены созданные нами подсистемы. Причем все разделы выводятся с выбранными в их свойствах картинками. Разделы представлены в форме гиперссылок, нажав на которые пользователь может открыть связанные с ними документы, справочники, отчеты и т.п. Сейчас состав разделов пуст, так как мы еще не создали наполняющих их объектов конфигурации.
Порядок разделов
Однако порядок расположения подсистем нас не совсем устраивает. Изменим его.
Закроем приложение и вернемся в конфигуратор. Выделим корень дерева объектов конфигурации, нажатием правой кнопки мыши вызовем контекстное меню и выберем пункт Открыть командный интерфейс конфигурации.
В открывшемся окне Командный интерфейс вы увидите список созданных вами подсистем (разделов приложения). С помощью кнопок Вверх, Вниз изменим порядок расположения разделов в этом списке.
Расположим сначала подсистемы, отражающие производственную деятельность нашей фирмы: Учет материалов и Оказание услуг, затем бухгалтерскую деятельность и расчет зарплаты сотрудников: Бухгалтерия и Расчет зарплаты, а затем подсистему Предприятие.
Запустим «1С:Предприятие» в режиме отладки и увидим, что порядок расположения подсистем в панели разделов приложения изменился так, как мы его задали.
Настройку порядка следования подсистем в панели разделов прикладного решения можно выполнить также в режиме 1С:Предприятие по команде главного меню Вид > Настройка панели разделов… При этом необходимо иметь в виду, что настройка панели разделов в конфигураторе будет актуальна для всех пользователей прикладного решения. В то время как настройка панели разделов в режиме 1С:Предприятие будет доступна только тому пользователю, который ее выполнил.
Теория: окно редактирования объекта конфигурации и палитра свойств
На первый взгляд окно редактирования объекта и палитра свойств дублируют друг друга. В самом деле в палитре свойств отображены все свойства объекта конфигурации. Зачем было создавать еще и окно редактирования объекта? И если существует окно редактирования объекта, то зачем тогда палитра свойств, которая содержит все то же самое, только в другом виде?
Окно редактирования объекта конфигурации предназначено в первую очередь для быстрого создания новых объектов. Быстрое создание подразумевает ввод исчерпывающей информации об объекте. Значит, нужно очень хорошо знать структуру объекта, а на это требуется время… Выходит, быстро создать объект не получится?
Получится! Окно редактирования объекта имеет в своей основе механизм «мастеров»: разработчику в нужной последовательности предлагается ввести необходимые данные. Последовательность ввода данных разработана таким образом, чтобы предыдущие данные могли служить основой для ввода последующих. Движение управляется кнопками Далее и Назад. На каждом шаге предлагается ввести группу логически связанных между собой данных.
Но, предположим, вы уже освоились со структурой объектов, или вам просто нужно изменить несколько свойств объекта. Чтобы при этом опять не «прокручивать» все с самого начала, окно редактирования объекта содержит закладки, позволяющие вам перейти непосредственно к тому шагу, на котором вводятся интересующие вас данные. Таким образом, окно редактирования объекта помогает быстро создать незнакомый объект конфигурации и в то же время обеспечивает удобный доступ к нужным свойствам при редактировании существующих объектов. Что же касается палитры свойств, то она предоставляет одну абсолютно незаменимую возможность. Дело в том, что она не привязана по своей структуре к какому-то конкретному виду объектов конфигурации. Ее содержимое меняется в зависимости от того, какой объект является текущим. За счет этого она может запоминать, какое свойство объекта в ней выбрано, и при переходе в дереве к другому объекту будет подсвечивать у себя все то же свойство, но уже другого объекта.
Такая способность палитры свойств абсолютно незаменима, когда, например, среди трех десятков справочников конфигурации вам нужно быстро найти подчиненные какому-нибудь другому. В этом случае вы выбираете мышью в палитре свойств свойство Владелец любого справочника, затем переходите в дерево объектов конфигурации и просто пробегаете его при помощи стрелок Вверх или Вниз.
Внимание!
После успешного завершения каждого занятия рекомендуется сохранять конфигурацию, выполнив команду главного меню Администрирование > Выгрузить информационную базу… Это полезно на случай, если вы запутаетесь в своих действиях и захотите вернуться к работающему варианту. Это можно сделать, выполнив команду Администрирование > Загрузить информационную базу…
Подсистемы
Подсистемы — это общие объекты конфигурации. На их основе платформа формирует командный интерфейс прикладного решения и визуально разделяет всю функциональность программы на крупные и мелкие блоки.
Подсистемы могут иметь иерархическую структуру, т. е. одна подсистема может включать в себя несколько других подсистем:
Каждый объект конфигурации можно включить в состав одной или нескольких подсистем. Таким образом, в терминах подсистем можно описать всю структуру прикладного решения:
Разделы прикладного решения, по которым пользователь осуществляет основную навигацию, однозначно соответствуют первому уровню подсистем конфигурации:
Редакторы команд
Для редактирования команд, отображаемых в тех или иных разделах интерфейса, платформа содержит целый набор различных редакторов:
- Редактор командного интерфейса конфигурации
Этот редактор предназначен для настройки панели разделов. Он позволяет задать состав, порядок разделов и их видимость в разрезе ролей. Подробнее.. - Редактор командного интерфейса основного раздела
Этот редактор предназначен для настройки команд основного раздела. Для панели функций текущего раздела он позволяет задать состав команд, их порядок и видимость команд в разрезе ролей. Подробнее… - Редактор командного интерфейса
Этот редактор предназначен для настройки команд какой-либо подсистемы. Он позволяет задать состав команд, их порядок и их видимость в разрезе ролей для панели навигации и панели действий выбранной подсистемы. Подробнее… - Редактор «Все подсистемы»
Этот редактор позволяет работать одновременно со всеми подсистемами конфигурации. Подробнее…