Проблемы с распределенной БД
Есть основная БД, ее распределенный узел, а также копия основной БД(для тестов).
Случайно в изменили конфигурацию тестовой БД и выполнили обмен с реальным узлом распределенной БД.
В итоге получилось что конфигурация распределенной и основной бд расходится, а также номера сообщений не сходятся. Как откатить конфигурацию номера сообщений что бы обменяться с реальной бд?
UP: Если я отмечу зарегистрирую изменения в документе, что бы он попал в план обмена, то при перегрузке этого документа документы, на которые хранится ссылка в описанном мною документе тоже перенесутся или в итоге я получу "Объект не обнаружен". Тот же вопрос и о регистрах сведений, накоплений... Если не перенесется, то как мне тогда перегрузить документ и все данные связанные с ним?
Случайно в изменили конфигурацию тестовой БД и выполнили обмен с реальным узлом распределенной БД.
В итоге получилось что конфигурация распределенной и основной бд расходится, а также номера сообщений не сходятся. Как откатить конфигурацию номера сообщений что бы обменяться с реальной бд?
UP: Если я отмечу зарегистрирую изменения в документе, что бы он попал в план обмена, то при перегрузке этого документа документы, на которые хранится ссылка в описанном мною документе тоже перенесутся или в итоге я получу "Объект не обнаружен". Тот же вопрос и о регистрах сведений, накоплений... Если не перенесется, то как мне тогда перегрузить документ и все данные связанные с ним?
По теме из базы знаний
- Давайте забудем о свертке БД? Файловые группы и секции таблиц SQL, сжатие таблиц SQL.
- Особенности работы платформы 1С с СУБД OracleDatabase
- Magic Updater. Система администрирования распределенной сети 1С:РИБ
- Исследование использования СУБД (MS SQL, PostgreSQL, Oracle, IBM DB2) с отраслевыми конфигурациями на платформе 1С:Предприятие
- Восстановление 1С РИБ (распределенная база) при проблемах обмена конфигураций и расширений
Найденные решения
так есть же какие-то стандартные команды отвязки узла и привязки его по новой
ПланыОбмена.УстановитьГлавныйУзел(Узел.Ссылка);
см. СП устанавливает/снимает гл.узел,
технология кажется такая была
1.снимаете ГУ
2.накатываете конфигурацию из главной базы
3.назначаете ГУ
ПланыОбмена.УстановитьГлавныйУзел(Узел.Ссылка);
см. СП устанавливает/снимает гл.узел,
технология кажется такая была
1.снимаете ГУ
2.накатываете конфигурацию из главной базы
3.назначаете ГУ
(3)
Набрать ссылок на измененные данные и прорегать все?
Да. Попробуйте по журналу регистрации с отбором по событиям группы "Данные" посмотреть в подчиненном узле, какие данные обрабатывались, и все их зарегистрировать к обмену. Включая документы, справочники, регистры и т.д., т.е. все, до чего дотянетесь.
Если у меня в документе будет ссылка на др. документы, то др. документы тоже зарегистрируются?
Нет. И движения документов тоже сами по себе не зарегистрируются.
Знаю ещё типовую 1с обработку "Регистрация изменений для обмена данными".
Именно ей рекомендую пользоваться. Она как правило включена в типовые конфигурации.
(10)
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что н
Понял. В кратце если есть условный документ "Реализация", который осуществляет движения по "зависимому" регистру накопления "Регистр1" и "независимому" регистру накопления "Регистр2", то мне нужно в базе узла зарегестрировать сам документ "Реализация", после чего по регистратору зарегестрировать "Регистр1", а после уже по измерениям "Регистр2".
Таким образом, например, при использовании обработки "Регистрация изменений для обмена данными" мне нужно отборами отобрать регистрирующиеся элементы из трёх мест. Я верно понимаю?
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что н
Понял. В кратце если есть условный документ "Реализация", который осуществляет движения по "зависимому" регистру накопления "Регистр1" и "независимому" регистру накопления "Регистр2", то мне нужно в базе узла зарегестрировать сам документ "Реализация", после чего по регистратору зарегестрировать "Регистр1", а после уже по измерениям "Регистр2".
Таким образом, например, при использовании обработки "Регистрация изменений для обмена данными" мне нужно отборами отобрать регистрирующиеся элементы из трёх мест. Я верно понимаю?
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
так есть же какие-то стандартные команды отвязки узла и привязки его по новой
ПланыОбмена.УстановитьГлавныйУзел(Узел.Ссылка);
см. СП устанавливает/снимает гл.узел,
технология кажется такая была
1.снимаете ГУ
2.накатываете конфигурацию из главной базы
3.назначаете ГУ
ПланыОбмена.УстановитьГлавныйУзел(Узел.Ссылка);
см. СП устанавливает/снимает гл.узел,
технология кажется такая была
1.снимаете ГУ
2.накатываете конфигурацию из главной базы
3.назначаете ГУ
(2) Я в тестовой БД сделал конфу как в основной БД и обновил распределенный узел, так сказать восстановил конфигурацию.
Потом обработками поменял номера входящих/исходящих сообщений - все стало перегружаться.
Проблема в том что была "подтверждена" перегрузка некоторого объема данных и они больше не передаются в главный узел.
Как мне зарегестрировать данные снова что бы передать их в главный узел?
Знаю есть метод: ПланыОбмена.ЗарегистрироватьИзменения(), но вот как мне им воспользоваться. Набрать ссылок на измененные данные и прорегать все?
Если у меня в документе будет ссылка на др. документы, то др. документы тоже зарегистрируются?
Например, у меня есть кассовый документ к которому закреплены документы чеков. Если я зарегистрирую кассовый документ, то чеки тоже перегрузятся или в итоге в основном узле я получу "Объект неопределен"?
Знаю ещё типовую 1с обработку "Регистрация изменений для обмена данными". Наверное с помощью нее все выбирать и регистрировать?
Потом обработками поменял номера входящих/исходящих сообщений - все стало перегружаться.
Проблема в том что была "подтверждена" перегрузка некоторого объема данных и они больше не передаются в главный узел.
Как мне зарегестрировать данные снова что бы передать их в главный узел?
Знаю есть метод: ПланыОбмена.ЗарегистрироватьИзменения(), но вот как мне им воспользоваться. Набрать ссылок на измененные данные и прорегать все?
Если у меня в документе будет ссылка на др. документы, то др. документы тоже зарегистрируются?
Например, у меня есть кассовый документ к которому закреплены документы чеков. Если я зарегистрирую кассовый документ, то чеки тоже перегрузятся или в итоге в основном узле я получу "Объект неопределен"?
Знаю ещё типовую 1с обработку "Регистрация изменений для обмена данными". Наверное с помощью нее все выбирать и регистрировать?
(3)
Набрать ссылок на измененные данные и прорегать все?
Да. Попробуйте по журналу регистрации с отбором по событиям группы "Данные" посмотреть в подчиненном узле, какие данные обрабатывались, и все их зарегистрировать к обмену. Включая документы, справочники, регистры и т.д., т.е. все, до чего дотянетесь.
Если у меня в документе будет ссылка на др. документы, то др. документы тоже зарегистрируются?
Нет. И движения документов тоже сами по себе не зарегистрируются.
Знаю ещё типовую 1с обработку "Регистрация изменений для обмена данными".
Именно ей рекомендую пользоваться. Она как правило включена в типовые конфигурации.
(9) Мы же говорим про документ, не про регистр. При загрузке документа будет осуществлен поиск в базе по ссылке (уникальному идентификатору). Если документ в базе-приемнике по ссылке будет найден, он будет перезаписан, если нет, то создан новый.
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что никакие сопровождающие данные, никакие движения не обновляются. Только сам документ.
Если нужно обновить и его движения, значит нужно регистрировать и наборы записей регистров. Аналогично и для независимых регистров сведений, с той разницей, что отбор для регистрации осуществляется не по регистратору, а по значениям измерений.
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что никакие сопровождающие данные, никакие движения не обновляются. Только сам документ.
Если нужно обновить и его движения, значит нужно регистрировать и наборы записей регистров. Аналогично и для независимых регистров сведений, с той разницей, что отбор для регистрации осуществляется не по регистратору, а по значениям измерений.
(10)
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что н
Понял. В кратце если есть условный документ "Реализация", который осуществляет движения по "зависимому" регистру накопления "Регистр1" и "независимому" регистру накопления "Регистр2", то мне нужно в базе узла зарегестрировать сам документ "Реализация", после чего по регистратору зарегестрировать "Регистр1", а после уже по измерениям "Регистр2".
Таким образом, например, при использовании обработки "Регистрация изменений для обмена данными" мне нужно отборами отобрать регистрирующиеся элементы из трёх мест. Я верно понимаю?
При этом загрузка осуществляется в режиме "ОбменДанными.Загрузка". Это значит, что н
Понял. В кратце если есть условный документ "Реализация", который осуществляет движения по "зависимому" регистру накопления "Регистр1" и "независимому" регистру накопления "Регистр2", то мне нужно в базе узла зарегестрировать сам документ "Реализация", после чего по регистратору зарегестрировать "Регистр1", а после уже по измерениям "Регистр2".
Таким образом, например, при использовании обработки "Регистрация изменений для обмена данными" мне нужно отборами отобрать регистрирующиеся элементы из трёх мест. Я верно понимаю?
(12) Все сделал, но не без косяков. Есть документ "Касса" в котором есть ТЧ с документами "ЧекиККМ", "ПриходныеКассовыеОрдера" и т.д.
Вообщем первый раз зарегистрировал сам документ "Касса" и только "ЧекиККМ" - перегрузил в основную БД. В результате получил док, но в месте "ПриходныеКассовыеОрдера" получил "ОбъектНеНайден". Решил регистрацией изменений выбрать еще "ПриходныеКассовыеОрдера" и перегрузил их - перегрузилось, но данные в самом документе естественно не обновились.
Потом попытался снова перегрузить просто документ "Касса" - не помогло - все равно ссылки в документе "битые".
Не критично, но интересно, можно мою ошибку при перегрузке теперь как то исправить?
Вообщем первый раз зарегистрировал сам документ "Касса" и только "ЧекиККМ" - перегрузил в основную БД. В результате получил док, но в месте "ПриходныеКассовыеОрдера" получил "ОбъектНеНайден". Решил регистрацией изменений выбрать еще "ПриходныеКассовыеОрдера" и перегрузил их - перегрузилось, но данные в самом документе естественно не обновились.
Потом попытался снова перегрузить просто документ "Касса" - не помогло - все равно ссылки в документе "битые".
Не критично, но интересно, можно мою ошибку при перегрузке теперь как то исправить?
(13)
Решил регистрацией изменений выбрать еще "ПриходныеКассовыеОрдера" и перегрузил их - перегрузилось, но данные в самом документе естественно не обновились.
Нет, это не естественно. Должны были появиться. Стало быть либо не загрузились, либо Вы не то выгрузили.
(14) Снова выгрузил - все хорошо. Моя ошибка.
Не подскажете как это работает? Получается у меня есть док "Касса" с ссылкой на документ "ХХХ", которого нет в БД.
Потом я выгружаю с распределенной БД этот док. ХХХ и при сохранении в основную БД у него, как я думаю, становиться другая ссылка, а в ПКО останется старая ссылка, либо при сохранении с файла обмена документа проверяются все таблицы на наличие данной ссылки, и если она есть то и ссылка в самом документе заменяется на новую соответствующую документу "ХХХ".
Не понятно как оно "связалось"
Не подскажете как это работает? Получается у меня есть док "Касса" с ссылкой на документ "ХХХ", которого нет в БД.
Потом я выгружаю с распределенной БД этот док. ХХХ и при сохранении в основную БД у него, как я думаю, становиться другая ссылка, а в ПКО останется старая ссылка, либо при сохранении с файла обмена документа проверяются все таблицы на наличие данной ссылки, и если она есть то и ссылка в самом документе заменяется на новую соответствующую документу "ХХХ".
Не понятно как оно "связалось"
(15) Документ "Касса" со ссылками как загрузился, так и остается. Когда Вы его открываете, платформа по указанным ссылкам на приходные ордера формирует запрос к БД для получения даты и номера, чтобы сформировать представление документа. Но приходных ордеров в базе по данным ссылкам нет, поэтому в качестве представления выводится надпись "<Объект не найден [Ссылка]>. Так происходит всякий раз, как вы открываете документ "Касса". Ссылки на приходные ордера так и остаются в нем, просто представление ссылок такое.
В файле выгрузки из базы-корреспондента вместе с приходными ордерами выгружаются и их ссылки. Именно с этими ссылками они и загрузятся в базу. Когда по указанным ссылкам в базе-приемнике уже есть документы, они перезаписываются. Когда документов нет, создаются новые. Но всегда с той же самой ссылкой, что они были выгружены из базы-источника.
После того, как загрузка произведена, Вы вновь открываете документ "Касса". Как я писал в первом абзаце, ссылки из него никуда не деваются, документ не меняется. Платформа вновь по указанным ссылкам пытается запросом получить даты и номера приходных ордеров. Но теперь ей это удается, т.к. документы загружены. Следовательно формируется и отображается пользователю корректное представление документов, а не "битая ссылка".
Если Вы каким-либо образом опять удалите приходные ордера в базе, при том без контроля ссылочной целостности, Вы вновь увидите "битые ссылки". Сам документ "Касса" не меняется, но по указанным в нем ссылкам на приходные ордера вновь платформа не сможет получить номер и дату, а значит и сформировать правильное представление документов.
В файле выгрузки из базы-корреспондента вместе с приходными ордерами выгружаются и их ссылки. Именно с этими ссылками они и загрузятся в базу. Когда по указанным ссылкам в базе-приемнике уже есть документы, они перезаписываются. Когда документов нет, создаются новые. Но всегда с той же самой ссылкой, что они были выгружены из базы-источника.
После того, как загрузка произведена, Вы вновь открываете документ "Касса". Как я писал в первом абзаце, ссылки из него никуда не деваются, документ не меняется. Платформа вновь по указанным ссылкам пытается запросом получить даты и номера приходных ордеров. Но теперь ей это удается, т.к. документы загружены. Следовательно формируется и отображается пользователю корректное представление документов, а не "битая ссылка".
Если Вы каким-либо образом опять удалите приходные ордера в базе, при том без контроля ссылочной целостности, Вы вновь увидите "битые ссылки". Сам документ "Касса" не меняется, но по указанным в нем ссылкам на приходные ордера вновь платформа не сможет получить номер и дату, а значит и сформировать правильное представление документов.
(16)
Получается ссылка на документ "Касса" в головном узле распределенной базы и в подчинённых узлах будет идентична?
Я мыслил в сторону того, что создается новый документ - заполняется данными из файла выгрузки и записывается, в результате чего получая совершенно другую случайную ссылку.
Если ссылки одинаковые, то все понятно. Спасибо за объяснение.
Я вот почитал пару статей о том "что такое ссылка" и понимаю ее как уникальный идентификатор GUID, который является отдельным столбцом БД и назначается по сути платформенно при записи, ведь в принципе никогда не нужно при записи заполнять GUID. Клоню к тому что мне не понятно как с xlsx файла загрузился документ в основную БД с сохранением ссылки на него. Помогите осознать пожалуйста. Очень хочется разобраться)
ров в базе по данным ссылкам нет, поэтому в качестве представления выводится надпись ". Так происходит всякий раз, как вы открываете документ "Касса", и ссылки на приходные ордера так и остаются в нем, просто представление ссылок такое.
В файле выгрузки из базы-корреспондента вместе с приходными ордерами выгружаются и их ссылки. Именно с этими ссылками они и загрузятся в базу. Когда по указанным ссылкам в базе-приемнике уже есть документы, они переза
В файле выгрузки из базы-корреспондента вместе с приходными ордерами выгружаются и их ссылки. Именно с этими ссылками они и загрузятся в базу. Когда по указанным ссылкам в базе-приемнике уже есть документы, они переза
Получается ссылка на документ "Касса" в головном узле распределенной базы и в подчинённых узлах будет идентична?
Я мыслил в сторону того, что создается новый документ - заполняется данными из файла выгрузки и записывается, в результате чего получая совершенно другую случайную ссылку.
Если ссылки одинаковые, то все понятно. Спасибо за объяснение.
Я вот почитал пару статей о том "что такое ссылка" и понимаю ее как уникальный идентификатор GUID, который является отдельным столбцом БД и назначается по сути платформенно при записи, ведь в принципе никогда не нужно при записи заполнять GUID. Клоню к тому что мне не понятно как с xlsx файла загрузился документ в основную БД с сохранением ссылки на него. Помогите осознать пожалуйста. Очень хочется разобраться)
(17)
Получается ссылка на документ "Касса" в головном узле распределенной базы и в подчинённых узлах будет идентична?
Да.
Я вот почитал пару статей о том "что такое ссылка" и понимаю ее как уникальный идентификатор GUID, который является отдельным столбцом БД и назначается по сути платформенно при записи, ведь в принципе никогда не нужно при записи заполнять GUID.
Все верно. Заполнять самому как правило не нужно, но порой такая необходимость возникает (в частности при синхронизации данных), и платформа для этого предоставляет инструменты.
Клоню к тому что мне не понятно как с xlsx файла загрузился документ в основную БД с сохранением ссылки на него.
Не понял. Мне казалось, мы говорим про РИБ. Откуда Excel? :-)
(18)
Простите, - xml. Выгружается файлик, а в другом месте загружается :)
Получается при сохранении документа по сути можно указать GUID аналогичный GUID из загруженной БД. Очень интересно. Не подскажете направление функций и процедур, которыми это можно делать. Хотелось бы изучить.
И ещё, все же есть вероятность что в основной бд уже создали документ и платформа дала ему аналогичный GUID, как пришел в файле, в таком случае данные нещадно затрутся? Я понимаю что вероятность, наверное, крайне мала, но все же.
Не понял. Мне казалось, мы говорим про РИБ. Откуда Excel? :-)
Простите, - xml. Выгружается файлик, а в другом месте загружается :)
Получается при сохранении документа по сути можно указать GUID аналогичный GUID из загруженной БД. Очень интересно. Не подскажете направление функций и процедур, которыми это можно делать. Хотелось бы изучить.
И ещё, все же есть вероятность что в основной бд уже создали документ и платформа дала ему аналогичный GUID, как пришел в файле, в таком случае данные нещадно затрутся? Я понимаю что вероятность, наверное, крайне мала, но все же.
(19)
Получается при сохранении документа по сути можно указать GUID аналогичный GUID из загруженной БД. Очень интересно. Не подскажете направление функций и процедур, которыми это можно делать. Хотелось бы изучить.
УстановитьСсылкуНового() - метод ссылочных объектов, позволяющий указать задать нужную ссылку новому объекту.
Простите, - xml. Выгружается файлик, а в другом месте загружается
Вот в этом файле можно найти ссылки в виде уникальных идентификаторов.
И ещё, все же есть вероятность что в основной бд уже создали документ и платформа дала ему аналогичный GUID, как пришел в файле, в таком случае данные нещадно затрутся?
Да, если речь про документы одного типа.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)