1С:Предприятие: настройка учета
Проблема проведения последовательности при работе с УРБД.
Поищем ответ на вопрос, почему в отдельных случаях не работает стандартное проведение последовательности.
Существует три метода проведения последовательности :
- ПринадлежитПоследовательности - как метод последовательности.
- ПринадлежитПоследовательности - как метод документа.
- Сравнить - как метод последовательности.
Был проведен эксперимент на базе, в SQL формате с УРБД (ЦБ).
Для эксперимента использовались таблицы _1SSTREAM,_1SJOURN. В Таблице журналов интересовало поле DS7536, где 7536 – это десятичный код последовательности.
При восстановлении последовательности проводятся только те документы, для которых исследуемое поле DS7536 = 1. Таким образом, для восстановления последовательности необходимо для всех проведенных документов установить исследуемое поле DS7536 = 1. Далее возникает вопрос: почему при возможных значениях 0 и 1 в методе последовательности "ПринадлежитПоследовательности" имеются еще значения и 2?
Поясним возникшую ситуацию.
Источником всех документов является периферийная информационная база , при этом флажок стоит в свойствах миграции последовательности в окошке "Единая последовательность в центральной ИБ". Поэтому в периферийной информационной базе, где производится ввод всех документов, поле DS7536 принимает значение 0 или 2, и, как правило , метод ПринадлежитПоследовательности возвращает 0 или 2. Кроме того, также при автообмене в центральную базу передается значение исследуемого поля DS7536, равным 2.
Теперь рассмотрим то, что происходит при стандартном методе проведения последовательности. 1С не проводит через метаданные принадлежности последовательности проверку (поскольку имеются еще движения, оказывающие влияние на последовательность, и исключительно по проводкам можно судить, входит ли документ или нет в последовательность), а проверяет поле DS7536, равное 2. Поскольку 2 <> 1, то восстановление последовательности не может привести к проведению документов , входящих в последовательность.
Подведем итог.
- Если документы вводятся не в центральной базе, т.е. работа ведется распределенной базе, а флажок при этом стоит в окне "Единая последовательность в центральной информационной базе", то поле DS7536 равно 2 или 0 всегда, а это – правильно.
- В момент автообмена возможен глюк, приводящий к тому, что загрузка поля DS7536 производится с периферийной информационной базы и оно становится равным 2.
- Программа 1С перепроводит во время проведения только те документы, поле которых DS7536 = 1.
Глюк может появиться как на втором, так и на третьем этапе.
Как решить проблему проведения последовательности при работе с УРБД?
Что делать, если 1С не проводит проверку через метаданные принадлежности последовательности:
- Последовательность можно восстанавливать своими методами, проверяя отношение документа к последовательности через метаданные
- Нужно установить поле DS7536 = 1, для тех ситуаций, когда оно равно 2.
В ходе исследования было обнаружено, что в периферийной информационной базе последовательность всегда находится на последнем проведенном документе (по Date_time_IDDOC - полю или по времени на оси времени), т.е. игнорируются движения регистров.
Цены и режим обучения: бухгалтерские курсы
Курс "Восстановление знаний бухгалтерского учета в программе 1С:Предприятие"
Курс "Ведение бухгалтерского учета и подготовка налоговой отчетности в программе 1С:Предприятие"
Другие материалы по теме:
последовательность документов, последовательность, регистр, 7.7, документ
Материалы из раздела: 1С:Предприятие: настройка учета
Другие материалы по теме:
Общесистемные механизмы и принципы
Нас находят: урбд последовательность документов, _1sjourn последовательность, урбд последовательность периферийной, урбд последовательности, урбд граница последовательности миграция, работа с УРБД 1С, Проводит ли документы восстановление последовательности?, проведение последовательности документов 1С Предприятие 8 3 порядок работы, проблемы восстановления последовательности 1с 7 7, почему не работает восстановление последовательности
Мы на Facebook