Создание стартовой базы

31.12.22

Интеграция - Обмен между базами 1C

Часто требуется создать «Новую базу» почти пустую, но совпадающую с «Исходной базой» по необходимым обязательным настройкам: константам, регистрам сведений, справочникам, видам субконто и планами счетов и т.п., при этом уникальные идентификаторы объектов должны совпадать.

Скачать файлы

Наименование Файл Версия Размер
Расширение "Создание стартовой базы" с обработкой обмена COM внутри (Версия 09.10.2021)
.cfe 85,91Kb
17
.cfe 85,91Kb 17 Скачать
Обработка обмена COM отдельно (Версия 09.10.2021)
.epf 87,02Kb
6
.epf 87,02Kb 6 Скачать
Обработка с примером снятия предопределения с плана счетов (Версия 09.10.2021)
.epf 5,87Kb
2
.epf 5,87Kb 2 Скачать
Обработка с примером снятия предопределения с видов субконто хозрасчетные (Версия 09.10.2021)
.epf 5,88Kb
3
.epf 5,88Kb 3 Скачать

Создание стартовой базы

Часто требуется создать «Новую базу» почти пустую, но совпадающую с «Исходной базой» по необходимым обязательным настройкам: константам, регистрам сведений, справочникам, видам субконто и планами счетов и т.п., при этом:

  • Все объекты «Новой базы» должны совпадать по уникальным идентификаторам ( Guid ) с «Исходной базой»

  • Все настройки работы в «Новой базе», включая настройки учетной политики организации, полностью повторяют настройки «Исходной базы».

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

В чем смысл?

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

Сама ситуация похожа на создание начального образа в случае РИБ, но эта первая идея придумать РИБ на ровном месте и создать из него узел, да чтобы ещё все правильно настроилось, я отбросил из-за сложности исполнения.

Вторая идея – взять «Исходную базу» и почистить из неё данные…. Ну при размере в 100 Гб это прям нет-нет. У меня нет столько недель ждать, пока все почиститься.

Третья идея – перенести из «Исходной базы» нужные данные с помощью обще известной обработки ВыгрузкаЗагрузкаДанныхXML.epf натолкнулась на 2 неприятных препятствия:

  1. Конфа «Исходной базы» была незнакома, была значительно переписана и содержала несколько встроенных нетиповых подсистем – вся эта каша в итоге приводила к тому, что простое открытие базы из пустой конфы не стартовало, вызывая кучу синтаксических ошибок, с которыми надо было бороться заплатками, игнорируя риск потерять что-нибудь важное из стартовых фундаментальных данных «Новой базы». С горем пополам эта махина запускалась, но далее вызывала нелепые ошибки в простых случая, когда требовалось что-то открыть или создать – просто кошки скреблись в душе от этого.

  2. Второй момент, все знают, что при разворачивании пустой базы и конфигурации происходит начальное заполнение и создание новых базовых объектов, т.к. : валюты, банки, классификаторы ед. измерения, другие классификаторы, предопределенные значения, типа плана счетов и субконто и много других служебных данных. Это начальное заполнение вело к нарушению условия задачи о совпадении всех объектов «Новой базы» по Уникальному идентификатору (Guid) с «Исходной базой». И порождало дубли, с которыми пришлось бы в дальнейшем работать, что тоже не быстро.

Потребовалось осознать очевидное, что «Новую базу» нужно заполнить ещё до первого открытия 1С:Предприятия.

Обработка ВыгрузкаЗагрузкаДанныхXML.epf тут не очень заходила, т.к. обменивалась через файл XML и требовала открытия «Новой базы» для загрузки этого файла, от открытия которой я как раз хотел уйти из-за вышеописанных проблем.

Мне требовался режим COM для ВыгрузкаЗагрузкаДанныхXML.epf и фильтры выгрузки.

Поиск по Инфостарт не предлагал готового решения для скачивания. Но в итоге удалось собрать решение:

Нашёл уже не помню, в какой публикации обработку ВыгрузкаЗагрузкаДанныхXML82_COM.epf для платформы 8.2 для обычных форм, которая имела нужные возможности:

  • фильтры выгрузки (это стандартная опция этой версии обработки для обычных форм) и

  • имела возможность передачи данных межу базами по COM при условии встройки самой обработки в Базу-приемник, что было необходимо на время соединения для вызова специальных методов на стороне Базы-приемника по команде Базы-источника.

