Документ — одно из основных понятий системы 1С:Предприятие. При помощи документов организуется ввод в систему информации о совершаемых хозяйственных действиях, ее просмотр и, если необходимо, корректировка.
В большинстве своем документы, которые создаются в процессе настройки конфигурации задачи, являются электронными аналогами стандартных бумажных документов, однако, использование этого типа данных может выходить далеко за рамки простой фиксации информации о хозяйственных операциях.
В системе 1С:Предприятие документ является основной учетной единицей. Каждый документ содержит информацию о конкретной хозяйственной операции и характеризуется своим номером, датой и временем. Дата и время — наиболее важные характеристики документов, так как позволяют устанавливать строгую временную последовательность совершения операций.
Следует заранее уточнить, что в Конфигураторе создается, строго говоря, не сам документ, а средство ввода документа в компьютер — шаблон документа. Каждый создаваемый в конфигураторе документ является описанием множества документов одного вида. Например, созданный в Конфигураторе документ «Накладная» при работе с системой 1С:Предприятие позволит формировать накладные, которые будут иметь разное содержание, по одинаковый набор реквизитов, одинаковую логику поведения и так далее.
Ниже для простоты будут использоваться оба эти термина — «шаблон документа» или слово «документ», подразумевая под этим средства для ввода и визуализации документа.
Конфигуратор позволяет описать структуру документа, организовать диалог для ввода информации в документ и описать алгоритм построения печатной формы документа.
При создании структур документов в Конфигураторе допускается определенный уровень абстракции. Так, в большинстве документов можно выделить две основные части: заголовочная часть и табличная, или многострочная, часть. Как правило, в заголовочной части содержатся реквизиты, которые являются общими для всего документа. Например, в счете на оплату в заголовочную часть помещаются установочные данные документа — номер и дата, а также сведения о плательщике и получателе платежа.
Термин «заголовочная часть» — достаточно условный и может относиться не только к реквизитам документа, которые физически находятся в верхней части бумажного бланка документа. Поэтому, в наиболее общем случае, реквизитом заголовочной части будет считаться любой реквизит, который встречается в документе только один раз.
Для обозначения заголовочной части документа в системе 1С:Предприятие используется термин шапка (документа)».
Табличная часть документа представляет собой список однотипных строк с информацией. Например, в уже упоминавшемся счете на оплату табличная часть — это перечень товаров или услуг, подлежащих оплате. Помимо наименований, табличная часть документа может содержать также разнообразную дополнительную информацию — стоимость товаров или услуг, количество, объем, вес и многое другое. В большинстве случаев табличная часть используется для формирования общей суммы документа. Структура документа в системе 1С:Предприятие может содержать только одну табличную часть.
При разработке документов в Конфигураторе может быть создано необходимое количество общих реквизитов документов. Такие реквизиты, будучи созданными один раз, становятся доступными для всех документов: общие реквизиты можно размещать в формах документов, к значениям общих реквизитов можно обращаться из встроенного. языка системы 1С:Преднриятие. Работая с системой 1С:Предприятие, пользователь может выполнять отбор документов в журналах по значениям общих реквизитов документов.
Для работы с документами в Конфигураторе может быть создано необходимое количество журналов. При создании документа можно указать наименование журнала, в котором будет осуществляться работа с документам этого вида. Для документов разных видов можно указывать один журнал, что позволяет произвольным образом группировать документы в журналах. Назначенный документам журнал можно менять.
Для работы с документами могут использоваться специально созданные общие журналы. От «обычных» журналов документов их отличает возможность отбора документов по значению, указанному пользователем.
Вся работа с объектами метаданных типа «Документ» ведется в окне «Конфигурация — Метаданные». Для документов отведена отдельная ветвь дерева метаданных, которая начинается у ключевого слова «Документы». На этой же ветви располагаются служебные объекты метаданных — нумераторы и общие реквизиты документов, — которые используются только в составе объектов метаданных типа «Документ».
Приемы создания, редактирования свойств и удаления объектов метаданных типа «Документ» совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные» на стр. Ошибка! Закладка не определена.. В том числе, для создания документа можно воспользоваться Конструктором документа (см. ниже, стр. 9).
В этом параграфе будут описаны специфические свойства документа, в дополнение к общим свойствам объектов метаданных, о которых говорилось в и. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..
Свойства документа редактируются в окне редактирования «Документ».
Журнал. В поле «Журнал» можно указать идентификатор журнала, в который будут помещаться документы данного вида при работе с системой 1С:Предприятие. Журнал необходимо создать либо заранее, как это сделать — см. п. «Создание объекта метаданных» на стр. Ошибка! Закладка не определена., — либо в процессе создания документа Конструктором (см. ниже «Конструктор документа», стр. 9), либо, наконец, совсем не указывать, и поместить документ в журнал при создании журнала Конструктором (см. п. «Конструктор журнала документов», стр. Ошибка! Закладка не определена.). При создании нового документа по умолчанию предлагается журнал «Прочие».
Помимо журнала, указанного в поле «Журнал», в системе 1С:Предириятие все документы автоматически помещаются в журнал с условным наименованием «Полный».
Реквизиты. Управляющие элементы, объединенные в группы «Реквизиты табличной части» и «Реквизиты шапки», позволяют управлять, соответственно, списком реквизитов табличной части и списком реквизитов шапки документа, а также редактировать свойства этих реквизитов. О работе с реквизитами документа см. п. «Разработка структуры документа» на стр. 4.
Номер. Управляющие элементы диалога «Документ», объединенные в группу «Номер», используются для назначения правил нумерации документов.
У любого документа существует 3 обязательных реквизита, которые создаются автоматически и которые удалить нельзя — это дата, время и номер документа. В отличие от даты и времени, для номера документа можно задать несколько параметров, которые будут управлять поведением этого реквизита при работе с документами создаваемого вида. Совокупность этих параметров будет определять правила нумерации документов при работе системы 1С:Предприятие.
Нумератор. Документу может быть назначен нумератор из числа уже существующих в конфигурации. В этом случае прочие элементы группы «Номер», за исключением признака «Автоматическая нумерация», станут недоступны, то есть правила нумерации документов данного вида будут полностью определяться назначенным нумератором.
Для назначения документу нумератора из числа существующих в конфигурации следует выбрать идентификатор нумератора в реквизите «Нумератор».
Использование нумераторов позволяет организовать сквозную нумерацию документов разных видов. Для этого всем документам, для которых требуется иметь сквозную нумерацию, должен быть назначен одинаковый нумератор. Контроль уникальности и присвоение очередного номера будет выполняться с учетом всех документов, для которых назначен этот нумератор.
Периодичность. Данный реквизит устанавливает пределы контроля уникальности номеров документов и период повторяемости номеров. Если документу назначен нумератор, данный реквизит диалога становится недоступным.
Если включен признак контроля уникальности номеров документов (см. ниже), реквизит «Периодичность» устанавливает, в каких пределах осуществлять этот контроль.
При включенном признаке автоматической нумерации система 1С:Предприятие будет присваивать очередной порядковый номер каждому новому документу. После завершения периода, установленного в реквизите «Периодичность», нумерация документов начнется с 1.
Длина. Устанавливает максимальную длину номера документа. Если документу назначен нумератор, данный реквизит диалога становится недоступным.
Тип. Группа «Тип» позволяет выбрать тип значения для номера документа — числовой или текстовый. Выбор текстового типа номера бывает полезен, когда используется сложная система нумерации документов, и номер документа может включать, помимо цифр, также буквы и символы-разделители.
Следует обратить внимание, что выбор текстового типа номера не исключает возможности автоматического присвоения таких номеров.
Для самого первого документа с текстовым номером система формирует код вида «001» (количество нулей зависит от установленной длины номера), то есть номер представляет собой строку символов, но все символы в этой строке являются цифрами. При вводе новых документов система будет продолжать присваивать номера аналогичным образом — «002», «003» и т. д.
Если требования к нумерации документов предполагают непременное использование смешанных буквенно-цифровых номеров, то для целей автоматической нумерации можно использовать номера вида «АА001». Здесь первая часть номера — символы «АА» — является текстовым префиксом, а вторая часть — символы «001» — будет интерпретироваться системой как число и использоваться при автоматическом присвоении очередного номера документа.
Например, если самый первый документ введен с номером «АА001», то следующим автоматически присвоенным номером будет «АА002», затем — «ААООЗ» и так далее по возрастающей.
Текстовый префикс можно задать вручную (при вводе нового документа присвоить ему такой «составной» помер) или использовать возможности встроенного языка системы 1С:Преднриятие (метод ПрефиксНомера).
Замечание. Если документу назначен нумератор, реквизит «Тип» окна редактирования становится недоступным.
Автоматическая нумерация. Реквизит «Автоматическая нумерация» устанавливает, будет ли система 1С:Прсдприятие автоматически присваивать очередной порядковый номер каждому новому документу. Автоматически присвоенный документу номер можно будет исправить.
Контроль уникальности. Если эта опция включена, то при вводе нового документа его помер проверяется на уникальность в пределах, установленных в реквизите «Периодичность».
Если документу назначен нумератор, данный реквизит диалога становится недоступным.
Разрешить проведение документа. Этот признак определяет, могут ли проводиться документы данного вида.
В простейшем случае, документы в системе 1С:Предприятие могут использоваться только как средство ввода и записи некоторых данных и формирования печатной формы.
Однако, чаще всего документы используются для отражения событий, происходящих в хозяйственной жизни организации, в различных механизмах учета, поддерживаемых системой 1С:Предприятие. Отражение данных документа в различных видах учета выполняется при проведении документа.
Если создаваемый вид документа не должен влиять ни на какие механизмы учета, то признак «Разрешить проведение документа» должен быть выключен, в этом случае документ не будет проводиться. Однако, если документы данного вида предполагается использовать для отражения событий хозяйственной жизни хотя бы в одном из механизмов учета, то документы данного вида должны иметь возможность проводиться, и признак «Разрешить проведение документа» должен быть установлен. Заметим, что если признак выключен, то признаки «Оперативный учет» и «Расчет» становятся недоступными, так как участие документа в этих механизмах может быть задействовано только при проведении. Однако, признак «Бухгалтерский учет», остается доступным, так как документ может записывать операцию не только при проведении, но и при записи документа, хотя возможности записывать проводки в этом случае не будет (об объектах метаданных «Операция» и «Проводка» см. главу «Операции и проводки»,стр. Ошибка! Закладка не определена.).
Автоматическое удаление движений. В большинстве случаев этот признак включен для всех видов документов, которые будут проводиться. Он определяет автоматическое удаление всех записей, отражающих документ в различных механизмах учета, которые документ записал в процессе проведения.
Автоматическое удаление производится системой при выполнении повторного проведения уже проведенного документа (перед записью новых движений), при удалении документа и при отмене проведения документа.
Режим автоматического удаления является основным, однако, для некоторых видов документов данный признак может быть отключен. Это позволяет в процессе повторного проведения уже проведенного документа выборочно удалять те движения, которые были сделаны при прошлом проведении документа. Выборочное удаление движений выполняется средствами встроенного языка в модуле документа.
Отключение режима автоматического удаления движений выполняется в специальных случаях для отдельных видов документов. Например, это позволяет при проведении расходной накладной записать движения только по последней введенной строке, оставив без изменений движения, сделанные по ранее введенным строкам.
Другой возможностью является организация перепроведения документов с изменением только формируемых ими проводок, и без изменения записанных документами движений регистров. При отмене проведения документа и при удалении (пометке на удаление) документа отключение признака автоматического удаления движений позволяет в предопределенной процедуре ОбработкаУдаленияПроведения() модуля документа, вызываемой в этих случаях, получить доступ к движениям документа, например, для анализа правомерности отмены проведения. Разумеется, после окончания выполнения процедуры все движения, не удаленные в ней средствами встроенного языка, будут удалены, так как помеченный на удаление или не проведенный документ не может иметь движений. Если признак автоматического удаления движений установлен, то в момент вызова процедуры все движения уже удалены.
Автоматическая нумерация строк. Этот признак устанавливает режим, при котором номера строк табличной части документа всегда устанавливаются системой автоматически. Если этот режим включен, то при редактировании документа в форме и при работе с ним средствами встроенного языка существует возможность изменения порядка расположения строк. Однако, при любых перестановках строк номера всегда будут отражать последовательность расположения строк, от 1 до количества строк, без пропусков и нарушения порядка номеров. Если режим «Автоматическая нумерация строк» отключен, то номера строк могут редактироваться при вводе документа в форме и средствами встроенного языка. При редактировании номеров строк система будет автоматически располагать строки в порядке возрастания номеров, однако, номера строк могут иметь пропуски.
Бухгалтерский учет. Включение этой опции означает возможность документа формировать операции и проводки (см. главу «Операции и проводки»). Опция становится доступной, если в конфигурации существует хотя бы один план счетов. Одновременно становится возможным вызов Конструктора формирования операции (см. главу «Редактор текстов»).
Внимание. Включение каждой из опций «Оперативный учет», «Расчет», «Бухгалтерский учет» вызывает со стороны системы 1С:Предприятие выполнение определенных процедур при работе с документом, на что, естественно, расходуются дополнительные ресурсы. Поэтому, если документ имеет ограниченную область применения, следует отключить для него «ненужную» опцию. Это исключит выполнение системных процедур и несколько повысит общую производительность системы.
Оперативный учет. Включение этой опции означает возможность документа изменять регистры. Одновременно становится возможным вызов Конструктора движений регистров по документу (см. главу «Редактор текстов»).
Расчет. Включение этой опции означает возможность документа работать с журналами расчетов.
Создавать операцию. Это управляющий элемент становится доступным, если для документа включена опция «Бухгалтерский учет». Он определяет режим записи операции для документов конкретного вида, для которых включена опция «Бухгалтерский учет».
Параметр «Создавать операцию» может иметь три значения:
«Всегда» |
все документы данного вида будут иметь операции, то есть операция будет записываться в момент записи документа и документ будет всегда присутствовать в журнале операций; |
«Выборочно» |
конкретные документы данного вида могут при записи или при проведении создавать операцию. Наличие операции для конкретного документа может быть задано вызовом метода СуществуетОперация; |
«Только при проведении» |
для документов данного вида операция может быть записана средствами встроенного языка только в процедуре ОбработкаПроведения. То есть только проведенные документы этого вида могут иметь операцию. |
Алгоритм формирования операции по документу должен быть записан в модуле документа. Для облегчения создания алгоритма формирования операции можно использовать Конструктор формирования (см. главу «Редактор текстов»).
Редактировать операцию. Флажок «Редактировать операцию» становится доступен, когда в свойствах объекта метаданных «Операция» выбран режим «Редактировать операции документов — выборочно» (см. п. «Свойства операции» на стр. Ошибка! Закладка не определена.).
Установка или снятие этого флажка, соответственно, разрешает или запрещает пользователю редактировать вручную операции, сформированные документами этого вида.
При установке этого флажка следует иметь в виду, что при перепроведении документов операции формируются заново, следовательно, отредактированные пользователем операции будут удалены и заменены на автоматически сформированные.
«Ввод на основании». Нажатие этой кнопки вызывает на экран диалог для настройки режима «Ввод на основании» (см. ниже п. «Ввод документов «на основании»»).
В этом диалоге можно указать 2 группы документов: документы, на основании которых будет вводиться редактируемый документ, и документы, которые будут вводиться на основании редактируемого документа.
Включение опции «Может являться основанием для любого документа» равносильно тому, что в списке «Является основанием для» будут выбраны все документы.
Выбор двух групп документов, выполненный в этом диалоге, позволяет ограничить список документов, выдаваемый пользователю при выполнении ввода документа «на основании».
Разработка структуры документа заключается в создании наборов реквизитов шапки и табличной части. Эта работа выполняется при помощи управляющих элементов групп «Реквизиты табличной части» и «Реквизиты шапки». С функциональной точки зрения элементы этих групп одинаковы, их использование для управления списками реквизитов выполняется по общим правилам, изложенным в п. «Редактирование списков объектов метаданных» на стр. Ошибка! Закладка не определена..
В этом параграфе будут описаны специфические свойства объектов метаданных типа «Реквизит документа», в дополнение к общим свойствам объектов метаданных, о которых говорилось в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..
Свойства реквизита документа редактируются в палитре свойств «Свойства Реквизита».
Назначение и порядок использования управляющих элементов закладки «Общие» палитры свойств в основном совпадает с общими принципами редактирования свойств объекта метаданных, описанными в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..
Свойство «Неограниченная длина» может быть установлено только для реквизитов шапки документа. При этом имейте в виду те ограничения, о которых говорилось в главе «Метаданные» (возможное замедление работы и др.).
Управляющие элементы закладки «Дополнительные» используются для установки различных дополнительных характеристик реквизита документа.
Итог по колонке. Опция «Итог но колонке» появляется в закладке «Дополнительные» только для реквизитов табличной части документа, а становится доступной только для числовых реквизитов. Если эта опция включена, то для указанной колонки автоматически вычисляется сумма значений во всех строках табличной части.
Включение данной опции позволяет получать итог по данной колонке из встроенного языка системы 1С:Прсдприятие. Кроме того, такой реквизит может быть включен в журнал документов в качестве дополнительной графы журнала (см. в главе «Журналы документов» раздел «Графы журнала документов», стр. Ошибка! Закладка не определена.).
Если в системе 1С:Предприятие установлена компонента «Бухгалтерский учет» и в структуре метаданных существует хотя бы один план счетов, в дерево метаданных на ветвь «Документы» добавляется предопределенный документ «Операция», предназначенный для ввода информации о хозяйственных операциях.
Назначение этого вида документов будет кратко изложено ниже, а подробнее об этом можно узнать в главе «Операции и проводки».
Для ввода информации о хозяйственных операциях в системе 1С:Преднриятие используется специальный объект метаданных — «Операция». Он позволяет занести в систему информацию о хозяйственной операции и зафиксировать дату и время совершения операции, сумму операции, и некоторые дополнительные сведения, состав которых можно определить в Конфигураторе.
Операции могут вводится в систему автоматически на основе документов или вручную.
На основе документа операция вводится путем ввода соответствующего документа: алгоритм формирования операции для конкретного документа должен быть записан в модуле документа. Все необходимые реквизиты операции в этом случае заполняются автоматически.
Если операция вводится пользователем «вручную», система 1С:Предприятис автоматически создает документ «Операция» и открывает для редактирования форму операции. В этом случае все реквизиты операции пользователь вводит самостоятельно. Для ввода таких операции предназначен документ «Операция».
Документ «Операция» обладает особыми свойствами.
В отличие от прочих объектов метаданных, его структура не редактируется. Структурой этого документа является структура объекта метаданных «Операция».
В отличие от объектов метаданных типа «Документ», формой документа «Операция» является форма операции. Кроме этого, документ «Операция» не имеет формы списка.
Для редактирования свойств документа «Операция» используется окно редактирования «Документ Операция», который можно вызвать двойным щелчком мыши на ключевом слове «Операция».
Свойства, которые редактируются в данном окне, совпадают с аналогичными свойствами объектов метаданных типа «Документ». Подробнее о редактировании этих свойств можно узнать в п. «Свойства документа» (см. выше).
Следует обратить внимание, что журнал документов, который будет указан для работы с документами типа «Операция», при работе с системой 1С:Предприятие будет содержать только операции, введенные пользователем «вручную». Для доступа ко всему списку операций — и сформированных автоматически, и введенных вручную — следует использовать журнал операций (см. в главе «Операции и проводки» п. «Графы журнала операций», стр. Ошибка! Закладка не определена., и «Форма журнала операции», стр. Ошибка! Закладка не определена.).
Модуль документа представляет собой программу на встроенном языке системы 1С:Предприятие. В отличие от модуля формы, он имеет несколько особенностей.
Модуль документа вызывается для исполнения при проведении документа, при этом выполняется предопределенная процедура ОбработкаПроведения.
Только из модуля документа можно изменять регистры, периодические реквизиты справочников (для которых включено свойство «Изменяется документами») и журналы расчетов. Все эти изменения выполняются средствами встроенного языка.
Также только из модуля документов можно формировать операции и проводки операций. Проводки вызывают изменения в бухгалтерских итогах.
Для изменения регистров при выполнении модуля документа создаются особые записи, называемые движениями регистров. Эти записи указывают: как в результате проведения документа должны измениться сводные остатки или обороты, хранящиеся в регистрах.
Документ «помнит» о тех изменениях, которые он выполнил в регистрах, справочниках, журналах расчетов и бухгалтерских операциях. При удалении документа или отмене его проведения (команда «Сделать документ непроведенным» в меню «Действия» главного меню системы 1С:Предприятие) выполненные документом изменения будут корректно удалены.
Для редактирования модуля документа используется текстовый редактор, который можно вызвать на экран одним из следующих способов:
· в окне редактирования «Документ» нажмите кнопку «Модуль Документа»;
или
· в окне «Конфигурация — Метаданные» выделите наименование документа;
· нажатием правой кнопки мыши вызовите на экран контекстное меню;
· в этом меню выберите пункт «Модуль Документа».
Подробно порядок работы с текстовым редактором описан в главе «Редактор текстов».
Механизм общих реквизитов служит для создания реквизитов, которые должны существовать во всех создаваемых документах. Кроме того, механизм общих реквизитов позволяет организовать отбор документов в журналах по содержимому таких реквизитов.
Необходимость в создании общих реквизитов может возникать, например, в следующем случае.
Представим такую ситуацию. В процессе работы системы 1С:Предприятис при большом документообороте возникла проблема определения авторства: кто из сотрудников ввел или последний раз редактировал конкретный документ. Подобная задача может быть решена, например, путем ввода в структуру каждого документа реквизита «Автор» и описания алгоритма его автоматического заполнения при вводе или редактировании документа. Однако, используя механизм общих реквизитов, достаточно создать реквизит «Автор» один раз. Общий реквизит не появляется в структуре каждого документа, но он будет доступен при редактировании формы документа и к нему можно обращаться при помощи встроенного языка из модуля документа.
Отбор документов в журналах по содержимому общих реквизитов включается автоматически, если для общего реквизита включена опция «Сортировка». Такая установка дает возможность пользователю системы 1С:Предприятие выводить список документов, имеющих указанное значение общего реквизита. В приведенном выше случае, например, руководитель отдела продаж может получить список всех Документов, выписанных конкретным продавцом.
Вся работа с объектами метаданных типа «Общий реквизит документа» ведется в окне «Конфигурация — Метаданные». Для общих реквизитов отведена отдельная ветвь дерева метаданных, которая начинается у ключевого слова «Общие реквизиты». Приемы создания, редактирования свойств и удаления общих реквизитов совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные» на стр..
После того, как общий реквизит создан, он становится доступен при редактировании формы документа и к нему можно обращаться из модуля документа.
Свойства общего реквизита редактируются в палитре свойств «Свойства Реквизита». Набор свойств общего реквизита документа совпадает со свойствами «обычного» реквизита документа, за одним исключением.
Для общих реквизитов в закладке «Дополнительные» появляется опция «Отбор». Если для общего реквизита установлен этот признак, то при использовании конфигурации по содержимому такого реквизита можно будет выполнять отбор документов в общих журналах.
Внимание! Работа с общими реквизитами, у которых включен признак «Отбор», требует дополнительных ресурсов со стороны системы 1С:Предприятие. Поэтому используйте отбор по общим реквизитам документов только тогда, когда это действительно необходимо.
Нумератор представляет собой объект метаданных, описывающий правила нумерации документов: тип и длина номера документа, его периодичность, необходимость контроля уникальности.
Основное назначение нумератора — обеспечить возможность сквозной нумерации документов разного вида, для этого таким документам назначается одинаковый нумератор.
Вся работа с объектами метаданных типа «Нумератор» ведется в окне «Конфигурация — Метаданные». Для нумераторов отведена отдельная ветвь дерева метаданных, которая расположена «внутри» ветви «Документы» и начинается у ключевого слова «Нумераторы». Приемы создания, редактирования свойств и удаления нумераторов совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные» на стр. Ошибка! Закладка не определена..
В этом параграфе будут описаны специфические свойства нумераторов, в дополнение к общим свойствам объектов метаданных, о которых говорилось в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..
Свойства нумератора редактируются в палитре свойств «Свойства Нумератора».
Закладка «Нумератор» предназначена для определения правил нумерации документов.
Периодичность. Данный реквизит устанавливает 2 важные характеристики нумератора: пределы контроля уникальности номеров документов и период повторяемости номеров.
Если включен признак контроля уникальности номеров документов (см. ниже), реквизит «Периодичность» устанавливает, в каких пределах осуществлять этот контроль.
Например, если установлена периодичность «В пределах дня», то уникальность номеров документов будет контролироваться в пределах суток: на следующие сутки номера документов могут повторяться, но в пределах суток они будут уникальны.
При включенном признаке автоматической нумерации (см. п. «Свойства документа», стр. 1) система 1С:Предприятие будет присваивать очередной порядковый номер каждому новому документу. После завершения периода, установленного в реквизите «Периодичность», нумерация документов начнется с 1.
Длина. Устанавливает максимальную длину номера документа.
Тип. Группа «Тип» позволяет выбрать тип значения для номера документа — числовой или текстовый. Выбор текстового типа номера бывает полезен, когда используется сложная система нумерации документов, и номер документа может включать, помимо цифр, также буквы и символы-разделители.
Контроль уникальности. Если эта опция включена, то при вводе нового документа его номер проверяется на уникальность в пределах, установленных в реквизите «Периодичность».
«Последовательности документов» являются вспомогательными объектами метаданных. Они предназначены для обеспечения проведения определенных документов в строгой хронологической последовательности.
Последовательности документов могут быть использованы при работе с компонентами «Оперативный учет» и «Бухгалтерский учет».
Все документы в системе 1С:Предприятие образуют единую хронологическую последовательность. Для этого каждый документ имеет дату и время. Даже если два документа имеют одинаковую дату и одинаковое время, они все равно располагаются в определенной последовательности, определяемой порядком их ввода в систему. Дата и время документа могут быть изменены. Таким образом, независимо от порядка ввода документов, они могут быть, расположены в последовательности, отражающей реальною последовательность происходивших в хозяйственной жизни предприятия событий, которые данные документы отражают.
В системе 1С:Предприятис в процессе проведения документ выполняет некоторые действия, которые отражают данный документ в различных механизмах учета, поддерживаемых 1С:Предприятием. Например, для отражения в регистрах оперативного учета документ выполняет запись движений регистров, а для отражения в бухгалтерском учете документ выполняет запись проводок.
Алгоритм проведения документа, как правило, отражает в учете данные, записанные в самом документе (в его реквизитах). Однако в некоторых случаях алгоритм проведения документа анализирует также и текущие итоги, используя их при проведении. Например, если документ списывает товары или материалы по средней себестоимости, то для определения суммы списания алгоритм проведения будет анализировать остатки товаров (материалов) на момент документа. Если списание выполняется по методам LIFO или FIFO, то алгоритм проведения будет анализировать существующие остатки товаров (материалов) в разрезе партий на момент (позицию) документа.
Очевидно, что документы, основывающиеся при проведении на данных итогов, должны проводиться строго последовательно. Однако на практике, из-за ошибок при вводе информации и несвоевременного поступления документов, часто приходится вводить или исправлять документы «задним числом». Разумеется, в этом случае движения регистров или проводки, сформированные всеми последующими документами (расположенными после того, который был исправлен), становятся некорректными. Например, если выяснилось, что в одной из приходных накладных, введенных в начале месяца, было неверно указано количество товара, то во всех последующих расходных накладных, списывающих имеющиеся в наличии партии, необходимо заново проанализировать остатки с учетом внесенных изменений и заново записать движения регистров или проводки. То есть, все документы, анализирующие остатки и расположенные после измененного документа, должны быть перепроведены.
Для автоматического контроля необходимости перепроведения документов используются «Последовательности документов». Каждая введенная в метаданных «Последовательность документов» обеспечивает контроль за порядком проведения документов указанных видов. Таким образом, в системе может существовать несколько независимых последовательностей.
Вся работа с объектами метаданных типа «Последовательность документов» ведется в окне «Конфигурация — Метаданные». Для нумераторов отведена отдельная ветвь дерева метаданных, которая расположена «внутри» ветви «Документы» и начинается у ключевого слова «Последовательности». Приемы создания, редактирования свойств и удаления последовательностей документов совпадают с общими приемами управления объектами метаданных, изложенными в главе «Метаданные» на стр. Ошибка! Закладка не определена..
В этом параграфе будут описаны специфические свойства последовательностей документов, в дополнение к общим свойствам объектов метаданных, о которых говорилось в п. «Свойства объектов метаданных» на стр. Ошибка! Закладка не определена..
Свойства последовательности документов редактируются в окне редактирования «Последовательность».
Движения, влияющие на последовательность. Одним из основных параметров настройки «Последовательности документов» является параметр «Движения, влияющие на последовательность». Он определяет, какие из изменений итогов будут влиять на необходимость перепроведения документов данной последовательности, то есть итоги каких механизмов учета используются документами данной последовательности при проведении.
В качестве таких движений могут выступать движения регистров или бухгалтерские проводки. Для настройки данного параметра следует в списке «Возможные значения» выбрать (щелчком мыши или нажатием клавиши Enter) те виды регистров, движения которых будут нарушать данную последовательность, и те бухгалтерские счета, проводки по которым также будут нарушать данную последовательность. Выбранные виды движений выводятся в списке «Выбранные значения».
Последовательность влияет на проведение документов. В нижней части диалога настройки «Последовательности документов» указываются виды документов, которые относятся к данной последовательности. Для выбора видов документов следует указать их в списке «Возможные значения» (щелчком мыши или клавишей Enter). Выбранные виды будут выводиться в списке «Выбранные значения».
Например, для организации правильного списания товаров следует в качестве движения, влияющего на последовательность, указать регистр оперативного учета, на котором ведется стоимостной учет товаров или, если учет ведется на бухгалтерских счетах, указать счет, на котором ведется учет товаров. В качестве документов, на проведение которых будет влиять данная последовательностей, следует выбрать те виды документов, которые при проведении будут анализировать указанный регистр или остатки по указанному счету. Например, такими документами могут быть расходные накладные, накладные на передачу на реализацию и т. д.
При работе в режиме «1С:Предприятие» для каждой введенной в метаданных последовательности документов система будет автоматически поддерживать границу последовательности. В качестве границы последовательности будет выступать позиция документа. При последовательном проведении документов, входящих в данную последовательность, граница последовательности будет устанавливаться на каждый вновь проведенный документ. Однако, если будет проводиться документ, относящийся к данной последовательности, но расположенный позже другого проведенного документа, относящегося к той же последовательности и находящего после текущей границы последовательности, то граница последовательности сдвигаться не будет, так как нарушается последовательность проведения документов. Эта ситуация может быть проанализирована алгоритмом проведения документа.
При проведении документов задним числом, а также отмене проведения или удалении документов, если удаляются или записываются движения регистров или проводки по счетам, указанным как влияющие на данную последовательность, граница последовательности отодвигается на момент измененного документа.
Таким образом, граница последовательность будет продвигаться вперед при последовательном проведении относящихся к данной последовательности документов, и будет отодвигаться назад при изменении задним числом относящихся к данной последовательности движений регистров и проводок.
В режиме пересчета документов (вызывается выбором пункта «Проведение документов» из меню «Операции» главного меню программы) существует специальная возможность восстановления последовательности проведения документов. При се использовании система автоматически выполняет перепроведение всех документов, относящихся к данной последовательности от границы последовательности, до указанного момента.
В приведенном нами примере с учетом товаров, проводимые расходные накладные будут сдвигать границу последовательности вперед. Любое изменение в движениях регистра на котором ведется стоимостной учет товаров или в проводках но счету на котором ведется учет товаров, если оно выполнено документом, располагающемся раньше границы последовательности, будет отодвигать границу последовательности назад, на момент этого документа. После этого проводимые документы, находящиеся позже границы последовательности уже не будут двигать ее вперед, если между границей последовательности и проводимым документом окажутся проведенные документы из этой последовательности. Режим восстановления последовательности будет перепроводить все расходные накладные. Заметим, что приходные накладные, хотя и влияют своими движениями на границу последовательности перепроводиться не будут, так как они не используют в алгоритме проведения остатков и не включены в список документов, относящихся к данной последовательности. После выполнения восстановления последовательности проводимые после границы последовательности документы снова будут двигать границу вперед.
Режим восстановления последовательности позволяет автоматически выполнить перепроведение всех документов, относящихся к последовательности от текущей позиции границы последовательности, до указанного момента. В верхней части диалога следует выбрать позицию, до которой будет выполняться перепроведение документа. При использовании компоненты «оперативный учет» наиболее целесообразным является выбор варианта «но точку актуальности». В этом случая будут перепроведены все документы до «ТА» включительно. При выборе варианта «по дату» следует указать дату. Вы этом случае будут перепроведены все документы до указанной даты включительно.
В поле «Последовательности документов» выводится список всех существующих в конфигурации последовательностей. Следует отметить те последовательности, которые должны быть восстановлены. В списке для каждой последовательности выводится текущее позиция границы последовательности. Для выбора всех последовательностей можно нажать кнопку «Вкл. все».
Для выполнения восстановления последовательностей следует нажать кнопку «Выполнить». При атом система будет перепроводить все документы относящиеся к выбранным последовательностям, начиная с позиции наиболее ранней границы из выбранных последовательностей и до указанно позиции (ТА или даты) включительно.
Восстановление последовательностей может выполняться только в монопольном режиме, так как система должна гарантировать неизменность итогов на момент перепроведения документов.
Одним из режимов ввода новых документов в процессе работы пользователя с системой 1С:Предприятие является режим ввода «на основании». С точки зрения пользователя, режим ввода «на основании» позволяет вводить документы, заполняя их реквизиты путем копирования информации из выбранного документа-образца. В отличие от простого копирования документов, в результате которого создается документ того же вида, что и документ-образец, режим ввода «на основании» позволяет создавать и переносить информацию в документ другого вида.
Для организации ввода документа «на основании» необходимо в модуле формы документа создать процедуру с зарезервированным именем ВводНаОсновании(). Эта процедура выполняется после выбора команды «Ввести на основании» из меню «Действия» главного меню системы 1С:Предприятие и последующего выбора из списка нужного вида документов, либо после выбора пункта пользовательского меню, выполняющего команду «Ввод на основании». При вызове процедуры в качестве параметра ей передастся документ-образец.
Текст этой процедуры должен быть разработан специалистом, осуществляющим конфигурирование системы. В тексте процедуры следует предусмотреть выполнение тех или иных операций по переносу информации — в зависимости от вида документа-образца, а также любые другие необходимые действия.
Если при работе пользователей с системой 1С:Предприятие предполагается частое применение режима ввода «на основании» (при большом документообороте), можно ввести в пользовательский интерфейс пункты меню или кнопки панелей инструментов, выполняющие команду «Ввод на основании» для конкретных документов. Использование таких пунктов меню (кнопок) позволит при вводе документа «на основании» исключить этап выбора вида документа из выдаваемого на экран списка и, таким образом, ускорить работу.
Конструктор ввода на основании облегчает задачу разработки процедуры ВводНаОсновании().
Конструктор можно вызвать, выбрав пункт «Ввод на основании...» из меню «Конструкторы» главного меню программы или нажав кнопку на панели инструментов «Конструкторы». При этом должна быть открыта форма документа.
При запуске открывается диалог «Конструктор ввода на основании». Он содержит список документов-оснований, список реквизитов документа и список (в виде дерева) реквизитов документа-основания, выбранного в первом списке.
В список документов-оснований входят:
· документы, отмеченные в правом списке в окне «Ввод на основании». (Это окно открывается при нажатии соответствующей кнопки в окне свойств данного документа);
· документы, никак не отмеченные в свойствах данного документа, если для самих этих документов в том же окне «Ввод на основании» установлен флажок «Может являться основанием для документов любого вида».
Кнопки «Назад» и «Далее» перемещают курсор вверх и вниз по списку реквизитов документа. При достижении конца списка появляется запрос «Перейти к следующему документу-основанию?», и при выборе «Да», курсор в списке документов-оснований смещается на следующую строку. Такой порядок обеспечивает перебор всех реквизитов документов для каждого документа-основания. Можно также для выделения строки в любом списке пользоваться мытью.
В список реквизитов документа нужно поместить формулы, определяющие, как заполнять реквизиты документа по выбранным реквизитам документа-основания.
Эти формулы можно создавать «вручную» следующим образом. Формула определяется в поле ввода «Формула заполнения реквизита» для реквизита документа, выделенного в списке. Можно вручную набрать ее в этом поле (а также вручную редактировать в нем созданную ранее формулу). Правильность написания формул Конструктор не проверяет.
Можно также двойным щелчком в списке реквизитов документа-основания помещать данные соответствующего реквизита в поле «Формула заполнения реквизита», причем сразу в правильной записи, например, реквизит документа-основания «Товар» — в записи «ДокОснование.Товар». Конструктор не проверяет соответствия типов выбранных реквизитов.
Возможна и комбинация двух описанных способов: данные из списка реквизитов документов-оснований при помещении в поле ввода замещают не всю имеющуюся там информацию, а только выделенные символы.
По кнопке «Заполнить формулы автоматически», после запроса и подтверждения, программа сама создаст формулы для заполнения по реквизитам документа-основания. Ранее заполненные формулы при автоматическом заполнении не изменяются. Подбор среди реквизитов документа-основания соответствий реквизитам документа осуществляется с учетом имен реквизитов, их идентификаторов и типов.
По кнопке «Очистить формулы», после запроса и подтверждения, очищаются все формулы, созданные как автоматически, так и вручную.
Формулы, созданные для документа-основания, выбранного в списке документов-оснований, запоминаются при переходе к другому документу-основанию этого списка. Поэтому можно, не прекращая работы Конструктора, создать процедуры ввода на основании для нескольких документов-оснований. Можно также возвращаться к редактированию процедуры для какого-либо документа-основания, снопа выбирая его в списке.
Для прекращения работы Конструктора служат кнопки «ОК» и «Отмена» (соответственно, с сохранением и без сохранения сделанных изменений).
Кнопка «Обновить» позволяет отразить в модуле формы сделанные изменения без выхода из окна Конструктора.
В результате работы Конструктора в модуле формы документа создается процедура ВводНаОсновании(ДокОснование). В начало процедуры Конструктор помещает предупреждение: «Данный фрагмент построен Конструктором. При повторном использовании Конструктора внесенные вручную изменения будут потеряны!».
При повторном использовании Конструктора все формулы, сформированные ранее для какого-либо документа-основания, будут появляться в списке реквизитов документа при выделении соответствующего документа-основания в списке документов-оснований. Конструктор предъявит для просмотра и редактирования формулы, сформированные при предыдущем его запуске, как с помощью кнопки «Заполнить формулы автоматически», так и вручную. Более того, он учтет и формулы, вручную внесенные в модуль документа, если они помещены в формируемую им процедуру. Правильность этих формул Конструктор не проверяет. Например, если для какого-то реквизита документа указано заполнение двумя различными реквизитами документа-основания, Конструктор для показа выберет один из них (но алфавиту). Именно он останется в модуле после обновления результатов работы Конструктора, вторая строка, соответствующая тому же реквизиту, будет удалена.
Система 1С:Предприятие позволяет устанавливать между документами отношения подчиненности типа «один ко многим». Использование механизма подчиненности дает пользователю возможность автоматически формировать список документов, подчиненных выбранному документу. Кроме того, к списку подчиненных документов можно обращаться из встроенного языка системы 1С:Предприятие.
Чтобы сделать какой-либо документ (назовем его условно «Документ 2») подчиненным другому документу («Документ 1»), необходимо:
· в структуре документа «Документ 2» создать реквизит типа «документ» (указав конкретный вид документов или «документ вообще»);
· при использовании конфигурации при вводе документа «Документ 2» в качестве значения этого реквизита выбрать документ «Документ 1».
Для работы со списком документов, подчиненных какому-либо документу, используется журнал специального типа — журнал подчиненных документов.
Вызов Конструкторов для создания объектов метаданных описан в главе «Метаданные».
Для иллюстрации работы Конструктора документа можно создать с его помощью, например, документ «Поступление материалов». В первом окне Конструктора нужно заполнить поля ввода примерно так: Идентификатор — «ПостМатериалов», Синоним — «Пост. мат.», Комментарий — «Поступление материалов». Введенные данные появятся потом в окне редактирования свойств документа, имеющем такие же поля ввода.
Далее Конструктор спросит, в частности, формировать ли документ «от проводки». Если на это согласиться, появится окно Конструктора, в котором нужно сформировать список проводок. В начале список проводок пуст. Заполняется он нажатием кнопки «Добавить», по которой открывается окно «Опишите проводку». В этом окне нужно задать счета дебета и кредита проводки. Кнопки выбора дают доступ к списку счетов. В нем выбирается счет кредита и счет дебета. После выбора счета его код попадает в окно «Опишите проводку» и затем в список проводок. Если выбрать наверху списка счетов «Счет будет вводиться в документе» (т. е., в документе будет определяться счет для проводки), то такие счета определяются как переменные «Сч1», «Сч2» и т. д.
В следующем окне Конструктор предлагает список реквизитов связанных со сформированным списком проводок. Если среди счетов были бы переменные, каждая из них стала бы реквизитом документа, например, Сч2, и к ней добавились бы еще реквизиты для аналитического учета, в данном случае это были бы Сч2_Субконто1, Сч2_Субконто2 и Сч2_Субконто3, в соответствии с максимальным количеством субконто, установленным в плане счетов (можно установить до 5, обычно же установлено 3). Это максимальное количество применительно к конкретной ситуации как раз в данном окне можно сократить: отменить часть реквизитов, сняв флажки. Вызывая кнопкой «Изменить» окно «Реквизит документа», можно изменить идентификаторы и их синонимы для реквизитов списка.
В следующем окне можно какие-то из реквизитов поместить в табличную часть документа (тогда проводки по ним будут формироваться по каждой строке табличной части документа).
В следующем окне Конструктора, появляющемся и в том случае, когда документ не формировался «от проводок» (тогда оно появляется сразу вслед за тем окном, в котором этот путь формирования документа был отменен), можно включить документ в один из журналов. Можно также выбрать создание нового журнала или не выбрать ничего. В последнем случае документ попадет в журнал «Общий» и журнал «Прочие». Журнал можно назначить и позднее, при редактировании свойств документа. Новый журнал создастся, если его создание выбрано, в данном окне, и называется но умолчанию так же, как сам документ. Если в конфигурации есть дополнительные журналы, документ может быть включен и в них.
После назначения создаваемому документу журнала предлагается поместить команду вызова для него в меню «Документы» пользовательского интерфейса.
Если был выбран вариант «Создавать новый журнал», на следующем шаге Конструктор предлагает указать синоним и комментарий создаваемого журнала, а также выбрать пользовательские интерфейсы, в которые должна быть помещена команда для вызова нового журнала.
После нажатия кнопки «Готово» открывается окно редактирования свойств документа» с частично заполненными параметрами. Для документа создается форма диалога и модуль, содержащий алгоритм проводок по документу.