Опубликован: 15.03.2006 | Уровень: для всех | Доступ: свободно
Лекция 3:

Объекты конфигурации

Документы

Документы

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

Наиболее важными характеристиками документа, отличающими его от других объектов, является наличие у него номера и даты. В 1С:Предприятии 8.0 значения типа "дата" включают в себя также и время.

В платформе 8.0 используются встроенные реквизиты документа Номер и Дата в отличие от встроенных реквизитов документа платформы 7.7 НомерДок и ДатаДок. Максимальная длина номера увеличена до 50 символов.

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

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

Больше нет общих реквизитов документов. Поддержка общих реквизитов отрицательно сказывалась на производительности при интенсивном вводе документов, поэтому в версии 8.0 от них было решено отказаться.

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

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

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

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

Определим необходимый состав реквизитов:

Наименование реквизита Тип значения Значение
Автор СправочникСсылка Менеджеры
Реквизиты табличной части - Материалы:
Материал СправочникСсылка Материалы
Цена Число 12.2

Этот документ, являющийся электронной копией документа "Приказ об изменении цен реализации", задает цены реализации на материалы на любой момент времени.

Выделив ветвь "Документы" в дереве объектов конфигурации из контекстного меню выберем пункт "Добавить".

Открывается окно редактирования документа. На закладке "Данные" введем наши реквизиты.


На закладке "Формы" создадим форму документа.


В каркасной конфигурации также создан нумератор "ОплатаУслуг", нумерация документа "АктОбОказанииУслуг" производится согласно данного нумератора.


Задание 2

Cоздайте документ "Оплата от клиента". Нумерация согласно нумератора "ОплатаУслуг".

Состав реквизитов:

Наименование реквизита Тип значения Значение
Автор СправочникСсылка Менеджеры
Клиент СправочникСсылка Клиенты
Реквизиты табличной части - АктыУслуг
Акт ДокументСсылка АктОбОказанииУслуг
Сумма Число 10.2
Последовательности документов

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

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

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


Через несколько дней после этого была обнаружена ошибка в приходной накладной: оказывается, себестоимость единицы товара равна не 26, а 20 рублям. В приходную накладную были внесены соответствующие изменения, и она была заново проведена. В результате оказалось, что данные в системе учета не верны, поскольку все последующие документы по-прежнему вносят изменения, исходя из старой себестоимости товара, и "не знают" о том, что она изменилась:


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

В каркасной конфигурации создана последовательность "Последовательность учета материалов", к которой относятся документы "Поступление материалов" и "Акт об оказании услуг". Для свойства "Перемещение границы при проведении" указано значение "Перемещать". Это означает, что документ, зарегистрированный в данной последовательности, при своем проведении будет пытаться переместить границу этой последовательности документов. Если для свойства указано значение "Не перемещать", то документ не будет перемещать границу этой последовательности документов при проведении.


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

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

У нас создано измерение "Материал", которое соответствует реквизитам "Материал" табличных частей документов, входящих в последовательность.


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

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

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

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

Список документов

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


В каркасной конфигурации создана форма списка документов "Поступление материалов".

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

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

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

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

На закладке "Основные" укажите имя и синоним создаваемого журнала документов. Например: "ОказаниеУслуг".

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


На закладке "Формы" создайте форму списка журнала документов и поместите в нее дополнительные графы: Менеджер и Клиент.

Программирования при создании такого журнала не требуется.

Задание 3
  1. Cоздайте журнал документов "Общий журнал".
  2. Создайте графу журнала "Автор".
Ввод на основании. Конструктор "на основании"

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

Разработка механизма ввода на основании производится с помощью конструктора ввода на основании. С его помощью в модуле документа создается процедура с зарезервированным именем ОбработкаЗаполнения(). Эта процедура выполняется:

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

Создадим с помощью конструктора ввода на основании механизм ввода "на основании" для документа "АктОбОказанииУслуг", основанием будет являться справочник "Заказы".

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

Откроем окно редактирования документа "АктОбОказанииУслуг" и на закладке "Ввод на основании" в окне "Вводится на основании" выберем Справочник.Заказы и вызовем конструктор ввода на основании.


В верхней части содержится список объектов - оснований, список реквизитов объектов - основания, выбранного в первом списке.

В нижней части расположен список реквизитов результирующего объекта.

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

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

По кнопке "ОК" в модуле документа будет создана процедура ОбработкаЗаполнения(). Если повторно вызвать конструктор ввода на основании, то система попросит подтверждения на полное замещение уже существующей процедуры ОбработкаЗаполнения() новой.

Сергей Филин
Сергей Филин
Александр Норин
Александр Норин

 

В курсе Основы конфигурирования в системе "1С:Предприятие 8.0" в Тест 1 нет условий с которыми надо согласиться и продолжить

Владимир Крючков
Владимир Крючков
Россия, Москва