Тут было пару проблем:

  • что «Исходная база» работала в Управляемом интерфейсе, а обработка была на обычных формах

  • обработка предназначалась для платформ 8.1 и 8.2, но не работала для 8.3

  • встраивать обработку в конфигурацию «Новой базы» через хранилище было возможно, но немного затруднительно согласовывать.

Эти моменты решились на лайте:

  1. Как отрыть обработку на Обычных формах в базе с Управляемым интерфейсом?

В «Исходной базе» создаем пользователя «АдминистраторОП» (сокращение от Администратор обычное приложение) с ролями: Полные права и Интерактивное открытие внешних обработок. У пользователя обязательно указываем Режим запуска = «Обычное приложение». Заходим под ним в «Исходную базу» (окно ввода пароля открывается 2 раза, в случае старта базы с Управляемым интерфейсом под Обычным приложением)

Рис.1 Создание пользователя АдминистраторОП в «Исходная база»

Рис.2 Открытие «Исходная база» в режиме «Обычное приложение» видно характерное старое меню

  1. Как в обработку добавить режим работы для платформы 8.3?

Открываем обработку в конфигураторе, в форме обработки правой кнопкой мыши на центральной области меняем закладку на «Выгрузка в ИБ приемник». В поле Платформа в список выбора добавляем элемент для платформа «8.3».

Рис. 3 Смена закладки

Рис. 4 Добавление платформы 8.3 в список выбора

  1. Как добавить обработку в «Новую базу» не встраивая в саму конфигурацию?

Конечно через расширение. Открываем «Новую базу» в конфигураторе, добавляем расширение и встраиваем в него обработку. Обновляем «Новую базу» из конфигуратора, конечно же, не открывая саму базу в режиме 1С:Предприятие, т.е. через команду меню Конфигурация – Обновить конфигурацию базы данных.

Рис. 5 Расширение с обработкой в «новой базе»

Рис. 6 Обновление расширения в «Новой базе»

Почти все готово.

Для вызова COM подключения в конфигураторе «Новой базы» создаем нового пользователя для простоты я его назвал также как пользователя в «Исходной базе», а именно «АдминистраторОП» с набором ролей {Полные права, Администратор системы, Интерактивное открытие внешних обработок} без флага «Защита от опасных действий».

Рис. 7 Создание пользователя в конфигураторе «Новой базы»

Сам перенос данных по шагам:

  • В «Исходной базе» запускаем сеанс под пользователем «АдминистраторОП»

  • Открываем обработку «Выгрузка и загрузка данных COM-XML» через меню – Файл – Открыть.

  • Указываем настройками обмена COM с «Новой базой» {указываем адрес базы на сервере 1С, подключение под пользователем «АдминистраторОП» и паролем}.

Рис. 8 Обработка обмена открытая в «Исходной базе»

  • Отключаем передачу всех объектов по ссылке, сняв флажки в колонке «При необходимости»

  • Для обмена включаем все Константы, регистры сведений Учетной политики, регистр сведений Версии подсистем, дополнительные регистры настроек характеризующие вашу базу. Справочники валют, Классификаторов единиц измерения, и других классификаторов поставить тянуть по ссылке, установив флажки в колонке «При необходимости»

- перегружаем эти данные в «Новую базу» по кнопке [Выгрузить данные].

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

Мне пришлось сделать пару итераций, чтобы выяснить полный список объектов, которые нужно сразу передать (типа рег.сведений Версии подсистем, или спраочник "Ключевые операции"). Вычислял я эти объекты открывая Журнал регистрации в «Новой базе» и смотря те объекты, которые создавались при открытии сеанса. Перед повтором итерации я восстанавливал «Новую базу» из её заранее сохраненного архива до переноса, включал в перенос вычисленный объект и переносил по новой. Пока при открытии «Новой базы» перестали создавать объекты. Все это нужно чтобы соблюсти условия по совпадению Уникальных идентификаторов по Guid.

Всё было бы хорошо, если бы я частями не забыл про гадские предопределенные значения… Планы счетов субконто и некоторые другие предопределенные значения создались все таки с Guid «Новой базы», а не «Исходной базы». Их пришлось починить постобработками.

