Необычное решение для хранения настроек внешней обработки

Публикация № 1628603 25.03.22

Разработка - БСП (Библиотека стандартных подсистем)

Решения Оригинально

При написании внешней обработки, например для импорта данных из сторонней базы данных используя HTTP-сервисы, необходимо сохранять настройки соединения с HTTP. Подсказали оригинальный способ сохранения настроек с БД. При использовании "ХранилищеОбщихНастроек" все сильно зависит от прав пользователя. Чтобы читать настройки, сохраненные другим пользователем, необходимы права: "АдминистрированиеДанных". Как-то не хочется раздавать всем пользователям права администратора. Помогает БСП.

Покажу на примере сохранения настроек соединения с HTTP сервером.

Форма настроек будет выглядеть примерно так:

 

 

Сохранение параметров:

В обработчике кнопки "Записать и закрыть" пишем следующее:

&НаКлиенте
Процедура ЗаписатьИЗакрыть(Команда)
	ЗаписатьИЗакрытьНаСервере();
	Закрыть();
КонецПроцедуры

&НаСервере
Процедура ЗаписатьИЗакрытьНаСервере()
	НастройкиПодключения = Новый Структура;
	НастройкиПодключения.Вставить("Сервер",Объект.Сервер);
	НастройкиПодключения.Вставить("БазаДанных",Объект.БазаДанных);
	НастройкиПодключения.Вставить("Пользователь",Объект.Пользователь);
	НастройкиПодключения.Вставить("Пароль",Объект.Пароль);
	
	Файл = Справочники.Файлы.НайтиПоНаименованию("НастройкиИмпортИзБазыИсточника");
	Хранилище = Новый ХранилищеЗначения(НастройкиПодключения, Новый СжатиеДанных(9));
	Если НЕ ЗначениеЗаполнено(Файл) Тогда
		СправочникФайл = Справочники.Файлы.СоздатьЭлемент();
	Иначе
		СправочникФайл = Файл.ПолучитьОбъект();
	КонецЕсли;
	СправочникФайл.Автор = ПараметрыСеанса.ТекущийПользователь;
	СправочникФайл.ФайлХранилище = Хранилище;
	СправочникФайл.ТекстХранилище = Хранилище;
	СправочникФайл.ВладелецФайла = Справочники.ПапкиФайлов.Шаблоны;
	СправочникФайл.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе;
	СправочникФайл.Наименование = "НастройкиИмпортИзИсточника";
	СправочникФайл.ДатаСоздания = ТекущаяДата();
	СправочникФайл.ДатаМодификацииУниверсальная = ТекущаяДата();
	СправочникФайл.Записать();
	
	ЗаписьФайла = РегистрыСведений.ДвоичныеДанныеФайлов.СоздатьМенеджерЗаписи();
	ЗаписьФайла.Файл = СправочникФайл.Ссылка;
	ЗаписьФайла.ДвоичныеДанныеФайла = Хранилище;
	ЗаписьФайла.Записать(Истина);
КонецПроцедуры

Создаем структуру сохраняемых параметров. и записываем в БД в файлы. Если настройки в базе уже есть, переписываем. 

Чтение настроек:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	ПриОткрытииНаСервере();
КонецПроцедуры

&НаСервере
Процедура ПриОткрытииНаСервере()
	Настройки = ЧтениеНастроек();
	Если Настройки <> Неопределено Тогда
		Объект.Сервер = Настройки.Сервер;
		Объект.БазаДанных = Настройки.БазаДанных;
		Объект.Пользователь = Настройки.Пользователь;
		Объект.Пароль = Настройки.Пароль;
	КонецЕсли;
КонецПроцедуры

Чтение настроек из хранилища файлов:

&НаСервере
Функция ЧтениеНастроек()
	Файл = Справочники.Файлы.НайтиПоНаименованию("НастройкиИмпортИзИсточника");
	Если ЗначениеЗаполнено(Файл) тогда
		ТаблицаНастроек = Файл.ФайлХранилище.Получить();
		Возврат ТаблицаНастроек;
	КонецЕсли;
	Возврат Неопределено;
