Профессиональная разработка в системе 1с предприятие 8.3. Автоматическое заполнение расписания

Понятие конфигурации в системе программ 1С: Предприятие

Функционирование системы делится на два процесса – конфигурирование (описание модели предметной области средствами систем) и исполнение (обработку данных предметной области).

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

Конфигурацией в системе 1С: Предприятие называется совокупность трех взаимосвязанных составных частей:

Структуры метаданных

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

Набора прав

Рис.1.9 - Пример конфигурации системы

Метаданными в системе 1С: Предприятие называется совокупность объектов метаданных, настроенных на хранение и обработку информации о хозяйственной деятельность конкретного предприятия. Метаданные определяют функциональность конфигурации, и являются базовыми конструкциями для их создания. По своей сути такие объекты представляются аналогом реальных объектов из сферы предметной деятельности предприятия. Например, объект “Справочник” предназначен для ведения любых списков однородных данных: справочников, картотек и пр. По характеру своего содержания этот объект соответствует понятию “таблица” в таких базах данных, как Access или FoxPro. Однако есть и существенные различия в формировании и использовании объектов в системе “1С”. Здесь разработчик фактически не имеет дела с понятием “база данных” – все вопросы хранения информации, в том числе создания и коррекции файлов, решаются самим объектом. Все объекты “1С: Предприятие” принимают на себя функции как сохранения своих данных на внешних носителях, так и визуального представления информации в виде экранных диалогов и печатных документов. Кроме того, большинство объектов, в качестве своего компонента, включают модуль формы, содержащий программный код для выполнения нестандартных операций при работе с объектом – реализации конкретного алгоритма обработки диалога. Однако то, что видно в окне “Конфигурация” при создании новой информационной базы - это лишь список типов объектов, на основе которых можно создавать реальные объекты, предназначенные для конечного пользователя. Если проводить сравнение с VB, то это лишь панель инструментов, которые можно использовать для создания приложения.

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

Рассмотрим объекты метаданных:

Константы

Предназначены для работы с постоянной и условно постоянной информацией

Справочники

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

Перечисления

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

Типичными примерами перечислений являются виды оплаты (наличная, безналичная, бартер), статусу клиента (постоянный, разовый).

Документы

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

Журналы документов

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

Отчеты и обработки

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

Регистры (компонента «Оперативный учет»)

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

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

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

Календари

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

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

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

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

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

Экранный диалог, используемый для ввода и редактирования информации, хранящейся в объекте метаданных;

Печатная форма объекта метаданных (печатных форм может быть несколько)

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

Технологические средства конфигурирования и администрирования системы 1С: Предприятие

Встроенный программный язык

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

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

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

Механизм запросов

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

Встроенный текстовый редактор

Используется системой для создания программных модулей на встроенном языке и для редактирования документов в текстовом виде.

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

Встроенный редактор диалогов

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

Встроенный редактор табличных документов

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

Конструкторы

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

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

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

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

Отладчик

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

Администрирование роботы пользователей

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

Журнал регистрации изменений

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

Описание встроенного языка

Назначение и краткая характеристика встроенного языка

Встроенный язык системы 1С: Предприятие предназначен для описания (на стадии разработки конфигурации) алгоритмов функционирования прикладной задачи.

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

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

Программный модуль.

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

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

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

Любой программный модуль состоит из трех следующих разделов:

определение переменных;

процедуры и функции;

основная программа.

Основная программа модуля исполняется каждый раз при его запуске на выполнение. Программные модули хранятся в конфигурации в виде исходного текста, и компиляция каждого из них выполняется только в момент первого обращения. А затем модуль в виде машинного кода уже хранится в оперативной памяти. Таким образом, получается, что компиляция программ происходит каждый раз при запуске приложения, но распределенная схема компиляции конфигурации небольшими фрагментами приводит к тому, что эти операции проходят практически незаметно для пользователя. Тем более что при компиляции используется схема однопроходной трансляции, что повышает скорость преобразования кода. Впрочем, существует и недостаток подобной схемы работы – “позднее связывание” затрудняет решение проблем проверки связей на уровне синтаксического контроля.

