Анимация
JavaScript
|
Главная Библионтека предыдущем случае, может содержать номер рабочей области, в которой произошла ошибка. Значение NULL. Если триггер не смог выполниться (ошибка 1539), будет содержать одно из следующих числовых значений: 1 - триггер вставки потерпел неудачу; 2 - триггер модернизации потерпел неудачу; 3 - триггер удаления потерпел неудачу. Значение NULL Значение NULL. В следующем списке описано содержимое каждого элемента создаваемого массива, когда происходят ошибки OLE с номерами 1427 или 1429: Номер элемента Описание Числовой. Содержит код ошибки 1427 или 1429. Символьный. Текст FoxPro сообщения об ошибке. Символьный. Текст OLE сообщения об ошибке. Символьный. Имя прикладной программы (например, Microsoft Excel). Значение NULL или Символьный. В последнем случае содержит имя справочного файла, где может быть найдена более подробная информация относительно ошибки. Значение NULL или Символьный. В последнем случае содержит идентификатор для соответствующей темы оперативной подсказки, если информация доступна из приложения. Числовой. Номер ошибки OLE. Ниже приводится описание содержимого каждого элемента массива, когда происходит ошибка ODBC с номером 1526 (ошибка соединения ODBC). Массив может содержать две или больше строки - по одной для каждой ошибки ODBC: Номер элемента 1 2 3 4 5 6 7 Описание Числовой. Содержит номер ошибки 1526. Символьный. Текст сообщения об ошибке. Символьный. Текст ODBC сообщения об ошибке. Символьный. Текущее состояние ODBC SQL. Числовой. Номер ошибки ODBC источника данных. Числовой. Указатель соединения ODBC. Значение NULL. ERROR() Возвpащает номеp ошибки, котоpая пpоизошла пpи выполнении пpогpаммы, если действует команда ON ERROR. LINENO([1]) Сброс Шаг с обходом процедуры Панель 1 -I-I-I-I-I- Шаг с заходом в процедуру Установка точки останова Рис. 12.4. Наиболее часто используемые функции отладки в Access Таблица 12.1. Инструментальные функции отладки в Access Кнопка Выполняемое Соответствующая отладки действие горячая клавиша Возвpащает номеp стpоки пpогpаммы относительно первой строки главной программы, в котоpой пpоизошла ошибка. Если вы указываете параметр 1, то номер строки вычисляется относительно первой строки текущей программы или процедуры. Счетчик строк в программе учитывает все строки, включая комментарии и пустые строки. Вы всегда можете задать приостановку выполнения программы, если откроете окно Debug на время выполнения программы и в его левой части запишете, например, LINENO(1) = 100. После этого не забудьте на разделительной линии окна Debug поставить точку останова. MESSAGE([1]) Возвpащает сообщение об ошибке, с помощью опции 1 можно вывести последнюю пpогpаммную стpоку, пpи выполнении котоpой пpоизошла ошибка. Для pаботы функции необходимо установить ON ERROR. PROGRAM([nevel]) Возвpащает название пpогpаммы, во вpемя pаботы котоpой пpоизошла ошибка. Численный аpгумент опpеделяет уpовень вложенности пpогpамм, чьи имена необходимо запомнить, если nLevel = 1, то возвpащается имя только пеpвой исполнявшейся пpогpаммы (главной), если аpгумент не указан, возвpащается имя текущей пpогpаммы. Работу описанных выше функций можно пpоиллюстpиpовать следующим пpостым пpимеpом: ON ERROR DO proc error WITH; ERROR(),MESSAGE(),MESSAGE(1),PROGRAM(),LINENO() RETURN PROCEDURE proc error LPARAMETER nError, cMess, cMess1, cProg, nLineno ? "Номер ошибки: " + LTRIM(STR(nError)) ? "Сообщение об ошибке: " + cMess ? "Текст строки, вызвавшей ошибку: " + cMess1 ? "Номер строки с ошибкой: " + LTRIM(STR(nLineno)) ? "Ошибка пpоизошла в пpогpамме: " + cProg RETURN Отладка программы в Access Четыре из наиболее часто используемых функций отладки доступны через панель инструментов Access. Их описание приведено в табл. 12.1. На рис. 12.4 представлена панель инструментов для выполнения отладки и приведено описание ее кнопок. Установка точки останова Шаг с заходом в процедуру Шаг без захода в процедуру Сброс Создает или уничтожает точку останова. Точка останова В окне просмотра кода при вызове другой процедуры вы видите ее код В окне просмотра кода при вызове другой процедуры вы не видите ее кода Прекращает работу процедуры Shift+8 Состояние прерывания приостанавливает работу программы и дает вам картину состояния на текущий момент исполнения программы. СУБД Access попадает в состояние прерывания, когда происходит одно из следующих событий: • Программа достигает строчки с точкой останова. • Исполняемый код достигает строчки с выражением Stop. • Выражение в строке кода генерирует неперехватываемую ошибку. Как только Access встречается с одним из вышеприведенных условий, исполняемый код приостанавливается. Появляется окно отладки. При этом вы можете воспользоваться панелью инструментов Access, но не можете переключиться в другие части вашего приложения. В состоянии прерывания значения переменных и свойств сохраняются, таким образом, вы можете: • просматривать значения переменных, свойств и выражений; • изменять значения переменных и свойств. В окне отладки вы можете просматривать значения выражений и переменных в процессе перемещения между выражениями в вашем коде. Помимо этого вы можете использовать окно отладки для изменения значений переменных и свойств, чтобы исследовать, как новые значения повлияют на работу вашего кода. Окно отладки выводит информацию, которая является результатом выполнения кода либо выражений, которые вы набираете непосредственно в окне. Например, при отладке или экспериментах с кодом у вас может появиться желание протестировать процедуру, получить значения выражений или присвоить новые значения переменным и свойствам. Все это можно сделать в окне отладки. При этом надо помнить о том, что видимость переменных, переназначенных в окне отладки, ограничена только текущей процедурой. Вывод данных в окне отладки можно легко осуществить с помощью символа вопросительного знака, который здесь вполне успешно заменяет метод Print (рис. 12.5). Вопросительный знак означает совершенно то же самое, что и Print, и может использоваться в любом контексте, в котором может использоваться метод Print. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 [ 133 ] 134 135 136 137 138 139 140 141 142 143 144 145 146 |