diff --git "a/src/CommonModules/__\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl" "b/src/CommonModules/__\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl"
index 74d3b32d..1d9b930d 100644
--- "a/src/CommonModules/__\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl"
+++ "b/src/CommonModules/__\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl"
@@ -1998,17 +1998,12 @@
КонецФункции
Функция ПроксиПоУмолчанию(URL)
-
+
ПроксиПоУмолчанию = Новый ИнтернетПрокси;
- // BSLLS:ExecuteExternalCodeInCommonModule-off
- ИмяОМПолученияФайловБСП = "ПолучениеФайловИзИнтернета";
- Если Метаданные.ОбщиеМодули.Найти(ИмяОМПолученияФайловБСП) <> Неопределено Тогда
- СтруктураURL = РазобратьURL(URL);
- Модуль = Вычислить(ИмяОМПолученияФайловБСП);
- ПроксиПоУмолчанию = Модуль.ПолучитьПрокси(СтруктураURL.Схема);
- КонецЕсли;
- // BSLLS:ExecuteExternalCodeInCommonModule-on
-
+
+ СтруктураURL = РазобратьURL(URL);
+ ПроксиПоУмолчанию = __ПолучениеФайловИзИнтернетаСлужебный.ПолучитьПрокси(СтруктураURL.Схема);
+
Возврат ПроксиПоУмолчанию;
КонецФункции
diff --git "a/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl" "b/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
index 6f43ed5d..63bc8e78 100644
--- "a/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
+++ "b/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\265\321\200\320\262\320\265\321\200/Ext/Module.bsl"
@@ -850,6 +850,7 @@
// Точка входа, где можно попытаться проверить подключена ли БСП
Если Метаданные.ОбщиеМодули.Найти("СтандартныеПодсистемыСервер") <> Неопределено Тогда
Попытка
+ УстановитьБезопасныйРежим(Истина);
МодульБСП = Вычислить("СтандартныеПодсистемыСервер");
ВерсияБСП = МодульБСП.ВерсияБиблиотеки();
Исключение
diff --git "a/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl" "b/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
index 0f51870b..6438b747 100644
--- "a/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
+++ "b/src/CommonModules/__\320\236\320\261\321\211\320\265\320\263\320\276\320\235\320\260\320\267\320\275\320\260\321\207\320\265\320\275\320\270\321\217\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
@@ -481,10 +481,8 @@
НСтр("ru = 'Объект метаданных ""%1"" не существует.'"), Имя);
КонецЕсли;
- // АПК:488-выкл ВычислитьВБезопасномРежиме не используется, чтобы избежать вызова ОбщийМодуль рекурсивно.
УстановитьБезопасныйРежим(Истина);
Модуль = Вычислить(Имя);
- // АПК:488-вкл
Возврат Модуль;
КонецФункции
diff --git "a/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260.xml" "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260.xml"
new file mode 100644
index 00000000..6ddc8c58
--- /dev/null
+++ "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260.xml"
@@ -0,0 +1,23 @@
+
+
+
+
+ __ПолучениеФайловИзИнтернета
+
+
+ ru
+ Получение файлов из Интернета
+
+
+
+ false
+ false
+ true
+ true
+ true
+ false
+ false
+ DontUse
+
+
+
\ No newline at end of file
diff --git "a/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260/Ext/Module.bsl" "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260/Ext/Module.bsl"
new file mode 100644
index 00000000..e2106466
--- /dev/null
+++ "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260/Ext/Module.bsl"
@@ -0,0 +1,129 @@
+// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
+// включая доработку типовых конфигураций.
+//
+// Copyright 2017-2024 First BIT company
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
+// URL: https://github.com/firstBitSportivnaya/PSSL/
+// e-mail: ivssmirnov@1bit.com
+// Версия: 1.0.0.1
+//
+// Требования: платформа 1С версии 8.3.17 и выш
+
+#Область ПрограммныйИнтерфейс
+
+// Аналог метода БСП. Возвращает объект ИнтернетПрокси для доступа в Интернет.
+// Допустимые протоколы для создания ИнтернетПрокси http, https, ftp и ftps.
+//
+// Параметры:
+// URLИлиПротокол - Строка - url в формате [Протокол://]<Сервер>/<Путь к файлу на сервере>,
+// либо идентификатор протокола (http, ftp, ...).
+//
+// Возвращаемое значение:
+// ИнтернетПрокси - описывает параметры прокси-серверов для различных протоколов.
+// Если не удалось распознать схему сетевой протокол,
+// то будет создать прокси на основании протокола HTTP.
+//
+Функция ПолучитьПрокси(Знач URLИлиПротокол) Экспорт
+
+ НастройкиПрокси = __ОбщегоНазначенияСлужебный.ХранилищеОбщихНастроекЗагрузить("НастройкаПроксиСервера", "");
+ Возврат НовыйИнтернетПрокси(НастройкиПрокси, URLИлиПротокол);
+
+КонецФункции
+
+// Аналог метода БСП. Возвращает прокси по настройкам НастройкаПроксиСервера для заданного протокола Протокол.
+//
+// Параметры:
+// НастройкаПроксиСервера - Соответствие из КлючИЗначение:
+// * Ключ - Строка - см. ниже список возможных ключей.
+// * Значение - Произвольный
+// ИспользоватьПрокси - Булево - использовать ли прокси-сервер.
+// НеИспользоватьПроксиДляЛокальныхАдресов - использовать ли прокси-сервер для локальных адресов.
+// НеИспользоватьПроксиДляАдресов - Массив из Строка
+// ИспользоватьСистемныеНастройки - Булево - использовать ли системные настройки прокси-сервера.
+// Сервер - Строка - адрес прокси-сервера.
+// Порт - Строка - порт прокси-сервера.
+// Пользователь - Строка - имя пользователя для авторизации на прокси-сервере.
+// Пароль - Строка - пароль пользователя.
+// ИспользоватьАутентификациюОС - Булево - признак использования аутентификации средствами операционной системы.
+// URLИлиПротокол - Строка - адрес ресурса или протокол, для которого устанавливаются параметры прокси сервера,
+// например "https://1c.ru", "http", "https", "ftp", "ftps".
+//
+// Возвращаемое значение:
+// ИнтернетПрокси
+//
+Функция НовыйИнтернетПрокси(НастройкаПроксиСервера, URLИлиПротокол) Экспорт
+
+ Если НастройкаПроксиСервера = Неопределено Тогда
+ // Системные установки прокси-сервера.
+ Возврат Неопределено;
+ КонецЕсли;
+
+ ИспользоватьПрокси = НастройкаПроксиСервера.Получить("ИспользоватьПрокси");
+ Если Не ИспользоватьПрокси Тогда
+ // Не использовать прокси-сервер.
+ Возврат Новый ИнтернетПрокси(Ложь);
+ КонецЕсли;
+
+ ИспользоватьСистемныеНастройки = НастройкаПроксиСервера.Получить("ИспользоватьСистемныеНастройки");
+ Если ИспользоватьСистемныеНастройки Тогда
+ // Системные настройки прокси-сервера.
+ Возврат Новый ИнтернетПрокси(Истина);
+ КонецЕсли;
+
+ ИспользоватьАутентификациюОС = НастройкаПроксиСервера.Получить("ИспользоватьАутентификациюОС");
+ ИспользоватьАутентификациюОС = ?(ИспользоватьАутентификациюОС = Истина, Истина, Ложь);
+
+ ДополнительныеНастройки = НастройкаПроксиСервера.Получить("ДополнительныеНастройкиПрокси");
+ Если ТипЗнч(ДополнительныеНастройки) <> Тип("Соответствие") Тогда
+ ДополнительныеНастройки = Новый Соответствие;
+ КонецЕсли;
+
+ // Настройки прокси-сервера, заданные вручную.
+ Прокси = Новый ИнтернетПрокси;
+
+ Протоколы = СтрРазделить("http,https,ftp,ftps", ",", Ложь);
+ Для Каждого Протокол Из Протоколы Цикл
+ АдресСервера = НастройкаПроксиСервера["Сервер"];
+ Порт = НастройкаПроксиСервера["Порт"];
+
+ ПроксиПоПротоколу = ДополнительныеНастройки[Протокол];
+ Если ТипЗнч(ПроксиПоПротоколу) = Тип("Структура") Тогда
+ АдресСервера = ПроксиПоПротоколу.Адрес;
+ Порт = ПроксиПоПротоколу.Порт;
+ КонецЕсли;
+
+ Если Не ЗначениеЗаполнено(Порт) Тогда
+ Порт = Неопределено;
+ КонецЕсли;
+
+ Прокси.Установить(Протокол, АдресСервера, Порт,
+ НастройкаПроксиСервера["Пользователь"], НастройкаПроксиСервера["Пароль"], ИспользоватьАутентификациюОС);
+ КонецЦикла;
+
+ Прокси.НеИспользоватьПроксиДляЛокальныхАдресов = НастройкаПроксиСервера["НеИспользоватьПроксиДляЛокальныхАдресов"];
+
+ АдресаИсключений = НастройкаПроксиСервера.Получить("НеИспользоватьПроксиДляАдресов");
+ Если ТипЗнч(АдресаИсключений) = Тип("Массив") Тогда
+ Для каждого АдресИсключения Из АдресаИсключений Цикл
+ Прокси.НеИспользоватьПроксиДляАдресов.Добавить(АдресИсключения);
+ КонецЦикла;
+ КонецЕсли;
+
+ Возврат Прокси;
+
+КонецФункции
+
+#КонецОбласти
diff --git "a/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.xml" "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.xml"
new file mode 100644
index 00000000..e2cf02e0
--- /dev/null
+++ "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271.xml"
@@ -0,0 +1,23 @@
+
+
+
+
+ __ПолучениеФайловИзИнтернетаСлужебный
+
+
+ ru
+ Получение файлов из Интернета служебный
+
+
+
+ false
+ false
+ true
+ true
+ true
+ false
+ false
+ DontUse
+
+
+
\ No newline at end of file
diff --git "a/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl" "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
new file mode 100644
index 00000000..6d7db49e
--- /dev/null
+++ "b/src/CommonModules/__\320\237\320\276\320\273\321\203\321\207\320\265\320\275\320\270\320\265\320\244\320\260\320\271\320\273\320\276\320\262\320\230\320\267\320\230\320\275\321\202\320\265\321\200\320\275\320\265\321\202\320\260\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Ext/Module.bsl"
@@ -0,0 +1,48 @@
+// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
+// включая доработку типовых конфигураций.
+//
+// Copyright 2017-2024 First BIT company
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
+// URL: https://github.com/firstBitSportivnaya/PSSL/
+// e-mail: ivssmirnov@1bit.com
+// Версия: 1.0.0.1
+//
+// Требования: платформа 1С версии 8.3.17 и выш
+
+#Область СлужебныйПрограммныйИнтерфейс
+
+#Область ПереадресацияМетодов
+
+// См. __ПолучениеФайловИзИнтернета.ПолучитьПрокси.
+Функция ПолучитьПрокси(Знач URLИлиПротокол) Экспорт
+
+ Модуль = ПолучитьМодуль();
+ Возврат Модуль.ПолучитьПрокси(URLИлиПротокол);
+
+КонецФункции
+
+#КонецОбласти
+
+#КонецОбласти
+
+#Область СлужебныеПроцедурыИФункции
+
+Функция ПолучитьМодуль()
+ Возврат __ОбщегоНазначенияПовтИсп.ПолучитьОбщийМодуль("ПолучениеФайловИзИнтернета", "__ПолучениеФайловИзИнтернета");
+КонецФункции
+
+#КонецОбласти
+
diff --git a/src/Configuration.xml b/src/Configuration.xml
index aa17736c..5571f36c 100644
--- a/src/Configuration.xml
+++ b/src/Configuration.xml
@@ -311,6 +311,8 @@
__Пользователи
__ПользователиСлужебный
__ПользователиКлиентСервер
+ __ПолучениеФайловИзИнтернета
+ __ПолучениеФайловИзИнтернетаСлужебный
__ДокументыОбработкаЗаполнения
__ДокументыОбработкаПроведения
__ДокументыПередЗаписью