Добрый день! Вот такая интересная задачка. Нужно изменить тип полей во всей конфигурации со строки на СправочникСсылка.МойСправочник
Строку заменить на ссылочный объект, адаптировать все запросы поиска и все, что связано с этим полем. Как я понял, нужно найти во всей конфе все обращения к этому справочнику и в найденных изменить строку на ссылочный объект.
---
Делал подобное. Только не "везде где есть", а там где надо было.
Итерация 1. В реквизите (2 документов и 1 регистре) сделал составной тип данных, добавил тип справочник.
В документах поставил контроль, чтобы выбирали только из справочника.
Итерация 2 . Обработка конвертации данных. Все записи со старым типом конвертировали на новый по таблице сопоставления.
Итерация 3. Из составного типа убрали "старый" тип данных.
---
Посмотри как в типовых делают. У старого меняют название на УдалитьРеквизит, добавляют новый Реквизит, обработчик обновление переносит и адаптирует данные если нужно.
В коде понятное дело через глобальный поиск если нужно изменить код. Так же можно по старому реквизиту найти места использования и заменить если он гдето используется (например параметры выбора)
Такой подход даст возможность если что сверить корректность переноса и старые данные останутся пока реквизит не удалишь (если там чтото важное есть)
---
Потеряются данные после реструктуризации.
---
Я правильно понимаю, чтоб это найти все места которые обращаются к моему справочнику, достаточно правой кнопкой мыши - найти ссылки на объект в конфигурации.
---
Я бы переименовал нужный реквизит, потом создал новый со старым именем и новым типом.
Затем сделал обработку для конвертации данных.
При переименовании 1с выдаст список ссылок на реквизит, который можно использовать для адаптации алгоритмов. Но лучше поискать самому.
---
Посмотри как в типовых делают. У старого меняют название на УдалитьРеквизит, добавляют новый Реквизит, обработчик обновление переносит и адаптирует данные если нужно.
В коде понятное дело через глобальный поиск если нужно изменить код. Так же можно по старому реквизиту найти места использования и заменить если он гдето используется (например параметры выбора)
Такой подход даст возможность если что сверить корректность переноса и старые данные останутся пока реквизит не удалишь (если там чтото важное есть)
---
Согласен. Искат и вручную править код . придется попыхтеть
---
Есть идея. Т.к. документов много. Менять не все сразу, а поэтапно. Беру один документ. Меняю в нем реквизит. И исправляю везде код связанный с ним.
---
кроме этого, еще "глобальный поиск" по всем галкам (модули, макеты, даже справка) и
по расширениям тоже.

после правки всех найденных, останется вероятность ошибки типов в модулях со слишком универсальным стилем.
---
Делал подобное. Только не "везде где есть", а там где надо было.
Итерация 1. В реквизите (2 документов и 1 регистре) сделал составной тип данных, добавил тип справочник.
В документах поставил контроль, чтобы выбирали только из справочника.
Итерация 2 . Обработка конвертации данных. Все записи со старым типом конвертировали на новый по таблице сопоставления.
Итерация 3. Из составного типа убрали "старый" тип данных.
---
Осталось понять все плюсы и минусы двух вариантов решения. 6 и 7.