Контекст выполнения программного модуля

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

глобальный контекст задачи;

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

Глобальный контекст образуется:

значениями системных атрибутов, системными процедурами и функциями;

значениями заданных в конфигураторе констант, перечислений, регистров, видов расчета, групп видов расчета;

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

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

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

В языке поддерживаются следующие базовые типы данных:

Числовой – любое десятичное число. Над данными числового типа определены основные арифметические операции.

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

Типом Дата может представляться любая корректная дата.

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

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

Некоторые значения заранее известны в программном модуле из его глобального и локального контекста;

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

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

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

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

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

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

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

Регистр – специфический инструмент системы «1С: Предприятие 7.7», средство накопления оперативной информации о наличии и движении средств.

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

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

Регистр остатков - это объект, предназначенный для ведения остатков "ресурсов" на момент времени с привязкой к некоторому набору "измерений".

Оборотный регистр - это объект, предназначенный для подсчета оборота "ресурсов" за заданный интервал времени с привязкой к некоторому набору "измерений".

Ресурсами регистра могут являться любые категории учета, которые могут быть представлены в числовом виде, такие как: "количество товара", "долг клиента", "сумма наличных" и т.п. Измерения регистра - это оси координат, на пересечении которых регистр хранит конкретные значения ресурсов. Кроме того, при записи движения регистра можно задавать "реквизиты" регистра. Значения реквизитов регистра просто сопровождают запись о движении регистра (подобно комментарию) для возможности в дальнейшем производить фильтрацию движений при выборке.

Для получения сводной выходной информации в системе «1С: Предприятие 7.7» используются объекты метаданных, называемые «Отчеты» и «Обработка». Объект данных этого типа представляет собой алгоритм обработки информации на внутреннем языке системы «1С: Предприятие 7.7». К алгоритму обязательно «прикрепляется» диалог, при помощи которого, при необходимости, можно организовать ввод каких-либо параметров, влияющих на ход его алгоритма. Сам алгоритм получения отчета описывается с использованием встроенного языка, при этом может быть задействован встроенный язык запросов, а так же может использоваться объект типа «Таблица Значений».

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

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

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

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

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

Предисловие
Благодарности
Как работать с книгой
Что вы будете уметь
Что вы будете делать

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

2. Визуальное конструирование
С чего начинается прикладное решение
Список информационных баз
Конфигурация
Дерево объектов конфигурации
Какие объекты конфигурации можно добавлять
Красота, или какой объект выбрать
Данные
Справочник
Кабинеты
Информационная база
Режим отладки
Добавление данных
Объект данных
Объект конфигурации описывает, как будут выглядеть его данные
Интерфейс
Что такое формы?
Представления объекта конфигурации в интерфейсе
Наименование и код
Учителя
Предметы
Реквизиты
Командный интерфейс раздела
Ввод по строке
Документ
Учебные дни
Редактирование форм
Добавление формы
Редактор формы
Изменение формы списка
Изменение формы объекта

3. Встроенный язык
Ваша первая программа – заголовок приложения
События
Модули
Встроенный язык
Значение
Тип
Представление
Где писать примеры и чем пользоваться
Простые типы
Почему текст разноцветный
Какие бывают инструкции
Инструкция присваивания
Переменная
Точки останова и просмотр значений
Изменение значений переменных
Контекстная подсказка
Выбор имени для переменной
Выражение
Арифметические операции
Операции со строками
Тип «Дата» и операции с датами
Тип «Булево» и логические операции
Булевы операции
Инструкция «Если»
Красивая программа
Инструкция «Цикл»
Функции
Контекст и область видимости
Процедуры
Чтение и отладка процедур и функций
Коллекции значений
Объекты встроенного языка
Методы, конструкторы
Массив
Обрабатывайте ошибочные ситуации
Используйте операцию […]
Используйте инструкцию «Для Каждого … Цикл»
Удаляйте элементы с конца
Структура
Прикладные типы
База данных
Клиент и сервер
Прикладные типы
Объектные данные
Как устроен документ
Номер документа «УчебныйДень»
События объектов
Установка номера для новых документов

