Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 54 additions & 0 deletions src/Классы/edtExport.os
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
Перем РабочееПространство;
Перем ИмяРасширения;
Перем ИмяБазовогоПроекта;
Перем АвтосортировкаПроекта;

Перем ИмяФайлаДампаКонфигурации;
Перем ИмяФайлаИзменений;
Expand Down Expand Up @@ -122,6 +123,10 @@
"[*edtExport] версия EDT")
.ТСтрока()
.ВОкружении("GITSYNC_EDT_VERSION");

КлассРеализации.Опция("SP sort-project", Ложь, "[*edtExport] автосортировка проекта")
.ТБулево()
.ВОкружении("GITSYNC_SORT_PROJECT");

КонецПроцедуры

Expand All @@ -131,6 +136,7 @@
ВерсияEDT = ПараметрыКоманды.Параметр("edt-version");
РабочееПространство = ПараметрыКоманды.Параметр("workspace-location");
ИмяБазовогоПроекта = ПараметрыКоманды.Параметр("base-project-name");
АвтосортировкаПроекта = ПараметрыКоманды.Параметр("sort-project", Ложь);

Если Не ПустаяСтрока(ИмяРасширения)
И Не ПустаяСтрока(ИмяБазовогоПроекта)
Expand Down Expand Up @@ -182,12 +188,23 @@

Лог.Отладка("Каталог проекта EDT: %1", КаталогПроекта);
ФС.ОбеспечитьПустойКаталог(КаталогПроекта);

КаталогSettingsОткуда = ОбъединитьПути(КаталогРабочейКопии, ".settings");
КаталогSettingsКуда = ОбъединитьПути(КаталогПроекта, ".settings");
ФС.КопироватьСодержимоеКаталога(КаталогSettingsОткуда, КаталогSettingsКуда);

Команда = КомандаКонвертации(КаталогВыгрузки, ВременноеРабочееПространство, КаталогПроекта);

КодВозврата = Команда.Исполнить();

Лог.Отладка("Код возврата команды конвертации: %1", КодВозврата);

Если Использовать1cedtcli И АвтосортировкаПроекта Тогда
Лог.Отладка("Запускаем сортировку объектов");
Команда = КомандаСортировкиОбъектов(КаталогПроекта, ВременноеРабочееПространство);
КодВозврата = Команда.Исполнить();
Лог.Отладка("Код возврата команды сортировки: %1", КодВозврата);
КонецЕсли;

ТекущийФайлВерсийМетаданных = Новый Файл(ОбъединитьПути(КаталогВыгрузки, ИмяФайлаДампаКонфигурации));
Если ТекущийФайлВерсийМетаданных.Существует() Тогда
Expand All @@ -206,6 +223,14 @@

КонецПроцедуры

Процедура ПриОчисткеКаталогаРабочейКопии(КаталогРабочейКопии, // BSLLS:UnusedParameters-off
СоответствиеИменФайловДляПропуска, // BSLLS:UnusedParameters-off
СтандартнаяОбработка) Экспорт

СоответствиеИменФайловДляПропуска.Вставить(".settings", Истина);

КонецПроцедуры

#КонецОбласти

#Область Вспомогательные_процедуры_и_функции
Expand Down Expand Up @@ -300,6 +325,35 @@

КонецПроцедуры

// Функция - получает команду сортировки объектов проекта утилиты 1cedtcli
//
// Параметры:
// КаталогПроекта - Строка - Путь к каталогу проекта, объекты которого нужно сортировать.
// ВременноеРабочееПространство - Строка - Временная рабочая область проекта.
//
// Возвращаемое значение:
// Команда - команда сортировки sort-project утилиты 1cedtcli
//
Функция КомандаСортировкиОбъектов(КаталогПроекта, ВременноеРабочееПространство)

Команда = Новый Команда;
Команда.УстановитьКоманду(ОпределитьИсполняемыйФайл());

Команда.ДобавитьПараметр("-data");
Команда.ДобавитьПараметр(ОбернутьВКавычки(ВременноеРабочееПространство));
Команда.ДобавитьПараметр("-command sort-project");

Команда.ДобавитьПараметр(СтрШаблон("--project-list ""%1""", КаталогПроекта));

Команда.ДобавитьЛогВыводаКоманды(ИмяЛога());
Команда.УстановитьИсполнениеЧерезКомандыСистемы(Истина);
Команда.ПоказыватьВыводНемедленно(Ложь);
Команда.УстановитьПравильныйКодВозврата(0);

Возврат Команда;

КонецФункции

// Функция - выполняет поиск утилиты ring и возвращает полный путь к утилите
//
// Возвращаемое значение:
Expand Down
Loading