Viper 2013 и ранее
Модераторы: m0p3e, edward_K, Модераторы
Re: Viper
Хорошо было бы такой функционал при отладке получить:
Окно "Вычислить и модифицировать":
ввожу к примеру GetFirst KatMC where (( MyMcNrec == KatMc.Nrec))
и хоп! : моя текущая позиция указателя на таблицу передвигается.
А параллельно в окне "Выражения и переменные" я смотрю на эту позицию через katmc.buffer
т.е. получилось бы нечто вроде интерактивного передвигателя текущих позиций на таблицы.
В идеале хотелось бы : окно которое позволяло бы вводить произвольные валидные инструкции на Vip (многострочное окно с возможностью копипасты) и сразу же бы введенный код интерпретировало и исполняло относительно текущей отлаживаемой сессии.
Это было бы "бестофзебест!"
Окно "Вычислить и модифицировать":
ввожу к примеру GetFirst KatMC where (( MyMcNrec == KatMc.Nrec))
и хоп! : моя текущая позиция указателя на таблицу передвигается.
А параллельно в окне "Выражения и переменные" я смотрю на эту позицию через katmc.buffer
т.е. получилось бы нечто вроде интерактивного передвигателя текущих позиций на таблицы.
В идеале хотелось бы : окно которое позволяло бы вводить произвольные валидные инструкции на Vip (многострочное окно с возможностью копипасты) и сразу же бы введенный код интерпретировало и исполняло относительно текущей отлаживаемой сессии.
Это было бы "бестофзебест!"
Re: Viper
Предложение:
Окно "Выражения и переменные"
есть колонки "Выражение" , "Значение" , "Тип"
неплохо было бы сделать фильтр по содержимому колонки:
например я ввожу над колонкой "Тип" в поле фильтрации строку "String"
при этом в окне у меня висит просмотр katsopr.buffer к примеру.
И при вводе "String" - происходит фильтрация содержимого окна по цепочке символов и мне показываются
только те строки которые попадают под этот фильтр. В частности для таблицы - это только поля имеющие тип "String"
а то сильно много там информации выводится - пока нужную найдешь , глаз замыливается...
Окно "Выражения и переменные"
есть колонки "Выражение" , "Значение" , "Тип"
неплохо было бы сделать фильтр по содержимому колонки:
например я ввожу над колонкой "Тип" в поле фильтрации строку "String"
при этом в окне у меня висит просмотр katsopr.buffer к примеру.
И при вводе "String" - происходит фильтрация содержимого окна по цепочке символов и мне показываются
только те строки которые попадают под этот фильтр. В частности для таблицы - это только поля имеющие тип "String"
а то сильно много там информации выводится - пока нужную найдешь , глаз замыливается...
Re: Viper
Саппорт тут не причем.
Очень трудно бывает иногда понять почему какая то запись не находится по алгоритму
описанному в Вип коде при текущих ограничениях на таблицу, значениях переменных участвующих в запросе и прочем.
Т.е не просто "хочу исполнять произвольные селекты в момент отладки" а выполнять перемещения по таблицам в контексте выполняемого кода и с его текущими ограничениями значениями переменных и прочим, что бы понять что не так, и как надо изменить код.
P.S. Все высказываемие пожелания - чисто ИМХО и разработчики конечно же могут их отвергнуть если им это кажется абсурдным, не нужным и так далее.
Очень трудно бывает иногда понять почему какая то запись не находится по алгоритму
описанному в Вип коде при текущих ограничениях на таблицу, значениях переменных участвующих в запросе и прочем.
Т.е не просто "хочу исполнять произвольные селекты в момент отладки" а выполнять перемещения по таблицам в контексте выполняемого кода и с его текущими ограничениями значениями переменных и прочим, что бы понять что не так, и как надо изменить код.
P.S. Все высказываемие пожелания - чисто ИМХО и разработчики конечно же могут их отвергнуть если им это кажется абсурдным, не нужным и так далее.
Re: Viper
Могу предложить следующий метод:igor писал(а):Хорошо было бы такой функционал при отладке получить:
Окно "Вычислить и модифицировать":
ввожу к примеру GetFirst KatMC where (( MyMcNrec == KatMc.Nrec))
и хоп! : моя текущая позиция указателя на таблицу передвигается.
А параллельно в окне "Выражения и переменные" я смотрю на эту позицию через katmc.buffer
т.е. получилось бы нечто вроде интерактивного передвигателя текущих позиций на таблицы.
В идеале хотелось бы : окно которое позволяло бы вводить произвольные валидные инструкции на Vip (многострочное окно с возможностью копипасты) и сразу же бы введенный код интерпретировало и исполняло относительно текущей отлаживаемой сессии.
Это было бы "бестофзебест!"
1) В своей программе на VIP пишешь функцию типа
Код: Выделить всё
function dbgGoToMc(MyMcNrec :comp) : word;
{
result := GetFirst KatMC where (( MyMcNrec == KatMc.Nrec));
}
Может сработает.
Re: Viper
На самом деле, единый механизм фильтрации и поиска нужен во всех списочных окошках. Это пожелание уже зафиксировано в ПИР, ожидает решения в отдаленной перспективе.igor писал(а):Предложение:
Окно "Выражения и переменные"
есть колонки "Выражение" , "Значение" , "Тип"
неплохо было бы сделать фильтр по содержимому колонки:
например я ввожу над колонкой "Тип" в поле фильтрации строку "String"
при этом в окне у меня висит просмотр katsopr.buffer к примеру.
И при вводе "String" - происходит фильтрация содержимого окна по цепочке символов и мне показываются
только те строки которые попадают под этот фильтр. В частности для таблицы - это только поля имеющие тип "String"
а то сильно много там информации выводится - пока нужную найдешь , глаз замыливается...
Кстати повторяемость вопросов на форуме учитываем и иногда передвигаем планы.
Re: Viper
Да. вероятно сработает, но добиться то я хотел не этого. Получается что я заранее должен знать все возможные комбинацииLaaLaa писал(а):[quote="igor"
Могу предложить следующий метод:
и записать функции которые мне вообщем то не особо нужны по логике программы.
А если селект сложнее? Если там 4 или 5 переменных участвует?
неееет, это не наш метод. Хотелось бы все же окно в котором можно вводить вообще любые команды и чтобы они могли интерпретироваться. Но думаю что это неосуществимо , т.к. Вип это вроде как и не компилятор (машинный код не создает), но и не совсем интерпретатор в чистом виде, т.е. не может на лету свои команды выполнять как классические интерпретаторы делают...ладно, не отвлекайтесь, делайте Ctrl-Space скорее, а то приходится переключаться для редактирования в другие редакторы.
Пожелание: реализовать в отладчике StepOut шаг, т.е. я случайно в отладке по [F7] забрел в функцию или процедуру в режиме отладки - хочу из нее выйти и перейти на след. инструкцию после вызова этой функции. сейчас приходится гнать курсор к этой инструкции и нажимать F4 а хотелось бы не гонять курсора туда-сюда, а просто нажать нечто и продолжить без пошагового исполнения функции.
Еще хочется (уже говорили?) быстрый переход на тело функции или процедуры по горячей клавише. По типу инклуд - файлов и Ctrl-Enter'а на их имени...
Re: Viper
BUG:
В сессии отладки открыты 2 файла предположим.
В первом файле трассирую по F7 - надоедает, переключаюсь во второй файл куда должен прийти отладчик и нажимаю на некоей строке во втором файле F4(выполнить до курсора) - ожидая что исполнение в первом файле продолжится без трассировки и дойдя до позиции во втором файле - остановится как и положено.
Отнюдь, ниче не происходит. Пока не додолбишь в 1 файле до конца по F7 - дальше трассировка не идет.
Похоже что все эти команды работают в рамках одного файла.
В сессии отладки открыты 2 файла предположим.
В первом файле трассирую по F7 - надоедает, переключаюсь во второй файл куда должен прийти отладчик и нажимаю на некоей строке во втором файле F4(выполнить до курсора) - ожидая что исполнение в первом файле продолжится без трассировки и дойдя до позиции во втором файле - остановится как и положено.
Отнюдь, ниче не происходит. Пока не додолбишь в 1 файле до конца по F7 - дальше трассировка не идет.
Похоже что все эти команды работают в рамках одного файла.
Re: Viper
Идея ясна, возьмем просто на заметку пока, без обещания что либо сделать. Может в будущем вспомним.igor писал(а): Да. вероятно сработает, но добиться то я хотел не этого. Получается что я заранее должен знать все возможные комбинации
и записать функции которые мне вообщем то не особо нужны по логике программы.
А если селект сложнее? Если там 4 или 5 переменных участвует?
неееет, это не наш метод. Хотелось бы все же окно в котором можно вводить вообще любые команды и чтобы они могли интерпретироваться. Но думаю что это неосуществимо , т.к. Вип это вроде как и не компилятор (машинный код не создает), но и не совсем интерпретатор в чистом виде, т.е. не может на лету свои команды выполнять как классические интерпретаторы делают.
Есть другой способ. Я обычно им пользуюсь не только на VIP но и в других компиляторах. Чтобы понять откуда программа забрела в ту или иную функцию воспользуйтесь окном стека. В окне стека можно кликать на вышестоящие функции, они будут открываться в редакторе. Можно понять на каком уровне вложенности находишься и откуда туда вошел. Затем по F2 можно поставить точку останова в родительской функции, и F9 выполнить до нее.igor писал(а): Пожелание: реализовать в отладчике StepOut шаг, т.е. я случайно в отладке по [F7] забрел в функцию или процедуру в режиме отладки - хочу из нее выйти и перейти на след. инструкцию после вызова этой функции. сейчас приходится гнать курсор к этой инструкции и нажимать F4 а хотелось бы не гонять курсора туда-сюда, а просто нажать нечто и продолжить без пошагового исполнения функции.
Re: Viper
Спасибо за отзыв, записал в ПИР 102.113506. Перетестируем функцию F4, если что поправим.igor писал(а):BUG:
В сессии отладки открыты 2 файла предположим.
В первом файле трассирую по F7 - надоедает, переключаюсь во второй файл куда должен прийти отладчик и нажимаю на некоей строке во втором файле F4(выполнить до курсора) - ожидая что исполнение в первом файле продолжится без трассировки и дойдя до позиции во втором файле - остановится как и положено.
Отнюдь, ниче не происходит. Пока не додолбишь в 1 файле до конца по F7 - дальше трассировка не идет.
Похоже что все эти команды работают в рамках одного файла.
Re: Viper
Баг?
http://savepic.net/2408239.htm
в коде
Иерархия должна быть другой?
http://savepic.net/2408239.htm
в коде
Код: Выделить всё
VipInterface UserReport_SetAnalyticDocs Implements IUserReport;
...
interface UserReport_SetAnalyticDocs_QS;
...
interface UserReport_SetAnalyticDocs;
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Re: Viper
Раздражает следующее:
есть несколько VPR проектов разнесенных по разным каталогам.
Хочу переключиться между проектами - закрываю редактор, перехожу в каталог с другим проектом и запускаю по клику файл .vpr
При попытке открытия нового файла - мне каталог выбора показывает не мой текущий каталог проекта где я нахожусь а каталог где я последний раз открывал файл. Можно ли где то поставить галочку : "[x] Текущий каталог окна выбора файлов - каталог где находится VPR файл. "
?
есть несколько VPR проектов разнесенных по разным каталогам.
Хочу переключиться между проектами - закрываю редактор, перехожу в каталог с другим проектом и запускаю по клику файл .vpr
При попытке открытия нового файла - мне каталог выбора показывает не мой текущий каталог проекта где я нахожусь а каталог где я последний раз открывал файл. Можно ли где то поставить галочку : "[x] Текущий каталог окна выбора файлов - каталог где находится VPR файл. "
?
-
- Постоянный обитатель
- Сообщения: 123
- Зарегистрирован: 01 фев 2007, 12:45
- Откуда: Магнитогорск
- Контактная информация:
Re: Viper
Пользуюсь ноябрьским випером. В какой-то момент перестал работать разбор структуры файлов вип. Сначала окно структуры "зависло" и отображало информацию по открытому но неактивному файлу, а после перезапуска, собственно, и перестало работать. Сейчас удаляю випер и чищу реестр, надеюсь, заработает.
Испытываю траблы с даблами
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
ВИП — Велосипедо-Изобретательская Парадигма
САППОРТ — Сборище Абсолютно Пустых Посредственно Образованных Ржущих Троллей
Re: Viper
Все свои настройки Viper хранит не в реестре, а на диске в папке %appdata%\viper.Semi-bit писал(а):Пользуюсь ноябрьским випером. В какой-то момент перестал работать разбор структуры файлов вип. Сначала окно структуры "зависло" и отображало информацию по открытому но неактивному файлу, а после перезапуска, собственно, и перестало работать. Сейчас удаляю випер и чищу реестр, надеюсь, заработает.