4. Автоматическое заполнение расписания

5. Регистры и отчеты
Зачем нужны регистры
Что будет в этой главе
Регистр сведений
Регистр сведений «Оценки»
Процедура проведения документов
Заполнение регистра данными
Хранение данных в таблицах
Устройство регистра сведений
Оперативное проведение
Отчет «Успеваемость»
Регистр накопления
Регистр накопления «ПрошедшиеЗанятия»
Отчет «ПрошедшиеЗанятия»
Работа с регистрами из встроенного языка
Необъектные данные
Регистр сведений «ДомашниеЗадания»
Запись в регистр «ДомашниеЗадания»
Работа с регистрами в модуле документа

6. Язык запросов
Чем язык запросов отличается от встроенного языка
Хранение объектных данных
Таблицы запросов
Консоль запросов
Текст запроса

7. Планировщик
Планировщик
Создание формы и размещение в ней планировщика
События формы
Получение данных из базы
Настройка
Перехват событий
Отображение будних дней
Отметки оценок и домашние задания
Обновление данных

8. Доработка интерфейса
Список домашних заданий
Начальная страница
Командный интерфейс основного раздела

Приложение А. Полезные советы
Как подключить демонстрационную базу
Как прочитать сообщение об ошибке
Как сделать копию рабочей базы

Приложение Б. Список понятий

Приложение В. Список действий

Приложение Г. Решения заданий

Принципы разработки в среде «1С: Предприятие 8»

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

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

При выделении этих классов руководствовались следующими критериями:

· Сходное назначение сущностей,

· Сходная роль сущности в модели данных.

· Сходная роль сущности в способах использования.

· Деление на классы должно давать четкую картину структуры прикладного решения,

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

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

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

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

Основу концепции составляет понятие конфигурация.

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

· подсистемы;

· структуры учетных данных, их форм ввода, выбора, печати;

· состава механизмов учета итоговых данных и движений учетных данных;

· состава различных отчетов и обработок;

· командного интерфейса;

· набора ролей (прав доступа);

· набора общих процедур и функций (модуль приложения, модуль внешнего соединения, модуль сеанса, общие модули), макетов табличных документов и др.;

· вспомогательных объектов:

· функциональных опций и их параметров,

· хранилищ настроек,

· различной вспомогательной информации (картинки, шаблоны, стили и т.д.).

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

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

Под объектом конфигурации в системе «1С: Предприятие» понимается формальное

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

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

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

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

Реализованный в системе «1С: Предприятие» при помощи объекта конфигурации компьютерный аналог конкретного понятия предметной области будем называть объектом конфигурации.

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

Главным свойством любого объекта конфигурации является имя - краткое наименование объекта конфигурации. При создании нового объекта конфигурации ему автоматически присваивается условное имя, состоящее из слова, определяемого по виду объекта, и цифры (например, при создании реквизита создается реквизит с именем Реквизит1, при создании документа - Документ1 и т.д.). Это имя можно изменить в процессе редактирования свойств объекта конфигурации, при этом система отслеживает уникальность имен. Имя объекта конфигурации не может быть пустым.

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

Приведем такой пример.

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

Константа обладает большим набором редактируемых свойств, из которых наиболее важными являются:

· имя константы,

· синоним,

· комментарий,

· тип данных,

· режим управления блокировкой,

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

Способность сохранять введенное в нее значение - неотъемлемая особенность константы в системе «1С: Предприятие». Редактирование свойств константы на эту способность не влияет.

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

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

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

Рис. 1.

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

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

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

Ниже приведена краткая характеристика основных видов объектов конфигурации системы «1С: Предприятие».

Константы

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

В системе может быть описано неограниченное количество констант.

Справочники

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

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

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

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

