Что такое граница последовательности в 1с. Закрытие месяца. Ручной перенос границы последовательности. Процесс записи документа с отменой проведения

Главная / Квартира

Информация

  • Профессиональная разработка в системе 1С:Предприятие 8
    • ГЛАВА 7. ДОКУМЕНТЫ И ПОСЛЕДОВАТЕЛЬНОСТИ (143)
      • Последовательности документов (166)

Что такое последовательность?

Последовательность документов – понятие в программе 1с, связанное с порядком следования и проведения документов и цепочек документов друг за другом. Механизм последовательности отслеживает документы, введенные задним числом (например, может произойти ввод отгрузки ранее поступления) и предлагает восстановление следования корректный цепочек документов по партионному учету или же документов по взаиморасчетам с клиентами.

Механизм последовательностей

На каждую последовательность 1С поддерживает в базе две таблицы:

  • полный список документов, входящих в последовательность
  • таблицу границ последовательности

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

Эту таблицу можно представить как регистр с измерением Регистратрор и ресурсами - всеми полями документов, входящих в последовательность.

Запись в эту таблицу происходит при записи документа.

Количество записей в этой таблице соответствует общему количеству документов последовательности.

Таблица границ последовательности

Эту таблицу можно представить как регистр с измерениями - всеми измерениями регистров, входящих в последовательность и ресурсом - регистратором (и, соответственно, моментом времени), соответствующим границе последовательности.

Запись в эту таблицу происходит при проведении/отмене проведения документа.

Количество записей в этой таблице соответствует общему количеству различных детерминантов (наборов измерений) последовательности.

Как настроить в конфигураторе использование последовательности

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

Как получить документы, нарушающие последовательность?

Например, запросом: ВЫБРАТЬ

ОстаткиНоменклатуры.Регистратор, ОстаткиНоменклатуры.Номенклатура

Последовательность.ОстаткиНоменклатуры КАК ОстаткиНоменклатуры ВНУТРЕННЕЕ СОЕДИНЕНИЕ Последовательность.ОстаткиНоменклатуры.Границы КАК ОстаткиНоменклатурыГраницы ПО ОстаткиНоменклатуры.Номенклатура = ОстаткиНоменклатурыГраницы.Номенклатура И ОстаткиНоменклатуры.МоментВремени > ОстаткиНоменклатурыГраницы.МоментВремени

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Принадлежит

Проверить

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

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

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

вооОоот …

П.С.1.

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

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

П.С.2.

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

П.С.3.

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

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

В системе "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) проведенном документе. - каким то непонятным образом (пока непонятным) если последовательность отслеживается по бух счетам и регистрам - выборка происходит только по проводкам, т.е. движения регистров игнорируются (может я чего то недоглядел).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



© 2024 solidar.ru -- Юридический портал. Только полезная и актуальная информация