Начальный импорт: RunBsl — пакетное выполнение .bsl.
Внешняя обработка-обёртка для ENTERPRISE /Execute с передачей пути к BSL в /C. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
|
||||
// Обёртка: текст BSL передаётся с клиента, выполнение — на сервере ИБ.
|
||||
|
||||
Процедура ВыполнитьТекстBSL(ТекстКода, ПутьКФайлу = "") Экспорт
|
||||
|
||||
Если ПустаяСтрока(СокрЛП(ТекстКода)) Тогда
|
||||
Суффикс = ?(ЗначениеЗаполнено(ПутьКФайлу), ": " + ПутьКФайлу, "");
|
||||
ВызватьИсключение "BSL-файл пуст" + Суффикс;
|
||||
КонецЕсли;
|
||||
|
||||
Попытка
|
||||
Выполнить(ТекстКода);
|
||||
Исключение
|
||||
ТекстОшибки = "ОШИБКА выполнения BSL"
|
||||
+ ?(ЗначениеЗаполнено(ПутьКФайлу), " (" + ПутьКФайлу + ")", "")
|
||||
+ ": " + КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
|
||||
ОбщегоНазначения.СообщитьПользователю(ТекстОшибки);
|
||||
КонецПопытки;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Функция НормализоватьПутьЗапуска(ПутьКФайлу) Экспорт
|
||||
|
||||
Результат = СокрЛП(ПутьКФайлу);
|
||||
|
||||
Если СтрДлина(Результат) >= 2 И Лев(Результат, 1) = """" И Прав(Результат, 1) = """" Тогда
|
||||
Результат = Сред(Результат, 2, СтрДлина(Результат) - 2);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ПутьФайлаЗапускаПоУмолчанию() Экспорт
|
||||
Возврат "/Users/kma/projects/crm3-26/data_transfer/crm3-26/.run_bsl_path.txt";
|
||||
КонецФункции
|
||||
Reference in New Issue
Block a user