Skip to content

Commit

Permalink
oscript-library#216 Переменные среды в заголовках.
Browse files Browse the repository at this point in the history
  • Loading branch information
dmpas committed Jun 5, 2024
1 parent 1c4d9e1 commit df0976d
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 1 deletion.
1 change: 1 addition & 0 deletions packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
Описание.Имя("opm")
.Версия(ВерсияПродукта)
.ВерсияСреды("1.8.3")
.ЗависитОт("strings", "0.5.0")
.ЗависитОт("fs", "1.2.0")
.ЗависитОт("asserts", "1.3.0")
.ЗависитОт("fluent", "0.4.0")
Expand Down
35 changes: 34 additions & 1 deletion src/core/Классы/СерверПакетов.os
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#Использовать strings

Перем Лог;

Перем Имя Экспорт;
Expand Down Expand Up @@ -155,9 +157,40 @@
КонецПроцедуры

Процедура ДобавитьЗаголовокКЗапросу(Знач Запрос, Знач Заголовок, Знач Значение)
Запрос.Заголовки.Вставить(Заголовок, Значение);
Запрос.Заголовки.Вставить(Заголовок, ПрименитьПеременныеСреды(Значение));
КонецПроцедуры

Функция ПрименитьПеременныеСреды(Знач Значение)
ПеременныеСреды = КакМассив(ПеременныеСреды());
Возврат ПрименитьПеременныеСредыШаг(Значение, ПеременныеСреды, 0);
КонецФункции

Функция ПрименитьПеременныеСредыШаг(Знач Значение, Знач ПеременныеСреды, Знач Индекс)

ПеременнаяИмя = СтрШаблон("${%1}", ПеременныеСреды[Индекс].Ключ);
Части = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(Значение, ПеременнаяИмя);
Если Индекс < ПеременныеСреды.Количество() - 1 Тогда
Для Инд = 0 По Части.ВГраница() Цикл
Части[Инд] = ПрименитьПеременныеСредыШаг(Части[Инд], ПеременныеСреды, Индекс + 1);
КонецЦикла;
КонецЕсли;

Результат = СтрСоединить(Части, ПеременныеСреды[Индекс].Значение);
Возврат Результат;

КонецФункции

Функция КакМассив(Знач Соответствие)

Массив = Новый Массив;
Для Каждого мКлючИЗанчение Из Соответствие Цикл
Массив.Добавить(мКлючИЗанчение);
КонецЦикла;

Возврат Массив;

КонецФункции

Функция НастройкаДляВыгрузки() Экспорт

Результат = Новый Структура;
Expand Down

0 comments on commit df0976d

Please sign in to comment.