diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/smartTags.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/smartTags.os" index ba7474f..b42a729 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/smartTags.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/smartTags.os" @@ -205,7 +205,7 @@ ПараметрыКонфигурации = ПолучитьПараметрыКонфигурацииИзИсходников(КаталогИсходныхФайлов); - Возврат ПараметрыКонфигурации.Version; + Возврат ПараметрыКонфигурации["Version"]; КонецФункции // ПрочитатьВерсиюИзИсходников() @@ -226,7 +226,7 @@ ВызватьИсключение СтрШаблон("Файл <%1> не найден у указанном каталоге.", ФайлКонфигурации.ПолноеИмя); КонецЕсли; - ПараметрыКонфигурации = Новый Структура; + ПараметрыКонфигурации = Новый Соответствие; Чтение = Новый ЧтениеXML; Чтение.ОткрытьФайл(ФайлКонфигурации.ПолноеИмя); @@ -237,8 +237,6 @@ КонецЕсли; КонецЦикла; - Чтение.Прочитать(); - МассивДоступныхСвойств = Новый Массив; МассивДоступныхСвойств.Добавить("Vendor"); МассивДоступныхСвойств.Добавить("Version"); @@ -247,48 +245,34 @@ МассивДоступныхСвойств.Добавить("Name"); Пока Не (Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента И Чтение.ЛокальноеИмя = "Properties") Цикл - - КлючИЗначение = ПрочитатьОпцию(Чтение); - - Если МассивДоступныхСвойств.Найти(КлючИЗначение.Ключ) = Неопределено Тогда + + Ключ = Чтение.ЛокальноеИмя; + Если НЕ Чтение.ТипУзла = ТипУзлаXML.НачалоЭлемента + Или МассивДоступныхСвойств.Найти(Ключ) = Неопределено Тогда + Чтение.Прочитать(); Продолжить; + Иначе + Чтение.Прочитать(); + Если Чтение.ТипУзла = ТипУзлаXML.Текст Тогда + Значение = Чтение.Значение; + ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда + Значение = ""; + Иначе + Продолжить; + КонецЕсли; + ПараметрыКонфигурации.Вставить(Ключ, Значение); + Лог.Отладка("Читаю опцию: %1 + | Значение: %2", Ключ, Значение); КонецЕсли; - ПараметрыКонфигурации.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение); - КонецЦикла; + Чтение.Закрыть(); Возврат ПараметрыКонфигурации; КонецФункции -// Функция читает опцию из ЧтениеXML -// -Функция ПрочитатьОпцию(Знач Чтение) - - Перем Ключ; - Перем Значение; - - Ключ = Чтение.ЛокальноеИмя; - - Чтение.Прочитать(); - Если Чтение.ТипУзла = ТипУзлаXML.Текст Тогда - Значение = Чтение.Значение; - Чтение.Прочитать(); - ИначеЕсли Чтение.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда - Значение = ""; - КонецЕсли; - - Лог.Отладка("Читаю опцию: %1 - | Значение: %2", Ключ, Значение); - - Чтение.Прочитать(); - - Возврат Новый Структура("Ключ,Значение", Ключ, Значение); - -КонецФункции - Процедура Инициализация() Лог = Логирование.ПолучитьЛог(ИмяЛога());