КонецФункции

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

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. SlavaKron 25.03.22 19:55 Сейчас в теме
независимый от прав пользователя
Всё-таки нужна роль ДобавлениеИзменениеПапокИФайлов.
2. dhurricane 25.03.22 20:53 Сейчас в теме
Зачем использовать "необычное решение" для хранения настроек, если есть обычное, задокументированное. :-)
DrAku1a; IlyaSR; +2 Ответить
4. winapi 53 25.03.22 22:01 Сейчас в теме
Это можно любой объект метаданных с реквизитом типа хранилище значения взять, но зачем об этом писать статью?
5. dmitry_sizonenko 17 27.03.22 01:49 Сейчас в теме
А установка привилегированного режим в процедуре не поможет?
6. AlexeyRaevsky 9 27.03.22 12:51 Сейчас в теме
Народ, я всего 4 месяца плотно сижу на 1С (внедряем Комплексную автоматизацию), поэтому может и баян. Может и не нужно никому. Но мне решение показалось оригинальным.
DrAku1a; mrChOP93; +2 Ответить
7. EvgeniuXP 01.04.22 10:58 Сейчас в теме
Использовать привилегированный режим при чтении и сохранении.
Оставьте свое сообщение

См. также

Снова об использовании ТекущаяДата() на клиенте и на сервере и о работе в разных часовых поясах

БСП (Библиотека стандартных подсистем) Механизмы платформы 1С Платформа 1С v8.3 Бесплатно (free)

Можно ли применять ТекущаяДата() вопреки требованиям стандартов 1С? Безопасно ли использование функции ОбщегоНазначенияКлиент.ДатаСеанса() из БСП? Как правильно поступать при работе пользователей в разных часовых поясах?

24.04.2023    4155    Alxby    26    

40

Печать в WORD при помощи БСП. Вывод уникальных ссылок в строки таблицы

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример вывода уникальных ссылок в строку таблицы макета WORD при печати с помощью БСП. Может быть полезна при создании интерактивных прайсов.

03.04.2023    739    user1575928    0    

17

Учим БСП печатать активные ссылки и подложку в документе WORD

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Небольшое расширение БСП для печати в WORD. Добавлена печать активных ссылок, подложки документа, и фона страницы.

1 стартмани

13.03.2023    1328    3    user1575928    0    

6

Многопоточное выполнение процедуры с помощью ДлительныеОперации

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

В публикации: Приведен шаблон для запуска многопоточной операции для различных вариантов размещения многопоточной операции, в том числе в модуле объекта внешней обработки, встроенной в справочник Дополнительные отчеты и обработки; Представлен вариант корректного отображения прогресса многопоточной операции; Приведены замеры, демонстрирующие целесообразность использования нового механизма для увеличения производительности.

1 стартмани

26.02.2023    4600    egoriy111    24    

68

Пример многопоточной обработки (БСП)

Обработка документов HighLoad оптимизация Обработка справочников БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка-шаблон, на основе которой можно делать свои многопоточные обработки данных для конфигураций на БСП.

13.02.2023    6228    4    echo77    8    

76

Запуск фонового задания с прогрессом во внешней обработке независимо от места вызова на Библиотеке стандартных подсистем

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Открытый код. Реализован запуск как из справочника дополнительных обработок, так и с файла на диске без обязательного доступа с сервера. Используется актуальная процедура БСП ДлительныеОперации.ВыполнитьПроцедуру.

1 стартмани

10.02.2023    1904    7    janit    0    

7

Ошибка механизма автонумерации объектов. Обработка «Максимальный код (номер) объекта» (БСП 3.1.7.61)

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Сбой механизма автонумерации документов и справочников 1С:Предприятие 8.3. Методика исправления проблемы. Вспомогательная обработка.

1 стартмани

30.01.2023    1376    1    mobiledrivec    0    

3

Использование типовых возможностей 1С и их расширение. Часть 1

