Установить границу последовательности 1с
В этой статье рассмотрен механизм реализации контроля последовательности документов в конфигурации 1С:Бухгалтерия 3.0
Последовательность документов организации
Схема работы механизма последовательности состоит из нескольких этапов.
- При записи документ регистрируется в последовательности.
- Система определяет взаимосвязанные с ним документы.
- Проверяется, вызвала ли регистрация документа нарушение в правильной последовательности документов. Если нет, граница последовательности считается ненарушенной. Если условие выполняется, то фиксируется нарушение границы последовательности.
Как реализован механизм Последовательности в 1С
Последовательность — это такой же объект метаданных в 1С, как и справочники, документы, и регистры. В настоящее время в 1С:Бухгалтерия 3.0 используется единственная последовательность:
В состав последовательности включены взаимосвязанные с точки зрения учета документы, ввод и изменение которых контролируется в программе. PDF
По умолчанию установлен режим перемещения границы последовательности при проведении документа:
Это означает, что граница последовательности имеет не автоматический, а сложный алгоритм движения границы, который реализован специальными процедурами и функциями в 1С, что приводит к особым случаям при работе с последовательностью:
Физически последовательность можно представить в виде таблицы с данными:
Статус может быть четырех видов:
- Проведен в последовательности — при оперативном проведении документов, входящих в перечень документов последовательности;
- Перепроведение пропущено — при ручной корректировке движений документа;
- Проведен с нарушениями в последовательности — при проведении «задним числом»;
- Исключен из последовательности — устанавливается для:
- документов, не входящих в перечень документов последовательности;
- Счета-фактуры полученного ;
- Счета-фактуры выданного .
- Проведен с нарушениями в последовательности.
В процедуре Закрытие месяца программа определит нарушение границы последовательности по наличию статуса Проведен с нарушениями в последовательности. При наличии нескольких нарушений выбирается самый ранний момент времени нарушения границы.
Цвет ссылки Перепроведение документов :
- Синий — при обнаружении нарушения границы последовательности;
- Зеленый — нарушения границы последовательности нет.
Для восстановления последовательности откройте форму Закрытие месяца — Перепроведение документов .
Выерите один вариант из предложенных:
- перепроведение документов с момента нарушения границы последовательности;
- без перепроведения документов.
См. также:
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Доброго времени суток!
Есть необходимость установить программно границу последовательностей без перепроведения документов за прошлый период.
Почитал СП, набросал код:Граница не меняется.
Платформа 8.2.19.90 Конфигурация "Мебельное производство" от ПартнерСофтаВ чем может быть причина?
Заранее спасибо, а то уже весь интернет перерыл в поисках ответа.
(1) Al_Capone, вообще покопайся в типовых,
там целый общий модуль посвящен работами с последовательностями.причем, они его существенно изменили.
Вот рабочая функция из старой бухни, причем в последних конфах ее выпилили.(2)В БП 3.0.51.16 не работает на строчке:
"РаботаСПоследовательностями.УстановитьБлокировкуПоследовательностиПоОрганизации"
Наверное, что-то изменилось, не в курсе?(1) Al_Capone, в качестве границы последовательности документов пытаетесь установить конкретный элемент справочника "Номенклатура". Сомнительно.
(5) Al_Capone, вряд ли.
Что такое граница последовательности документов по сути? Момент времени, позиция конкретного документа.(6) Martinian, это да, но что тогда нужно передавать в отбор, если у последовательности данные это номенклатура?
Мне вот с этим вообще не понятно.Получилось добавить запись в последовательность, но при этом граница все равно не верная! Она актуальна на первую запись, при этом регистратор удален(обстоятельства не известны), и не только у этой записи(см. скриншот). Вопрос: как удалить все записи?
Где:
ИмяПоследовательности - Имя вашей последовательности
ДатаДокумент - реквизит (тип либо дата либо документ)
Организация - реквизит Организация(10) Al_Capone, могу посоветовать сделать тестирование и исправление информационной базы (через Конфигуратор).
Решение было принято следующее:
Удалить записи последовательности непосредственно из таблицы БД(внутренней).
Способов 2:
Для файлового варианта - Использовать Tool_1CD(альфа версия умеет удалять записи)
Для SQL - средствами sql.
Посмотреть названия таблиц можно с помощью ПолучитьСтруктуруХраненияБазыДанных(Массив).
Как пользоваться можно посмотреть в СП.
Если ни у кого предложений нет, вопрос можно считать закрытым.
Всем спасибо за помощь!(20)Можно использовать процедуру из комментария (9) Положить в общий модуль расширения и закомментировать 1 строку содержащую "УстановитьБлокировкуПоследовательностиПоОрганизации"
Если в конфигурации ведется одна организация, то можно просто очистить последовательность штатным способом
Еще одна важная деталь, про которую многие забывают, а она непосредственно влияет на начальную границу контроля последовательности - это "дата начала ведения учета", настраивается в учетной политике организации хранится в РегистрСведений.УчетнаяПолитика.Период. Очень часто возникают проблемы после свертки базы, т.к. записи регистра учетная политика за старые периоды остаются в базе после свертки. Это как правило вызывает ошибки учета 1С, когда программа 1С Бухгалтерия просит регламентное закрытие месяца в старых периодах, где учет не ведется.
Программно "дату начала ведения учета" можно получить функцией
Функция проверена на БП 3.0.102.11 - в нее передаете ДатаОкончания. В результате с этой даты + первый документ свежее этой даты - это и будет начало периода перепроведения в закрытии месяца.
Видеоролик выполнен в программе «1С:Бухгалтерия 8» версия 3.0.62.17.
Данные в программе должны быть введены в строгой хронологической последовательности. На практике не всегда получается такую последовательность соблюсти (документы поступают в бухгалтерию с опозданием, исправляются ошибки в уже введенных документах и т. д.).
Привести в соответствие хронологию расчетов призван механизм контроля последовательности документов, который отслеживает порядок проведения документов. Для контроля программа устанавливает точку, называемую границей последовательности, ранее которой документы проведены в строгом хронологическом порядке. В случае изменения даты документа «задним числом» граница последовательности устанавливается на самый ранний документ-«нарушитель».
Восстановление последовательности, т. е. проведение документов в правильной хронологической последовательности выполняется с помощью специальной обработки.
- из формы обработки Закрытие месяца (раздел Операции). Процедура закрытия месяца всегда начинается с контроля последовательности проведения;
- из раздела Операции - Сервис - Групповое перепроведение документов. Перепровести документы можно по всем организациям или только по выбранной организации.
Начиная с версии 3.0.62.17 в «1С:Бухгалтерии 8» можно переносить границу последовательности без перепроведения документов, например, когда в первичных документах внесены изменения, не влияющие на бухгалтерский и налоговый учет и регламентированную отчетность.
Чтобы выполнить ручной перенос границы последовательности документов в обработке Закрытие месяца нужно перейти по ссылке Перепроведение документов в одноименную форму, где установить переключатель в положение Перепроведение не требуется.
Такая возможность доступна пользователям с ролью Право интерактивного переноса границы последовательности. По умолчанию эта роль назначается администратору и главному бухгалтеру.
Последовательность в 1С 8.3– объект метаданных, позволяющий решать специфические задачи контроля хронологической последовательности необходимых документов. Обычно используется в партионном учете или же в контроле взаиморасчетов.
Рассмотрим настройку и свойства последовательностей в 1С.
Настройка и свойства последовательностей в 1С
Для настройки последовательности необходимо указать документы, с которыми связана последовательность, и какие регистры влияют на последовательность. Это указывается на вкладке Использование:
Также на этой вкладке необходимо указать режим перемещения границы последовательности при проведении документа – Перемещать или Не перемещать. Эта настройка указывает на то, будет ли система автоматически передвигать границу последовательности, или же эта ответственность ложится на плечи разработчика.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>На вкладке Данные можно указать дополнительные измерения для контроля последовательности. Например, последовательности можно контролировать в разрезе организации.
Пример использования последовательности в 1С
Пример программной установки границы последовательности:
Пример получения текущей границы для последовательности в 1С:
Последовательность и производительность 1С Предприятие
Последовательность — очень опасный объект метаданных с точки зрения производительности системы. Связано это с тем, что при установке новой границы последовательности платформа блокирует попытки изменить границу другими пользователями. Как правило, если в системе используется последовательность, то используется она во многих документах системы. Поэтому база данных становится «последовательной», а не «параллельной» для пользователей (больше о производительности можно прочитать в разделе 1С Эксперт).
Для решения данной проблемы достаточно дописывать движения по нужным регистрам и передвигать границу последовательности в нерабочее время регламентным заданием.
Восстановление границы последовательности проведения документов в 1с 8.3
Произвести восстановление последовательности границы в 1С 8.3 можно с помощью встроенного механизма. Обработка расположена в меню «Все функции» — «Стандартные»:
На вкладке «Восстановление последовательностей» можно выбрать интересующие пункты или восстановить все последовательности:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Внимание! Данный форум является модерируемым.
Для получения к нему доступа необходимо зарегистрироваться или авторизоваться на сайте.В связи с восстановлением БД пришлось перепровести все заказ-наряды и теперь 2 из 4 последовательностей сдвинулись на самое начало. Как можно программно задать нужное значение для них?
Записи о нарушенных последовательностях хранятся в соответствующих регистрах сведений.
Достаточно их подредактировать в режиме 1С:Предприятие.Я прекрасно понимаю, что лучше. Просто когда мне доверили эту БД, оказалось, что границу там не восстанавливали 3,5 года. В течении 4-х месяцев я ее восстанавливал, а потом пришлось из-за аварии перепровести заказ-наряды и теперь границы - Взаиморасчеты и Производство вернулись на 2011 год. Фирма работает практически круглосуточно и время для перепроведения просто нет.
Нужно подредактировать регистры сведений "Границы последовательностей взаиморасчетов" и "Границы последовательности производства".
Они располагаются Сервис - Установка прав и настроек - вкладка Все объекты.Спасибо, но что именно корректировать? Там просто список всех документов, что именно я должен сделать?
Не могу уловить суть:
Взаиморасчеты - актуальность 03.01.2011 - в регистре документы от 03.01.2011 до 01.07.2014
Заказы - актуальность 19.03.2014 - в регистре документы от 26.06.2012 до 01.07.2014
Производство - актуальность 15.06.2011 - в регистре документы от 03.01.2011 до 01.07.2014Получается наличие более поздних документов не влияет на актуальность границы, тогда какие именно записи нужно удалить?
Хотя вроде получилось на тестовой БД, удалил из регистра все записи до 01.04.2014 и актуальность границы стала 01.04.2014. Спасибо.
Взаиморасчеты - актуальность 03.01.2011 - в регистре документы от 03.01.2011 до 01.07.2014
Заказы - актуальность 19.03.2014 - в регистре документы от 26.06.2012 до 01.07.2014
Производство - актуальность 15.06.2011 - в регистре документы от 03.01.2011 до 01.07.2014Получается наличие более поздних документов не влияет на актуальность границы, тогда какие именно записи нужно удалить?
Чтоб не нарушить целостность данных рекомендуем восстановить последовательности. Для того что бы в дальнейшем не допускать случайного нарушения границы последовательностей установите дату запрета редактирования документовЧитайте также: