Мир объектов Excel 2000


Редактор VBScript и отладка


Инструментальная среда редактора, во многом, напоминает среду редактора VBA - похожие окна, похожая идеология. Взгляните, как выглядит эта среда в один из моментов работы:


увеличить изображение
Рис. 11.1.  Инструментальная среда редактора VBScript в процессе работы

Как видите, практически тот же вид, что при работе с редактором VBA . Те же многочисленные панели с командами меню, многие кнопки на которых совпадают по виду и по функциям. Знакомое окно Project Explorer, в котором теперь показаны файлы, содержащие страницы, открытые в редакторе. Заметьте, эти страницы могут принадлежать разным документам - разным Web-узлам.

В основном окне среды отображена сама страница, выбранная в окне Project Explorer. Заметьте, у окна имеется три вкладки - Design, Source, QuickView, позволяющие отобразить различные облики страницы. Открытая на рисунке вкладка Source отображает HTML-код страницы. Страница показана в тот момент, когда процесс отладки находится в режиме прерывания. Процесс вычислений при отладке был прерван, поскольку была достигнута точка прерывания. Замечу, что аппарат точек прерывания здесь даже более мощный, чем в редакторе VBA. В частности для показанной точки прерывания задано условие прерывания, позволяющее прервать вычисление в точке только в том случае, когда выполняется определенное условие.

Обратите внимание и на знакомое окно отладки - окно Immediate. В момент прерывания в этом окне я проводил некоторые вычисления - посмотрел, а затем изменил значение свойства одного из объектов, доступных в контексте прерывания. Мои действия отображены в этом окне.

Еще одна знакомая деталь среды - панель инструментов Toolbox, позволяющая в режиме проектирования добавлять элементы управления на страницу.

Но можно видеть и одно новое окно - HTML Outline, в котором отображаются элементы управления, имеющиеся на странице.

Этот беглый взгляд, надеюсь, дает первое представление о среде редактора VBScript. Если попытаться вкратце охарактеризовать возможности этого редактора, то они следующие:

  • При написании кода -
  • Подсказка при работе с объектами - раскрывающиеся списки свойств и методов объекта, появляющиеся в тот момент, когда поставлена точка.
  • Выделение цветом различных участков кода.
  • Вставка заготовок для тега script с учетом различий серверной и клиентской части кода.
  • Управление процессом вычислений по ходу отладки -
    • Пошаговое выполнение операторов с заходом в тело процедуры или без оного по нажатию клавиш F11 и F10.
    • Прерывание вычислений по достижении оператора, отмеченного курсором.
    • Прерывание вычислений по достижении очередной точки прерывания. Я уже говорил, что точки прерывания можно не только вставлять и удалять, но и связывать с ними условие прерывания.
    • Изменение порядка выполнения операторов.
    • Наблюдение за переменными и объектами по ходу отладки -
      • Об окне отладки Immediate я уже сказал. Кроме того, имеется возможность включить показ таких знакомых по VBA окон отладки - Locals, Watch, Call Stack.
      • Другие возможности инструментальной среды -
        • Окно Object Browser, вызываемое также как и VBA по нажатию клавиши F2 позволяет изучать устройство классов объектов, используемых в документе.
        • Появился ряд новых отладочных окон - Autos, Running Documents, Threads.
        • Появился и ряд других окон, отражающих специфику документа, как, например, показанное на рисунке окно HTML Outline.

        • Как видите, среда Редактора VBScript по многим своим потенциальным возможностям не уступает среде редактора VBA. К сожалению, при отладке серверного кода большая часть из перечисленных средств являются недоступными. Для выполнения серверного кода, то есть при отладке ASP-страниц необходим Web-сервер. Поэтому отладка интерактивных Web-документов, в которых без ASP-страниц не обойтись требует установки IIS или Personal WEB Server. Для узла на сервере должен быть создан виртуальный каталог и страницы этого узла должны вызываться в Internet Explorer с указанием адреса этого каталога.

          В примере, о котором я собираюсь рассказать, речь пойдет главным образом об ASP-страницах. Когда возникала ошибка в серверном коде, а без ошибок, естественно, не обошлось, то сообщение об ошибке выдается в Internet Explorer всегда с указанием номера строки, в которой произошла ошибка, а иногда и с указанием причины ошибки. В этом случае я, как правило, возвращался в среду редактора VBScript и использовал такое "мощное" средство отладки как команду "Go To", вызываемую из меню Edit. Открывающееся окно позволяет указать номер строки и перейти на строку, являющуюся причиной ошибки. Поскольку других подсказок в этой ситуации нет, то исправление ошибок в гораздо большей степени зависит от искусства и опыта программиста.

          Вот то минимально необходимое, что я считаю должным сказать, перед тем как перейти к рассмотрению примера.


          Содержание раздела