Инструкции пользователю БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

29.10.2022    5673    ixijixi    7    

56

Работа с файлами

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Данное расширение предназначено для добавления механизма БСП присоединения файлов к объектам в типовых конфигурациях без снятия конфигураций с поддержки.

1 стартмани

03.09.2022    2343    10    Tash.B    0    

8

Шаблон внешней обработки на основе БСП с фоновым выполнением модуля обработки и выводом индикации фонового задания

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

31.08.2022    6068    53    VdZMWOnC    5    

83

Альтернативная иерархия справочника

БСП (Библиотека стандартных подсистем) Обработка справочников Механизмы типовых конфигураций 8.3.14 Конфигурации 1cv8 Россия Абонемент ($m)

Справочники "Контрагенты" и "Номенклатура" (и другие) в типовых (и не только) конфигурациях являются иерархическими. Все элементы расположены в своих группах. При выводе данных в отчет используется существующая иерархия справочника. Но что делать, если требуется сделать отчет, где элементы будут расположены в другой иерархии, отличной от той, которая имеется в справочнике? Поделюсь двумя способами.

1 стартмани

30.08.2022    3041    2    hiduk    0    

3

Печать любой печатной формы, зарегистрированной с помощью БСП, для любой конфигурации

Обработка документов Печатные формы БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Добрый день. Не так давно мне была поставлена задача сделать обработку, позволяющую для выбранного объекта конфигурации показывать список печатных форм этого объекта и выводить выбранную форму на печать. Пришлось немного поразбираться с БСП, но в итоге получилось. Работает для любой конфигурации. Одно условие только - печатная форма должна быть зарегистрирована с помощью БСП.

1 стартмани

27.07.2022    3374    5    Alex33614    2    

6

Выгрузка дополнительных отчетов и обработок

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Внешняя обработка 1С:Предприятие, позволяющая быстро выгрузить все подключенные внешние отчеты и обработки в рабочий каталог в виде одного архивного файла *.zip или набора файлов.

1 стартмани

21.07.2022    2265    7    mobiledrivec    0    

5

Система контроля ведения учета [БСП]

Универсальные функции Механизмы типовых конфигураций БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данном материале рассмотрим типовой алгоритм подсистемы контроля учета БСП в конфигурациях на примерах.

18.07.2022    5541    quazare    8    

101

Оценка производительности с помощью БСП

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье будут рассмотрены базовые возможности подсистемы "Оценка производительности" в библиотеке стандартных подсистем.

30.06.2022    4719    quazare    8    

54

Разработка конфигурации на основе Библиотеки стандартных подсистем 3.1.6.245

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

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

06.06.2022    6129    user1432326    5    

25

Как подключить документ расширения к версионированию БСП

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Пример расширения, в котором добавлен новый документ и он же подключен к подсистеме версионирования объектов. Важно! Основную конфигурацию нужно переключить в режим совместимости 8.3.20.

2 стартмани

27.05.2022    6040    5    EvgeTrofi    9    

13

Отправка счетов и актов за период из 1С:Бухгалтерии 3.0 программно с помощью функций БСП

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

Задача: обработкой сформировать печатные формы счетов и актов за период в 1С:Бухгалтерия 3.0, сохранить в папку на диске и отправить на электронную почту клиенту. Основная сложность этой задачи найти нужную функцию БСП, которая отвечает за формирование табличного документа печатной формы, и функцию, которая прикручивает к ней печать и подпись.

1 стартмани

23.05.2022    1613    lenastep    4    

5

Подсистема регулярных заданий

Универсальные функции БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Абонемент ($m)

Подсистема регулярных заданий предназначена для выполнения произвольных алгоритмов (задач) по заранее сформированным графикам с учетом производственного календаря.

1 стартмани

23.05.2022    5374    15    Sirruf    15    

14

Базовые принципы работы с регламентными заданиями подсистем БСП

Универсальные функции БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В очередной публикации рассмотрим некоторые базовые приемы работы с регламентными заданиями в рамках библиотеки стандартных подсистем

