Перенос изменения длины номера в расширение

1. arshanskiyav 30 14.07.24 23:40 Сейчас в теме
Еще в 21 году было описано, что в версии платформы 8.3.22+ будет поддержка изменения длины номера.

На текущей
Бухгалтерия предприятия, редакция 3.0 (3.0.156.17)
1С:Предприятие 8.3 (8.3.24.1548)

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

Вот тут возникает вопрос, а как перенести рабочую базу с сохранением всех данных?
Пока план такой:
- взять чистую конфигурацию
- добавить в нее расширение для изменения длины номера
- добавить все остальные расширения
- выгрузить данные в XML при помощи универсальной выгрузки/загрузки XML из текущей базы
- загрузить XML в новую

У кого был опыт подобных метаморфоз?

PS
Бухи сопротивляются плану начать с чистого листа в новом году.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. kuzev 47 15.07.24 12:55 Сейчас в теме
(1) Ранее пробовал в расширении увеличить длину Кода справочника Номенклатура.
В ответ получил следующее сообщение: "Значение контролируемого свойства ДлинаКода у объекта Справочник.Номенклатура не совпадает со значением в расширяемой конфигурации".
Платформа 8.3.23.1865.
Отсюда вопрос: что имели в виду разработчики?
2. muskul 15.07.24 01:46 Сейчас в теме
неужели нехватает стандартной длины ?
5. arshanskiyav 30 15.07.24 23:29 Сейчас в теме
(2) Не хватает, у бухов для СФ используется дата и буквы, а нужно еще учитывать префиксы и не забывать про префикс "А" для авансовых счетов фактур.
3. laperuz 46 15.07.24 05:13 Сейчас в теме
1. Добавить в расширение новый реквизит с длиной, не менее длины текущего номера, установить на рабочую БД.
2. Обработкой перенести номера в этот реквизит
3. Вернуть конфигурацию на типовую
4. Расширением изменить длину номера
5. Перенести номер из добавленного реквизита в реквизит "Номер"
6. Удалить добавленный реквизит.

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

P.S. вариант с выгрузкой/загрузкой XML тоже будет работать, но зачем для этого отдельная база?
1. Выгрузить документы в XML. Выгружать только нужный тип документов, можно с движениями, если номер есть в движениях. Галку "Выгружать при необходимости" убрать
2. Вернуть конфигурацию на типовую
3. Расширением изменить длину номера
4. Обратно загрузить XML

Тут тоже на 2 шаге может возникнуть ошибка по контролю уникальности, тоже выключить временно.
6. arshanskiyav 30 15.07.24 23:42 Сейчас в теме
(3) Вот как раз ошибка контроля уникальности не возникнет, потому как весь сыр-бор из-за номеров содержащих дату (СТ1906/24-2 или СТ1906/24-102), но учту, спасибо.

По поводу второй базы, чтобы пользователь мог проверить, при необходимости, данные в "оригинале".

Попробую, потом расскажу что да как.
7. user2033930 15.07.24 23:58 Сейчас в теме
(6)
Вот как раз ошибка контроля уникальности не возникнет
Ещё как возникнет...
8. lefthander 16.07.24 09:05 Сейчас в теме
10. arshanskiyav 30 17.07.24 23:19 Сейчас в теме
(7) Да, чет я затупил, номера то будут обрезаться справа на лево, т.е. получится куча СТ1906/24
9. arshanskiyav 30 17.07.24 23:18 Сейчас в теме
С XML идея была не плохая, но что то пошло не так. После перезагрузки (вместе с движениями) в базу на поддержке, с соответствующими настройками длины номера в расширениях, база работает. Документы читаются и создаются без ошибок. Но запуск ТиИ выдал кучу "Документ не зарегистрирован в журнале..." с последующей регистрацией. База в 3Гб (БП самая свежая) за 3 года уже 13 часов выполняет ТиИ О_О (комп не самый тупой, нагрузка 5% и 1Гб ОЗУ, а дисковая подсистема на NVME дисках)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот