Каталог решений - Отладка кода в режиме отладки без перезагрузки клиента

Отладка кода в режиме отладки без перезагрузки клиента

Отладка кода в режиме отладки без перезагрузки клиента

В наличии

Позволяет многократно выполнять отлаживаемый код непосредственно в режиме отладчика не перегружая клиента

Категория:

Описание

Иногда достаточно изменить 1-2 строки кода.Но для проверки всегда нужно перегрузить клиента и выполнить код заново. Можно конечно воспользоваться какой-нибудь консолью кода,выложенной на сайте, и отлаживать код в ней. Но для получения конечного результата нужны переменные исходного модуля. Есть еще замечательная функция Ду (на Мисте автор Гений 1С) ,куда можно передать переменные. Но код там нужно писать от руки , что непросто для большого куска. А если использовать буфер обмена Windows? То получится функция ДуБуфер, где код берем из буфера, описываем и присваиваем ему переменные и на выходе — результат выполнения измененного кода. Иными словами порядок работы таков

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

2) изменили кода

3) скопировали код в буфер

4) в строке описали через параметры функции все необходимые входящие переменные, которые используются в отлаживаемом коде но назначаются не в нем (пример в функции)

5) так же в строке описали через параметры функции все исходящие переменные, результат которых мы хотим увидеть

6) вызвали функцию ДуБуфер — и увидели на выходе результат выполнения изменного кода

7) если результат не устраивает- повторили пункты 2,3,4,5,6

Разукрашка кода //sale.itcity.ru/public/19856/

 

//вызов на картинке

// ДуБуфер(,»п0=вых;»,»инит=п1;»,»»,инит)[0]

//на рисунке «пример вызова для части кода» пример вызова с несколькими параметрами
//модульрпчв.ВО().ДуБуфер(,»п0=вых;п1=сч;»,»инит=п2;выборка=п3;»,»»,»»,инит,выборка)[0]

 

   
   Функция ДУбуфер(ВернутьМассив=неопределено, СписокПараметрыИсходящие,СписокПараметрыВходящие=«»,П0=Неопределено, П1=Неопределено,  П2=Неопределено, П3=Неопределено, П4=Неопределено,П5=Неопределено)  Экспорт

    Код=GetClip();
   
мас= Новый Массив(6);

    Если найти(код,«дубуфер»)<>0 Тогда мас[0]=«зацикленная ссылка в коде»; возврат мас; КонецЕсли;
   
исходныйКод=Код;
   
исполняемыйКод=СписокПараметрыВходящие+символы.ПС+Код+символы.ПС+СписокПараметрыИсходящие;
    Попытка
        выполнить
исполняемыйКод;
    Исключение
       
оО=описаниеОшибки();
       
мас[0]=оО+символы.пс+исполняемыйКод; возврат мас;
    КонецПопытки;

    Если П0<>Неопределено Тогда мас[0]=п0; КонецЕсли;
    Если
П1<>Неопределено Тогда мас[1]=п1; КонецЕсли;
    Если
П2<>Неопределено Тогда мас[2]=п2; КонецЕсли;
    Если
П3<>Неопределено Тогда мас[3]=п3; КонецЕсли;
    Если
П4<>Неопределено Тогда мас[4]=п4; КонецЕсли;
    Если
П5<>Неопределено Тогда мас[5]=п5; КонецЕсли;
    Если
ВернутьМассив<>неопределено Тогда ВернутьМассив=мас; КонецЕсли;
    Возврат
мас;
КонецФункции
Функция  
GetClip() Экспорт
   
strTXT=«»;
   
objHTM=Новый COMОбъект(«htmlfile»);
   
strTXT=строка(objHTM.ParentWindow.ClipboardData.GetData(«text»));
    возврат 
strTXT
КонецФункции

 

has been added to your cart:
Оформление заказа