Восстановление 1С РИБ (распределенная база) при проблемах обмена конфигураций и расширений

29.09.23

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обновить идентификаторы объектов метаданных:
.epf 5,76Kb
29
29 Скачать (2 SM) Купить за 2 150 руб.
Отключение РИБ для 1С 8.1-8.2:
.epf 5,74Kb
5
5 Скачать (2 SM) Купить за 2 150 руб.
Отключение РИБ для 1С 8.3 УФ:
.epf 7,86Kb
27
27 Скачать (2 SM) Купить за 2 150 руб.
Удалить все расширения из БД:
.epf 5,65Kb
12
12 Скачать (2 SM) Купить за 2 150 руб.

Проблемы 1С Расширения и 1С РИБа:

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

Но многие предпочитают делать отдельное расширение для каждого РИБа свое. Когда 1-2 РИБа еще можно внести изменения в каждое расширение, а когда их 10-15-20, то неудобно и затратно по времени. 

Почему делают так? Чтобы избежать ошибок передачи самого расширения и данных. т.к. если в расширении указан признак "Используется в РИБ", то это расширение выгружается ВСЕГДА в файл обмена для узла, при каждой выгрузке (каждые 15 минут как правило). Даже если конфигурация расширения не изменялась не как, оно все равно будет выгружаться в файл обмена для распределенного узла. Это важно понимать: чем больше расширений или чем толще само расширение, тем толще и файл обмена при каждом обмене. Что может тянуть за собой разного рода проблемы.

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

По факту мы получаем, что расширение есть в РИБе с нашими изменениями и объектами (справочники, документы и т.д.) но оно не работает в распределенной базе, либо база выпадает в ошибку, непонятно вообще откуда взятую, ведь в главной базе все то же самое работает....

 


Для исправления данной ситуации необходимо выполнить обновление справочника "Идентификаторы объектов расширений", делается это с помощью простой обработки (обработка приложена).

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

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

После выгрузки данных из центрального узла, мы пытаемся принять данные в РИБе, в автоматическом режиме (при автообмене), либо в ручном по кнопке "Синхронизировать".

После чего получаем ошибку:
"Ошибка исключительной блокировки информационной базы
 активные сеансы:
 компьютер: RIB1"

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

Закрываем 1С предприятие, заходим в 1С конфигуратор, расширения нет. Заходим в 1С предприятие, делаем обмен, получаем ту же ошибку, и все по новой. Замкнутый круг. Расширение не принимается, и обмен перестает работать.

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

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



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

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

 

 

Немного отступления, был случай, который выпил много крови. Обновляли базу УТ 11.4 до последнего релиза в связи с маркировкой, обновили платформу т.к. новая УТ 11.4 не работала на той платформе, обновили РИБы (3 штуки) саму базу данных 1С и платформу соответственно. В базе было 2 расширения с доработками под нужды компании. Все работало все рады.

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

Ошибок по журналу нет, тесты базы через конфигуратор или через утилиту chdbfl проходят без ошибок, кэш не помогает, удаление расширений не помогает. Было ясно одно, что проблема с расширением, т.е. все работает, пока не трогаем расширение (восстанавливали неоднократно базу, пока не нашли причину). А причина была проста... Совместимость конфигурации была намного выше совместимости расширения, плюс ко всему платформа уже была 8.3.19. И проблемы в работе не было, т.е. 1С не выдавала ошибок совместимости или еще что-то, пока не поменяли структуру расширения, и тогда 1с очнулась, что вы нам тут втюхиваете.... ушло 2 дня на поиски проблемы, а оказалось простая вещь.

Ложкой дегтя было еще и то, что просто совместимость не изменить, т.к. после сохранения база крашилась, пришлось откатываться по платформе и на платформе 8.3.16 изменять совместимость, и потом уже все остальное. После того, как указали правильную совместимость, обмены пошли в штатном режиме, и все работало корректно и дальше.

4. Удаление расширения в центральном узле и распределенных базах. Если необходимо удалить расширение из базы, которое используется в распределенных базах, то его необходимо:

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

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

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

Что необходимо делать в таком случае и как это исправить:

  - Обязательно! Делаем копию БД (если что-то пойдет не так);
  - Отключаем в распределенной базе центральный узел, это можно сделать с помощью обработки;

Также отключить подчиненный узел от главного узла можно с помощью параметра запуска конфигуратора /ResetMasterNode.
"C:\Program Files (x86)\1cv8\common\1cestart.exe" config /f "D:\1C\ПапкаБазы" /n администратор /p пароль /ResetMasterNode

Удаление расширений через командную строку

Для удаления всех расширений (файловый вариант): 

"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /f "Полный_путь_к_базе" /N "Имя_пользователя" /P "Пароль_пользователя" /DeleteCfg -AllExtensions