Для описания соподчиненных сущностей можно использовать подчиненные справочники. В этом случае в подчиненном справочнике каждый элемент «принадлежит» к определенному элементу справочника-владельца.

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

Перечисления

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

Типичными примерами перечислений являются виды оплаты (наличная, безналичная, бартер), статус клиента (постоянный, разовый) и т.д.

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

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

Документы

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

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

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

Для документа создаются формы ввода - экранные аналоги реальных документов.

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

Каждый документ также может иметь неограниченное число печатных форм.

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

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

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

Журналы документов

Журналы документов предназначены для просмотра документов разных видов. Каждый вид документа может быть показан в нескольких журналах. Журнал документов не добавляет новые данные в систему, а является средством для отображения в едином списке документов нескольких видов. Например, может быть создан журнал Складские документы, в котором будут отображаться все приходные и расходные накладные и накладные на внутреннее перемещение.

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

Отчеты и обработки

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

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

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

В системе «1С: Предприятие» объекты Планы видов характеристик предназначены для описания множеств однотипных объектов аналитического учета.

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

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

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

Бизнес-процессы и задачи

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

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

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

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

В системе «1С: Предприятие» существует 4 вида регистров:

· регистры сведений,

· регистры накопления,

· регистры расчетов,

· регистры бухгалтерии.

Специализированные объекты конфигурации

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

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

Рис. 2.

Реквизиты - дополнительная информация об объекте, доступная только в пределах этого объекта.

Табличные части - наборы дополнительной информации об объекте, представленной в виде таблицы.

Реквизиты табличных частей - состав табличной части объекта, доступный только в пределах табличной части объекта.

Формы - форма используется для ввода, просмотра и редактирования информации, хранящейся в объекте конфигурации, содержит модуль формы - программу на встроенном языке системы «1С: Предприятие». Способность иметь визуальное представление позволяет объекту конфигурации организовать интерактивное взаимодействие с пользователем. Характер такого взаимодействия разрабатывается специалистом, осуществляющим конфигурирование системы «1С: Предприятие», и определяется в основном типом объекта конфигурации. Для разработки форм в конфигураторе применяется комплексный редактор форм, позволяющий редактировать все компоненты формы во взаимосвязи. Каждый объект может иметь несколько форм.

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

Макеты - табличные, HTML или текстовые документы (также могут использоваться двоичные и Active-документы), предназначенные для формирования печатных форм объекта.

Графы - графы журнала документов.

Измерения - для регистров это объекты конфигурации, данные о которых учитываются в регистре.

Ресурсы - данные, учитываемые в регистре.

Группы подчиненных объектов не удаляются и не имеют редактируемых свойств.

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

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

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

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

Кроме этих типов к примитивным типам относят NULL.

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

Объекты конфигурации, которые могут образовывать типы значений конфигурации, в системе «1С: Предприятие» называются типообразующими объектами конфигурации.

Такими объектами в системе «1С: Предприятие» являются:

· справочники,

· документы,

· планы видов характеристик,

· планы счетов,

· планы видов расчета,

· планы обмена,

· бизнес-процессы,

· задачи,

· перечисления.

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

Например, когда в конфигураторе создается новый справочник, то в списке типов данных появляются новые типы данных: СправочникСсылка. <ИмяСправочника>, СправочникОбъект. <ИмяСправочника> и СправочникСписок. <ИмяСправочника>. Такие типы данных могут быть присвоены любому из типизированных объектов конфигурации.

Некоторые данные могут иметь составной тип. Для этого в окне редактирования типа данных установите флажок Составной тип данных и укажите те типы, которые могут принимать данные. Кроме того, допускается выбор специального типа ЛюбаяСсылка.

При выборе типа данных реквизита система, помимо выбора типов, определенных в конкретном прикладном решении, предоставляет разработчику возможность выбирать наборы типов. Наборами типов, например, являются ЛюбаяСсылка, СправочникСсылка, Характеристика.<имя> и др.

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

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