Как починить предопределенные значения в «Новой базе», исправив их уникальные идентификаторы как у «Исходной базы»?

  • Надо убрать признак предопределение у предопределенных элементов в «Новой базе» и пометить их на удаление и удалить.

  • Перегрузить по COM из «Исходной базы» в «Новую базу» эти объекты той же обработкой обмена. Тем самым в «Новой базе» появятся предопределенные элементы с Guid как в «Исходной базе»

По планам счетов есть момент что надо виды субконто сначала почистить, пример кода в листинге ниже. По всем остальным типам код идентичный (убираем строку  Об.ВидыСубконто.Очистить(); и в самом запросе тип объекта меняем на нужный справочник или ПВХ, для примера по Видам субконто еще ниже пример)

&НаСервере
Процедура Команда1НаСервере()
	
	 Запрос = Новый Запрос;
	 Запрос.Текст = "ВЫБРАТЬ
	                |	Хозрасчетный.Ссылка КАК Ссылка
	                |ИЗ
	                |	ПланСчетов.Хозрасчетный КАК Хозрасчетный";
	 
	 Результат = Запрос.Выполнить();
	 Выборка = Результат.Выбрать();
	 
	 Пока Выборка.Следующий() Цикл
	 
	 	  Об = Выборка.Ссылка.ПолучитьОбъект();
		  Об.ИмяПредопределенныхДанных = Неопределено;
		  Об.ВидыСубконто.Очистить();
		  Об.ПометкаУдаления = Истина;
		  Об.ОбменДанными.Загрузка = Истина;
		  Об.Записать();
	 
	 КонецЦикла;
	 
КонецПроцедуры
&НаСервере
Процедура Команда1НаСервере()
	
	 Запрос = Новый Запрос;
	 Запрос.Текст = "ВЫБРАТЬ
	 |	ВидыСубконтоХозрасчетные.Ссылка КАК Ссылка
	 |ИЗ
	 |	ПланВидовХарактеристик.ВидыСубконтоХозрасчетные КАК ВидыСубконтоХозрасчетные";
	 
	 Результат = Запрос.Выполнить();
	 Выборка = Результат.Выбрать();
	 
	 Пока Выборка.Следующий() Цикл
	 
	 	  Об = Выборка.Ссылка.ПолучитьОбъект();
		  Об.ИмяПредопределенныхДанных = Неопределено;
		  Об.ПометкаУдаления = Истина;
		  Об.ОбменДанными.Загрузка = Истина;
		  Об.Записать();
	 
	 КонецЦикла;
	 
КонецПроцедуры

 

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

Кажется все…. если, что пишите.

 
 Другие публикации автора

Ссылка на компетенции по 1С:ERP - команда со знаниями, умениями и успешными проектами

См. также

SALE! 20%

Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки

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

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

45650 36520 руб.

04.08.2015    159698    363    267    

345

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 22572 руб.

12.06.2017    134944    723    291    

388

SALE! 20%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

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

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

34650 27720 руб.

15.04.2019    68423    178    138    

111

SALE! 20%

Перенос данных из ERP 2 / КА 2 в ЗУП 3. Переносятся остатки, документы и справочники

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

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Воспользовались более 79 предприятий! | Предлагаем приобрести готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | В продаже с 2020г. | Оперативно обновляем правила до актуальных релизов 1С | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

43450 34760 руб.

03.12.2020    34172    80    58    

78

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

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

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

28000 25200 руб.

23.07.2020    46301    196    64    

158

SALE! 10%

Перенос данных из БП 3.0 в УТ 11 / КА 2 / ERP 2. Переносятся начальные остатки, документы и справочники

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

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

50722 45650 руб.

31.10.2014    231424    124    327    

296

Перенос данных из Парус 10 в ЗГУ ред.3

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

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9212    9    8    

10

SALE! 10%

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

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

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

28000 25200 руб.

15.12.2021    20255    132    38    

90
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. AlexWhite 194 11.10.21 11:40 Сейчас в теме
А почему предопределенные элементы в новой базе получили другой GUID, чем в источнике?

Думал всегда, что при использовании режима "Загрузить конфигурацию из файла" внутренние GUID должны совпадать.

