|
|
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
что выполняется после ошибки, следующая строчка? а если несколько ошибок в процедуре? Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 15:22 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
1. Да. 2. Все равно в каждый момент времени обрабатывается одна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 15:25 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
ты меня порадывал... Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 15:30 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
причем, если ошибка в операторе if, то честно перейдет внутрь условия, т.е. выполниться блок, который сразу после then и не выполниться, который после else ну это так - отступление :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 15:31 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
ни хера себе отступленьеце... интересное св-во буду иметь ввиду Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 15:35 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
А у меня сопутствующий вопрос. Решил отдельный топик не заводить. Я до сих пор пользуюсь по старинке Err и Error вместо Err.Number и Err.Description. Наверно, пора переучиваться. Но если переучусь - что я получу? Например, вижу коллекцию Errors. Думал, что в ней можно увидеть несколько последних ошибок, - а вот фиг. Err возникает, а Errors.Count все равно = 0. Чего я не понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:30 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2ВС а у какого объекта ты Errors.Count считаешь ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:37 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Ни у какого. Просто пишу: Errors.Count ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:45 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Ни у какого. Просто пишу:Errors.Count Это ты зря :) На самом деле это выглядит как DBEngine.Errors.Count ну а далее сам разберешся :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:50 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Саныч, в Аксе ХР написал слово Errors и нажал F1 он мне справку по коллекции Errors вывел, но только для Connection (без всяких там его предварительных выборов, типа: "Что вы имели виду?") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:50 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
DBEngine.Errors.Count тоже выдает 0. Connection'ами я не пользуюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 16:59 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Does anybody know? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2004, 23:51 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Как справедливо заметил Викторт - Errors принадлежит обьекту DBEngine авторErr возникает, а Errors.Count все равно = 0. Чего я не понимаю? Xотелось бы полюбопытствовать в какой момент та проверяешь значение Errors.Count ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:18 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
В момент, когда произошла ошибка и в Err что-то есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:20 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Саныч, поскольку я уже забыл как Выглядит DAO и с чем его едят, могу высказать только предположения. 1) Между Err и Errors нет никакой связи так как они принадлежат разным обьектам (VBA и DBEngine соответственно). 2) Любая команда Resume во всех ее разновидностях автоматически сбрасывает Err.Number и Err.Description.Возможно, что при этом также сбоасывается и Errors. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:32 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Я-то проверял до Resume. Что же получается - коллекцией Errors нельзя пользоваться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:33 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Можно. Но в нужном месте , в нужное время и нужным людям :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:37 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
:^) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:37 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
errors не сбрасывается на Resume ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:55 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Дык - у меня проблема не сбросить, а получить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 00:57 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
А чью ошибку - самой VBA или Jet? Errors- это ошибки Jet ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 01:04 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Понял. Спасибо. Я просто не то не там ищу. :^) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 01:07 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Гетц Обработка ошибок доступа к данным Хотя объект VBA Err дает достаточно информации о большинстве ошибок времени выполнения, его возможности ограничены: он сообщает только об одной последней произошедшей, ошибке. Однако при работе с данными посредством объектов DAO или ADO этого недостаточно: к ошибке может привести целый комплекс условий, и самих ошибок в результате может возникнуть несколько Например, если вы с помощью DAO направляете запрос базе данных SQL Server и в ходе выполнения этого запроса происходит ошибка, VBA получает информацию об ошибке и от SQL Server, и от DAO. Вот поэтому и в DAO, и в ADO предусмотрены способы получения более полных сведений о ситуациях, приведших к ошибкам. Использование семейства Errors из библиотеки DAO Всякий раз, когда ядро базы данных Jet обрабатывает данные, оно может генерировать ошибки времени выполнения. Поскольку Jet может выдавать сообщение сразу о нескольких ошибках времени выполнения, произошедших в результате одной операции вашей программы (особенно при доступе к данным ODBC), оно предоставляет вам не один объект Error, а целое семейство. Обычно, программист озабочен только тем, чтобы обнаружить сам факт ошибки и сообщить об этом конечному пользователю. Если же вам понадобится подробная информация о изошедшем, семейство Errors к вашим услугам. Это семейство входит в состав объекта DBEngine. Обрабатывая ошибку ли процедуре, в которой она произошла, либо в процедуре обработки события Error можно просмотреть семейство Errors и точно определить, что случилось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 01:22 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Понятно. А я пробовал с делением на 0. Поскольку это ошибка VBA, то и в Errors она не попала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 01:29 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
уря! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 09:08 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
А ошибки VBA в виде коллекции никак нельзя увидеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:09 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Вроде нет :( А зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:10 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Затем же, зачем вообще существует коллекция Errors. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:18 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
авторА ошибки VBA в виде коллекции никак нельзя увидеть? Самому организовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:23 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
И то правда... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:25 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Саныч начало, видимо, здесь авторЯ до сих пор пользуюсь по старинке Err и Error вместо Err.Number и Err.Description. Наверно, пора переучиваться. Но если переучусь - что я получу? Саныч, а что ты надеешся|хотел бы от этого вообще получить, и почему коллекция так привлекла внимание? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:38 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Саныч, если при операциях с данными (где и есть коллекции ошибок) возможно появлениея после выполнения 1-го оператора нескольких ошибок, то как в такое возможно в VBA ? или типа x=1/0+2/0 - должно сгенерить 2 ошибки деления на ноль? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:47 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Victosha: Ну, если звезды зажигают... Если есть новые возможности, то от них должна быть какая-то польза? 2 Senin Viktor: Допустим, так: On Error Resume Next, а потом проверяем все ошибки списком. Могу привести пример программы, где это было бы очень удобно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 14:57 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Допустим, так: On Error Resume Next, а потом проверяем все ошибки списком. Могу привести пример программы, где это было бы очень удобно. не надо :) у меня уже есть, правда без коллекций - простая конкатенция. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:02 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Э, так тебе приходится после каждой ошибки писать строку кода, которая заносит ошибку куда-нибудь. А я надеялся получить это автоматом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:12 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
1) прямых польз от две: а) возможность определять собственные кастом ошибки с собственными номерами и описаниями, которые потом испускать при помощи Err.Raise Это может оказаться удобным и полезным, в случае, когда необходимо построить универсальный логер ошибок, который бы включал не только информацию об ошибках программиста, но и о логических ошибках пользователя. 2) при работе с фунциями внешних Dll, по крайней мере объявленных через Declare, настоятельно рекомендуется проверять Err.LastDLLError. По поводу замечания дл Сенина Виктора Саныч, а что, разве есть языковые миры, в которых один раз можно сказать try, пройти этот трай до конца, а потом, переместившись в catch, обработать все ошибки разом? Такое поведение разумно для удаленных серверов, ПРОТОКОЛЬНО общающихся с внешним миром, для локальных пространств более характерно отношение к ошибкам как к СОБЫТИЯМ, требующим немедленногоРАСПРОСТРАНЕНИЯ/перехвата. В принципе, мечта твоя, реализуема, путем образования собственной коллекции. Однако вставал бы я на эту дорогу, только после решения ПРОТОКОЛЬНЫХ вопросов. Поэтому и спросил - а о чем, собственно, мечтается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:20 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Э, так тебе приходится после каждой ошибки писать строку кода, которая заносит ошибку куда-нибудь. А я надеялся получить это автоматом. тогда пора учить С++ и идти работать в Микрософт, в отдел разработки VB(A) :) либо после каждой строчки кода вставлять заполнение самодельной коллекции в случае наличия ошибки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:37 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Senin Viktor а как тут С++ поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:39 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
а как тут С++ поможет? просто. на нем VB(A) и на писан ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:48 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
:^) Все, я ушел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:51 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Senin Victor Допустим, что просто. Не потеряет ли после такой помощи VB возможность Native компиляции? :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:52 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Саныч ну вот ушел - оставил одних VB переписывать ;)) Это ж была ТВОЯ затея! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:53 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Я понял, что замахнулся на святое. :^) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:56 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 15:58 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Не потеряет ли после такой помощи VB возможность Native компиляции? :-) дык Саныч все сделает как надо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 16:17 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 16:59 |
|
||
|
Уточняющий вопрос про Resume Next
|
|||
|---|---|---|---|
|
#18+
2 Сидоров оно, "примерно так и есть", если в подробности не вдаваться. А программировать в такой ситуации надо не "его", а объект типа Application, обучая уже ЕГО - Application, поддерживать желанную Санычу коллекцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2004, 17:04 |
|
||
|
|

start [/forum/topic.php?all=1&fid=45&tid=1674349]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
169ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
96ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 545ms |

| 0 / 0 |