На основе этой информации (структуры подсистем и привязки объектов к подсистемам) система автоматически строит командный интерфейс для пользователя.

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

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

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

Совокупность экранного диалога, модуля, реквизитов и команд называется формой.

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

· экранный диалог, используемый для ввода и редактирования информации;

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

· список реквизитов;

· команды, используемые в форме.

Любая из этих составных частей формы может отсутствовать, то есть не содержать информации.

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

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


Рис. 3.

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

Модули располагаются в заданных точках структуры конфигурации и вызываются для выполнения в заранее известные моменты работы системы «1С: Предприятие».

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

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

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

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

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

Если функции или процедуры модуля менеджера объявлены как экспортируемые, к ним можно будет получить доступ через менеджер объекта:

// Модуль менеджера справочника Контрагент.

Функция ПолучитьСписокДебиторов()

КонецФункции

// Вызов из прикладного кода.

Дебиторы = Справочники. Контрагент. ПолучитьСписокДебиторов();

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

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

Макеты могут быть следующего типа:

· Табличный документ - предполагает использование стандартной технологии создания и использования макетов. Подготовка макета производится с помощью табличного редактора.

· Двоичные данные - используются двоичные данные.

· ActiveDocument - предполагает использование технологии OLE Active document.

· HTML-документ - предполагает использование редактора HTML-документа.

· Текстовый документ - предполагает использование текстового документа в качестве макета. Подготовка текстового макета производится с помощью редактора текстовых макетов.

· Географическая схема - предполагает использование географической схемы, подготовленной в редакторе географических схем, в качестве макета.

· Графическая схема - предполагает использование подготовленной в редакторе графической схемы.

· Схема компоновки данных - предполагает использование схемы компоновки данных, подготовленной в конструкторе.

· Макет оформления компоновки данных - предполагает использование макета оформления системы компоновки данных.

Быстрая пошаговая демонстрация разработки приложения на платформе 1С:Предприятие 8.2.

Для выполнения примера вам понадобится платформа 1С:Предприятие 8.2. На нашем сайте вы можете скачать . Данная демонстрация подготовлена с использованием именно такой версии!

Простая система кадрового учета

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

Каждая конфигурация должна храниться в отдельном каталоге (папке).

1. Создайте новую папку на любом диске нашего компьютера, например, "C:\Наши кадры".

2. Запустите 1С:Предприятие. Откроется список информационных баз. Если вы не создавали ни одной информационной базы и не добавляли существующие базы, то список будет пустым.

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

3. Нажмите кнопку "Добавить".

На первом шаге мастера выберите вариант "Добавление в список существующей информационной базы".

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

4. В следующем шаге укажите путь к папке, которую вы создали в 1 пункте нашего пошагового руководства (в нашем случае это C:\Наши кадры). Нажмите кнопку " …" , войдите в папку и нажмите "Выбрать".

Каталог с информационной базой может располагаться на локальном жестком диске компьютера, например "C:\Наши кадры", а может на другом компьютере в локальной сети, например, "\\SERVER\KADR". При этом должны быть предоставлены полные права доступа к этой папке (чтение, запись и т.д.).

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

6. Выберем режим запуска "Конфигуратор". Для этого нажмем на кнопку «Конфигуратор».

1С может запускаться в двух режимах:

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

7. Так как в созданной папке пока ничего нет, то 1С запросит подтверждение на создание новой информационной базы.

8. Нажмите "Да". Далее выбираем вариант "Создание информационной базы без конфигурации для разработки новой конфигурации или загрузки выгруженной ранее информационной базы" (2 вариант) и нажмите кнопку "Далее". На следующем шаге нажмите кнопку "Готово".

9. Запустится конфигуратор. Откройте дерево конфигурации, в котором мы будем работать очень часто. Для этого выберите в меню "Конфигурация" - "Открыть конфигурацию" или нажмите на соответствующую пиктограмму.

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

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

Создание объектов конфигурации

