diff --git a/ci/os/internal/Modules/МетодыCLI.os b/ci/os/internal/Modules/МетодыCLI.os index b3d587c182..1c1c09b2c8 100644 --- a/ci/os/internal/Modules/МетодыCLI.os +++ b/ci/os/internal/Modules/МетодыCLI.os @@ -130,6 +130,67 @@ | Возврат ОбщаяТаблица; | |КонецФункции + | + |Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода, Знач Модуль, Знач Метод) Экспорт + | + | ТекстВыполнения = """"; + | СтрокаВызова = Модуль + ""."" + Метод + ""(""; + | Счетчик = 0; + | + | Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл + | + | ИмяПараметра = НеобходимыйПараметр.Параметр; + | ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра); + | + | Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда + | + | ИмяПараметра = ""Параметр"" + СтрЗаменить(ИмяПараметра, ""--"", ""_""); + | + | ТекстВыполнения = ТекстВыполнения + | + Символы.ПС + | + ИмяПараметра + | + "" = """""" + | + СтрЗаменить(ЗначениеПараметра, """""""", """""""""""") + | + """""";""; + | + | Если ТребуетсяОбработкаУправляющихПоследовательностей(ИмяПараметра, ЗначениеПараметра) Тогда + | + | ТекстВыполнения = ТекстВыполнения + "" + | |OPI_Инструменты.ЗаменитьУправляющиеПоследовательности("" + ИмяПараметра + ""); + | |""; + | + | КонецЕсли; + | + | СтрокаВызова = СтрокаВызова + ИмяПараметра + "", ""; + | Счетчик = Счетчик + 1; + | + | Иначе + | СтрокаВызова = СтрокаВызова + "" , ""; + | КонецЕсли; + | + | КонецЦикла; + | + | ЛишниеСимволы = 2; + | СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - ЛишниеСимволы); + | СтрокаВызова = СтрокаВызова + "");""; + | СтрокаВызова = ""Ответ = "" + СтрокаВызова; + | ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова; + | + | Возврат ТекстВыполнения; + | + |КонецФункции + | + |Функция ТребуетсяОбработкаУправляющихПоследовательностей(Знач ИмяПараметра, Знач ЗначениеПараметра) + | + | ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра); + | ФайлПараметра = Новый Файл(ЗначениеПараметраСокр); + | + | Возврат Не СтрНачинаетсяС(ЗначениеПараметраСокр, ""{"") + | И Не СтрНачинаетсяС(ЗначениеПараметраСокр, ""["") + | И Не ФайлПараметра.Существует() + | И Не ИмяПараметра = ""Параметр_out""; + | + |КонецФункции |"); КонецПроцедуры