1
0
mirror of https://github.com/bia-technologies/precommit4onec.git synced 2025-06-04 23:27:32 +02:00

Добавлена поддержка настроек сценариев

This commit is contained in:
Maxmov Valery 2018-08-10 10:02:58 +03:00
parent 77d06487c5
commit abf1ac7c51
15 changed files with 64 additions and 12 deletions

View File

@ -124,6 +124,8 @@
ГлобальныеСценарии = ПолучитьИменаСценариев(ТекущийКаталогСценариев);
УправлениеНастройками.ЗаписатьНастройку(ИмяПриложения + "\ГлобальныеСценарии", ГлобальныеСценарии);
НастройкиСценариев = СформироватьНастройкиСценариев();
УправлениеНастройками.ЗаписатьНастройку(ИмяПриложения + "\НастройкиСценариев", НастройкиСценариев);
КонецПроцедуры
@ -160,6 +162,22 @@
КонецФункции
Функция СформироватьНастройкиСценариев()
// todo: Надо будет доработать таким образом, чтобы настройки считывались из сценария
// для сценария РазборОтчетовОбработокРасширений
НастройкиСценария = Новый Соответствие;
НастройкиСценария.Вставить("ИспользоватьНастройкиПоУмолчанию", Истина);
НастройкиСценария.Вставить("ВерсияПлатформы", "");
НастройкиСценариев = Новый Соответствие;
НастройкиСценариев.Вставить("РазборОтчетовОбработокРасширений", НастройкиСценария);
Возврат НастройкиСценариев;
КонецФункции
Процедура ИнтерактивнаяНастройка(КаталогРепозитория, УправлениеНастройками, ГлобальныеНастройки, КаталогГлобальныхСценариев)
ИмяПриложения = "Precommt4onecСценарии";
@ -284,4 +302,4 @@
Возврат ВыбранноеЗначение;
КонецФункции
КонецФункции

View File

@ -85,7 +85,8 @@
ЖурналИзменений = ПолучитьЖурналИзменений();
Ит = 0;
ПараметрыОбработки = Новый Структура("Лог, ФайлыДляПостОбработки, ИзмененныеКаталоги, КаталогРепозитория", Лог, Новый Массив, Новый Массив, КаталогРепозитория);
ПараметрыОбработки = Новый Структура("Лог, ФайлыДляПостОбработки, ИзмененныеКаталоги, КаталогРепозитория, УправлениеНастройками",
Лог, Новый Массив, Новый Массив, КаталогРепозитория, УправлениеНастройками);
Пока Ит < ЖурналИзменений.Количество() Цикл
АнализируемыйФайл = Новый Файл(ОбъединитьПути(КаталогРепозитория, ЖурналИзменений[Ит].ИмяФайла));

View File

