Восстановление последовательности документов в 1с 8.3. Использование последовательностей (1Cv8). Как настроить в конфигураторе использование последовательности

Печать (Ctrl+P)

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

сайт_

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

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

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

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

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

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

сайт_

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

сайт_

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

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

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

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

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

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

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

1.2. Дата и время документа

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

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

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

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

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

1.4. Изменение документов "задним числом"

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

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

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

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

1.5. Перепроведение документов

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

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

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

2. Проблема проведения последовательности при работе с УРБД

Давно уже хотел разобраться, почему бывает так что не работает стандартное проведение последовательности.
  • Было взято 3 метода: ПринадлежитПоследовательности - как метод документа;
  • ПринадлежитПоследовательности - как метод последовательнсоти;
  • Сравнить - как метод последовательности. Был проведен опыт на базе, с УРБД (ЦБ) в SQL формате.
Для опыта использовались таблицы _1SJOURN, _1SSTREAM. В Таблице журналов собственно интересовало поле "DS7536" где 7536 - десятичный код последовательности.

При попытке востановить последовательность проводятся лишь те доки, для которых поле DS7536 = 1. Т.е. для рещения проблемы восстановления последовательности - надо для всех проведенных доков и которые после ГП установить поле DS7536 = 1. А теперь собственно говоря, почему такое возникает? Т.е. почему при доступных значениях метода последовательности "ПринадлежитПоследовательности" 0 и 1 есть еще значения и 2?

Первое условие:
Все документы вводятся в переферийной ИБ, при этом в свойствах миграции последовательности стоит флаек на "Единая последовательность в центральной ИБ". Соответсвенно в переферийной ИБ (где вводятся все документы) поле DS7536 всегда равно или 0 или 2, и соответсвенно метод ПринадлежитПоследовательности всегда возвращает 0 или 2. И что интересно, при автообмене в ЦБ также передается значение поля DS7536 равным 2

Теперь вспомним что происходит при проведении последовательности стандартным методом. 1С делает не проверку через метаданные принадлежности последовательности (что правильно, так как есть еще движения, влияющие на последовательность и только по движениям/проводкам можно сказать что документ входит в последовательность или нет), а проверяет поле DS7536, которе равно 2. Ну и конечно же 2 <> 1 и восстановленеи последовательности не приводит к проведению доков, входящих в последовательность.

Подытожим.

  1. Если база распределенная и документы вводится не в ЦБ, при этом стоит флажок в окне свойств последовательности "Единая последовательность в центральной ИБ", то поле DS7536 всегда равно 0 или 2 (что в принципе правильно).
  2. Во время автообмена происходит глюк, который приводит к тому, что поле DS7536 загружается с периферийной ИБ и становится равным 2. 3. 1С во время проведения перепроводит только те документы у которых поле DS7536 = 1.
ЗЫ Возможно, что глюк не на втором этапе, а на третьем.

Как побороть?

  1. Можно восстанваливать последовательность своими методами, проверяя принадлежность документа к последовательности через метаданные (что может привести к избыточности проводимых документов, так как документ может и не делать движений(проводок) по значениям влияющих на пересчет итогов).
  2. надо установить поле DS7536 = 1, для тех случаев когда оно равно 2
Также что выяснилось в процессе исследования: - в переферийной ИБ всегда последовательность находится на последнем (по времени на оси времени, или по полю Date_time_IDDOC) проведенном документе. - каким то непонятным образом (пока непонятным) если последовательность отслеживается по бух счетам и регистрам - выборка происходит только по проводкам, т.е. движения регистров игнорируются (может я чего то недоглядел).

Top