1
0
mirror of https://github.com/bia-technologies/precommit4onec.git synced 2025-07-17 01:32:39 +02:00

#ONECICD-126

Поправил сценарий
This commit is contained in:
Dmitriy Medvedev
2019-11-13 16:19:34 +03:00
parent 763a507aa3
commit c3c4ab1a49

View File

@ -102,9 +102,9 @@
КонецЕсли; КонецЕсли;
// Вырезаем часть строки в кавычках // Вырезаем часть строки в кавычках
ПоследняяПозиция = 0;
ПозицияКавычек = СтрНайти(НоваяСтрокаМодуля, """");
ПозицияКавычек = СтрНайти(НоваяСтрокаМодуля, """");
ПоследняяПозиция = 0;
НоваяСтрокаМодуля = ВырезатьТекстВКавычках(НоваяСтрокаМодуля, ПозицияКавычек, ПоследняяПозиция, СтрокаОткрыта); НоваяСтрокаМодуля = ВырезатьТекстВКавычках(НоваяСтрокаМодуля, ПозицияКавычек, ПоследняяПозиция, СтрокаОткрыта);
// ничего интересного не осталось // ничего интересного не осталось
@ -119,8 +119,6 @@
// Проверяем правильное использование каждого ключевого слова // Проверяем правильное использование каждого ключевого слова
ВРегНоваяСтрокаМодуля = НормализоватьСтроку(НоваяСтрокаМодуля, ЗаменяемыеСимволы); ВРегНоваяСтрокаМодуля = НормализоватьСтроку(НоваяСтрокаМодуля, ЗаменяемыеСимволы);
ДлинаСтроки = СтрДлина(ВРегНоваяСтрокаМодуля);
Для Каждого ЭлементТаблицы Из КлючевыеСлова Цикл Для Каждого ЭлементТаблицы Из КлючевыеСлова Цикл
Эталон = ЭлементТаблицы.Наименование; Эталон = ЭлементТаблицы.Наименование;
ПозицияЭталона = СтрНайти(ВРегНоваяСтрокаМодуля, " " + Эталон + " "); ПозицияЭталона = СтрНайти(ВРегНоваяСтрокаМодуля, " " + Эталон + " ");
@ -158,7 +156,6 @@
КонецЦикла; КонецЦикла;
Если НовоеСодержимоеФайла.ПолучитьТекст() <> СодержимоеФайла Тогда Если НовоеСодержимоеФайла.ПолучитьТекст() <> СодержимоеФайла Тогда
ФайловыеОперации.ЗаписатьТекстФайла(ИмяФайла, НовоеСодержимоеФайла.ПолучитьТекст()); ФайловыеОперации.ЗаписатьТекстФайла(ИмяФайла, НовоеСодержимоеФайла.ПолучитьТекст());
Возврат Истина; // переиндексируем Возврат Истина; // переиндексируем
@ -192,16 +189,17 @@
КонецПроцедуры КонецПроцедуры
Функция ВырезатьТекстВКавычках(Знач СтрокаМодуля, ПозицияКавычек, ПоследняяПозиция, СтрокаОткрыта) Функция ВырезатьТекстВКавычках(Знач СтрокаМодуля, ПозицияКавычек, ПоследняяПозиция, СтрокаОткрыта, НачалоСтрокиМодуля = Истина)
ТмпСтрокаМодуля = СтрокаМодуля;
Пока ПозицияКавычек > 0 Цикл Пока ПозицияКавычек > 0 Цикл
// Если строка открыта 2 варианта:
// Строка могла открыться ранее по тексту модуля тогда ПоследняяПозиция кавычки в этой строке = 0, тогда слева ничего не отрежется, а дополнить надо вместе с кавычкой
// Строка в этой же строке, значит 1 кавычку мы уже заменили и надо дополнить оставшуюся часть : пример"
Если СтрокаОткрыта Тогда Если СтрокаОткрыта Тогда
// кавычки закрывают строку, вырезаем часть в кавычках // кавычки закрывают строку, вырезаем часть в кавычках
СтрокаМодуляВКавычках = Сред(СтрокаМодуля, ПозицияКавычек + 1); СтрокаМодуляВКавычках = Сред(СтрокаМодуля, ПозицияКавычек + 1);
СтрокаМодуля = Лев(СтрокаМодуля, ПоследняяПозиция - 1) СтрокаМодуля = Лев(СтрокаМодуля, ПоследняяПозиция - 1)
+ ДополнитьСтроку("", ПозицияКавычек - ПоследняяПозиция + 1, " ") + ДополнитьСтроку("", ?(ПоследняяПозиция = 0, ПозицияКавычек, ПозицияКавычек - ПоследняяПозиция + 1), " ")
+ СтрокаМодуляВКавычках; + СтрокаМодуляВКавычках;
СтрокаОткрыта = Ложь; СтрокаОткрыта = Ложь;
ПоследняяПозиция = 0; ПоследняяПозиция = 0;