На ветви Подсистемы располагаются объекты, с помощью которых описываются различные виды деятельности. Свойство Подсистемы имеют практически все объекты конфигурации (в том числе картинки, общие формы, стили и элементы стилей и т.д.). Каждый объект конфигурации может быть включен в одну или сразу в несколько областей, в составе которых он будет отражаться.
Создадим в нашей конфигурации 5 новых объектов Подсистема, которые будут иметь имена: Бухгалтерия, РасчетЗарплаты, УчетМатериалов, ОказаниеУслуг, Предприятие.
Раскроем ветвь Общие в дереве объектов конфигурации, нажав на «+» слева от нее. Выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем пункт Добавить или нажмем соответствующую кнопку в командной панели окна конфигурации. После этого откроется окно редактирования объекта конфигурации, которое предназначено для сложных объектов конфигурации и позволяет путем выполнения последовательных действий быстро создавать такие объекты.
Обратите внимание, что в процессе разработки часто бывает нужно повторно открыть окно редактирования объекта конфигурации, чтобы изменить свойства объекта. Это можно сделать следующим образом - выделить нужный элемент в дереве объектов конфигурации и дважды щелкнуть мышью по выделенному элементу.
Зададим имя подсистемы – Бухгалтерия. На основании имени платформа автоматически создает синоним – Бухгалтерия. Имя можно задавать любое, но оно должно начинаться с большой буквы, не содержать пробела и других специальных символов, а также быть интуитивно понятным.
Свойство Синоним есть у каждого объекта конфигурации и предназначено для хранения альтернативного наименования, которое будет использовано в элементах интерфейса программы.
В целях усовершенствования интерфейса приложения можно задать картинку для отображения подсистемы.
Снова выделим ветвь Подсистемы, нажмем кнопку Добавить в дереве объектов конфигурации и создадим еще две подсистемы с именами УчетМатериалов и ОказаниеУслуги.
Теперь воспользуемся другим способом для добавления подсистем. Вызовем контекстное меню одной из подсистем. Выберем в нем пункт Добавить. Он разбивается на два подпункта. Выбор объекта Подсистема позволяет добавить подсистему того же уровня иерархии, что и выделенная. Выбор пункта Подчиненная Подсистема позволяет добавить подсистему, подчиненную выделенной. Выберем первый вариант и добавим подсистему РасчетЗарплаты. В заключении добавим подсистему Предприятие для доступа к административным и сервисным функциям.
Обратите внимание, что окно редактирование объекта и палитра свойств не дублируют друг друга, а дополняют. Окно редактирования объекта предназначено, прежде всего, для быстрого создания новых объектов с неизвестной структурой, поскольку имеет в своей основе механизм «мастеров».
Палитра не привязана к какому-либо конкретному виду объектов конфигурации. Ее содержимое меняется в зависимости от того, какой объект является текущим. За счет этого она может запоминать, какое свойство объекта в ней выбрано, и при переходе к другому объекту будет подсвечивать у себя все те же свойства, но уже другого объекта. Такая способность незаменима, когда среди нескольких десятков объектов Вам необходимо найти подчиненные кому-либо другому. В этом случае можно выбрать в палитре свойство Владелец любого справочника, затем перейти в дерево конфигурации и пробежать его.
Панель свойств можно закрыть.
Запустим 1С:Предприятие в режиме отладки и увидим результаты наших изменений. Сразу под главным меню располагается панель разделов приложения, где отражены созданные нами подсистемы. Пока состав разделов пуст. Однако порядок расположения подсистем нас не устраивает. Изменим его.
Закроем приложение и вернемся в конфигуратор. Выделим корень дерева объектов нашей конфигурации, нажатием правой кнопки мыши вызовем контекстное меню и выберем пункт Открыть командный интерфейс конфигурации. С помощью кнопок Вверх и Вниз изменим порядок расположения разделов. Сначала поставим Учет материалов и Оказание услуг, затем Бухгалтерию и РасчетЗарплаты, а затем подсистему Предприятие. Запустим систему 1С:Предприятие и увидим результаты нашей работы.
Внимание! Конфигурацию необходимо периодически сохранять, выполнив команду главного меню Администрирование – Выгрузить информационную базу. Это будет полезно на случай, если Вы запутаетесь в своих действиях и захотите вернуться к работающему варианту. Для этого выполните команду Администрирование – Загрузить информационную базу.
Справочники используются в основном для хранения списков условно-постоянной информации, такой как списки товаров, материалов, сотрудников, контрагентов организации и т.д.
Справочники состоят из элементов, например, товар – элемент справочника товаров. В БД каждый элемент справочника представляет отдельную запись в основной таблице, хранящей информацию из этого справочника.
Каждый элемент справочника, как правило, содержит дополнительную информацию, которая подробно содержит этот элемент. Например, все элементы справочника Товары могут содержать дополнительную информацию о производителе, сроке годности и т.д. Набор такой информации является одинаковым для всех элементов справочника, и для описания такого набора используются реквизиты, которые также являются объектами конфигурации. Поскольку эти объекты конфигурации логически связаны с объектом Справочник, они называются подчиненными этому объекту. Большинство реквизитов разработчик создает самостоятельно, но существуют еще стандартные реквизиты: Код, Наименование и др.
Каждый элемент справочника может содержать некоторый набор информации, которая одинакова по своей структуре, но различна по количеству, и предназначена для разных элементов справочника. Например, каждый элемент справочника «Сотрудники» может содержать информацию о составе семьи сотрудника. Для одного сотрудника это будет только супруга, для другого – супруга, дочь и сын. Для описания такой информации могут быть использованы табличные части справочника.
У справочника может быть любое количество табличных частей. Табличные части справочника должны отражать хранение информации, связанной с данным элементом, но не имеющей собственной объектной сущности.
Справочники могут быть иерархическими с неограниченной иерархией или можно ограничить иерархию в пределах до 10. В иерархическом справочнике можно установить родителем не только группу, но и элемент: через поле "Вид иерархии" – «Иерархия элементов».
Максимальная длина кода справочника равна 50 символов. Максимальная длина наименования справочника равна 150 символов.
Справочник может быть подчинен не только другим справочникам, но также планам видов характеристик и планам счетов, в том числе и нескольким объектам одновременно.
У групп справочника-владельца тоже могут быть подчиненные элементы в других справочниках. Эта возможность включается в свойства справочника.
В зависимости от того, какие действия мы хотим выполнять со справочником, нам потребуется изображать справочник в разном виде. Для отображения справочников в различных ситуациях требуется максимум 5 форм для справочника.
Форма элемента используется для редактирования или создания элемента справочника.
Форма группы используется для редактирования или создания группы справочника.
Форма списка используется для отображения списка элементов справочника.
Форма выбора используется для выбора одного из элементов справочника в поле некоторой формы.
Форма выбора группы используется для выбора не просто элемента справочника, а одной из его групп.
Любая форма может быть описана в конфигураторе. Для такого описания существует подчиненный объект конфигурации Форма.
Для создания нового справочника выберите пункт Добавить, вызываемый правой кнопкой мыши на наименовании ветви дерева метаданных Справочники. Укажем идентификатор справочника и синоним (пользовательское представление) справочника - Клиенты.
Зададим два свойства Представление объекта – Клиент, Представление списка – Клиенты.
Нажмем кнопку Далее и перейдем на закладку Подсистемы окна редактирования объекта конфигурации Справочник. На этой закладке определяется, в каких подсистемах будет отображаться данный справочник. Отметим в списке подсистемы Бухгалтерия и ОказаниеУслуг. Если откроем окно редактирования одной из отмеченных подсистем и перейдем на закладку Состав, то увидим, что там появился новый объект конфигурации Справочник Клиенты.
Вернемся к окну редактирования объекта конфигурации Справочник и нажмем на закладку Данные.
От длины кода будет зависеть количество элементов, содержащихся в справочнике. Длина кода – 9 символов. Изменим длину наименования на 50.
Сделаем доступной в панели действий раздела ОказаниеУслуг стандартную команду для создания новых клиентов. Для этого в дереве объектов конфигурации выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем ветвь Подсистемы пункт Все подсистемы. В открывшемся окне Все подсистемы слева в списке Подсистемы выделим подсистему ОказаниеУслуг. Справа в списке Командный интерфейс отразятся все команды выбранной подсистемы.
При создании в группу Панель навигации.Обычное добавилась команда Клиенты для открытия этого списка. Она включена по умолчанию. В группу Панель действий.Обычное добавилась команда Клиент: создать для создания нового элемента справочника, но невидима по умолчанию. Включим видимость этой команды, поставив «галочку» в соответствующий квадратик.
Для подсистемы Бухгалтерия никаких команд добавлять в панель действий не будем.
Закроем окно редактирования справочника Клиенты и запустим 1С:Предприятие в режиме отладки. Нажмем кнопку Принять.
В открытом окне в режиме 1С:Предприятие, если перейти в раздел Оказание услуг или Бухгалтерия, слева в вертикальной области окна появилась панель навигации, отображающая структуру выбранного раздела. Сейчас она содержит команду для открытия нашего списка – Клиенты. Обратите внимание, что название команды Клиенты определяется свойством Представление списка.
Также в разделе Оказание услуг появилась панель действий. Команды, содержащиеся этой панелью, объединены в стандартные группы: Создать, Отчеты, Сервис и группы, созданные разработчиком. Заметьте, что у раздела Бухгалтерия нет панели действий.
Пока наш справочник пуст, поэтому добавим в него несколько элементов. Для этого выполним команду Клиент в панели действий раздела Оказания услуг. Перед нами откроется форма для создания элемента справочника – основная форма объекта.
Придумайте фамилии, имена и отчества трех клиентов. Внесите наименование первого клиента. Код вносить не будем, так как он генерируется автоматически. После того, как внесем наименование, нажмем кнопку Записать и закрыть. В нижнем углу появится информационное сообщение о том, какой элемент был создан или изменен. Кроме того, нажав на ссылку в информационной панели (в нижней части окна приложения), можно открыть этот элемент.
Обратите внимание, что поле Наименование должно быть заполнено обязательно, иначе при попытке записи клиента будет выдано сообщение об ошибке.
Аналогичным образом внесем наименования всех остальных клиентов. Чтобы открыть существующий элемент справочника для редактирования, можно дважды щелкнуть на нем мышью.
Создадим справочник Сотрудники, в котором будем хранить фамилию, имя, отчество сотрудника, а также информацию о его прошлой деятельности. Эта информация неоднородна по структуре (организация, начало, окончание работы, занимаемая должность). Количество предыдущих мест работы у сотрудников может быть различным. Для хранения такой информации будем использовать табличную часть справочника.
Добавим новый объект конфигурации Справочник Сотрудники. Синоним заполнится автоматически. Зададим Представление объекта как Сотрудник, Представление списка устанавливать не будем, Расширенное представление списка зададим как Список сотрудников. Нажмем кнопку Далее и перейдем на закладку Подсистемы.
По логике нашей конфигурации список сотрудников должен быть доступен в разделах ОказаниеУслуг и РасчетЗарплаты. Отметим это в списке соответствующих подсистем.
Перейдем на закладку Данные. Оставим по умолчанию длину и тип кода, длину Наименования зададим равной 50 символам.
Нажмем кнопку Добавить табличную часть над списком табличных частей справочника. Зададим имя табличной части – ТрудоваяДеятельность.
Создадим реквизиты табличной части ТрудоваяДеятельность. Для этого выделим Реквизиты и через контекстное меню нажмем кнопку Добавить.
Добавим следующие реквизиты:
Организация – тип Строка, длина 100;
НачалоРаботы – тип Дата, состав даты – Дата;
ОкончаниеРаботы – тип Дата, состав даты – Дата;
Должность – тип Строка, длина 100.
Для реквизитов НачалоРаботы и ОкончаниеРаботы мы выбрали состав даты – Дата, т.к. тип Дата содержит как дату, так и время. Время начала и окончания работы нам безразлично.
Отредактируем командный интерфейс. Сделаем видимой в панели действий подсистемы РасчетЗарплаты стандартную команду для создания новых сотрудников. Для этого выделим ветвь Подсистемы, вызовем ее контекстное меню и выберем пункт Все подсистемы. В открывшемся окне в списке подсистемы выделим подсистему РасчетЗарплаты. Справа в списке Командный интерфейс отразятся все команды выбранной подсистемы. В группе Панель действий.Создать включим видимость у команды Сотрудник: создать. В группу Панель навигации.Обычное добавилась команда Сотрудники для открытия этого списка. Она включена по умолчанию.
Для подсистемы ОказаниеУслуг никаких команд добавлять не будем.
На этом создание справочника Сотрудники завершено. Закроем окно редактирования справочника Сотрудники и запустим 1С:Предприятие в режиме отладки. Ответим утвердительно на запрос конфигуратора об обновлении конфигурации и увидим окно, содержащее список изменений. Нажмите кнопку Принять.
В открытом окне в режиме 1С:Предприятие в панели навигации разделов ОказаниеУслуг и РасчетЗарплаты появилась команда Сотрудники для открытия списка сотрудников. Название этой команды определяется синонимом объекта, так как Представление списка мы для этого справочника не задавали.
Также в панели действий раздела Расчет зарплаты появилась команда Сотрудник для создания новых сотрудников. Название этой команды определяется свойством Представление объекта, которое мы задали для этого справочника.
Выполним команду Сотрудник. Откроется основная форма объект, содержащая табличную часть с реквизитами. Придумайте ФИО трех сотрудников, которые в прошлом имели должности – ведущий специалист, инженер, начальник производства, прораб и др. Сотрудники должны иметь различный стаж работы, различные места предыдущей работы.
Один из примеров записей приведен ниже.