10. Установите курсор на строку "Справочники" и щелкните кнопку (или щелкните правой кнопкой мыши и выберите Добавить). При этом откроется Окно редактирования объекта конфигурации (своеобразный конструктор для создания справочника).

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

11. На первом шаге (вкладке) задайте "Имя" нашего справочника (идентификатор), например, "Должности". После ввода Имени нажмите на клавиатуре клавишу "Enter", либо переместитесь мышкой на следующее поле. На основании "Имени" система автоматически создаст "Синоним".

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

Относитесь к "Имени" справочника очень серьезно. Имя должно быть лаконичным, понятным, отражающим суть справочника, например: "Страны", "Сотрудники", "Товары" и т.д.

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

Свойство "Синоним" также есть у любого объекта конфигурации. Оно предназначено для хранения "альтернативного имени" объекта конфигурации (в нашем случае справочника). Именно оно будет использоваться в элементах интерфейса нашей программы, то есть будет показано пользователю. Для «Синонима» нет никаких ограничений и его можно задать в удобочитаемом виде, например, «Перечень должностей» и т.д.

У каждого справочника есть уже заранее заданные (предопределенные) два поля "Код" и "Наименование". Вы можете редактировать длину наименования, длину кода, а также тип кода: "Число" или "Строка".

13. Закройте Окно редактирования справочника "Должности".

14. Создадим новый справочник "Сотрудники" (см. пункт 10).

Задайте имя справочника (идентификатор) "Сотрудники".

Задайте длину наименования 100 символов.

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

15. В этом справочнике кроме уже заданных полей (Код и Наименование) у нас будет еще несколько полей (реквизитов, атрибутов). Сейчас список дополнительных реквизитов (полей) у нас пустой. Нажмите кнопку "Добавить".

В результате откроется окно редактирования свойств реквизита (палитра свойств). Кстати, реквизит, атрибут и поле - это в принципе одно и то же. Просто в терминологии 1С принято использовать "реквизит".

16. Задайте в палитре свойств имя реквизита - "Должность". Укажите тип реквизита - "СправочникСсылка.Должности", который мы создали раньше. Это говорит о том, что значения данного реквизита будут выбираться из справочника "Должности". Закрываем окно палитры свойств.

17. Создайте реквизит "Оклад" (тип Число, Длина 10, Точность 2). У значения типа "Число" точность указывает на количество знаков после запятой (в нашем случае 2 знака).

18. Создайте реквизиты ДатаПриема и ДатаУвольнения (тип Дата).

19. Теперь у нас есть два справочника и можно ввести некоторые данные.

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

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

20. Запустите систему в режиме 1С:Предприятие. Это можно сделать прямо из Конфигуратора, нажав на панели инструментов на или клавишу F5. Появится окно 1С:Предприятия.

21. Откройте справочник Должности. Для этого щелкните в панели навигации (в левой части окна приложения) по надписи (ссылке) Должности. Откроется окно справочника.

22. Введите несколько должностей, используя кнопку или клавишу INS. Например, директор, бухгалтер, программист.

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

По умолчанию установлена сортировка по Наименованию. Это позволяет набрать первые буквы названия должности, и курсор автоматически перейдет на нужную должность. Можно установить и другой тип сортировки: по коду или по реквизиту. Для этого достаточно щелкнуть левой кнопкой мышки по названию (заголовку) реквизита.

23. Откройте справочник Сотрудники.

24. Заведите нескольких сотрудников. Например, Иванов Иван Иванович - директор, Петров Петр Петрович - бухгалтер, Сидоров Сергей Сергеевич - программист. Заполняем только реквизиты Наименование (ФИО) и Должность. Заметьте, что при указании должности открывается справочник Должности. Для сохранения нового элемента справочника (новой записи) нажмите «Записать и закрыть».

25. Закройте окно 1С:Предприятие и вернитесь в режим Конфигуратора.

В реальной жизни принятие сотрудника на работу производится кадровым документом "Приказ о приеме на работу". Это мы и реализуем во 2 части нашего Пошагового примера.