...

Использование Source IDE для отладки сценариев

Тема в разделе "Примеры решений и дополнительных модулей", создана пользователем sobolev, 9 фев 2022.

  1. sobolev

    sobolev Техническая поддержка

    DevTools (Инструменты разработчика) и Панель Source браузера Chrome позволяют проводить отладку выполняемых сценариев, в том числе и в системе ELMA365. Запустить данный инструмент не сложно:

    1) Необходимо в коде сценария, который мы будем отлаживать добавить служебную команду debugger;
    Данная команда будет началом отладки.

    [​IMG]

    2) Сценарий сохраняется и публикуется.

    3) Теперь перед запуском сценария (кнопка, открытие формы и т.д.) необходимо открыть “Инструменты разработчика” на клавишу F12

    [​IMG]

    4) Во время запуска сценария сработает DevTools и автоматически поместит нас в вкладку Source и установит курсор выполнения на команду debugger нашего сценария.

    [​IMG]

    Source IDE предоставляет широкий спектр возможностей по пошаговой отладке и контролю переменных. Более подробно - https://developer.chrome.com/docs/devtools/javascript/sources/


    Например, при пошаговой отладке видно, что изначально пустые переменные после выполнения каждой строки присваивает undefined переменным.

    [​IMG]
    Последнее редактирование: 9 фев 2022
  2. okhlopkov_nm

    okhlopkov_nm Участник

    Так можно отлаживать только клиентский сценарий? Можно ли как то отладить серверный?
  3. sobolev

    sobolev Техническая поддержка

    Добрый день!

    Да, использование debugger доступно только в клиентских сценариях. Серверная функция выполняется в бэкэнде системы ELMA365 (сервисом Worker). Отладку серверных сценариев можно производить через контекстные переменные. Например: объявив текстовую переменную и после выполнения серверных функций записывать необходимые информационные сообщения в неё.

    Также, для отладки клиентских сценариев можно использовать консоль браузера:
    Пример использования
    declare const console:any;

    async function onInit () {
    console.log("Функция onInit запущена");
    var A=5;
    console.log("Переменной A присвоено значение =" + A);
    }

    Пояснение к использованию
    Необходимо объявить глобальную константу declare const console:any; , после чего сообщения в консоль браузера можно писать в формате console.log(“Текст сообщения”);. Пример работы отображен в 2022-12-23_15-08.png

    Вложения:

    Последнее редактирование: 20 апр 2023