Спасибо за статью и креативный подход к решению!
4. sapervodichka 6697 11.10.21 12:05 Сейчас в теме
(1) при загрузке конфигурации внутренние GUID совпадают у метаданных и их реквизитов в конфигурации. Для предопределенных в конфигурации элементов, например, счетов в плане счетов или элементов справочника создаются также сами объекты данных в базе с привязкой к этому предопределенному элементу, вот у объектов данных создаваемых на основании предопределенных уникальные идентификаторы разные в каждой создаваемой базе.
kitaevay; blackjack666; psa247; +3 Ответить
6. AlexWhite 194 11.10.21 12:12 Сейчас в теме
(4)
счетов в плане счетов или элементов справочника создаются также сами объекты данных в базе с привязкой к этому предопределенному элементу, вот у объектов данных создаваемых на основании предопределенных уникальные идентификаторы разные в каждой создаваемой базе

Вот это да! Век живи, век учись. Спасибо!
2. gorakh 26 11.10.21 11:47 Сейчас в теме
Если база на MS SQL то для чистки очень помогает TRUNCATE TABLE. Находим ненужные таблицы и просто удаляем их. Например "Версии объектов". Обычно она одна из самых больших и в базе разработки явно лишняя.
skyboy13; rolin555; adhocprog; sapervodichka; +4 Ответить
3. &rew 49 11.10.21 12:03 Сейчас в теме
Можно еще конвертахой 2.0 бомбануть правила автоматом и притащить нужные справочники, константы, ПВХ, РС по метаданным. Там и GUIDы прилетят как надо.
sapervodichka; +1 Ответить
5. sapervodichka 6697 11.10.21 12:10 Сейчас в теме
(3) по идее да, в Универсальном обмене XML, которая по правилам обмена тащит, также есть COM подключение )
7. zhuravlev_as 392 11.10.21 13:22 Сейчас в теме
Если разработчики 1С до сих пор не реализовали обработку "Выгрузка/загрузка данных в формате XML" для управляемого приложения, то это их никак не красит.
10. sapervodichka 6697 11.10.21 13:57 Сейчас в теме
(7) она есть, но в ней нет удобных фильтров и COM обмена
8. RustIG 1351 11.10.21 13:40 Сейчас в теме
И сколько времени ушло на сдачу работ?

Ну при размере в 100 Гб это прям нет-нет. У меня нет столько недель ждать, пока все почиститься.


Я в свое время файловую базу в 20 Гб копировал - надо было оставить справочники, удалить документы - по сути стартовую базу создать.

В одной копии запустил удаление документов (затем сжатие базы провел), во второй копии разрабатывал перенос справочников (ЦФшник же имеется)... Параллельно....

