Использование последовательностей (1Cv8). Использование последовательностей (1Cv8) Управление списком последовательностей

Для пользователя:
Последовательность документов есть в УПП, УТ (8), ТиС, ПУБ (7).
Операции – Проведение документов, на закладке «Восстановление последовательностей» приведены все имеющиеся в программе последовательности и указана дата актуальности каждой из них. То есть если в июне 2010 года мы видим такое:

То это плохо. Партионный учет давно неактуален, значит – все значения себестоимости, которые появляются в отчетах, врут. (Учет кадров и налоговый учет УСН в данной базе не ведется).

Что значит последовательность? Строго говоря, одним из правил учета является его оперативность, т.е. отражение хозяйственных операций по мере их возникновения. 1 июня на склад поступило 10 штук товара А, потом 10 июня продано 8 штук. Если проводить эти документы (Поступление товаров и услуг, Реализация товаров и услуг) строго в хронологическом порядке, то последовательность установится сначала на 1 июня, потом на 10 июня. Т.е. ее граница будет сдвигаться вперед каждым документом, и итоги (количество, сумма, себестоимость) будут актуальными на каждый момент времени. Если же потом, задним числом, провести еще один документ (Реализация товаров и услуг) от 8 июня, которым будет оформлена реализация 7 штук товара А, программа дает это сделать беспрепятственно. Граница последовательности при этом установится на 8 июня, на этот документ. То есть информация ДО ввода этого документа верна, а ПОСЛЕ – уже нет. При восстановлении последовательности (перепроведении документов, входящих в последовательность), документ от 10 июня проведен не будет, потому что нет необходимого количества товара А. Далее пользователь должен искать причину этой ошибки, устранять и восстанавливать последовательность заново.

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

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

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

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

Логически - последовательность можно условно представить как «Общий» журнал документов входящих в эту последовательность. Условно, потому, что на последовательностях строится логика учета.

У некоторых последовательностей, для дополнительного контроля автоматически при движении регистров, отслеживается связь: регистр – последовательность. Если изменился регистр, должна измениться и последовательность.

Физически – последовательность состоит из двух таблиц:
1. Таблица регистрации;
2. Таблица границ.

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

Таблица границ (ТГ) – хранит границу последовательности в разрезе измерений, одно измерение – одна запись если измерений нет, то у ТГ одна запись. Запись ТГ показывает, какой документ в ТР является последним правильно проведённым, т.е. не нарушившим правильное ведение учёта.

Обе таблицы идентичны по составу колонок: «Период», «Регистратор», «Измерение».

Восстановить последовательность возможно путём простого программного переноса ГП (если вы уверены, что итоги не нарушены) на последний документ в последовательности или повторным, последовательным проведением всех документов от ГП до последнего по времени документа в последовательности. Для исправления последовательности существует штатная обработка «Проведение документов».

Механизм «последовательность» имеет подчинённые объекты, свойство – измерения.

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

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

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

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

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

Запись в ТГ происходит при проведении документа.

При проведении документа, его движения учитываются в:
· «Оперативном учёте» - записывает движения документа в регистрах;
· «Бухгалтерском учёте» - запись проводок.

ПоследовательностьМенеджер.< ИмяПоследовательности > - Данный менеджер предназначен для управления последовательностью:
Последовательность.«ИмяПоследовательности».Восстановить
Последовательность.«ИмяПоследовательности».ПолучитьГраницу
Последовательность.«ИмяПоследовательности».ПолучитьГраницы
Последовательность.«ИмяПоследовательности».Принадлежит
Последовательность.«ИмяПоследовательности».Проверить
Последовательность.«ИмяПоследовательности».СоздатьНаборЗаписей
Последовательность.«ИмяПоследовательности».УстановитьГраницу

Вся работа «ПоследовательностьМенеджер» складывается из анализа и работы с ТР и ТГ. Например, метод «Проверить» - если документ в ТГ, есть последний в ТР, значит, последовательность не нарушена и наоборот и т.д.

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

Рассмотрим настройку и свойства последовательностей в 1С 8.2.

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

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

Получите 267 видеоуроков по 1С бесплатно:

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

Пример использования последовательности в 1С

Пример программной установки границы последовательности:

Последовательности. ПартионныйУчет. УстановитьГраницу(МоментВремени() ) ;

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

ГраницаМоментВремени = Последовательности. ПартионныйУчет. ПолучитьГраницу() ;

Последовательность и производительность 1С Предприятие

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

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

Восстановление границы последовательности проведения документов в 1с 8.3

ПОСЛЕДОВАТЕЛЬНОСТЬ …и как "я" её понимаю …

Последовательностьесть объект метаданных 1С.

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

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

Логически - последовательность можно условно представить как «Общий» журнал документов входящих в эту последовательность. Условно, потому, чтона последовательностях строится логика учета.

У некоторых последовательностей, для дополнительного контроля автоматически при движении регистров, отслеживается связь: регистр - последовательность. Если изменился регистр, должна измениться и последовательность.

Физически - последовательность состоит из двух таблиц:

1. Таблица регистрации;

2. Таблица границ.

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

Таблица границ (ТГ) - хранит границу последовательности в разрезе измерений, одно измерение - одна запись если измерений нет, то у ТГ одна запись. Запись ТГ показывает, какой документ в ТР является последним правильно проведённым, т.е. не нарушившим правильное ведение учёта.

Обе таблицы идентичны по составу колонок: «Период», «Регистратор», «Измерение».

Восстановить последовательность возможно путём простого программного переноса ГП (если вы уверены, что итоги не нарушены) на последний документ в последовательности или повторным, последовательным проведением всех документов от ГП до последнего по времени документа в последовательности. Для исправления последовательности существует штатная обработка «Проведение документов».

