1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-11-23 22:05:15 +02:00

Автоформирование сокращенных версий опций CLI

This commit is contained in:
Anton Titovets
2025-11-04 15:12:13 +03:00
parent bf117f3a60
commit a05062764b
4 changed files with 40 additions and 11 deletions

View File

@@ -401,6 +401,7 @@
| ТаблицаСостава.Колонки.Добавить(""Метод"");
| ТаблицаСостава.Колонки.Добавить(""МетодПоиска"");
| ТаблицаСостава.Колонки.Добавить(""Параметр"");
| ТаблицаСостава.Колонки.Добавить(""ПараметрСокр"");
| ТаблицаСостава.Колонки.Добавить(""Описание"");
| ТаблицаСостава.Колонки.Добавить(""ОписаниеМетода"");
| ТаблицаСостава.Колонки.Добавить(""Область"");
@@ -408,6 +409,7 @@
ТаблицаОписанийПараметров = Новый ТаблицаЗначений;
ТаблицаОписанийПараметров.Колонки.Добавить("Имя");
ТаблицаОписанийПараметров.Колонки.Добавить("ИмяСокр");
ТаблицаОписанийПараметров.Колонки.Добавить("Типы");
ТаблицаОписанийПараметров.Колонки.Добавить("Описание");
ТаблицаОписанийПараметров.Колонки.Добавить("ЗначениеПоУмолчанию");
@@ -571,6 +573,8 @@
Процедура СформироватьТаблицуОписанийПараметров(Знач МассивПараметров, Знач Метод, Знач Модуль = "")
СписокСокращенийИмен = Новый СписокЗначений();
Разделитель = "-";
Для Каждого ПараметрМетода Из МассивПараметров Цикл
@@ -590,6 +594,7 @@
Имя1С = МассивЭлементовПараметра[0];
Имя = "--" + МассивЭлементовПараметра[3];
ИмяСокр = "-" + Лев(МассивЭлементовПараметра[3], 1);
Типы = МассивЭлементовПараметра[1];
Описание = ?(КоличествоЭлементов >= 5, МассивЭлементовПараметра[4], МассивЭлементовПараметра[2]);
@@ -602,7 +607,15 @@
НоваяСтрокаТаблицы.Типы = Типы;
НоваяСтрокаТаблицы.Описание = Описание;
Если СписокСокращенийИмен.НайтиПоЗначению(ИмяСокр) = Неопределено Тогда
СписокСокращенийИмен.Добавить(ИмяСокр);
НоваяСтрокаТаблицы.ИмяСокр = ИмяСокр;
КонецЕсли;
НоваяСтрокаТаблицы.ЗначениеПоУмолчанию = ПолучитьЗначениеПараметраПоУмолчанию(Имя1С, Метод);
КонецЦикла;
КонецПроцедуры
@@ -737,6 +750,7 @@
Процедура ЗаписатьСозданиеПараметраСостава(СтрокаПараметра, ИмяМетода, Область, ОписаниеМетода = "")
Имя = СтрокаПараметра["Имя"];
ИмяСокр = СтрокаПараметра["ИмяСокр"];
Описание = СтрокаПараметра["Описание"];
Значение = СтрокаПараметра["ЗначениеПоУмолчанию"];
Библиотека = СоответствиеМодулейКоманд.Получить(ТекущийМодуль);
@@ -748,13 +762,14 @@
ТекущийФайлСостава.ДобавитьСтроку(Символы.ПС);
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока = ТаблицаСостава.Добавить();");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Библиотека = """ + Библиотека + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Модуль = """ + ТекущийМодуль + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Метод = """ + ИмяМетода + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.МетодПоиска = """ + вРег(ИмяМетода) + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Параметр = """ + Имя + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Описание = """ + Описание + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Область = """ + Область + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Библиотека = """ + Библиотека + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Модуль = """ + ТекущийМодуль + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Метод = """ + ИмяМетода + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.МетодПоиска = """ + вРег(ИмяМетода) + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Параметр = """ + Имя + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.ПараметрСокр = """ + ИмяСокр + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Описание = """ + Описание + """;");
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.Область = """ + Область + """;");
Если ЗначениеЗаполнено(ОписаниеМетода) Тогда
ТекущийФайлСостава.ДобавитьСтроку(" НоваяСтрока.ОписаниеМетода = """ + ОписаниеМетода + """;");

View File

@@ -167,17 +167,22 @@
Процедура ДобавитьПараметрыКоманды(Парсер, Команда);
Параметр_ = "Параметр";
Поля = "Параметр,ПараметрСокр";
ТаблицаДляИспользования = ТаблицаПараметров.Скопировать(, Параметр_);
ТаблицаДляИспользования.Свернуть(Параметр_);
ТаблицаДляИспользования = ТаблицаПараметров.Скопировать(, Поля);
ТаблицаДляИспользования.Свернуть(Поля);
МассивПараметров = ТаблицаДляИспользования.ВыгрузитьКолонку(Параметр_);
МассивПараметров = ТаблицаДляИспользования.ВыгрузитьКолонку("Параметр");
МассивПараметровСокр = ТаблицаДляИспользования.ВыгрузитьКолонку("ПараметрСокр");
Для Каждого Параметр Из МассивПараметров Цикл
Парсер.ДобавитьИменованныйПараметрКоманды(Команда, Параметр);
КонецЦикла;
Для Каждого Параметр Из МассивПараметровСокр Цикл
Парсер.ДобавитьИменованныйПараметрКоманды(Команда, Параметр);
КонецЦикла;
КонецПроцедуры
Процедура ОбработатьВыводJSON(Вывод)

View File

@@ -152,7 +152,12 @@
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
ИмяПараметра = НеобходимыйПараметр.Параметр;
ИмяПараметраСокр = НеобходимыйПараметр.ПараметрСокр;
ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра);
ЗначениеПараметра = ?(ЗначениеПараметра = Неопределено
, ПереданныеПараметры.Получить(ИмяПараметраСокр)
, ЗначениеПараметра);
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда

View File

@@ -210,6 +210,10 @@
Для Каждого ПараметрМетода Из ТаблицаПараметров Цикл
Если ЗначениеЗаполнено(ПараметрМетода["ПараметрСокр"]) Тогда
ПараметрМетода[Параметр_] = ПараметрМетода[Параметр_] + ", " + ПараметрМетода["ПараметрСокр"];
КонецЕсли;
Пока Не СтрДлина(ПараметрМетода[Параметр_]) = МаксимальнаяДлина Цикл
ПараметрМетода[Параметр_] = ПараметрМетода[Параметр_] + " ";
КонецЦикла;