В итоге, удалилось все быстрее, чем я думал - особенно с учетом времени сна.... Мне почему-то кажется что вся описанная схема выше это как минимум неделя на тестирование. И если так, то удаление документов закончилось бы раньше, имхо...
корум; PowerBoy; +2 Ответить
9. sapervodichka 6697 11.10.21 13:56 Сейчас в теме
(8) привет, ушёл 1 вечер четверга, т.к. в ночь с четверга на пятницу в неё уже остатки грузили
&rew; RustIG; +2 Ответить
11. vld1973 85 11.10.21 15:55 Сейчас в теме
Спасибо, интересное решение
12. psa247 17 11.10.21 18:38 Сейчас в теме
Прикольно. Добавил в закладки
13. ybatiaev 58 11.10.21 21:33 Сейчас в теме
Всегда ранее делал CF с рабочей базы. Потом её в пустую загружал. Всё. Создавалась чистая база с полной копией скелета, т.е. конфигурацией. А потом уже выгрузка/загрузка XML стандартной обработкой то, что нужно за любой период.
Что в этом механизме не так?
sapervodichka; +1 1 Ответить
14. sapervodichka 6697 11.10.21 21:57 Сейчас в теме
(13) ну этот ваш вариант я сотни раз делал. В нем конечно вы знаете, что появляются дубли валют, классификаторов, плана счетов субконто, предопределенных элементов с разным УИ. Которые потом нужно устранить, чтобы не получить, например, 2 рубля или 2 шт, ну и ошибки СУБД при вставке 2 счетов с одним и тем же кодом но с разным УИ и привязанным к одному предопределенному счету. Вот в статье и написано, что ситуация была не рядовой, что УИ должны были совпадать у всех объектов и самое важное, что сама база (как вы пишите) не запускалась с пустого cf и не выполняла обработчики заполнения данных, т.е. ваш вариант бы не подошел.
tkanpa; CnupT; ybatiaev; +3 Ответить
15. skyboy13 13 11.10.21 22:26 Сейчас в теме
Большие базы можно чистить удалением элементов конфигурации. Сделал копию через sql. Удалил документ поступление денег, сохранил конфигурацию, потом ctr-c/ctrl-v из базы донора вставил и сохранил еще раз. Если основные таблицы так по удалять, то потом через выгрузку в dt - можно быстро получить то, что нужно маленького объема.
16. sapervodichka 6697 11.10.21 22:59 Сейчас в теме
(15) это какая-то разовая акция для независимого регистра сведений, да и то я так всем программистам категорически запрещаю делать, т.к. при копи-пасте объектов метаданных они получают другие идентификаторы в дереве конфигурации, что приводит к тому, что сами конфигурации уже не наследуются при установке обновлений и идет потеря данных таблиц (возвращать объект можно только сравнением объединением). При этом если попробовать на практике удалить ну хотя бы 100 объектов метаданных из конфигурации 1C:ERP это какая-то пытка на несколько дней (чтобы снять с поддержки и удалить все связи по типам в других объектах, ну уж нет, точно это прям бедовая затея, неправильная)
17. skyboy13 13 12.10.21 07:07 Сейчас в теме
(16) Ну что я могу сказать, мне жаль программистов, которым "категорически запрещается что-то делать". я не работают с типовым конфигурациями, в которых работает сотни программистов, составляющие сотни связей. у меня свои собственные конфигурации, там все проще продумано. Хотя их объем и под 100 терабайт.
А если нужно сохранить идентификаторы, привязкой обратно к хранилищу, все решается. Так что альтернативные решения, не стоит называть бредом. Каждая рабочая идея имеет право на существование. Удачи.
22. sapervodichka 6697 12.10.21 09:55 Сейчас в теме
(17) давай без обид, слова "бред" я не писал, прочти пожалуйста внимательней, я писал что это "бедовая" затея, от слова "беда", т.к. после копипастов объектов конфигурация становится не обновляемой на следующие релизы выпускаемые 1С или обновляется с потерей данных тех таблиц которые копировались (при загрузке нового релиза конфигурации). Когда своих напарников по работе пытаешься уберечь от быстрых решений с драматическим послевкусием, они благодарны только оставались, иначе такой копипаст на большом проекте фактически равен будущему увольнению. Сам как ты пишешь удалить и скопировать я в редких случаях делал как писал "на разовых" например с регистров версии объектов когда надо было почистить его (но все равно не копипастом возвращал а сравнением объединением конф)
26. skyboy13 13 12.10.21 10:01 Сейчас в теме
(22) да минус просто жалко, зашел тут на минут, предложил еще вариант. с определенными ограничениям, но вариант. я, например, там базы не переношу в любом случае. все синхронизации работают проще через http, можно использовать много-поточность. в разы все быстрее работает.
даже филиальные базы, которых тысячи, конектятся через защищенный контур и шлют и забирают обновления по http, все это поддерживается одним или двумя разработчикам, ибо проще в разы.
WarAn; sapervodichka; +2 Ответить
28. sapervodichka 6697 12.10.21 10:04 Сейчас в теме
18. skyboy13 13 12.10.21 07:34 Сейчас в теме
Ну, а если не нравится вариант с ctr-c/ctr-v. Сохраняем конфу в xml, удаляем что не нужно. Загружаем. Сохраняем базу. Далее загружаем первоначальный вариант. И конфа очищена и идентификаторы родные. Работы по полчаса.
Это похоже, как ранее писали на TRUNCATE TABLE, но без sql-ных рисков.
20. sapervodichka 6697 12.10.21 09:37 Сейчас в теме
(18)
удаляем что не нужно
звучит нереально. Ведь в ЕРП 1000 типов метаданных и нужно быть МЕГАГУРУ СУПЕР ЧЕЛОМ чтобы, что не нужно удалить, а что нужно оставить, и при этом чтобы конкретные данные остались сотни настроек баз совпадали между собой, учетная политика совпадала, чтобы были нужные ссылки только на нужные объекты и всего этого хватило для запуска.
23. skyboy13 13 12.10.21 09:55 Сейчас в теме
(20) Так публикация была не про конкретно ЕРП. 1С-вкие конфигурации это вообще отдельная песня. Так что не понятно, за что мне минус влепили.
25. sapervodichka 6697 12.10.21 09:58 Сейчас в теме
(23) этот минус за коммент никуда не идет ни в рейтинг, короче ни куда. Это просто мнение за комментарий, т.к. в 99 % случаев на практике как ты пишешь так ни в коем случае нельзя делать. А оставшимся 1 % надо понимать последствия.
29. Spec1Cnik 11 12.10.21 10:24 Сейчас в теме
(18) Также когда-то вставал вопрос с ут11.4, на которой велась разработка - что с ней делать, ибо нужна была база рабочая чистая без тестовых документов и их движений + все все настройки из "тестовой". Всё таки решил воспользоваться решением с копированием базы и удалением ненужных данных из "тестовой". Через sql если делать напрямую - всё достаточно быстро происходит.
sapervodichka; +1 Ответить
30. sapervodichka 6697 12.10.21 10:56 Сейчас в теме
(29) напиши подробнее как делал, если будет возможность. Тут если убрать кухню по созданию обработки то база в течение 1 часа создается.
19. Olenevod 33 12.10.21 09:37 Сейчас в теме
А не подскажешь, список объектов которые ты выгружал? Ну это типа учетная политика, версии подсистем. планы счетов и т.д.
Т.е. некий базовый список
21. sapervodichka 6697 12.10.21 09:40 Сейчас в теме
(19) у меня УХа была перепиленная в задаче, для других баз другой набор объектов, кроме счетов и субконто, вот еще какие грузил:
Прикрепленные файлы:
24. savaB 12.10.21 09:56 Сейчас в теме
стесняюсь спросить - А с РИБ что не так?
27. sapervodichka 6697 12.10.21 10:04 Сейчас в теме
(24) Первое что с ним не так - это там его нет и надо делать и план обмена и состав и код и создавать начальный образ (совпадет он по всем настройкам? и при этом будет ли пустой базой? нет скорее). Второе - про типовые базы с Полным обменом наверное почти все так, можно создать настройки обмена, затем создать образ, но с ним надо работать, понять что не подтянулось и заморачиваться удаляя лишнее. С нетиповой базой, в которой для нетиповых объектов нет Полного обмена, этим надо еще заниматься. Все это какая-то другая задача.... а нужно просто создать базу с идентичными настройками (РИБ как механизм для неё не нужен по задаче). Единственное, что можно добавить, что вышеописанная идея подходит для создания начального образа РИБ (потом только узлы обмена создать и замок докинуть на конфу и вот тебе узел РИБ )))))
31. savaB 12.10.21 11:01 Сейчас в теме
1. добавить план обмена - дело пары минут
2. (и основное) - настроить состав
3. никакого кода не надо - от слова вооще
4. совпадает 1 к 1.
5. начальный образ - время зависит от состава и ограничено железом.