22.05.2022    9568    quazare    25    

54

Шаблоны сообщений пользователю - подсистема БСП

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Бесплатно (free)

В данной небольшой статье рассмотрим практические примеры создания шаблонов сообщений пользователю и их отправки с помощью типового функционала библиотеки стандартных подсистем.

15.05.2022    8300    quazare    6    

103

Еще раз о дополнительных реквизитах и дополнительных сведениях

Адаптация типовых решений БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Дополнительные реквизиты и сведения существуют давно. Задумка очень хорошая. Суть этих механизмов понятна всем. По этому поводу написано много. Что тут можно сказать нового? Однако бес, как всегда, в деталях. Как создавали реквизиты в объектах типовых конфигураций, так и продолжаем это делать. Почему это происходит? За всех сказать не могу. Могу рассуждать только на своем примере. Являясь убежденным практиком, одно могу сказать вполне определенно. Если что-то на практике недостаточно удобно, то останется оно главным образом в теории... Если не приложить немного усилий.

11.05.2022    9413    user1374747    19    

48

Универсальный анализ и управление ролями

Инструменты администратора БД БСП (Библиотека стандартных подсистем) Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

27.04.2022    4352    27    denmp    0    

5

Модули общего назначения - готовые полезные функции и процедуры конфигураций на БСП

Универсальные функции БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

25.04.2022    10260    quazare    11    

130

Правила регистрации объектов 1С:БСП

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Здравствуйте, коллеги! В статье рассмотрим работу с правилами регистрации объектов в библиотеке стандартных подсистем 1С.

20.04.2022    10794    Koder_Line    12    

33

Отчет на СКД с использованием форм из БСП. Варианты передачи списка значений в параметр СКД

БСП (Библиотека стандартных подсистем) СКД Платформа 1С v8.3 Система компоновки данных Конфигурации 1cv8 Россия Абонемент ($m)

Показаны способы передачи списка значений в значение по умолчанию параметра СКД типового отчета из БСП, с возможностью последующей модификации пользователем.

1 стартмани

20.04.2022    5415    eugene-p    8    

28

Раздел меню внешних отчетов и обработок (расширение конфигурации на БСП)

Рабочее место БСП (Библиотека стандартных подсистем) Менеджеры внешних отчетов 8.3.14 Конфигурации 1cv8 Абонемент ($m)

Иногда пользователю доставляет неудобство открывать разрозненно по спискам разных разделов внешние обработки и отчёты, и есть потребность поместить их в одно единственное окно. Данное расширение призвано решить такую задачу.

1 стартмани

12.04.2022    5206    31    Obertone    7    

22

Многопоточный режим выполнения процедуры с помощью методов БСП - примеры разработки

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

01.04.2022    7287    quazare    14    

117

Получение контактной информации из отбора

Адаптация типовых решений Универсальные функции БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

25.03.2022    1861    ixijixi    0    

12

Стандартные подсистемы БСП - параметры работы клиента и возможности диалогов

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной небольшой статье рассмотрим обработку параметров работы клиента и режим диалога (выбора вопроса) модулей "стандартные подсистемы" БСП.

22.03.2022    6014    quazare    10    

81

Полезный код для программистов 1С (часть 3). Подготовка печатных форм + подсистема Управление печатью (БСП)

БСП (Библиотека стандартных подсистем) Универсальные функции Платформа 1С v8.3 Бесплатно (free)

Мы все любим 1С, не так ли? Вот дает 1С прекрасный механизм возможности модификации макетов печатных форм в БСП. А из всех рекомендаций это получение макета и заполнение параметров областей. И вы спросите: "А что не так... ты печатные формы накодить не можешь без указаний сверху?". Да вот в том то и дело, что я могу все. А вот пользователям от такого механизма пользы 0, если из всех доступных изменений остаются только шрифты, да текст произвольный накинуть. А ведь можно больше, надо только соблюдать несколько правил при подготовке печатных форм...

07.03.2022    9957    vandalsvq    0    

57