@ -36,6 +36,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ТипыФайлов.ЭтоФайлИсходников(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -37,6 +37,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ТипыФайлов.ЭтоФайлИсходников(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ЭтоФайлОписанияФормы(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -37,6 +37,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ТипыФайлов.ЭтоФайлИсходников(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -40,6 +40,8 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если ЭтоФайлОбычнойФормы(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -46,7 +46,8 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если ТипФайлаПоддерживается(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());
@ -58,13 +59,21 @@
КонецЕсли;
ИспользуемаяВерсияПлатформы = "";
Если ЗначениеЗаполнено(НастройкиСценария)
И НастройкиСценария.Получить("ИспользоватьНастройкиПоУмолчанию") = Ложь
И ЗначениеЗаполнено(НастройкиСценария.Получить("ВерсияПлатформы")) Тогда
ИспользуемаяВерсияПлатформы = НастройкиСценария.Получить("ВерсияПлатформы");
КонецЕсли;
Если СтрСравнить(АнализируемыйФайл.Расширение, ".cfe") <> 0 Тогда
РаспаковатьОтчетОбработку(АнализируемыйФайл, КаталогВыгрузки);
РаспаковатьОтчетОбработку(АнализируемыйФайл, КаталогВыгрузки, ИспользуемаяВерсияПлатформы);
Иначе
РаспаковатьРасширение(АнализируемыйФайл, КаталогВыгрузки);
РаспаковатьРасширение(АнализируемыйФайл, КаталогВыгрузки, ИспользуемаяВерсияПлатформы);
КонецЕсли;
@ -186,11 +195,11 @@
КонецФункции
Процедура РаспаковатьОтчетОбработку(Знач Файл, Знач КаталогВыгрузки)
Процедура РаспаковатьОтчетОбработку(Знач Файл, Знач КаталогВыгрузки, ИспользуемаяВерсияПлатформы)
Лог.Отладка("Распаковка файла внешнего отчета обработки %1", Файл.ПолноеИмя);
Конфигуратор = ПодготовитьКонфигуратор();
Конфигуратор = ПодготовитьКонфигуратор(ИспользуемаяВерсияПлатформы);
Параметры = Конфигуратор.ПолучитьПараметрыЗапуска();
Параметры.Добавить("/DumpExternalDataProcessorOrReportToFiles");
@ -201,12 +210,12 @@
КонецПроцедуры
Процедура РаспаковатьРасширение(Знач Файл, Знач КаталогВыгрузки)
Процедура РаспаковатьРасширение(Знач Файл, Знач КаталогВыгрузки, ИспользуемаяВерсияПлатформы)
Лог.Отладка("Распаковка файла расширения %1", Файл.ПолноеИмя);
ИмяРасширения = Файл.ИмяБезРасширения;
Конфигуратор = ПодготовитьКонфигуратор();
Конфигуратор = ПодготовитьКонфигуратор(ИспользуемаяВерсияПлатформы);
Параметры = Конфигуратор.ПолучитьПараметрыЗапуска();
Параметры.Добавить(СтрШаблон("/LoadCfg ""%1""", Файл.ПолноеИмя));
@ -222,11 +231,17 @@
КонецПроцедуры
Функция ПодготовитьКонфигуратор()
Функция ПодготовитьКонфигуратор(ИспользуемаяВерсияПлатформы)
Конфигуратор = Новый УправлениеКонфигуратором();
КаталогВременнойИБ = ВременныеФайлы.СоздатьКаталог();
Конфигуратор.КаталогСборки(КаталогВременнойИБ);
Если ЗначениеЗаполнено(ИспользуемаяВерсияПлатформы) Тогда
Конфигуратор.ИспользоватьВерсиюПлатформы(ИспользуемаяВерсияПлатформы);
КонецЕсли;
ЛогКонфигуратора = Логирование.ПолучитьЛог("oscript.lib.v8runner");
ЛогКонфигуратора.УстановитьУровень(Лог.Уровень());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ЭтоФайлОписанияКонфигурации(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ЭтоФайлОписанияКонфигурации(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ЭтоФайлОписанияКонфигурации(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ТипыФайлов.ЭтоФайлИсходников(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -35,6 +35,7 @@
Функция ОбработатьФайл(АнализируемыйФайл, КаталогИсходныхФайлов, ДополнительныеПараметры) Экспорт
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Если АнализируемыйФайл.Существует() И ТипыФайлов.ЭтоФайлИсходников(АнализируемыйФайл) Тогда
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());

View File

@ -37,7 +37,8 @@
ВызватьИсключение "Обработка файла не реализована";
Лог = ДополнительныеПараметры.Лог;
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());
Возврат ЛОЖЬ;
КонецФункции // ОбработатьФайл()
КонецФункции // ОбработатьФайл()

View File

@ -14,6 +14,12 @@
"УдалениеДублейМетаданных.os",
"УдалениеЛишнихКонцевыхПробелов.os",
"УдалениеЛишнихПустыхСтрок.os"
]
],
"НастройкиСценариев": {
"РазборОтчетовОбработокРасширений": {
"ИспользоватьНастройкиПоУмолчанию": true,
"ВерсияПлатформы": ""
}
}
}
}