Глава 2.
Основные понятия системы 1С:Предприятия
В этой главе рассматриваются основные понятия, которыми оперирует система 1С:Предприятие. Данная глава будет полезна тем, кто еще не знаком с системой 1С:Предприятие.
Описание тех или иных механизмов будет сопровождаться примерами. Возможно, что в описании примеров будут встречаться еще незнакомые вам понятия и термины. Продолжайте чтение: смысл используемых терминов будет ясен в процессе изложения, а для более подробной информации всегда можно обратиться к соответствующим главам настоящего Руководства.
Понятие «метаданные»
Основу концепции системы 1С:Предприятие составляет понятие метаданные. Однако прежде чем дать расшифровку этого понятия, введем понятие объекта метаданных.
Объект метаданных
Под объектом метаданных в системе 1С:Прсдприятие понимается формальное описание группы понятий предметной области со сходными характеристиками и одинаковым предназначением.
Приведем такой пример. Объект метаданных «Справочник» в системе 1С:Предприятие предназначен для ведения списков однородных элементов данных — справочников, картотек, нормативных сборников и тому подобное. Использование объектов метаданных этого типа позволяет организовать ведение любых справочников, необходимых для автоматизации деятельности предприятия.
Как правило, объекты метаданных типа «Справочник» являются компьютерными аналогами реально существующих на предприятии справочников, например, справочника сотрудников или номенклатуры товаров, хотя могут использоваться и для организации списков, не имеющих явных физических аналогов.
Реализованный в системе 1С:Предприятис при помощи объекта метаданных компьютерный аналог конкретного понятия предметной области будем называть объектом данных.
Свойства объекта метаданных
Каждый объект метаданных обладает уникальным набором свойств. Этот набор описан на уровне системы и не может быть изменен в процессе настройки конфигурации задачи. Набор свойств объекта метаданных определяется, в основном, его назначением в системе 1С:Предприятие.
Главным свойством любого объекта метаданных является идентификатор — краткое наименование объекта метаданных. При создании нового объекта метаданных ему автоматически присваивается условный идентификатор, состоящий из слова «Новый» и цифры. Этот идентификатор можно изменить в процессе редактирования свойств объекта метаданных, при этом система отслеживает уникальность идентификаторов. Однако идентификатор не может быть удален без удаления самого объекта метаданных.
Некоторые свойства из всего набора свойств, присущих объекту метаданных, доступны для редактирования и могут быть так или иначе изменены в процессе конфигурирования системы 1С:Предприятие. Характер изменений и их пределы также задаются на уровне системы. Целенаправленным изменением свойств объекта метаданных специалист, осуществляющий конфигурирование системы, может добиться требуемого поведения объекта при работе системы. Однако такие изменения не затрагивают сущности объекта и не позволяют добиться от него действий, не свойственных объектам данного типа.
Приведем такой пример.
Объект метаданных «Константа» в системе 1С:Предприятие предназначен для хранения информации, которая не изменяется во времени или изменяется очень редко. Простым примером константы может служить название предприятия: оно, как правило, не меняется о процессе деятельности предприятия.
Константа обладает следующим набором редактируемых свойств:
· идентификатор — «имя» константы;
· точность значения (для числовых констант);
Еще 2 свойства — «автоматическая проверка на неотрицательность при вводе значения в константу» и «разделение триад цифр при показе числовой константы» — носят, скорее, вспомогательный характер и не оказывают существенного влияния на поведение константы.
В наиболее общем случае информация в константу заносится один раз (как, например, все то же название предприятия). Информацию, записанную в константу, можно многократно извлекать, просто указывая имя константы. Конкретное значение константы в этом случае несущественно, а наиболее важным является то, что константа сохранила когда-то записанное в нее значение и возвратила его.
Способность сохранять и возвращать значение — неотъемлемая особенность любой константы в системе 1С:Предприятие. Никакое редактирование свойств константы на эту способность не влияет.
Форма объекта метаданных
Большинство объектов метаданных в системе 1С:Предприятие могут иметь визуальное представление. В самом общем случае визуальное представление состоит из следующих частей:
· экранный диалог, используемый для ввода и редактирования информации, хранящейся в объекте метаданных;
· печатная форма объекта метаданных (печатных форм может быть несколько);
· модуль формы — программа на встроенном языке системы 1С:Предириятие. Как правило, модуль формы содержит алгоритм построения печатной формы объекта метаданных, а также может выполнять обработку вводимой в диалог информации для целей входного контроля, выполнения расчетов и т. п.
Совокупность экранного диалога, печатной формы и модуля называется формой.
Способность иметь визуальное представление позволяет объекту метаданных организовать интерактивное взаимодействие с пользователем. Характер такого взаимодействия разрабатывается специалистом, осуществляющим конфигурирование системы 1С:Предприятие, и определяется, в основном, типом объекта метаданных.
Для разработки форм в Конфигураторе применяется комплексный редактор форм, позволяющий редактировать все компоненты формы во взаимосвязи.
Агрегатные объекты метаданных
Объекты метаданных в системе 1С:предприятие могут быть как независимыми, так и подчиняться друг другу.
Например, независимым объектом метаданных является константа. Константа самодостаточна: она может содержать какое-либо значение, и этим полностью исчерпывается ее назначение в системе 1С:Предприятие. Более того: константа может присутствовать в системе и даже может содержать какое-либо значение, но при этом не использоваться другими объектами метаданных. Правда, на практике такое встречается редко.
Теперь — прямо противоположный пример.
Объект метаданных «Реквизит справочника», который содержит какую-либо дополнительную информацию об элементе справочника, может существовать только в составе объекта метаданных «Справочник». Сам по себе, отдельно от справочника, реквизит справочника никогда не используется. Объект метаданных «Справочник» может вообще не содержать объектов типа «Реквизит справочника», но если такие объекты существуют, то они «живут» только внутри справочника.
Объекты метаданных, которые могут иметь в своем составе подчиненные объекты, называются агрегатными объектами метаданных.
Основные виды объектов метаданных
Все объекты метаданных, которые существуют в системе 1С:Прсднриятис, образуют несколько основных видов. Каждый вид объектов метаданных представляет собой как раз те «строительные элементы», из которых будет создаваться конфигурация.
Формально объекты метаданных объединяются в виды в дереве метаданных. Названия видов пользователь видит на первом уровне дерева метаданных, когда открывает окно «Конфигурация» в Конфигураторе.
Несмотря на отсутствие формального определения, названия видов объектов метаданных широко используются при работе с системой 1С:Преднриятие.
Например, специалист, осуществляющий конфигурирование системы 1С:Предприятие, видит свою цель в разработке необходимого набора справочников, документов, отчетов, журналов, которые будут реализовывать требуемую систему учета. Конечный пользователь системы 1С:Предприятие — руководитель, бухгалтер, менеджер, кладовщик — также оперирует конкретными справочниками, документами и т. д. для решения стоящих перед ним задач. Общение между двумя этими категориями пользователей также будет происходить в понятиях видов объектов метаданных.
Ниже приведена краткая характеристика основных видов объектов метаданных системы 1С:Предприятие (см. таблицу). Подробная информация об объектах метаданных, объединяемых в каждом из этих видов, будет изложена далее в настоящем Руководстве.
Наименование
Краткая характеристика
Постоянные (условно-постоянные) величины. Константы хранят информацию, которая не изменяется или изменяется достаточно редко: название организации, се почтовый адрес и так далее.
Списки однородных элементов данных. Используются для храпения нормативно-справочной информации.
Служат для ввода информации о совершенных хозяйственных операциях.
Списки объектов данных типа «Документ». Служат для работы с документами.
Списки значений, задаваемые на этапе конфигурирования.
Средство получения выходной информации. Источником данных для построения отчетов служат документы, справочники и регистры, также используется информация, хранящаяся в константах.
Объекты метаданных этого вида используются для выполнения различных действий над информационной базой.
Списки объектов данных типа «бухгалтерский счет» — учетных регистров, по которым будет выполняться группировка средств при работе с системой 1С:Прсдприятие. Понятие «план счетов» в системе 1С:Предприятис вполне соответствует общепринятому пониманию аналогичного термина в бухгалтерском учете.
Списки объектов аналитического учета. Используются для организации аналитического учета средств предприятия, в совокупности с бухгалтерскими счетами.
Средство отражения в бухгалтерском учете хозяйственных операций, происходящих на предприятии. Объектами данных этого типа являются «операции» — совокупности бухгалтерских проводок, выполняющие изменения в остатках и оборотах по бухгалтерским счетам.
Бухгалтерские проводки. Используются только совместно с объектами данных «Операция» и предназначены для отражения в бухгалтерских итогах результатов хозяйственных операций.
Средство накопления оперативной информации о наличии и движении средств.
Средство проведения периодических расчетов и хранения результатов расчета прошлых периодов. Каждый журнал связан с одним из справочников, который называется справочником объектов расчета. Каждая строка журнала — единичный акт расчета, который производится для определенного объекта по определенному алгоритму, имеет протяженность во времени и результат.
Алгоритмы, по которым могут проводиться расчеты записей журналов расчета.
Средство логического объединения видов расчета по тем или иным признакам.
Средство построения графиков работы предприятия, внешних организаций или отдельных категорий работников.
Элемент данных какого-либо вида является уже конкретным документом, отчетом, журналом, константой и так далее. Как правило, каждый элемент используется для работы со вполне определенной информацией предметной области.
Типизированные и типообразующие объекты метаданных
Одним из свойств объекта метаданных является тип значения, которое может принимать объект. Тип значения определяет, какого рода информацию может содержать объект метаданных. Тип значения объекта метаданных назначается при создании или редактировании свойств объекта в процессе настройки конфигурации задачи.
Свойство «Тип значения» существует не у всех объектов метаданных: как правило, агрегатные объекты метаданных — типа «Справочник», «Документ», «Журналы» и тому подобные — не обладают этим свойством, так как содержат «комплексную» информацию, то есть хранят одновременно данные разных типов.
Объекты метаданных, для которых может быть указан тип информации, содержащейся в объекте, в системе 1С:Предприятие называются типизированными объектами метаданных.
Типы значений, которые может принимать объект метаданных, можно разделить на 2 группы.
Первую группу составляют базовые типы значений: «число», «строка» и «дата». Соответственно, информация, хранящаяся в объекте метаданных, может быть числом, произвольной строкой символов или датой.
Кроме этого, некоторые объекты метаданных системы 1С:Предприятие также могут образовывать типы значений. Например, константе может быть назначен тип значения «Документ». В этом случае значение константы будет представлять собой ссылку на один из существующих в системе 1С:Предприятие документов.
Объекты метаданных, которые могут образовывать типы значений других объектов метаданных, в системе 1С:Предприятие называются типообразующими объектами метаданных. Такими объектами в системе 1С:Предприятие являются:
Необходимо обратить внимание, что типообразующие объекты метаданных образуют тип значения сразу после создания в Конфигураторе объекта любого из таких типов. Например, когда в Конфигураторе создается новый справочник, то в списке типов значений появляется наименование созданного справочника. Такой тип значения может быть присвоен любому из типизированных объектов метаданных.
Метаданные
Итак, теперь можно дать расшифровку самого понятия «метаданные».
Метаданными («данными о данных») в системе 1С:Предприятие называется совокупность объектов метаданных, настроенных на хранение и обработку информации о хозяйственной деятельности конкретного предприятия.
Наряду с понятием метаданные, в настоящем Руководстве будет широко использоваться термин «структура метаданных». Данный термин более точно отражает суть метаданных, как сложной структуры взаимодействующих объектов метаданных. Фактически, структура метаданных является моделью предметной области.
Конфигурация
Конфигурацией в системе 1С:Предприятие называется совокупность трех взаимосвязанных составных частей:
· набора пользовательских интерфейсов;
Создание конфигурации выполняется при помощи Конфигуратора. Созданная конфигурация используется системой 1С:Предприятие для реализации программного окружения, пригодного для выполнения необходимых учетных задач.
Расшифровка понятия метаданные была дана ранее в этой главе.
Пользовательским интерфейсом в системе 1С:Предприятие называется совокупность команд главного меню и панелей инструментов, настроенных на работу с конкретными объектами данных — документами, справочниками, журналами и т. д. Как правило, пользовательский интерфейс создастся для конкретной категории пользователей. Цель создания интерфейса — обеспечить быстрый доступ пользователей к той информации, которая необходима им в соответствии с их обязанностями.
Права в системе 1С:Предприятие определяют полномочия пользователей на работу с информацией, которая обрабатывается в системе. Совокупность предоставляемых пользователю прав определяется, как правило, кругом его обязанностей.
Операция назначения прав пользователю решает две основные задачи.
С одной стороны, ограничивается круг пользователей конфиденциальной информации, которая, безусловно, всегда присутствует в любой системе учета.
С другой стороны, запрет выполнения определенных операций (в первую очередь, операций удаления и корректировки данных) позволяет в какой-то степени предотвратить возможные потери информации.
Все три составные части конфигурации тесно связаны между собой и требуют, как правило, согласованного внесения изменений (особенно это касается пользовательских прав).
Так, назначение прав может выполняться только для существующих объектов метаданных (конкретных документов, журналов, справочников, отчетов). Добавление в структуру метаданных нового объекта должно сопровождаться внесением соответствующих изменений в права.
Команды, которые можно связать с элементами пользовательского интерфейса, управляют конкретными объектами метаданных. Очевидно, что нет смысла включать в пользовательский интерфейс команды по работе с информацией, доступ к которой пользователю запрещен.
Модуль
Модулем называется программа на встроенном языке системы 1С:Предприятие. Модули располагаются в заданных точках структуры метаданных и вызываются для выполнения в заранее известные моменты работы системы 1С:Предприятие. Специалист, выполняющий конфигурирование системы, может использовать модули для описания сложных алгоритмов взаимодействия объектов метаданных, для которых недостаточно имеющихся в Конфигураторе визуальных средств.
Приведем такой пример.
В системе 1С:Предприятис может быть организован удобный для пользователей режим ввода новых документов — «ввод на основании». Суть этого режима проста: за основу берется документ-образец (например, счет на оплату), из которого в новый создаваемый документ (например, расходную накладную) переносится информация о получателе, товарах, ценах, количестве.
Перенос информации из документа-образца во вновь создаваемый документ выполняется при помощи специальной процедуры ВводНаОсновании(), содержащейся в модуле последнего.
Предварительная настройка режима «ввода на основании» для конкретного документа выполняется в Конфигураторе диалоговыми средствами. Однако алгоритм переноса информации из документа-образца в новый документ должен создать специалист, выполняющий конфигурирование системы. Этот алгоритм хранится в модуле, «привязанном» к форме документа, и выполняется всякий раз при показе документа.
Как получить тип объекта метаданных?
Надо мне определить — к какому КЛАССу метаданных относится объект — замучаешься Содержит() вызывать.
А тут — раз метаданные получил — живи и радуйся.
(5) так он же не один раз будет проверять. можно и за кэшировать.
а с попыткой потом отлаживать морока, остановку по ошибке толком не поюзаешь
(6) Что ты там закешируешь?
Если Метаданные.Справочники.Содержит(МетаданныеОбъекта) Тогда
Возврат «Справочник»;
ИначеЕсли Метаданные.Документы.Содержит(МетаданныеОбъекта) Тогда
.
О_о в 8.1 еще можно так
Если Объект.Метаданные().Родитель = Метаданные.Справочники Тогда
ЭтоСправочник = Истина;
КонецЕсли;
Типы значений 1С
В 1С очень много предопределенных типов значений, их можно подразделить на несколько групп.
Группы типов данных
- простые (примитивные) типы
- типы-объекты и их подчиненные
- типы-объекты из метаданных (прикладные типы)
- интерфейсные типы
- прочие типы общего назначения
Простые типы
- Строка (задается значением в кавычках «»)
- Число (Задается десятичным числом)
- Дата (дата и время)
- Булево (Истина,Ложь.
Типы-объекты
- Коллекции значений (Массивы, Структуры, ТаблицыЗначений и другие)
- Интеграционные (Com, файлы, внешние объекты, zip, WS)
- Общего назначения
Объекты из метаданных (прикладные)
- Константы
- Справочники
- Документы
- Перечисления
- Отчеты
- Обработки
- Планы счетов
- Задачи
- Регистры сведений
- Регистры накоплений
- Регистры бухгалтерского учета
- и другие…
Интерфейсные
Связанные с окнами, формами и элементами форм (полей, надписей, табличных данных и других)
Другие варианты подразделения значений
- Значения, которые можно записать в реквизит объекта (в поле информационной базы) и те, которые нельзя
- Объекты, которые можно визуально представить, и те, которые имеют виртуальную сущность
- Типы значений которые, связаны с конфигурацией и ее объектами или работающие обособленно
- Которые могут быть разграничены по правам пользователей- не могут
- Могут достаточно просто преобразовываться — либо требуется вспомогательная конвертация
- Есть свойства и методы — либо отсутствуют
Задание типов значений
Значение может быть установлено:
Непосредственно
Через создание объекта
Через результат вызова системной функции
Через обращение к свойству объекта
Составные и простые типы
Если не указано специально, то тип значений не ограничивается.
В случае реквизитов объектов метаданных, тип значений задается на этапе конфигурирования из типов доступных к записи (примитивные, ссылки на объекты, хранилище значений), а так же от вида объекта и контекста(среды, места) исполнения. При этом доступно ограничение реквизита одним типом или несколькими. Например, нам необходимо записывать в одно поле, либо значение «строки», либо «числа».
Для других объектов, тип реквизитов может остаться не ограниченными (произвольного типа), либо ограничен через специальный тип «ОписаниеТипов«
Например, для простого случая
Данный объект также используется для ограничения выбора или внесения данных в диалоговых формах
Приведение значений
Производится автоматически при присвоении к реквизиту (свойству) объекта, если данный реквизит не может хранить данное значение
Также при операциях конкатенации, производится к сначала первому слагаемому, при вычитании, если допустимо, ко втором, а затем уже к результату.
Такие «сложные» преобразования требуется проводить с осторожностью.
Приведение значений через встроенные функции преобразования
Следует обратить внимание, что некоторые преобразования система не сможет сделать, и это вызовет ошибку исполнения, поэтому проверка должна производится разработчиком
Проверка типов
Сравнение производится через специальные функции ТипЗнч() и Тип().
Первая возвращает значение передаваемого типа, вторая задает тип для проверки
ЭтоЧисло = 15; //ответ на вопрос: тип значения переменной «ЭтоЧисло» является ли типом «Число» ЭтоБулево = ТипЗнч(ЭтоЧисло) = Тип(«Число»); //Первый знак «=» — присвоение //Второй » i-11″>Сравнение значений
- при сравнении на равенство по четкому совпадению типа и значения, приведение не производится
- сравнение на > или < (на больше-меньше) допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)
Более подробно на типах останавливаться не буду, лучше их прочувствовать в реальных задачах или узких примерах
Реклама магазина самообслуживания: треска, стоящая в очереди за cобственной печенью.
— Владимир Колечицкий
(V 7.7) Справка по работе с метаданными (с примерами)
Метаданные в 1С — это специальные данные, описывающие структуру базы данных. Почти все, что мы видим в графическом представлении в конфигураторе может быть получено программным путем при работе в 1С в режиме «Предприятие». Исключение составляют только наборы прав и интерфейсы. В программе получение метаданных происходит через объект « Метаданные ».
Теперь рассмотрим подробно все разделы метаданных. Для краткости будут описаны только основные свойства. Всю доступную информацию о метаданных можно получить в конфигураторе: Главное меню -> Конфигурация -> Описание структуры метаданных.
(Константы)
С помощью объекта метаданных «Константа» можно получить доступ к списку констант конфигурации и к свойствам каждой из констант.
Метаданные. Константа() — возвращает количество констант в конфигурации. Доступ к свойствам константы возможен либо по ее порядковому номеру в конфигурации, либо по ее идентификатору. Метаданные .Константа([«Идентификатор»/Номер]).
У константы есть следующие свойства:
— Идентификатор — идентификатор константы (Cтрока).
— Синоним — синоним константы (Cтрока).
— Комментарий — комментарий константы (Cтрока).
— Тип — тип константы (Cтрока).
— Вид — вид (Cтрока), (если тип — Справочник).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0/1]).
— РазделятьТриады — разделять триады (Число [0/1]).
— Периодический — является ли данная константа периодической (Число [0/1]).
Вот пример доступа к константам по их порядковому номеру, сообщающий все константы конфигурации и их свойства:
Доступ по идентификатору:
(Справочники)
Количество справочников в конфигурации можно узнать следующим образом: Метаданные .Справочник().
Для работы с метаданными справочников используется такая конструкция: Метаданные .Справочник([«Идентификатор»/Номер]).
У каждого справочника доступны следующие свойства:
— Идентификатор — идентификатор справочника (Cтрока).
— Синоним — синоним справочника (Cтрока).
— Комментарий — комментарий справочника (Cтрока).
— Владелец — ссылка на справочник-владелец (МетаданныеСсылка).
— КоличествоУровней — количество уровней в справочнике (Число).
— ДлинаКода — длина кода элемента/группы справочника (Число).
— ДлинаНаименования — длина наименования элемента/группы справочника (Число).
— СерииКодов — вариант назначения кодов справочника (Cтрока [«ВПределахПодчинения» / «ВесьСправочник»]).
— ТипКода — тип кода (Cтрока [«Числовой» / «Текстовый»]).
— ОсновноеПредставление — режим представления элемента/группы справочника (Cтрока [«ВВидеКода» / «ВВидеНаименования»]).
— КонтрольУникальности — контроль уникальность элементов справочника (Число [0 / 1]).
— АвтоНумерация — автоматическая нумерация элементов/групп справочника (Число [1 / 2]). 1 — нет автонумерации, 2 — есть.
— ГруппыВпереди — показывать группы в начале списка (Число [0 / 1]).
— СпособРедактирования — способ редактирования элемента/группы (Cтрока [«ВСписке» / «ВДиалоге» / «ОбоимиСпособами»]).
— ЕдинаяФормаЭлемента — одна форма для элемента и группы(Число [0 / 1]).
— ОсновнаяФорма — ссылка на основную форму списка справочника (МетаданныеСсылка).
— ОсновнаяФормаДляВыбора — ссылка на форму списка для выбора справочника (МетаданныеСсылка).
Количество реквизитов у справочника в конфигурации можно узнать следующим образом:
Для доступа к свойствам реквизита справочника используется следующая конструкция:
Метаданные .Справочник([«Идентификатор»/Номер]).Реквизит([«Идентификатор»/Номер]), то есть после определения анализируемого справочника по его идентификатору или порядковому номеру в конфигурации идет определение реквизитов справочника по их идентификатору или порядковому номеру.
У каждого из реквизитов справочника доступны следующие свойства:
— Идентификатор — идентификатор реквизита справочника (Cтрока).
— Синоним — синоним реквизита справочника (Cтрока).
— Комментарий — комментарий реквизита справочника (Cтрока).
— Тип — тип реквизита справочника (Cтрока).
— Вид — вид реквизита справочника (Cтрока), (если тип — Справочник).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0 / 1]).
— РазделятьТриады — разделять триады (Число [0 / 1]).
— Периодический — является ли данный реквизит справочника периодическим (Число [0 / 1]).
— Сортировка — показывает, возможен ли отбор или поиск по данному реквизиту методами НайтиПоРеквизиту() или ВыбратьЭлементыПоРеквизиту()(Число [0 / 1]).
— Отбор — показывает, возможен ли интерактивный отбор элементов (Число [0 / 1]).
— РучноеИзменение — показывает, разрешено ли ручное изменение для данного реквизита, если он периодический (Число [0 / 1]).
— ИзменяетсяДокументами — показывает возможность установления периодического реквизита документами(Число [0 / 1]).
— Использование — режим использования реквизита справочника (Cтрока [«ДляЭлемента»,»ДляГруппы»,»ДляОбоих»]).
Далее следует описание всех доступных форм списка справочника.
Количество имеющихся форм можно узнать следующим образом: Метаданные .Справочник([«Идентификатор»/Номер]).ФормаСписка();
У формы списка есть три доступных свойства:
— Идентификатор — идентификатор формы списка(Cтрока).
— Синоним — синоним формы списка(Cтрока).
— Комментарий — комментарий формы списка(Cтрока).
(Общие реквизиты документов)
Для получения сведения о количестве общих реквизитов документов из метаданных используется конструкция: Метаданные .ОбщийРеквизитДокумента();
Для доступа к свойствам каждого реквизита в свойствах общего реквизита документа используется следующая конструкция:
Метаданные .ОбщийРеквизитДокумента([«Идентификатор»/Номер]).Реквизит([«Идентификатор»/Номер]), то есть после определения анализируемого общего реквизита документа по его идентификатору или порядковому номеру в конфигурации идет определение реквзитов общего реквизита документа по их идентификатору или порядковому номеру.
У каждого из общих реквизитов документа доступны следующие свойства:
— Идентификатор — идентификатор общего реквизита документа (Cтрока).
— Синоним — синоним реквизита общего реквизита документа (Cтрока).
— Комментарий — комментарий реквизита общего реквизита документа (Cтрока).
— Тип — тип реквизита общего реквизита документа (Cтрока).
— Вид — вид реквизита общего реквизита документа (Cтрока), (если тип — Справочник).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0/1]).
— РазделятьТриады — разделять триады (Число [0/1]).
— Сортировка — показывает, режим размещения поля, содержащего данный общий реквизит документа в базе данных (Число [0/1]). Если 0 — то такое поле содержится в шапке каждого из документов, если 1 — такое поле не содержится в документах, а содержится в журнале документов 1sjourn.
Вот пример доступа к общим реквизитам документа по их порядковому номеру, сообщающий все общие реквизиты документа в конфигурации и их свойства:
(Нумераторы)
Нумераторы в 1С — очень полезная вещь. Они позволяют вести сквозную нумерацию по нескольким различным видам документов.
Количество нумераторов в конфигурации можно узнать следующим образом: Метаданные .Нумератор().
Для работы с метаданными нумераторов используется такая констукция: Метаданные .Нумератор([«Идентификатор»/Номер]).
У каждого нумератора доступны следующие свойства:
— Идентификатор — идентификатор нумератора (Cтрока).
— Синоним — синоним нумератора (Cтрока).
— Комментарий — комментарий нумератора (Cтрока).
— ПериодичностьНомера — вариант установленной периодичности номера для данного нумератора (Строка [«Все»/»Год»/»Квартал»/»Месяц»/»День»]).
— ДлинаНомера — длина номера документа для этого нумератора (Число).
— ТипНомера — тип номера документа в нумераторе (Строка [«Числовой»/»Текстовый»]).
— АвтоНумерация — признак автонумерации документа Число [«1″/»2»]). Единица обозначает отсутствие автонумерации документов, двойка — наличие автонумерации.
— КонтрольУникальности — признак контроля уникальности номеров документов для данного нумератора Число [«0″/»1»]). Ноль — нет контроля, единица — контроль включен.
(Документы)
Для получения количества документов, присутствующих в конфигурации, используется следующая конструкция: Метаданные .Документ();
Для работы с метаданными документов используется такая констукция: Метаданные .Документ([«Идентификатор»/Номер]).
Присутствующая в метаданных информация описывает как свойства самого документа, так и свойства всех его реквизитов, как находящихся в шапке, так и в табличной части документа (об общих реквизитах документа можно прочитать здесь).
Для начала рассмотрим непосредственно свойства документа:
— Идентификатор — идентификатор документа (Cтрока).
— Синоним — синоним документа (Cтрока).
— Комментарий — комментарий документа (Cтрока).
— Журнал — ссылка на журнал, к которому относится данный документ (МетаданныеСсылка).
— ПериодичностьНомера — вариант установленной периодичности номера (Строка [«Все» / «Год» / «Квартал» / «Месяц» / «День»]).
— ДлинаНомера — длина номера документа (Число).
— ТипНомера — тип номера в документе (Строка [«Числовой» / «Текстовый»]).
— АвтоНумерация — признак автонумерации документа Число [«1» / «2»]). Единица обозначает отсутствие автонумерации документов, двойка — наличие автонумерации.
— КонтрольУникальности — признак контроля уникальности номеров документов Число [«0» / «1»]). Ноль — нет контроля, единица — контроль включен.
— Нумератор — ссылка на используемый в документе нумератор (МетаданныеСсылка).
— ОперативныйУчет — признак принадлежности документа к оперативному учету (Число [«0» / «1»]).
— Расчет — признак принадлежности документа к расчету (Число [«0» / «1»]).
— БухгалтерскийУчет — признак принадлежности документа к бухгалтерскому учету (Число [«0» / «1»]).
— СоздаватьОперацию — вариант создания операции в бухгалтерских документах (Строка [«Всегда» / «Выборочно» / «ТолькоПриПроведении»]).
— АвтоНумерацияСтрок — признак автоматической нумерации строк документа (Число [«0» / «1»]).
— АвтоудалениеДвижений — признак автоматического удаления движений (Число [«0» / «1»]).
— РедактированиеОпераций — признак разрешения редактировать операцию документа (Число [«0» / «1»]).
— РазрешитьПроведение — признак разрешения проведения документа (Число [«0» / «1»]).
— ВводимыеНаОснованииДокументы — список документов, вводимых на основании документов данного вида (МетаданныеСсылки).
— ОснованиеДляЛюбогоДокумента — признак принадлежности документа к бухгалтерскому учету (Число [«0» / «1»]).
— ОбластьРаспространения — область распространения данных документов этого вида (Строка [«ВсеИнформационныеБазы» / «МестоСоздания» / «МестоСозданияИЦентр»]).
— АвтоРегистрация — автоматическая регистрация изменений (Число [«0» / «1»]).
— ДополнительныеКодыИБ — дополнительные коды баз для компоненты УРБД (Строка).
Для доступа к метаданным, описывающим реквизиты документа используется следующий механизм доступа.
Для получения количества реквизитов шапки документа используется обращение:
Метаданные .Документ([«Идентификатор»/Номер]).РеквизитШапки().
Для обращения к свойствам реквизита используется такая конструкция:
Метаданные .Документ([«Идентификатор»/Номер]).РеквизитШапки([«Идентификатор»/Номер]).
У каждого из реквизитов шапки документа доступны следующие свойства:
— Идентификатор — идентификатор реквизита документа (Cтрока).
— Синоним — синоним реквизита документа (Cтрока).
— Комментарий — комментарий реквизита документа (Cтрока).
— Тип — тип реквизита документа (Cтрока).
— Вид — вид реквизита (Cтрока), (если тип — Справочник).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0 / 1]).
— РазделятьТриады — разделять триады (Число [0 / 1]).
Для получения количества реквизитов табличной части документа используется обращение:
Метаданные .Документ([«Идентификатор»/Номер]).РеквизитТабличнойЧасти().
Для обращения к свойствам реквизита табличной части документа используется такая конструкция:
Метаданные .Документ([«Идентификатор»/Номер]).РеквизитТабличнойЧасти([«Идентификатор»/Номер]).
У каждого из реквизитов табличной части документа доступны следующие свойства:
— Идентификатор — идентификатор реквизита табличной части документа (Cтрока).
— Синоним — синоним реквизита табличной части документа (Cтрока).
— Комментарий — комментарий реквизита табличной части документа (Cтрока).
— Тип — тип реквизита документа (Cтрока).
— Вид — вид реквизита (Cтрока), (если тип — Справочник).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0 / 1]).
— РазделятьТриады — разделять триады (Число [0 / 1]).
— ИтогПоКолонке — признак наличия итога по колонке для данного реквизита табличной части документа (Число [«0» / «1»]).
(Журналы)
Количество журналов в конфигурации можно узнать следующим образом: Метаданные .Журнал().
Для работы с метаданными журналов используется такая констукция: Метаданные .Журнал([«Идентификатор» / Номер]).
У каждого журнала доступны следующие свойства:
— Идентификатор — идентификатор журнала (Cтрока).
— Синоним — синоним журнала (Cтрока).
— Комментарий — комментарий журнала (Cтрока).
— ТипЖурнала — тип журнала (Cтрока [«Обычный» / «Общий» / «Дополнительный»]).
— Состав — Список документов, входящих в данный журнал (МетаданныеСсылки).
— ОсновнаяФорма — Основная форма журнала (МетаданныеСсылка).
— ОсновнаяФормаДляВыбора — Форма журнала, предназначенная для выбора документа (МетаданныеСсылка).
— ДляЖурналаПодчиненныхДокументов — признак использования данного журнала в качестве журнала подчиненных документов (Число [«0» / «1»]).
— ДляПолногоЖурнал а — признак использования данного журнала в качестве полного журнала документов (Число [«0» / «1»]).
Кроме всего прочего, метаданные позволяют получить доступ к свойствам граф журнала. Количество существующих граф журнала определяется следующим образом: Метаданные .Журнал([«Идентификатор» / Номер]).Графа();.
Соответственно, чтобы получить доступ к свойствам конкретной графы используется следующая конструкция: Метаданные .Журнал([«Идентификатор» / Номер]).Графа([«Идентификатор» / Номер]).
У каждой графы журнала существует следующий набор свойств:
— Идентификатор — идентификатор графы журнала (Cтрока).
— Синоним — синоним графы журнала (Cтрока).
— Комментарий — комментарий графы журнала (Cтрока).
— Ссылки — список ссылок на реквизиты документов, составляющие содержимое данной графы (МетаданныеСсылки).
Далее следует описание всех доступных форм списка журнала.
Количество имеющихся форм можно узнать следующим образом: Метаданные .Журнал([«Идентификатор»/Номер]).ФормаСписка();
У формы списка есть три доступных свойства:
— Идентификатор — идентификатор формы списка(Cтрока).
— Синоним — синоним формы списка(Cтрока).
— Комментарий — комментарий формы списка(Cтрока).
(Перечисления)
Количество перечислений в конфигурации можно узнать следующим образом: Метаданные .Перечисление();.
Для работы с метаданными перечислений используется такая констукция: Метаданные .Перечисление([«Идентификатор» / Номер]).
У каждого перечисления доступны следующие свойства:
— Идентификатор — идентификатор перечисления (Cтрока).
— Синоним — синоним перечисления (Cтрока).
— Комментарий — комментарий перечисления (Cтрока).
Далее следует описание всех доступных значений перечисления.
Количество имеющихся значений перечисления можно узнать следующим образом: Метаданные .Перечисление([«Идентификатор»/Номер]).Значение();
У каждого значения перечисления есть три доступных свойства:
— Идентификато р — идентификатор значения перечисления (Cтрока).
— Комментарий — комментарий значения перечисления (Cтрока).
— Представление — представление значения перечисления (Cтрока).
Вот пример доступа к перечислениям по их порядковому номеру, сообщающий все виды и значения перечислений в конфигурации и их свойства:
(Отчеты и обработки)
Количество отчетов и обработок в конфигурации можно узнать следующим образом: Метаданные .Отчет(); и Метаданные .Обработка();.
Для работы с метаданными отчетов и обработок используется такие констукции: Метаданные .Отчет([«Идентификатор» / Номер]) и Метаданные .Обработка([«Идентификатор» / Номер]).
У каждого отчета и обработки доступны следующие свойства:
— Идентификатор — идентификатор отчета или обработки (Cтрока).
— Синоним — синоним отчета или обработки (Cтрока).
— Комментарий — комментарий отчета или обработки (Cтрока).
(Последовательности)
Количество последовательностей в конфигурации можно узнать следующим образом: Метаданные .Последовательность();.
Для работы с метаданными последовательностей используется такие констукции: Метаданные .Последовательность([«Идентификатор» / Номер]).
У каждой последовательности доступны следующие свойства:
— Идентификатор — идентификатор последовательности (Cтрока).
— Синоним — синоним последовательности (Cтрока).
— Комментарий — комментарий последовательности (Cтрока).
— ВлияющиеДвижения — список регистров, влияющих на данную последовательность (МетаданныеСсылки).
— Документы — список документов, входящих в данную последовательность (МетаданныеСсылки).
(Регистры)
Для получения количества регистров, присутствующих в конфигурации, используется следующая конструкция: Метаданные .Регистр();
Для работы с метаданными регистров используется такая констукция: Метаданные .Регистр([«Идентификатор»/Номер]).
У регистра доступны следующие свойства:
— Идентификатор — идентификатор регистра (Cтрока).
— Синоним — синоним регистра (Cтрока).
— Комментарий — комментарий регистра (Cтрока).
— ТипРегистра — тип регистра (Строка [«Остатки» / «Обороты»]).
— ПериодичностьРегистра — периодичность хранения оборотов для оборотного регистра (Cтрока [«День» / «Неделя» / «Декада» / «Месяц» / «Квартал» / «Год»]).
— БыстраяОбработкаДвижений — признак установленности быстрой обработки движений для регистра (Число [«0» / «1»]).
— МиграцияЗапрещена — Признак запрета миграции данного регистра в другие базы при использовании компоненты управления разпределенными базами данных (Число [«0» / «1»]).
У каждого регистра может быть набор измерений, ресурсов и реквизитов. Рассмотрим всех их по порядку.
Для получения количества измерений у регистра используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Измерение();
Для доступа к свойствам измерения используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Измерение([«Идентификатор» / Номер]);
У каждого из измерений регистра доступны следующие свойства:
— Идентификатор — идентификатор измерения регистра (Cтрока).
— Синоним — синоним измерения регистра (Cтрока).
— Комментарий — комментарий измерения регистра (Cтрока).
— Тип — тип измерения регистра (Cтрока).
— Вид — вид измерения регистра (Cтрока), (если тип — Справочник, Документ или Перечисление).
— Длина — длина (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — не используется.
— РазделятьТриады — разделять триады (Число [0 / 1]).
— ОтборДвижений — признак установленности отбора движений для регистра по данному реквизиту (фактически означает создание дополнительного индекса к таблице движений регистра).(Число [«0» / «1»]).
— ОтборИтогов — признак установленности отбора итогов для регистра по данному реквизиту (фактически означает создание дополнительного индекса к таблице итогов регистра).(Число [«0» / «1»]).
Для получения количества ресурсов у регистра используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Ресурс();
Для доступа к свойствам ресурсов используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Ресурс([«Идентификатор» / Номер]);
У каждого из ресурсов регистра доступны следующие свойства:
— Идентификатор — идентификатор ресурса регистра (Cтрока).
— Синоним — синоним ресурса регистра (Cтрока).
— Комментарий — комментарий ресурса регистра (Cтрока).
— Тип — не используется, всегда «Число».
— Вид — не используется.
— Длина — длина (Число).
— Точность — точность (Число).
— НеОтрицательный — не используется.
— РазделятьТриады — разделять триады (Число [0 / 1]).
Для получения количества реквизитов у регистра используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Реквизит();
Для доступа к свойствам реквизитов используется следующая конструкция: Метаданные .Регистр([«Идентификатор» / Номер]).Реквизит([«Идентификатор» / Номер]);
У каждого из ресурсов реквизитов доступны следующие свойства:
— Идентификатор — идентификатор реквизитов регистра (Cтрока).
— Синоним — синоним ресурса реквизитов (Cтрока).
— Комментарий — комментарий ресурса регистра (Cтрока).
— Тип — тип ресурса регистра (Cтрока).
— Вид — вид ресурса регистра (Cтрока), (если тип — Справочник, Документ или Перечисление).
— Длина — длина ресурса (Число), (если тип — Строка или Число).
— Точность — точность (если тип — Число).
— НеОтрицательный — запрет отрицательных значений (Число [0/1]).
— РазделятьТриады — разделять триады (Число [0 / 1]).
— Сортировка — признак установленного отбора движений по значению реквизита (фактически означачет дополнительный индекс по таблице движений регистра) (Число [0/1]).
(Графы отбора журналов)
Для получения количества граф отбора журналов, присутствующих в конфигурации, используется следующая конструкция: Метаданные .ГрафаОтбора();
Для работы с метаданными граф отбора журналов используется такая констукция: Метаданные .ГрафаОтбора([«Идентификатор»/Номер]).
У графы отбора журнала доступны следующие свойства:
— Идентификато р — идентификатор графы отбора журнала (Cтрока).
— Синоним — синоним графы отбора журнала (Cтрока).
— Комментарий — комментарий графы отбора журнала (Cтрока).
— Ссылки — ссылки на элементы метаданных, формирующих данную графу отбора журнала (МетаданныеСсылки).
— ОтборПустыхЗначений — отбор пустых значений для графы отбора журнала (Число [0/1]).
— Тип — тип графы отбора журнала (Cтрока).
— Вид — вид графы отбора журнала (Cтрока), (если тип — Справочник, Документ или Перечисление).
(Свойства метаданных 1с)
Здесь находится вся общая информация, описывающая конфигурацию 1с в целом:
— Метаданные .Идентификатор — идентификатор конфигурации (Cтрока). Пример: «Торговля+Склад, редакция 9.0»
— Метаданные .Синоним — синоним конфигурации (Cтрока).
— Метаданные .Комментарий — комментарий конфигурации (Cтрока).
— Метаданные .Пароль — наличие пароля на конфигурации (Число [0/1]).
— Метаданные .Язык — язык конфигурации (Cтрока). Пример: «Русский».
— Метаданные .Округление — выбранный в конфигурации вариант округления (Cтрока [«Окр1_5До2″/»Окр1_5До1»]).
— Метаданные .НепосредственноеУдалениеОбъектов — разрешено ли непосредственное удаление (Число [0/1]).
— Метаданные .АвторРазвернутаяИнформация — информация об авторе полная (Cтрока).
— Метаданные .АвторКороткаяИнформация — информация об авторе краткая (Cтрока).
— Метаданные .ЖурналПодчиненныхДокументов — журнал подчиненных документов (МетаданныеСсылка). Пример: «Журнал.Общий».
— Метаданные .ПолныйЖурнал — полный журнал документов (МетаданныеСсылка). Пример: «Журнал.Общий».
Тип реквизита метаданных 1с МетаданныеСсылка — это ссылка на другие объекты метаданных 1с.