@gurkin4 Это нужно в яваскрипт выполнить
Получить значение из "Описание задания"
-
@AncleBens said in Получить значение из "Описание задания":
Всем привет! НА форуме есть скрипт, который в лог при работе пишет ид каждого действия. Можно ли к нему прикрутить, чтобы рядом с ид он писал и "Описание задания"?
_sa = function(id) { log(id) ScriptWorker.SetCurrentAction(id) }Нет, строка в которой находится описание закомментирована в js коде

Чисто технически конечно можно создать функцию, которая бы читала файл исходника и по id действия бы доставала комментарий, но во первых: нахрена, а главное зачем? А во вторых, такая конструкция не будет работать в скомпилированном скрипте с защитой
-
@AncleBens said in Получить значение из "Описание задания":
@Fox спасибо!
Походу я вам соврал, комментарии пишутся не в закомментированной строке, а первым аргументом функции section_start(), но если попытаться её переопределить, то скрипт не откроется
-
@AncleBens said in Получить значение из "Описание задания":
@Fox Ее можно получить и просто конвертнуть в код в этом, в другую переменную и вывести в лог?
Перечитайте ещё раз моё сообщение выше
-
@AncleBens said in Получить значение из "Описание задания":
@Fox Подскажите, пожалуйста, как в этот код вывести этот первый аргумент... как его скажем в переменную засунуть?
_sa = function(id) { log(id) ScriptWorker.SetCurrentAction(id) }Ни как. Переопределять надо не функцию _sa(), а функцию section_start(), но её переопределение не работает.
-
Рабочий вариант можно сделать как я описал первым сообщением, через прочтение файла проекта, однако
за стабильность работы этого способа я не ручаюсь

_sa = function (id) { var regex = new RegExp('section_start\\("\\\\u007b\\\\u0022n\\\\u0022:\\\\u0022(.*?)\\\\u0022\\\\u007d", ' + id + '\\)'); var result = [[FILE_CONTENT]].match(regex); if (result) { log(result[1]); } ScriptWorker.SetCurrentAction(id) }Тестовый скрипт: 2582.xml
