Восстановление/копирование нетиповых настроек пользователя средствами SQL



Обработка позволяет средствами SQL получить и скопировать настройки пользователя из одной базы в другую, либо разным пользователям в рамках одной базы, все те настройки, которые не хранятся в типовом регистре Сохраненные настройки, а которые записываются, благодаря процедурам СохранитьЗначение и ВосстановитьЗначение, а также всех нетиповых настроек пользователя, связанных с отборами и выборами периодов в журналах документов.

Обработка представляет из себя процедуру переноса настроек пользователя из одной базы — пользователю другой базы в рамках одного сервера SQL. База может быть одна и та же, а пользователи выбраны различные. В этом случае произойдет копирование настроек одного пользователя — другому. Что это и когда это полезно?!  В случае работы с нетиповой конфигурацией или в случае присутствия в базе большого количества нетиповых отчетов если настройки этих отчетов не ссылаются на типовой регистр Сохраненные настройки, а определяются процедурами СохранитьЗначение(), а также настроек пользователя связанных с предустановленным периодом отбора журнала документов и прочего все эти настройки выбрать и получить средствами 1С практически нереально, так как они хранятся в различных кэш-файлах пользователя локально и на сервере 1С. Зачастую бывает, что в один "прекрасный" день, эти настройки, по непонятной причине слетают. Либо, как это заведено в нашей организации, ежегодно происходит "обрезание" базы — создается новая пустая база с остатками на начало года. Чтобы пользователю заново не создавать все эти настройки отчетов (а в случае продажников и настроек отчета по продажам к нас речь идет о 50-100 отдельных настроек одного отчета по различным группам товаров и группам покупателей), достаточно будет восстановить все это из архива или базы из которой вы взяли остатки для новой. Все эти настройки физически (за исключением настроек отчетов и журналов, которые прописаны за регистром Сохраненные настройки) хранятся в одном файле с именем соответствующем ИД пользователя в таблице FILES базы данных (если формат базы данных — SQL). В текущей обработке надо только корректно указать настройки подключения к SQL-серверу и указать базу источник (откуда обработка возьмет настройки) и базу приемник, в которую соответственно будут скопированы эти настройки. Обработка средствами ADODB сама получит из таблиц баз списки пользователей и останется только выбрать пользователя "источника" настроек и пользователя "приемника". Например, в случае восстановления настроек из архива надо указать архивную базу в поле "База источник", текущую базу в поле "База приемник" и выбрать в обоих списках пользователей, того кому требуется восстановить настройки. Единственное — этот пользователь должен предварительно выйти из 1С. Или, в случае копирования настроек одного пользователя другому, в рамках одной базы — надо указать в качестве базы источника и приемника одну и ту же базу, а в качестве пользователей чьи настройки взять и кому скопировать — выбрать нужных. В этом случае предварительно выйти из базы должен тот пользователь, кому копируются настройки.

Крайне не рекомендуется использовать эту обработку в случае, если конфигурации базы источника и приемника серьезно отличаются или претерпели серьезные изменения. И уж точно не рекомендуется использовать эту обработку при переносе настроек между баз с абсолютно разными конфигурациями. Не факт что это приведет к потере данных, но наверняка она может целиком нарушить настройки пользователя в базе приемнике если вы скажем попробуете скопировать настройки пользователя из базы УТ пользователю базы ЗУП. 

Обработка работает из любой базы 1С, даже не связанной с переносимыми настройками. В случае если после восстановления или копирования настроек, не все настройки скопировались, то скорее всего их механизм хранения использует регистр сведений Сохраненные настройки. В этом случае параллельно можете перенести данные этого регистра любым доступным механизмом 1С (например универсальной обработкой по переносу документов-справочников-регистров).

Уникальность данной обработки заключена в удобном интерфейсе, позволяющем выбрать пользователей баз из готовых списков исходя только из параметров подключения ADODB/. Обработка, путем прямых запросов собирает данные о именах пользователей базы и их индивидуальных идентификаторах, и оперируя ими совершает процедуру копирования настроек из одного файла в другой. Желаю нескончаемой благодарности пользователей, чьи настройки вы восстановите).

Обработка протестирована на платформе 1С:Предприятие 8.3 (8.3.9.1818).

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *