1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-20 05:19:32 +02:00

139 lines
7.4 KiB
Plaintext
Raw Normal View History

2024-03-14 11:16:33 +00:00
Функция ПолучитьСопоставлениеФайлов()
Сопоставление = Новый Соответствие();
2024-03-14 14:45:07 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_GoogleCalendar/Module.bsl" , "./OInt/core/Modules/OPI_GoogleCalendar.os");
2024-03-16 12:46:00 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_GoogleDrive/Module.bsl" , "./OInt/core/Modules/OPI_GoogleDrive.os");
2024-03-14 14:45:07 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_GoogleWorkspace/Module.bsl" , "./OInt/core/Modules/OPI_GoogleWorkspace.os");
2024-03-16 12:46:00 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Notion/Module.bsl" , "./OInt/core/Modules/OPI_Notion.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Telegram/Module.bsl" , "./OInt/core/Modules/OPI_Telegram.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Twitter/Module.bsl" , "./OInt/core/Modules/OPI_Twitter.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Viber/Module.bsl" , "./OInt/core/Modules/OPI_Viber.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_VK/Module.bsl" , "./OInt/core/Modules/OPI_VK.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_YandexDisk/Module.bsl" , "./OInt/core/Modules/OPI_YandexDisk.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_YandexID/Module.bsl" , "./OInt/core/Modules/OPI_YandexID.os");
2024-03-14 14:45:07 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Тесты/Module.bsl" , "./OInt/tests/Modules/internal/OPI_Тесты.os");
2024-03-16 12:46:00 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl" , "./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os");
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Инструменты/Module.bsl" , "./OInt/tools/Modules/internal/Modules/OPI_Инструменты.os");
2024-03-14 14:45:07 +03:00
Сопоставление.Вставить("./OPI/src/CommonModules/OPI_Криптография/Module.bsl" , "./OInt/tools/Modules/internal/Modules/OPI_Криптография.os");
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
Возврат Сопоставление;
2024-03-14 11:16:33 +00:00
КонецФункции
Функция ПолучитьСоответствиеЗамен()
СоответствиеЗамен = Новый Соответствие();
СоответствиеЗамен.Вставить("// #Использовать" , "#Использовать");
СоответствиеЗамен.Вставить("//#Использовать" , "#Использовать");
2024-03-16 12:46:00 +03:00
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Истина);" , "");
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Ложь);" , "");
СоответствиеЗамен.Вставить("// !OInt " , "");
2024-03-14 11:16:33 +00:00
Возврат СоответствиеЗамен;
КонецФункции
Процедура ВыполнитьОбработку()
Сообщить("Начало конвертации OPI -> OInt");
Сообщить("------------------------------");
Начало = ТекущаяДата();
СоответствиеМодулей = ПолучитьСопоставлениеФайлов();
Для Каждого ПараМодулей Из СоответствиеМодулей Цикл
Сообщить(Символы.ПС);
2024-03-14 11:21:55 +00:00
ПортироватьФайл(ПараМодулей.Ключ, ПараМодулей.Значение);
2024-03-14 11:16:33 +00:00
КонецЦикла;
Сообщить("------------------------------");
Сообщить("Обработка завершена! Длительность - " + Строка(ТекущаяДата() - Начало));
КонецПроцедуры
#Область СлужебныеПроцедурыИФункции
Процедура ПортироватьФайл(Знач Файл1С, Знач ФайлОС)
ФайлМодуля = Новый Файл(Файл1С);
2024-03-15 09:25:48 +03:00
МодульОС = Новый Файл(ФайлОС);
ИмяМодуля = МодульОС.Имя;
2024-03-14 11:16:33 +00:00
Если ФайлМодуля.Существует() Тогда
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Начало обработки файла");
2024-03-14 11:16:33 +00:00
Иначе
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Файл не существует. Пропускаем");
2024-03-14 11:16:33 +00:00
Возврат;
2024-03-14 11:29:58 +00:00
КонецЕсли;
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
Модуль = ПрочитатьМодуль(Файл1С, ИмяМодуля);
2024-03-14 11:16:33 +00:00
Если СтрДлина(Модуль) = 0 Тогда
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Модуль пустой. Пропускаем");
2024-03-14 11:16:33 +00:00
Возврат;
КонецЕсли;
2024-03-14 14:40:01 +03:00
ОбработатьЗаменыМодуля(ИмяМодуля, Модуль);
ЗаписатьМодуль(ФайлОС, Модуль, ИмяМодуля);
2024-03-14 11:16:33 +00:00
КонецПроцедуры
2024-03-14 14:40:01 +03:00
Функция ПрочитатьМодуль(Знач ФайлМодуля, Знач ИмяМодуля)
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Начало чтения текста модуля");
2024-03-14 11:16:33 +00:00
ЧтениеТекста = Новый ЧтениеТекста(ФайлМодуля);
Модуль = ЧтениеТекста.Прочитать();
ЧтениеТекста.Закрыть();
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Модуль прочитан. Длина - " + Строка(СтрДлина(Модуль)));
2024-03-14 11:16:33 +00:00
Возврат Модуль;
2024-03-14 14:40:01 +03:00
КонецФункции
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
Процедура ЗаписатьМодуль(Знач ФайлМодуля, Знач Модуль, Знач ИмяМодуля)
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Начало записи модуля");
2024-03-14 11:16:33 +00:00
ТекстовыйДокумент = Новый ТекстовыйДокумент();
ТекстовыйДокумент.УстановитьТекст(Модуль);
2024-03-14 14:40:01 +03:00
ТекстовыйДокумент.Записать(ФайлМодуля);
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Модуль записан");
2024-03-14 11:16:33 +00:00
КонецПроцедуры
Процедура ВыводСообщенияПроцесса(Знач ИмяФайла, Знач Действие)
Длина = 30;
2024-03-14 14:40:01 +03:00
Пока СтрДлина(ИмяФайла) < Длина Цикл
2024-03-14 11:16:33 +00:00
ИмяФайла = ИмяФайла + " ";
КонецЦикла;
Сообщить("Конвертация | " + ИмяФайла + " | " + Действие);
КонецПроцедуры
2024-03-14 14:40:01 +03:00
Процедура ОбработатьЗаменыМодуля(Знач ИмяМодуля, Модуль)
2024-03-14 11:16:33 +00:00
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Начало произведения замен");
2024-03-14 11:16:33 +00:00
СоответствиеЗамен = ПолучитьСоответствиеЗамен();
Для Каждого Замена Из СоответствиеЗамен Цикл
2024-03-14 14:40:01 +03:00
Модуль = СтрЗаменить(Модуль, Замена.Ключ, Замена.Значение);
2024-03-14 11:16:33 +00:00
КонецЦикла;
2024-03-14 14:40:01 +03:00
ВыводСообщенияПроцесса(ИмяМодуля, "Окончание произведения замен");
2024-03-14 11:16:33 +00:00
КонецПроцедуры
#КонецОбласти
2024-03-15 09:25:48 +03:00
ВыполнитьОбработку();