1с как обработке сохранить настройки
Перейти к содержимому

1с как обработке сохранить настройки

  • автор:

1с как обработке сохранить настройки

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

обработка для работы с данными из не 1С программы лежит ещё на какой-то корявой базе,

Но хочу сделать так что бы потом если продавать кому-то работу они не лазили в Кофиг что бы настройки серверов забивать или соответствия номенклатуры или Услуг и тд и тп .

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

«Но хочу сделать так что бы потом если продавать кому-то работу они не лазили в Кофиг что бы настройки серверов забивать или соответствия номенклатуры или Услуг и тд и тп . » — данные — в макет(ы) обработки и сам лазай туда программно в обработке.

Сохранение произвольных параметров для внешней обработки

При работе с внешними обработками/печатными формами нередко возникают случаи, когда в самой обработке используются дополнительные параметры.

В предыдущих версиях типовых (УТ10.3, БП 2.0, ЗУП 2.5) никаких проблем с этим не было, т.к. был механизм Дополнительных параметров, позволяющий сохранять и использовать произвольные параметры при работе с внешней обработкой, однако, в новых версиях (УТ11, БП 3.0, ЗУП 3.1 и т.д.) нас лишили этого удобного механизма.

Ниже предлагается описание одного из способов сохранения и использования произвольных доп.параметров для внешних обработок. Для этой цели воспользуемся объектом «ХранилищеОбщихНастроек».

У этого объекта есть метод

По умолчанию (если параметр не задан) настройки сохраняются для текущего пользователя. Важно понимать, что во-первых, это просто строка, а во-вторых, в случае если у пользователя, вызвашего этот метод есть право «АдминистрированиеДанных» он может работать с настройками других пользователей и мы можем сохранить общие настройки для некого виртуального «пользователя» ВнешниеОбработки, естественно, никакого пользователя ВнешниеОбработки у нас в базе нет, это просто ключ, в разрезе которого мы будем хранить настройки для всех внешних обработок.

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

Вот собственно и все. Далее в самой внешней обработке мы сможем считать настройки с помощью метода

Для удобства работы с доп.параметрами можно создать отдельную обработку с помощью которой устанавливать/копировать настройки для любой внешней обработки из тех, что используются в нашей базе.

Буду рад, если кому-то пригодится этот прием в работе. Также,если после прочтения остались вопросы с удовольствием отвечу на них в комментариях.

1с как обработке сохранить настройки

Собственно требуется следующее:
Имеется внешняя обработка. Планируется открывать эту обработку из любой конфигурации. Соответственно надо сохранять настройки. Хочется не таскать везде за собой внешний файл с настройками, а сохранить их в тело самой обработки.

Подскажите хотя бы где спросить.

т.е. ты прямо в код обработки хочешь прописать что ли? у меня кроме внешнего файла что-то больше на ум ничего не приходит.

(0) не получится. внешний фал тебе поможет только
Можно, но тогда придется таскать с собой компоненту compound.dll

Ну структура ерт файла представляет из себя контейнер вроде? Вот и хочется стандартными средствами 1С без длл что нибудь подобное.

(5) он не даст тебе дописать код в запущенную обработку(ты же само в себя писать хочешь?). Будет ошибка при разделении доступа к файлу.

Как сохранить настройки во внешней обработке для всех пользователей?

Используется облачная 1сfresh со своими ограничениями.
Как сохранить настройки во внешней обработке для всех пользователей?
Использовал уже ХранилищеСистемныхНастроек и ХранилищеОбщихНастроек, но настройки сохраняются и показываются только на тех пользователях, на которых сохранили.

ХранилищеОбщихНастроек.Сохранить("1СНАСТРОЙКИ", "Аккаунт", Объект.Аккаунт, "НастройкиДляВсех"); ХранилищеОбщихНастроек.Загрузить("1СНАСТРОЙКИ", "Аккаунт", "НастройкиДляВсех");
  • Вопрос задан более года назад
  • 674 просмотра

Комментировать
Решения вопроса 1
помогло? отметь решением!

Если это фреш, значит используется скорее всего подсистема Дополнительные отчеты и обработки из БСП, там это делается так:
https://its.1c.ru/db/bsp316doc#content:4:1:issogl3.

Ответ написан более года назад
Нравится 2 1 комментарий
Vadik7777 @Vadik7777 Автор вопроса

Спасибо большое!
Все работает отлично, сохраняется все для всех пользователей!

ХранилищеНастроек = ОбщегоНазначения.ЗначениеРеквизита(ОбработкаСсылка,"ХранилищеНастроек"); НастройкиСтруктура = ХранилищеНастроек.Получить();

Для записи:

ДополнительнаяОбработкаОбъект = Параметры.ДополнительнаяОбработкаСсылка.ПолучитьОбъект(); ДополнительнаяОбработкаОбъект.ХранилищеНастроек = НовыйХранилищеЗначения(НастройкиСтруктура); ДополнительнаяОбработкаОбъект.Записать();

Добавить комментарий

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