Для удаления одного расширения по имени (файловый вариант): 

"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /f "Полный_путь_к_базе" /N "Имя_пользователя" /P "Пароль_пользователя" /DeleteCfg -Extension "ИмяРасширения"

Для удаления одного расширения по имени (серверный вариант, SQL): 

"C:\Program Files\1cv8\common\1cestart.exe" DESIGNER /S «ИмяСервера/ИмяИнформБазы»  /N "Имя_пользователя" /P "Пароль_пользователя" /DeleteCfg -Extension "ИмяРасширения"


  


  - После отключения узла заходим в конфигуратор и удаляем расширения, которых нет в центральной базе, и сохраняем базу;


  


  - При первом входе в базу в режиме предприятия 1С спросит восстановить узел ВАЖНО его ВОССТАНОВИТЬ!!!;


  


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

5. Другие проблемы с расширениями. Прочие проблемы с расширениями при обмене.
 - Нет доступа к файлу (если ранее все работало) 
 - файл не обнаружен Params\DBNames... и т.д.

Такие ошибки как правило возникают из-за зависшего кэша, и исправляются чисткой 1с КЭШа: "C:\Users\User\AppData\Local\1C\".

6. Восстановление узла распределенной информационной базы (при изменении конфигурации). Бывает, при изменении конфигурации центрального узла и выгрузке в распределенную базу, после синхронизации 1С говорит, что было принято изменение и надо обновить 1С, после обновление. Делаем синхронизацию повторно и опять то же самое и так бесконечно, изменения не принимаются, чтобы вы ни пытались с распределенной базой сделать. 

Для исправления данной ошибки требуется сделать следующие шаги:

  - Обязательно! Делаем копию БД (если что-то пойдет не так);
  - Выгружаем конфигурацию главного узла в файл *.cf в режиме конфигуратора.
  - Отключаем в распределенной базе центральный узел, это можно сделать с помощью обработки;

Также отключить подчиненный узел от главного узла, можно с помощью параметра запуска конфигуратора /ResetMasterNode.
"C:\Program Files (x86)\1cv8\common\1cestart.exe" config /f "D:\1C\ПапкаБазы" /n администратор /p пароль /ResetMasterNode  

Пример: "C:\Program Files (x86)\1cv8\8.3.19.1150\bin\1cv8.exe" config /ResetMasterNode

Также этот метод поможет вам если, при обновлении конфигурации были проблемы и ошибки и режим предприятия не работает или вылетает ошибка при синхронизации или обновлении.

- Загружаем конфигурацию главного узла из файла *.cf в подчиненный узел в режиме конфигуратора. Загружаем полной заменой "Загрузить конфигурацию из файла", не сравнить, объединить конфигурации;

- Сохраняем конфигурацию;

- При первом входе в базу в режиме предприятия 1С спросит восстановить узел ВАЖНО его ВОССТАНОВИТЬ!!! Либо восстановить главный узел можно с помощью обработки;

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

После выполнения этих действий работоспособность распределенной информационной базы будет восстановлена.

Внимание! Важный момент на "19" платформе (8.3.19.1150, 8.3.19.1467) очень много проблем с расширениями их обновлениям и доработкой. В один прекрасный день после очередного изменения или доработки расширение, 1с начнет падать в дамп (ошибку), не давай обновить расширение. Лечится либо откатом на "18" платформу либо на "20", если такой возможности нет, выгружаете базу разворачивайте на другой платформе обновляете или исправляете расширение и грузите базу назад. 1С и само расширение работает нормально и после проделанной работы. Способ рабочий.

К статье прилагаются обработки, с помощью которых можно исправить проблемы с распределенными база 1С.

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

РИБ распределенная база восстановление распределенной базы обмер расширение обмен расширений в базе

См. также

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    166492    333    277    

373

SALE! 20%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

26280 22338 руб.

12.06.2017    141537    798    297    

419

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.234.x) и БП 3.0 (3.0.161.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    24033    169    51    

128

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.19.x).

35000 руб.

23.07.2020    51279    228    69    

185

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Правила переноса кадровых и расчетных данных и справочной информации из "1С:УПП1.3" или "1С:КА 1.1" в "1С:ЗУП 3.1 | Разработан в формате КД 2 (правила конвертации данных) | При выгрузке есть фильтр по организациям | Обновляется при выходе новых релизов 1С | Развитие алгоритмов | Расчетные документы переносятся в документ "Перенос данных" | Создаются документы "Начальная штатная расстановка" и "Начальная задолженность по зарплате", переносятся кадровые документы

55778 50200 руб.

29.10.2018    56211    59    105    

61

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    171179    303    257    

378

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

15300 13005 руб.

18.02.2016    186886    589    509    

526

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ ФОМС, ЕФС Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет заработной платы 3.0», «КАМИН:Зарплата для бизнеса 4.0» и «КАМИН:Зарплата 5.0» на конфигурацию «Зарплата и управление персоналом» версии 3.1.

12000 руб.

25.09.2016    80679    311    250    

264
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. oldcopy 174 23.09.21 11:07 Сейчас в теме
Почти на все эти грабли наступали. В итоге сделали вывод - не использовать РИБ и расширения совместно. Так как положить сеть можно легким движением руки и обойдется это, как финансово, так и репутационно, намного дороже, чем поддерживать измененную конфигурацию. Тем более что хороших инструментов по сопровождению и отслеживанию изменений хватает.
3. aspirator23 339 23.09.21 15:16 Сейчас в теме
2. ClickUp 722 23.09.21 14:20 Сейчас в теме
(1) Других решений то нет, кроме РИБа, поэтому приходится довольствоваться тем что дают. Облако, вебы и прочее, все подвязано на интернете, и если будут проблемы с последним то магазин встал.
4. oldcopy 174 23.09.21 15:49 Сейчас в теме
(2) А при проблеме с расширениями станет сеть магазинов. Но не это плохо, плохо что выстрелить это может абсолютно внезапно, хотя до этого вы все это сто раз протестировали.

Устранять косяки расширений в РИБ тоже такое себе удовольствие. Плюс нет полного понимания, что именно происходит с базой и почему. А время идет, а магазины стоят...
5. svetanik 5 05.02.22 21:09 Сейчас в теме
Хорошо, конфигурацию главного узла мы в периферийный загрузим. Но как главный узел узнает, что не надо выгружать конфигурацию для узла?
6. svetanik 5 06.02.22 00:57 Сейчас в теме
У нас проблема с приемом данных из главного узла с обновленной конфигурацией.
Конфигурацию узел принимает, в режиме конфигуратора её на базу накатываем (расширений нет). Но при запуске в пользовательском режиме идет "дообновление", которое лезет в сообщение от главного узла. А там натыкается на ошибку: Ошибка чтения файла сообщения обмена: Для значения <контрагент> не найден ключ реестра документов.
И никак из замкнутого круга не выйти. Ключ реестра не находит, потому что свежий приехал.

Вопрос. Можно ли отключить РИБ в пользовательском режиме? А потом бескровно восстановить?
(Периф. узел заново совсем не хочется делать, т.к. у него обмен с БП)
Прикрепленные файлы:
7. ClickUp 722 06.02.22 07:35 Сейчас в теме
(5) Он сравнит изменения главного узла и увидит что они уже есть в рибе
8. ClickUp 722 06.02.22 07:38 Сейчас в теме
(6) У вас с РИБа сделан обмен с БП ? Почему не с центра?
9. svetanik 5 06.02.22 18:32 Сейчас в теме
Перифирийная чисто для просмотра бухгалтером. Ну и выгрузка оттуда в БП.
10. prog2019 48 17.02.22 15:03 Сейчас в теме
4. Удаление расширения в центральном узле и распределенных базах. Если необходимо удалить расширение из базы, которое используется в распределенных базах, то его необходимо:
- Отключить в центральной базе, после чего во всех РИБах принять это изменение, что оно отключено и больше не используется;
- После того как во всех РИБах оно будет отключено, его можно удалять из центрального узла.

------

То, что написали по поводу удаления расширений, - это полная ерунда.
Прекрасно и создаются расширения, и удаляются через обмен РИБ. Не надо их отключать.
Если отключить расширение, изменяющее данные, то обмен вообще работать не будет.
12. ClickUp 722 17.02.22 15:10 Сейчас в теме
(10) Здорово что вы не сталкивались с таким проблемами.
13. prog2019 48 18.02.22 09:56 Сейчас в теме
(12) Нельзя делать так, как написано в начале 4-го пункта, если ещё не возникли какие-нибудь проблемы. Нельзя отключать расширение, изменяющее данные. Обмен вообще не будет работать.
https://its.1c.eu/db/v8315doc#bookmark:dev:TI000001990

Другое дело, если уже возникли какие-то глюки с расширениями, с платформой (например, на платформе 8.3.19... расширение может вдруг перестать загружаться из файла и удаляться), тогда, конечно, информация в конце 4-го пункта может быть полезной.
14. abobus7188 12.04.24 09:03 Сейчас в теме
Сможет ли данная обработка починить ошибку
"информационная база не может быть обновлена из-за проблемы в главном узле"?
или создать риб без этой ошибки?
15. ClickUp 722 12.04.24 12:09 Сейчас в теме
(14) Проблемы могут быть разные, если быстрее сделать новый риб чем чинить то сделайте риб, как минимум это уберет ошибки в базе/рибе.
Оставьте свое сообщение