Механизм «последовательность» имеет подчинённые объекты, свойство - измерения.

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

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

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

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

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

Запись в ТГ происходит при проведении документа.

При проведении документа, его движения учитываются в:

· «Оперативном учёте» - записывает движения документа в регистрах;

· «Бухгалтерском учёте» - запись проводок.

ПоследовательностьМенеджер.< ИмяПоследовательности > - Данный менеджер предназначен для управления последовательностью:

Последовательность.«ИмяПоследовательности».

Восстановить

ПолучитьГраницу

ПолучитьГраницы

Принадлежит

Проверить

СоздатьНаборЗаписей

УстановитьГраницу

Вся работа «ПоследовательностьМенеджер» складывается из анализа и работы с ТР и ТГ. Например, метод «Проверить» - если документ в ТГ, есть последний в ТР, значит, последовательность не нарушена и наоборот и т.д.

вооОоот …

П.С.1.

Как пользоваться обработкой.

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

П.С.2.

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

П.С.3.

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

С уважением, Шёпот теней.

Печать (Ctrl+P)

Последовательности документов

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

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

Управление списком последовательностей

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

Свойства последовательности документов

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

Свойства последовательности

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

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

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

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

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

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


Свойства измерения последовательности

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

Работа с последовательностями документов

При работе в режиме 1С:Предприятие для каждой введенной в конфигурации последовательности документов система будет автоматически поддерживать границу последовательности. В качестве границы последовательности будет выступать позиция документа. При последовательном проведении документов, входящих в данную последовательность, граница последовательности будет устанавливаться на каждый вновь проведенный документ. Однако если будет проводиться документ, относящийся к данной последовательности, но расположенный позже другого проведенного документа, относящегося к той же последовательности и находящегося после текущей границы последовательности, то граница последовательности сдвигаться не будет, так как нарушается последовательность проведения документов. Эта ситуация может быть проанализирована алгоритмом проведения документа.
При проведении документов задним числом, отмене проведения или удалении документов, если удаляются или записываются движения регистров, указанные как влияющие на данную последовательность, граница последовательности отодвигается на момент измененного документа. Перед перемещением границы назад производится проверка на наличие границ, которые необходимо переместить назад. Эта проверка производится без эксклюзивной блокировки границы.
Таким образом, граница последовательности будет продвигаться вперед при последовательном проведении документов, относящихся к данной последовательности, и будет отодвигаться назад при изменении задним числом движений регистров, относящихся к данной последовательности.
В режиме перепроведения документов (вызывается выбором пункта Все функции – Стандартные – Проведение документов ) существует специальная возможность восстановления последовательности проведения документов. При ее использовании система автоматически выполняет перепроведение всех документов, относящихся к данной последовательности, от границы последовательности до указанного момента.
В приведенном нами примере с учетом товаров проводимые расходные накладные будут сдвигать границу последовательности вперед. Любое изменение в движениях по регистру, на котором ведется стоимостный учет товаров, записанное раньше границы последовательности, будет отодвигать границу последовательности назад, на момент этого документа. После этого проводимые документы, находящиеся позже границы последовательности, уже не будут двигать ее вперед, если между границей последовательности и проводимым документом окажутся проведенные документы из этой последовательности. Режим восстановления последовательности будет перепроводить все расходные накладные. Заметим, что приходные накладные
хотя и влияют своими движениями на границу последовательности, перепроводиться не будут, так как они не используют в алгоритме проведения остатков и не включены в список документов, относящихся к данной последовательности. После выполнения восстановления последовательности проводимые после границы последовательности документы снова будут двигать границу вперед.
Режим восстановления последовательности позволяет автоматически выполнить перепроведение всех документов, относящихся к последовательности, от текущей позиции границы последовательности до указанного момента. В верхней части диалога следует выбрать позицию, до которой будет выполняться перепроведение документа.

И снова обращаемся к теме закрытия месяца в 1С Бухгалтерии 8.3. На этот раз рассмотрим одну вспомогательную функцию, которая называется "контроль последовательности проведения документов" . На рисунке ниже представлена форма обработки закрытия месяца, на которой вы можете видеть красную ссылку "контроль последовательности проведения документов".

Что такое контроль последовательности проведения документов в 1С

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

сайт_

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

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

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

Тут была важная часть статьи, но без JavaScript её не видно!

1С Бухгалтерия 8 считает так: если вы перепроводите "задним числом" какой-либо документ, то, возможно, потребуется перепровести документы, которые следуют за данным. Именно из такого подхода и возникла вспомогательная функция по контролю за последовательностью проведения документов. Данная функция доступна в обработке "Закрытие месяца" по той самой красной ссылке.

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

сайт_

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

сайт_

Как видите, теперь с точки зрения 1С Бухгалтерии "всё в порядке". Однако не стоит зыбывать о том, что это всего лишь программа. Конечный ответ на вопрос "всё ли в порядке?" даёт лишь пользователь, поэтому не стоит на 100% перекладывать на 1С всё подряд — однажды такой подход может "выйти боком".

Подведём итоги

Если 1С Бухгалтерия при закрытии месяца предлагает исправить последовательность проведения документов, то обычно все нажимают на красную ссылку, показанную на картинках выше. Однако всегда ли целесообразно делать то, что рекомендует программа?

Ответы на все вопросы "почему" и "как лучше" я рассматриваю со своими учениками на курсах 1С Бухгалтерии 8 по Skype . Практика показывает, что лучше всего в 1С работают те, кто не просто "прочитал учебник", но понял как работает программа, как в ней ведется учёт и почему нужно делать так, а не иначе.

Без понимания работа в 1С — это всего лишь щёлканье по кнопкам!