Как создать подсистему в 1с
Сегодня мы с вами изучим новый механизм, который называется "Подсистемы".
Данный механизм помогает сделать разделение функционала на подсистемы (разделы, блоки). Эти подсистемы могут включать в себя подчиненные подсистемы, то есть иерархия.
Как и в любой книге есть разделение ее на главы (части, разделы, тома), там и в платформе есть своеобразное деление.
Как и все объекты, подсистемы тоже создаются в режиме разработчика и визуальное отображение мы видим в пользовательском режиме - пользовательский интерфейс (Рисунок 1).
Перейдем к практике и к созданию такого интерфейса.
Откроем режим разработчика нашей ИБ, на дереве конфигурации раскроем ветвь "Общие" и найдем там строку "Подсистемы". Подсистемы добавляются как и другие объекты - через правую кнопку или нужно выделить и нажать на плюсик в верхней панели. Добавим следующие подсистемы: Продажи, Закупки, Управление, Прочее (Рисунок 2).
Теперь выполним команду "Сервис-1С:Предприятие" - переход в пользовательский режим и сразу же получим много оповещений (Рисунок 3).
О чем говорят эти оповещения?
Они говорят о том, что у вас есть объекты: константы, справочники и другие, которые не включены в подсистемы! Эти оповещения - это не ошибки, а предупреждения о том, что у вас в режиме пользователя ничего не отобразится. Давайте проверим. Нажмем кнопку "" и запустится пользовательский режим и выглядит он так (Рисунок 4).
Здесь мы видим все наши подсистемы, которые создали и еще одну подсистему, которую не создавали - с этим мы разберемся немного позже, а сейчас необходимо сделать так, чтобы в наших подсистемах что-то появилось!
Для этого перейдем в режим разработчика, ветвь "Общие" и откроем подсистему "Управление" (Рисунок 5). Перейдем на вкладку "Состав" и там галочками отметим то, что мы хотим видеть в этой подсистеме.
Потом перейдем в подсистему "Закупки" и сделаем тоже самое (Рисунок 6).
И для подсистемы "Продажи" выполним абсолютно те же действия (Рисунок 7).
После этого запустим пользовательский режим (видим, что предупреждений нет больше) и проверим все наши подсистемы (Рисунок 8).
Давайте теперь разберемся с тем, что мы видим после создания подсистем (Рисунок 9).
Есть подсистемы, которые мы создавали и есть подсистема "Главное", которая появилась сама. Здесь нет ничего странного, это механизм платформы. Как только вы создаете подсистемы, она понимает, что должна добавить свою стандартную подсистему (ее нельзя отключить) для вывода на нее самой важной информации по предприятию.
В дальнейшем эту главную (начальную) страницу мы научимся заполнять информацией, но пока она пуста!
В следующем уроке мы с вами научимся выставлять картинки для созданных подсистем и заполнять главную страницу (начальную страницу) необходимой и важной информацией, а так же менять порядок подсистем.
На этом статья урока подходит к концу. Попробуйте выполнить все действия, которые описаны в этом уроке. Если что-то не получается, то вы всегда сможете вернуться к предыдущим урокам и посмотреть как это делалось - ссылки внизу!
Статья входит в цикл «Первые шаги в разработке на 1С». В ней мы продолжаем знакомиться с управляемым интерфейсом «Такси» и приступаем непосредственно к его конфигурированию.
Как известно, разработка интерфейса информационной базы начинается с создания структуры его меню, ведь насколько удобным и логичным оно будет, настолько понятным пользователю будет вся система в целом.
Прочитав статью, вы узнаете:
- Какую роль в формировании структуры меню играет подсистема?
- Как сформировать разделы меню 1-го и 2-го уровня?
- Как настроить состав команд, отображаемых в разделах меню?
- Для чего нужен редактор Командного интерфейса и как с ним работать?
- Как настроить Командный интерфейс основного раздела?
Применимость
В статье рассматривается интерфейс «Такси» конфигурации, разработанной на платформе 1C 8.3.4.496. Информация актуальна для текущих релизов платформы.
Подсистемы. Настройка интерфейса с помощью подсистем
Подсистемы относят к общим объектам. Они обеспечивают возможность классификации объектов конфигурации по Подсистемам.
Для указания принадлежности объекта к подсистемам в Окне редактирования объекта существует соответствующая закладка, на которой флагами отмечается, к каким подсистемам относится объект.
В дальнейшем можно выстроить фильтр дерева объектов по Подсистемам.
При этом имеется возможность управления: включать для выбранных Подсистем объекты подчиненных Подсистем и родительских Подсистем или нет.
Классификация объектов по Подсистемам создает удобство при создании Ролей.
Для объекта Роль можно определить соответствующие права и указать, что данную Роль можно построить только по тем объектам, которые входят в выбранные Подсистемы.
Похожим образом Подсистемы используются при создании Интерфейсов. Интерфейсы нужны только в том случае, если конфигурация запускается в режиме Обычного приложения.
Классификация объектов по Подсистемам используется также при объединении конфигураций. Т.е. можно объединять объекты, отфильтрованные по Подсистемам.
Важное предназначение Подсистем состоит в том, что от них строится командный интерфейс конфигурации в режиме Управляемое приложение. Подсистемы первого уровня определяют Панель разделов.
Для существующих Подсистем можно определять вложенные (подчиненные). Данные Подсистемы будут образовывать группы Панели навигации.
Не рекомендуется создавать подсистемы с уровнем вложенности больше двух, так как в противном случае интерфейс будет сложно читаемым.
Когда мы классифицируем объект по Подсистемам, возможно включить объект только во вложенную Подсистему, возможно в Подсистему первого уровня, возможно и в ту и в другую.
В последнем случае объект будет отображаться дважды: и внутри вложенной Подсистемы и отдельно в Панели навигации. В большинстве случаев это не совсем правильно.
В принципе, Подсистемы являются не обязательным объектом. Т.е. конфигурация, разработанная на Платформе 8.3, вполне сможет работать без каких-либо Подсистем.
Но в этом случае Панели разделов вообще не будет, все будет отображаться на Рабочем столе. Очень простые конфигурации с малым набором объектов смогут работать и без Подсистем.
Но если в конфигурации достаточно много Документов, Справочников и Регистров, использование Подсистем существенно облегчает работу пользователя.
Отметить, что некоторый объект конфигурации принадлежит какой-либо Подсистеме можно тремя способами.
Во-первых, это можно сделать в Окне редактирования объекта на закладке Подсистемы. Данный вариант мы уже рассматривали.
Во-вторых, можно использовать Окно редактирования самой Подсистемы. На закладке Состав можно указать объекты, входящие в данную Подсистему.
И наконец, для объектов конфигурации через контекстное меню можно вызвать специальное диалоговое окно, которое называется Дополнительно.
Данное окно также позволяет для объекта отмечать принадлежность к Подсистемам. Это окно используется в том случае, если мы хотим сразу поработать с несколькими объектами.
При перемещении курсора по объектам дерева конфигурации в окне Дополнительно высвечивается соответствующая информация по подсистемам.
При создании объекта конфигурации по умолчанию Платформа 8.3 не проставляет привязку объекта ни к какой подсистеме.
Т.е. разработчик должен сам зайти на эту закладку и проставить соответствующие галочки.
Если разработчик этого не выполнит, то система определит отсутствие принадлежности к Подсистемам как ошибку.
Но ошибка не является критичной, поэтому с этим можно согласиться.
Фактически система справочно сообщает о том, что, возможно, Вы забыли включить новые объекты в Подсистемы. В этом случае объекты не будут отображаться в командном интерфейсе.
К таким объектам пользователь может обратиться только через Главное меню, используя команду Все функции.
Естественно, чтобы объект возможно было открыть, необходимо, чтобы пользователю были предоставлены соответствующие права.
Существует ряд случаев, когда разработчикам удобнее включать добавленные в типовую конфигурацию объекты в свою отдельную подсистему.
Для Подсистем в Окне редактирования можно снять флаг Включать в командный интерфейс.
При этом Подсистемы не будут отображаться в командном интерфейсе. Если нет ни одной Подсистемы, которая должна быть включена в командный интерфейс, то для новых объектов Платформа 8.3 не проверяет принадлежность к какой-либо подсистеме.
Для того, чтобы настроить состав команд, которые включаются в соответствующий раздел, определяемый подсистемой, существует специальный редактор.
Данный редактор можно вызвать из окна редактирования Подсистемы нажатием на кнопку Командный интерфейс (на закладке Основные).
Можно для каждой Подсистемы вызвать данный редактор. Из редактора имеется возможность управлять открытием списков в Панели навигации, доступностью команд в Панели действий.
По умолчанию флажки для команд по созданию элементов Справочников и Документов сняты, но их можно проставить. В Панели действий можно также открывать отчеты.
Элементы в редакторе можно перемещать. При этом из Панели навигации в Панель действий и в обратном направлении перемещение невозможно. Перемещать элементы можно либо внутри Панели навигации, либо внутри Панели действий.
Существуют колонка общей видимости и колонки видимости по ролям. Для каждой роли, определенной в конфигурации, будет своя колонка. То значение, которое установлено в колонке общей видимости, является значением по умолчанию для видимости по ролям.
Видимость по ролям может принимать три значения: либо для данной роли элемент будет невидимым (1); либо будет виден всегда, не зависимо от того, какой флаг выставлен в колонке видимости (2); либо флаг видимости по роли будет наследоваться от флага общей видимости (3).
Если пользователю назначены две роли и для одной их них указан флажок, а для другой нет, то будет работать стандартное правило системы 1С:Предприятие 8 – действие пользователю разрешено, если оно разрешено в одной из ролей.
Иногда бывает необходимо сразу менять командный интерфейс в нескольких Подсистемах. В платформе 1C:Предприятие 8 существует сервисный инструмент, который позволяет редактировать командный интерфейс сразу нескольких Подсистем.
Данный инструмент вызывается из контекстного меню корневого узла ветки Подсистемы.
В открывшемся окне можно быстро перемещаться по Подсистемам и редактировать командные интерфейсы. Кроме того, в данном окне можно редактировать состав Подсистемы. Также можно перемещать объекты в Панели навигации и Панели действий.
Кроме того, можно даже изменить подчиненность Подсистемы. Для этого есть специальная кнопка Переместить подсистему.
Чтобы настроить командный интерфейс Основного раздела также используется редактор командного интерфейса.
Вызывается он уже не для Подсистем, а через контекстное меню корневого узла конфигурации, пункт Открыть командный интерфейс основного раздела.
В открывшемся окне мы можем указывать: какие Справочники, Документы и другие объекты входят в данный командный интерфейс. Также можно включать их видимость и управлять видимостью по ролям.
Следует иметь в виду, что при удалении Подсистем Платформа, к сожалению, не проверяет: входит ли в данную подсистему хоть один объект или не входит.
На этом завершим наше знакомство с настройкой структуры меню информационной базы. В следующей статье мы продолжим наше знакомство с Управляемым интерфейсом и рассмотрим, какие возможности предоставляет платформа «1С:Предприятие 8» для работы со списками.
PDF-версия статьи для участников группы ВКонтакте
Статья в PDF-формате
В предыдущей статье мы научились создавать подсистемы 1С, а в этой статье научимся, как при помощи подсистем можно настраивать интерфейс пользовательского приложения.
Ссылка на предыдущую статью: подсистемы в 1С.
Для написания статьи я использовал учебную базу из книги «Основы разработки в 1С: Такси» со следующими подсистемами.
Свойство конфигурации «Командный интерфейс»
Мы можем самостоятельно конфигурировать расположение подсистем в пользовательском режиме. Делается это в свойстве конфигурации «Командный интерфейс». Для того, чтобы попасть в это свойство, необходимо вызвать контекстное меню конфигурации (выделить самый верхний узел конфигурации, и вызвать правой кнопкой мышки контекстное меню), в этом контекстном меню интересует команда «Свойства».
После выполнения команды «Свойства» контекстного меню, откроется палитра свойств конфигурации, где нас интересует свойство «Командный интерфейс».
После нажатия гиперссылки «Открыть» этого свойства, откроется окно командного интерфейса. В этом окне мы можем передвигать иконки подсистем, настраивать общее отображение (колонка Видимость), и настраивать отображение по ролям (колонка соответствующей роли).
Заметьте, у колонок ролей могут быть «серые» флажки, это значит, что если у роли установлен такой «серый» флажок, то для данной роли у подсистемы будет такая же видимость, которая установлена в колонке Видимость.
В этом случае роль Администратор будет видеть подсистему Закупки
Если мы отключим видимость подсистемы в свойстве Командный интерфейс, то ее в пользовательском режиме по умолчанию видно не будет (мы отключили подсистему Закупки).
Но пользователь, может включить её. Для этого нужно зайти в настройку панелей разделов.
Для платформы версий 8.15 и выше
Для платформы версий ниже 8.15.
И в открывшемся окне «Настройка панелей разделов», при помощи кнопки «Добавить» переместить нужный раздел в список «Выбранные раздел». В этом же списке вы можете перемещать разделы между собой по своему усмотрению.
Если же мы хотим, чтобы подсистема вообще не была доступна пользователю. То необходимо отключить у нужной роли право на просмотр этой подсистемы.
Для этого открываем дополнительные настройки отключаемой для роли подсистемы.
В этих дополнительных настройках нас интересует закладка Права, где у нужной роли необходимо снять флаг с права Просмотр.
После этого, пользователь не увидит эту подсистему, и не сможет добавить её, используя настройку панелей разделов.
Командный интерфейс подсистемы
Мы можем настраивать видимость нужной нам подсистемы при помощи командного интерфейса. Есть два способа попасть в командный интерфейс подсистемы.
Используя кнопку «Командный интерфейс» в редакторе подсистемы.
Используя команду «Открыть командный интерфейс» контекстного меню подсистемы.
В командном интерфейсе подсистемы по умолчанию существует всего 6 групп: три группы команд навигации (панель навигации), и три группы команд действий (панель действий).
Вы можете перемещать команды навигации между группами команд навигации, и перемещать команды действий между группами команд действий. Но команду навигации нельзя переместить в группу команд действий. И наоборот, команду действия нельзя переместить в команду навигации.
Перемещать команду внутри группы можно при помощи кнопок контекстного меню (для этого нужно выделить нужную команду).
После перемещения команды, в названии группы команд появится словосочетание «Ручной порядок».
Если вы хотите вернуть расположение команд, как было по умолчанию, то необходимо выделить нужную группу, вызвать контекстное меню и выполнить команду «Восстановить автоматический порядок».
Если вы хотите, чтобы команда располагалась в другой группе, то можно мышкой «перетащить» эту команду в нужную группу.
Или воспользоваться иконкой команды на верхней панели.
После тех или иных действий, команда переместится в нужную группу.
В командном интерфейсе подсистемы имеются также колонка Видимость и колонки видимости по ролям.
Флажки в этих колонках отвечают за видимостью команд подсистемы.
Если флаг снят у соответствующей команды в колонке Видимость, то пользователь не увидит эту команду в интерфейсе подсистемы. У колонок ролей имеется возможность установить «серый» флаг. Это значит, что видимость этой команды для данной роли будет такая, какая установлена по умолчанию в колонке «Видимость».
Например, в этом случае, роль не будет видеть команду.
В случае остальных состояний флага, все точно также как и для колонки Видимость.
Стоит флаг – пользователь с этой ролью видит команду.
Флаг снят – не видит.
Но в тоже время, если видимость на какую-либо команду снята в командном интерфейсе подсистемы в конфигураторе 1С, то её можно установить обратно в пользовательском режиме.
Для этого необходимо зайти либо в настройки навигации, либо в настройки действий подсистемы в пользовательском режиме, в зависимости от того видимость какой команды (навигации или действий) вы хотите установить.
Откроется окно настроек, где можно переместить выбранную команду или при помощи кнопки «Добавить», или мышкой.
После перемещения команды
Она появится в командном интерфейсе подсистемы.
Команда «Все подсистемы»
У разработчика имеется возможность посмотреть на командный интерфейс всех подсистем сразу. Для этого необходимо выделить корневой узел ветки Подсистемы, вызвать контекстное меню, в котором выполнить команду «Все подсистемы»
После этого откроется окно «Все подсистемы», где вы можете работать со всеми подсистемами сразу.
Заметьте, если у подсистемы имеются подчиненные подсистемы, то в этом окне вы можете посмотреть, как всё выглядит в иерархии. На скрине выше это наглядно показано. Что нельзя сделать в командном интерфейсе отдельной подсистемы.
Также, в этом окне вы можете редактировать состав нужной вам подсистемы.
В остальном настройки похожи: можно перемещать команды между группами внутри подсистемы, устанавливать видимость и т.д.
Другие статьи по вопросам конфигурирования
Подробно вопросы разработки подсистем рассмотрены в книге «Основы разработки в 1С: Такси. Разработка управляемого приложения за 12 шагов». Эта книга станет настоящим подспорьем для тех, кто только начал знакомиться с разработкой управляемого приложения.
- Без сложных технических терминов;
- Более 600 страниц практического материала;
- Каждый пример сопровождается рисунком (скриншот);
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
Эти книги плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
В этой статье мы узнаем, что такое обработки в платформе 1С 8.3 и для каких целей они нужны. Научимся создавать обработки в качестве объектов метаданных конфигурации 1С, научимся создавать внешние обработки, создавать формы обработок, добавлять обработки в подсистемы и давать права на обработки пользователям, а также узнаем, как открыть внешнюю обработку в 1С.
В платформе 1С, помимо объектов конфигурации, которые так или иначе связаны ведением учета (например, Справочники – для хранения однотипной информации, Документы – для отображения событий), существует объект, который напрямую не связан с ведением учета, и с помощью которого можно осуществлять различные вспомогательные действия (групповая обработка справочников и документов, загрузка – выгрузка информации и т.д.). Этот объект – Обработка. Обработки могут быть как объекты какой-то конфигурации, а также внешние – в этом случае сама обработка будет храниться где-то на жестком диске, её можно будет открыть в пользовательском клиенте 1С предприятия, и выполнить нужные действия.
Создать обработку 1С
После выполнения этой команды, будет создана пустая обработка, которая появится в дереве метаданных в соответствующей ветке, а также откроется окно менеджера обработки.
Обработка создана, и вы можете с ней работать: задать имя обработки, синоним и т.д.
Создать внешнюю обработку 1С
Или нажать на кнопку «Новый» в меню «Стандартная».
После откроется окно «Выбор вида документа», в котором необходимо выбрать «Внешняя обработка».
Откроется окно менеджера внешней обработки, и вы можете проделать с ней все нужные операции.
После того, как внешняя обработка создана, её желательно сохранить на жестком диске (и делать это периодически во время работы с ней в конфигураторе). Для того, чтобы сохранить внешнюю обработку необходимо или нажать на кнопку «Сохранить» меню «Стандартная».
Или просто нажать сочетание клавиш Ctrl + S.
После этих действий откроется окно, в котором можно выбрать каталог, где будет храниться эта внешняя обработка, а также ввести название файла.
После сохранения, у внешней обработки сверху будет прописан путь к ней.
Замечу, что файлы всех внешних обработок имеют расширение epf.
Добавить внешнюю обработку 1С
Иногда возникают задачи добавить внешнюю обработку в конфигурацию 1С. Чтобы это сделать, необходимо выделить ветку «Обработки» дерева метаданных конфигурации, вызвать контекстное меню и выполнить в нем команду «Вставить внешнюю обработку, отчет…».
В открывшемся окне необходимо выбрать нужную обработку.
После, обработка появится в дереве.
Сохранить обработку 1С в файл
Может возникнуть обратная задача: сохранить обработку из какой-то конфигурации в файл, т.е. сделать внешнюю обработку из простой обработки.
Делается это достаточно просто: нужно выделить обработку в дереве конфигурации, вызвать контекстное меню и выполнить команду «Сохранить как внешнюю обработку, отчет…»
Откроется окно «Сохранить как», в котором нужно выбрать месторасположение обработки, а также, если это необходимо, изменить название.
Подсистема обработки 1С
Обработку, которую мы создали в дереве метаданных можно включить в любую подсистему, тогда у нас появится возможность отобразить её в пользовательском интерфейсе. Для того, чтобы включить обработку в подсистему, необходимо зайти на закладку «Подсистемы» менеджера обработки и поставить флаг напротив нужной подсистемы.
Можно включить в подсистему другим способом. Необходимо выделить нужную обработку, вызвать контекстное меню и выполнить в этом меню команду «Дополнительно».
В правой части рабочего стола откроется окно «Дополнительно», в котором на закладке «Подсистемы» можно привязать эту обработку к нужной подсистеме, установив флаг рядом с подсистемой.
После того, как мы поставим флажки, то обработка включится в состав подсистемы.
Но, если мы попробуем её найти в пользовательском клиенте, то ни чего не найдем. Также, её не будет в командном интерфейсе подсистемы.
Причина этому – отсутствие основной формы обработки.
Основная форма обработки 1С
Для того, чтобы обработка появилась в командном интерфейсе, необходимо создать основную форму обработки.
Для этого, нужно в менеджере обработки перейти на вкладку «Формы», в которой нажать на кнопку «Добавить». После, откроется конструктор формы обработки, в котором можно ввести название новой обработки, её синоним, и самое главное установить флаг «Назначить форму основной».
Если вы нажмете на кнопку «Далее», то можете выбрать какие реквизиты обработки будут включены на форму, а если нажать на кнопку «Готово», то форма будет создана без реквизитов.
После этого, обработка появится в командном интерфейсе подсистемы.
Замечу, что основная форма обработки указана в свойстве обработки «Основная форма», если мы это свойство очистим.
То даже при наличии формы, обработка не будет отображаться в командном интерфейсе подсистемы.
Права на обработку 1С
Чтобы пользователь мог работать с обработкой, ему нужно дать права на неё. Для этого, необходимо у соответствующей роли для обработки установить права Использовать и Просмотр.
Если вы установите только право Использовать, то пользователь не сможет видеть обработку в интерфейсе. Он сможет только обращаться в ней посредством программного кода.
Если Вы внедряете обработку в какую-то типовую конфигурацию, то лучше для этого создать отдельную роль, а не изменять текущую. Тогда у вас будет меньше проблем с обновлением в будущем.
Открыть обработку 1с
И при выполнении команды с именем обработки будет открыта форма обработки.
Я немного изменил управляемую форму обработки, добавив надпись.
Управляемая форма открылась в независимом окне, если мы хотим, чтобы она открылась поверх окон, то нужно у основной формы обработки установить в свойство «Режим открытия окна» или значение «Блокировать весь интерфейс», или значение «Блокировать окно владельца».
После таких настроек, обработка будет открываться по верх окон.
Открыть внешнюю обработку 1С
В окне «Открыть» необходимо найти и выбрать нужную вам обработку.
После выйдет предупреждение безопасности, если вы знаете, что это за обработка, то нажимаете кнопку «Да».
Форма внешней обработки открылась.
Замечу, что в моем случае открылась форма обработки в отдельном окне, потому что, во-первых, я создал основную форму внешней обработки, а во-вторых, установил у основной формы в свойство «Режим открытия окна» значение блокировать окно владельца.
Чтобы пользователь мог открывать внешние обработки, ему необходимо установить право «Интерактивное открытие внешних обработок».
Другие статьи по конфигурированию в 1С:
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
можно оплатить вручную:
Читайте также: