Объекты прикладного решения Документ позволяют хранить в прикладном решении информацию о совершенных хозяйственных операциях или о событиях, произошедших в "жизни" предприятия вообще. Это могут быть, например, приходные накладные, приказы о приеме на работу, счета, платежные поручения и т.д.
Структура документа
Каждый документ характеризуется номером, датой и временем. Система поддерживает режим автоматической нумерации документов, при котором она самостоятельно может генерировать номер для нового документа. Кроме этого система позволяет осуществлять контроль уникальности номеров документов, не разрешая создавать документы с одинаковыми номерами:
Система автоматически поддерживает режим, при котором уникальность номеров и автоматическая нумерация могут выполняться в пределах определенного периода (день, месяц, квартал, год). Например, если периодичность установлена год, то с нового года система опять начнет нумерацию указанных документов с 1.
Важными характеристиками документа являются дата и время. Они позволяют установить строгую временную последовательность совершения операций. Таким образом, документы могут отличаться друг от друга не только номером, но и своим положением на временной оси. В результате всегда можно сказать, какая из двух операций была совершена раньше.
Помимо номера, даты и времени, каждый документ, как правило, содержит некоторую дополнительную информацию, которая подробно описывает этот документ. Например, для приходной накладной это может быть информация о поставщике товаров, складе, на который приходуются товары и т.п. Набор такой информации является одинаковым для всех документов конкретного вида, и для ее хранения служат реквизиты документа:
Кроме этого, каждый документ может содержать некоторый набор информации, которая одинакова по своей структуре, но различна по количеству, для разных документов. Например, для приходной накладной это может быть информация о товарах, поступивших на предприятие (наименование, количество, цена и т.д.). Для хранения подобных данных служат табличные части документа:
Проведение документа
Важным свойством документа является возможность его проведения. Если документ проводится, то он может изменить состояние тех или иных учитываемых данных. Если же документ не является "проводимым" это значит, что событие, которое он отражает, не влияет на состояние учета, который ведется в данном прикладном решении.
Например, документ ПоступлениеТоваров при своем проведении может вносить изменения в состояние взаиморасчетов с контрагентами компании, в учет остатков товаров, в состояние заказов покупателей и другие учетные данные:
Для документа Доверенность напротив, проведение может быть запрещено, потому что этот документ используется лишь для оформления доверенностей на получение товаров и никак не влияет на состояние учета:
Алгоритм, на основании которого документ вносит те или иные изменения в состояние учетных данных при своем проведении, описывается средствами встроенного языка на этапе разработки прикладного решения. Система содержит специальный конструктор, который помогает разработчику создавать алгоритмы проведения документа.
Последовательности
Последовательности документов предназначены для обеспечения контроля правильности изменений, внесенных документами в учетные данные. Кроме этого последовательности, в случае необходимости, позволяют восстанавливать правильную картину изменений.
Алгоритм проведения документа, как правило, отражает в учете данные, содержащиеся в самом документе. Однако в некоторых случаях алгоритм проведения документа анализирует также и текущие итоги, используя их при проведении. Например, если документ списывает товары или материалы по средней себестоимости, то для определения суммы списания алгоритм проведения будет анализировать остатки товаров в количественном и суммовом выражении на момент списания.
Допустим, приходной накладной было оприходовано 10 единиц товара по 26 рублей. Тогда остаток товара на предприятии в суммовом выражении будет равен 260 рублей. После этого весь товар был отправлен клиенту. При проведении расходной накладной были проанализированы остатки этого товара и рассчитано, что средняя себестоимость единицы товара равна 26 рублям. В результате этих действий остаток товара на предприятии как в суммовом, так и в количественном выражении равен нулю:
Через несколько дней после этого была обнаружена ошибка в приходной накладной: оказывается, себестоимость единицы товара равна не 26, а 20 рублям. В приходную накладную были внесены соответствующие изменения, и она была заново проведена. В результате оказалось, что данные в системе учета не верны, поскольку все последующие документы по-прежнему вносят изменения, исходя из старой себестоимости товара, и "не знают" о том, что она изменилась:
Для того чтобы не возникало такой ситуации, эти два документа можно объединить в одну последовательность. Тогда, в случае изменения приходной накладной, система автоматически определит, что последовательность документов нарушена и сможет перепровести все последующие документы, которые могут зависеть от результатов проведения приходной накладной. Другими словами, расходная накладная будет проведена заново и, при анализе остатков товара, будет получена новая себестоимость (20 рублей) по которой и будет списан товар.
Приведенный пример является довольно простым, однако в реальных прикладных решениях взаимное влияние одних документов на другие может быть очень сложным. Поэтому система позволяет создавать в одном прикладном решении произвольное количество последовательностей документов:
Последовательность позволяет описать документы, которые будут относиться к данной последовательности, а также перечень учетных механизмов прикладного решения, изменение которых должно приводить к перепроведению документов данной последовательности:
Механизм последовательностей допускает более тонкую настройку, если требуется, чтобы последовательность учитывала не все, а вполне определенные ситуации. В этом случае для последовательности можно указать измерения, и перепроводиться будут только те документы, которые внесли изменения в учетные механизмы по данным значениям измерений.
Формы документа
Для того чтобы пользователь мог просматривать и изменять данные, содержащиеся в документах, система поддерживает несколько форм представления документа. Система может автоматически генерировать все нужные формы документа. Наряду с этим разработчик имеет возможность создать собственные формы, которые система будет использовать вместо форм по умолчанию:
Для просмотра документов одного вида используется форма списка. Она позволяет выполнять навигацию по списку документов, задавать временной интервал отображаемых документов, добавлять, помечать на удаление и удалять документы. Форма списка позволяет выполнять сортировку и отбор отображаемой информации по нескольким критериям:
Для просмотра и изменения данных отдельных документов используется форма документа. Как правило, она представляет данные в удобном для восприятия и редактирования виде:
Кроме этих двух форм для документа поддерживается форма выбора конкретных документов из списка. Она, обычно, содержит минимальный набор информации, необходимой для выбора того или иного документа и может использоваться, например, при создании документа ПоступлениеТоваров, в котором должен быть указан заказ поставщику, на основании которого формируется поступление товаров.
Журналы документов
Журналы документов предназначены для просмотра документов разных видов. Для журнала документов могут быть определены графы, предназначенные для отображения реквизитов документов разного вида, отнесенных к данному журналу:
В прикладном решении может быть создано произвольное количество журналов документов:
Каждый вид документа может быть показан в нескольких журналах:
Нумераторы
Использование нумераторов позволяет организовать сквозную нумерацию документов разных видов. Для этого всем таким документам назначается один нумератор. Контроль уникальности и присвоение нового номера будет выполняться с учетом всех документов, для которых назначен этот нумератор.
В прикладном решении может быть создано произвольное количество нумераторов:
В дальнейшем каждый нумератор может быть поставлен в соответствие нужным документам:
Макеты документа
Документу могут быть сопоставлены несколько макетов, содержащих данные, необходимые для обеспечения работы документа:
Макеты могут использоваться для формирования печатных форм документа или для отображения дополнительной информации, имеющей отношение к документу:
Вы можете познакомиться с созданием и использованием документов в реальном режиме времени. Для этого можно скачать демонстрационный ролик "Пример разработки торговой мини-системы", в котором показан процесс разработки торговой мини-системы с использованием документов "Приходная накладная" и "Расходная накладная".