From 86c1bf7cefc8407dd649abc268f1d78c2f29b058 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=AE=D1=80=D0=B8=D0=B9=20=D0=91=D1=8B=D0=BB=D0=B8=D0=BD?= =?UTF-8?q?=D0=BA=D0=B8=D0=BD?= Date: Sun, 22 Dec 2024 18:45:12 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B7=D0=B0=D0=BC=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ibcmdrunner.os" | 38 +++++++++++++++---- 1 file changed, 30 insertions(+), 8 deletions(-) diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/ibcmdrunner.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/ibcmdrunner.os" index 193c496..9b6537b 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/ibcmdrunner.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/ibcmdrunner.os" @@ -1049,6 +1049,8 @@ СтрокаСИменем = СтрокиБлока[0]; СтрокаСИменем = СтрЗаменить(СтрокаСИменем, """", ""); СтрокаСИменем = СтрЗаменить(СтрокаСИменем, символы.ВК, ""); + + СтрокиБлока.Удалить(0); ОписаниеРасширения = НовыйОписаниеРасширения(); @@ -1057,13 +1059,14 @@ Для Каждого СтрокаСвойства Из СтрокиБлока Цикл ИмяЗначение = СтрРазделить(СтрокаСвойства, ":", Ложь); - ИмяСвойства = СокрЛП(ИмяЗначение[0]); - Если ОписаниеРасширения.Получить(ИмяСвойства) = Неопределено Тогда - Продолжить; - КонецЕсли; + ИмяСвойства = СокрЛП(ИмяЗначение[0]); ЗначениеСвойства = СтрЗаменить(СокрЛП(ИмяЗначение[1]), """", ""); + Если ТипЗнч(ОписаниеРасширения.Получить(ИмяСвойства)) = Тип("Булево") Тогда + ЗначениеСвойства = СтрокаВБулево(ЗначениеСвойства); + КонецЕсли; + ОписаниеРасширения.Вставить(ИмяСвойства, ЗначениеСвойства); КонецЦикла; @@ -1297,6 +1300,25 @@ Возврат Рез; КонецФункции +// Для строки yes или no возвращает Булево +// Параметры: +// Значение - Строка - значение +// Возвращаемое значение: +// Булево +// +Функция СтрокаВБулево(Значение) + Ожидаем.Что(Значение).ИмеетТип("Строка"); + Результат = Ложь; + Если Значение = "yes" Тогда + Результат = Истина; + ИначеЕсли Значение = "no" Тогда + Результат = Ложь; + Иначе + ВызватьИсключение "Значение для преобразования в тип Булево должно быть только 'yes' или 'no'"; + КонецЕсли; + Возврат Результат; +КонецФункции + // Проверяет, что переданная строка удовлетворяет требованиям для имен 1С // Параметры: // Стр - Строка - проверяемая строка @@ -1390,12 +1412,12 @@ ОписаниеРасширения = Новый Соответствие(); ОписаниеРасширения.Вставить("version", ""); - ОписаниеРасширения.Вставить("active", ""); + ОписаниеРасширения.Вставить("active", Ложь); ОписаниеРасширения.Вставить("purpose", ""); - ОписаниеРасширения.Вставить("safe-mode", ""); + ОписаниеРасширения.Вставить("safe-mode", Ложь); ОписаниеРасширения.Вставить("security-profile-name", ""); - ОписаниеРасширения.Вставить("unsafe-action-protection", ""); - ОписаниеРасширения.Вставить("used-in-distributed-infobase", ""); + ОписаниеРасширения.Вставить("unsafe-action-protection", Ложь); + ОписаниеРасширения.Вставить("used-in-distributed-infobase", Ложь); ОписаниеРасширения.Вставить("scope", ""); ОписаниеРасширения.Вставить("hash-sum", "");