При миграции с одной базы на другую, после конвертации данных или простом переносе остатков и начале работы в новой БД, часто возникает вопрос переноса настроек обмена с интернет магазином и т.п.
И если открыв параллельно формы настроек в обоих базах мы без труда через Ctrl+C Ctrl+V можем перенести адреса, логины и прочие настройки то с полями "Паролей" возникает загвоздка: "Звёздочки" не копируются :(
И приходится искать: кто-же из сотрудников клиента записал N лет назад заветные "12345б" на клочёк бумажки и не потерял её, или того кто хотя бы знает контакты контакты Веб Мастера настраивавшего Сайт и т.п. и т.д. и далеко не всегда эти поиски заканчиваются результатом. И тогда приходится вооружаться отладчиком и ... ну как минимум не интересно тратить время (если это не первый подобный случай в вашей практике :)
Я не очень люблю тратить свое время попусту, поэтому вспомнив слова из МФ "Ноги Крылья Хвост!", что "Лучше день потерять, а потом за пять минут долететь" (С)
Погуглив пару моментов... В общем набросал обработку. т.к. применение у нее разовое и подключать её в "Доп. отчеты и обработки" ни какого смыла нет, то и никаких "сведений" в модуле на заполнял, открывается через Файл - Открыть и ладно.
У кого острая нехватка Стартманей или другая жизненная ситуация предлагаю посмотреть отладчиком в сторону БСП, а точнее в общий модуль и его процедуру
ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ИдентификаторПодсистемы, "Пароль");
И чуть глубже
Функция ДанныеИзБезопасногоХранилища(Владелец, ИмяБезопасноеХранилищеДанных, Ключ)
Результат = Новый Структура(Ключ);
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| БезопасноеХранилищеДанных.Данные КАК Данные
|ИЗ
| РегистрСведений." + ИмяБезопасноеХранилищеДанных + " КАК БезопасноеХранилищеДанных
|ГДЕ
| БезопасноеХранилищеДанных.Владелец = &Владелец";
Запрос.УстановитьПараметр("Владелец", Владелец);
РезультатЗапроса = Запрос.Выполнить().Выбрать();
Если РезультатЗапроса.Следующий() Тогда
Если ЗначениеЗаполнено(РезультатЗапроса.Данные) Тогда
СохраненныеДанные = РезультатЗапроса.Данные.Получить();
Если ЗначениеЗаполнено(СохраненныеДанные) Тогда
ЗаполнитьЗначенияСвойств(Результат, СохраненныеДанные);
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецФункции
За основу была взята именно эта Функция из БП 3.0
Разработка обработки выполнялось на платформе 8.3.18.1208 для Конфигурации Бухгалтерия предприятия 3.0
А также Тестировалась на Платформе 8.3.16 в конфигурации Розница 2.2
Бонусом удалось увидеть данные для подключения к сервису Интернет поддержки, некоторые и их умудряются "забыть" :).