"надо работать, понять что не подтянулось и заморачиваться удаляя лишнее" - так и по Вашей методе надо работать
33. sapervodichka 6697 12.10.21 11:11 Сейчас в теме
(31) по моей любая база в течение 1 часа готова без доработок. А тут РИБ, потом еще человека научи начальный образ отцеплять от обмена. Админам объясни зачем РИБ добавил... Роль на РИБ сделай чтобы у пользователей ошибки регистрации при работе с базой не шли... а если попросят повторить, что-то быстренько догрузить это надо рабочую базу обновлять 200 человек выгонять. Ну РИБ РИБом но единственным инструментом нельзя все дырки затыкать, есть проще решения.
34. savaB 12.10.21 11:31 Сейчас в теме
(33) Зачем это все? сделал образ, отцепил от центра - и усе
35. sapervodichka 6697 12.10.21 12:01 Сейчас в теме
(34) Борис, запили статью, возможно, твоя практика окажется полезной.
36. savaB 12.10.21 12:19 Сейчас в теме
(35) Разве что на пенсии ;)))
sapervodichka; +1 Ответить
32. savaB 12.10.21 11:05 Сейчас в теме
да, если надо переносить доки с отбором - возникают вопросы, но обработки типа Обмен между идентичными конфигурациями решают этот вопрос
37. quazare 3586 12.10.21 12:48 Сейчас в теме
можно было движения sql-лем почистить - как-то у меня подобная чистка (порядка 100 - 120 гб) заняла около 40 минут на ssd.
sapervodichka; +1 Ответить
40. triviumfan 92 18.10.21 11:39 Сейчас в теме
(37) почему так долго? Если "транкейтом" удалить документы и движения можно за секунды :).
38. quazare 3586 12.10.21 12:56 Сейчас в теме
вообще можно "приготовить" тестовую базу из ночной копии рабочей, а все изменения в рабочей регистрировать планами обмена.
sapervodichka; +1 Ответить
39. sapervodichka 6697 12.10.21 23:03 Сейчас в теме
(38) пиши рецепт Джейми Оливер плюсану (считаю, чем больше рецептов готовки тем лучше)
41. FilippovRI 71 23.10.21 11:08 Сейчас в теме
42. Greg_nnn 20.01.22 09:48 Сейчас в теме
43. Cyberhawk 135 16.02.22 08:34 Сейчас в теме
А почему такой упор именно на СОМ-подключение к целевой базе?
44. sapervodichka 6697 16.02.22 12:08 Сейчас в теме
(43) Нужно было данные в базу поместить не открывая саму базу (она не открывалась из-за доработок и чтобы не дублировать создаваемые при старте справочники) COM это позволял сделать
45. Cyberhawk 135 16.02.22 12:48 Сейчас в теме
(44) Т.е. просто код конфигурации, инициирующий эти процессы, не выполнялся во внешнем соединении, и таким образом удалось его обойти?
46. sapervodichka 6697 16.02.22 12:57 Сейчас в теме
(45) да, создали пустую базу, загрузили конфу, а далее не запуская базы, заполнили константы и основные справочники не открывая базу (GUID'ы сразу стали как у исходной базы и ошибки открытия ушли, получилась база с настройками и учетной политикой как исходная, но сама по себе пустая без документов и другой НСИ)
47. WarAn 11.03.22 00:10 Сейчас в теме
(44) Скажите, а вы не хотели бы просто полезть в конфу и просто закомментить начальное заполнение пустой базы? Как я понимаю, она у вас не под замками, раз вы пишете, что она "значительно переписана"
48. sapervodichka 6697 11.03.22 10:46 Сейчас в теме
(47) Пробовал. Если все было так просто, это ведь не типовая конфа, а убожество переписанное и генномодифицированное. Дело в том, что конфа «Исходной базы» была незнакома, была значительно переписана и содержала несколько встроенных нетиповых подсистем – вся эта каша в итоге приводила к тому, что простое открытие базы из пустой конфы не стартовало, вызывая кучу синтаксических ошибок, с которыми надо было бороться заплатками, игнорируя риск потерять что-нибудь важное из стартовых фундаментальных данных «Новой базы». С горем пополам эта махина запускалась, но далее вызывала нелепые ошибки в простых случая, когда требовалось что-то открыть или создать – просто кошки скреблись в душе от этого.
Второй момент, все знают, что при разворачивании пустой базы и конфигурации происходит начальное заполнение и создание новых базовых объектов, т.к. : валюты, банки, классификаторы ед. измерения, другие классификаторы, предопределенные значения, типа плана счетов и субконто и много других служебных данных. Это начальное заполнение вело к нарушению условия задачи о совпадении всех объектов «Новой базы» по Уникальному идентификатору (Guid) с «Исходной базой». И порождало дубли, с которыми пришлось бы в дальнейшем работать, что тоже не быстро.
49. tinaval 07.06.23 15:33 Сейчас в теме
Подскажите, такой вариант пройдёт для восстановления базы. Проблема была с диском и регистратором, данные были восстановлены частично. 7.7 дозаполнила слетевшие элементы, я их потом руками поправила. В 8.2 разобраться не могу. После использования стандартного chdbfl.exe дальше сообщения "Ошибка считывания вторичной информации" не могу продвинуться. Думала через объединение запустить...
50. sapervodichka 6697 09.06.23 13:28 Сейчас в теме
(49) попробуйте разные инструменты - ситуация индивидуальная у вас, конкретного совета у меня нет
51. Светлый ум 406 14.08.23 07:03 Сейчас в теме
Оставьте свое сообщение