mirror of
https://github.com/bia-technologies/precommit4onec.git
synced 2025-06-02 23:17:25 +02:00
#ONECICD-120
Корректировка "битых" форм, исправлены Id элементов форм
This commit is contained in:
parent
3b640a7360
commit
63bbecd1dd
@ -65,3 +65,43 @@
|
|||||||
Возврат СтрСравнить(Файл.Имя, "Configuration.mdo") = 0;
|
Возврат СтрСравнить(Файл.Имя, "Configuration.mdo") = 0;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// ЭтоФайлОписанияКонфигурации
|
||||||
|
// Возвращает истину, если файл является файлом описания формы
|
||||||
|
// Параметры:
|
||||||
|
// Файл - Строка - Полный путь к файлу
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Булево - Признак
|
||||||
|
//
|
||||||
|
Функция ЭтоФайлОписанияФормы(Файл) Экспорт
|
||||||
|
|
||||||
|
Если ПустаяСтрока(Файл.Расширение) Тогда
|
||||||
|
|
||||||
|
Возврат Ложь;
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат СтрСравнить(Файл.Имя, "Form.xml") = 0;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
// ЭтоФайлОписанияКонфигурации
|
||||||
|
// Возвращает истину, если файл является файлом описания формы в формате EDT
|
||||||
|
// Параметры:
|
||||||
|
// Файл - Строка - Полный путь к файлу
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Булево - Признак
|
||||||
|
//
|
||||||
|
Функция ЭтоФайлОписанияФормыEDT(Файл) Экспорт
|
||||||
|
|
||||||
|
Если ПустаяСтрока(Файл.Расширение) Тогда
|
||||||
|
|
||||||
|
Возврат Ложь;
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат СтрСравнить(Файл.Имя, "Form.form") = 0;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
@ -80,4 +80,4 @@
|
|||||||
|
|
||||||
Возврат ?(ЕстьBOM, КодировкаТекста.UTF8, КодировкаТекста.UTF8NoBOM);
|
Возврат ?(ЕстьBOM, КодировкаТекста.UTF8, КодировкаТекста.UTF8NoBOM);
|
||||||
|
|
||||||
КонецФункции //ОпределитьКодировку
|
КонецФункции // ОпределитьКодировку
|
@ -36,17 +36,33 @@
|
|||||||
|
|
||||||
Лог = ДополнительныеПараметры.Лог;
|
Лог = ДополнительныеПараметры.Лог;
|
||||||
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
|
НастройкиСценария = ДополнительныеПараметры.УправлениеНастройками.Настройка("Precommt4onecСценарии\НастройкиСценариев").Получить(ИмяСценария());
|
||||||
Если АнализируемыйФайл.Существует() И ЭтоФайлОписанияФормы(АнализируемыйФайл) Тогда
|
Если АнализируемыйФайл.Существует() Тогда
|
||||||
|
|
||||||
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());
|
|
||||||
|
|
||||||
Если ОбновитьИндексыЭлементовВФорме(АнализируемыйФайл.ПолноеИмя) Тогда
|
|
||||||
|
|
||||||
ДополнительныеПараметры.ИзмененныеКаталоги.Добавить(АнализируемыйФайл.ПолноеИмя);
|
Если ТипыФайлов.ЭтоФайлОписанияФормы(АнализируемыйФайл) Тогда
|
||||||
|
|
||||||
|
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());
|
||||||
|
|
||||||
|
Если ОбновитьИндексыЭлементовВФорме(АнализируемыйФайл.ПолноеИмя) Тогда
|
||||||
|
|
||||||
|
ДополнительныеПараметры.ИзмененныеКаталоги.Добавить(АнализируемыйФайл.ПолноеИмя);
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат ИСТИНА;
|
||||||
|
|
||||||
|
ИначеЕсли ТипыФайлов.ЭтоФайлОписанияФормыEDT(АнализируемыйФайл) Тогда
|
||||||
|
|
||||||
|
Лог.Информация("Обработка файла '%1' по сценарию '%2'", АнализируемыйФайл.ПолноеИмя, ИмяСценария());
|
||||||
|
|
||||||
|
Если ОбновитьИндексыЭлементовВФорме(АнализируемыйФайл.ПолноеИмя, Истина) Тогда
|
||||||
|
|
||||||
|
ДополнительныеПараметры.ИзмененныеКаталоги.Добавить(АнализируемыйФайл.ПолноеИмя);
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат ИСТИНА;
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Возврат ИСТИНА;
|
|
||||||
|
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@ -54,23 +70,13 @@
|
|||||||
|
|
||||||
КонецФункции // ОбработатьФайл()
|
КонецФункции // ОбработатьФайл()
|
||||||
|
|
||||||
Функция ЭтоФайлОписанияФормы(Файл)
|
Функция ОбновитьИндексыЭлементовВФорме(Знач ИмяФайла, EDT = Ложь)
|
||||||
|
|
||||||
Если ПустаяСтрока(Файл.Расширение) Тогда
|
|
||||||
|
|
||||||
Возврат Ложь;
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Возврат СтрСравнить(Файл.Имя, "Form.xml") = 0;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ОбновитьИндексыЭлементовВФорме(Знач ИмяФайла)
|
|
||||||
|
|
||||||
СодержимоеФайла = ФайловыеОперации.ПрочитатьТекстФайла(ИмяФайла);
|
СодержимоеФайла = ФайловыеОперации.ПрочитатьТекстФайла(ИмяФайла);
|
||||||
|
|
||||||
Регексп = Новый РегулярноеВыражение("id=\""([0-9-]+)\""\/*>");
|
ПаттернID = ?(EDT, "<id>([0-9-]+)<\/id>", "id=\""([0-9-]+)\""\/*>");
|
||||||
|
|
||||||
|
Регексп = Новый РегулярноеВыражение(ПаттернID);
|
||||||
Регексп.ИгнорироватьРегистр = ИСТИНА;
|
Регексп.ИгнорироватьРегистр = ИСТИНА;
|
||||||
Регексп.Многострочный = ИСТИНА;
|
Регексп.Многострочный = ИСТИНА;
|
||||||
ГруппыИндексов = Регексп.НайтиСовпадения(СодержимоеФайла);
|
ГруппыИндексов = Регексп.НайтиСовпадения(СодержимоеФайла);
|
||||||
@ -111,9 +117,9 @@
|
|||||||
|
|
||||||
Пока СтрокаТЧ.Количество > 1 Цикл
|
Пока СтрокаТЧ.Количество > 1 Цикл
|
||||||
|
|
||||||
ИсходнаяСтрока = "id=""" + СтрокаТЧ.Значение + """";
|
ИсходнаяСтрока = ?(EDT, "<id>" + СтрокаТЧ.Значение + "<", "id=""" + СтрокаТЧ.Значение + """");
|
||||||
ПоследнийНомер = ПоследнийНомер + 1;
|
ПоследнийНомер = ПоследнийНомер + 1;
|
||||||
СтрокаЗамены = "id=""" + ПоследнийНомер + """";
|
СтрокаЗамены = ?(EDT, "<id>" + ПоследнийНомер + "<", "id=""" + ПоследнийНомер + """");
|
||||||
|
|
||||||
Поз = СтрНайти(СодержимоеФайла, ИсходнаяСтрока);
|
Поз = СтрНайти(СодержимоеФайла, ИсходнаяСтрока);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user