Страница: 1 |
Как узнать, открыт ли в данный момент рекордсет?? Эта гадина матерится, когда я его пытаюсь закрыть, если он не открывался..
Можно перед этим поставить OnError resume next а можно перед закрытием посмотреть какие-либо его свойства, например рекордкаунт. Ну на худой конец инициализировать его перед закрытием каким либо заведомо ненулевым значением. Resume Next не фурычит.. Куда-то не туда "Resume" делает.. Свойства тоже не катят.. РекордКаунт в т.ч. Рекордсет может иметь и 0 записей, если это фильтр.. Про инициализацию не понял.. Открыть открытый рекордсет нельзя. Можно, конечно, ввести глобальную переменную со значениями открыт/закрыт рекордсет, но что-то мне эта идея не очень нравится.. Ситуация такая: допустим при нажатии на кнопку мне нужно обновить данные в гриде, в зависимости от разных параметров и т.п. Но (так уж построена программа) при нажатии на кнопку, НЕИЗВЕСТНО, открыт рекордсет или нет. Может быть по-разному. Поэтому, если он ОТКРЫТ, я не могу его ещё раз открыть, а могу только закрыть. И наоборот, если он ЗАКРЫТ, то нельзя его ещё раз закрыть, можно только открыть. Поэтому меня АДО и убивает! Но без него в данном случае никак не обойтись.. Ну неужели нет какой-нибудь определяющей функции?? (Со слезами радости на глазах) Спасибо! Страница: 1 |
Вопрос: Recordset ADO
Добавлено: 26.12.03 12:06
Автор вопроса: Scuder | ICQ: 143518458
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
Malyav
ICQ: 8440085
Вопросов: 15
Ответов: 117
Web-сайт:
Профиль | | #1
Добавлено: 26.12.03 12:35
Номер ответа: 2
Автор ответа:
Scuder
ICQ: 143518458
Вопросов: 12
Ответов: 37
Профиль | | #2
Добавлено: 26.12.03 13:50
Номер ответа: 3
Автор ответа:
Malyav
ICQ: 8440085
Вопросов: 15
Ответов: 117
Web-сайт:
Профиль | | #3
Добавлено: 26.12.03 14:56
Дак просто задай ему новую выборку по SQL запросу, например такомуSelect * from table потом Refresh ему, а потом уже закрывай. А зачем его закрывать, без закрытия нельзя обойтись?
Номер ответа: 4
Автор ответа:
Scuder
ICQ: 143518458
Вопросов: 12
Ответов: 37
Профиль | | #4
Добавлено: 26.12.03 15:05
Номер ответа: 5
Автор ответа:
Svetlana
ICQ: 262385618
Вопросов: 43
Ответов: 205
Профиль | | #5
Добавлено: 26.12.03 18:06
If rstServer.State = adStateOpen Then 'рекордсет открыт и можно делать rstServer.Close
Номер ответа: 6
Автор ответа:
Scuder
ICQ: 143518458
Вопросов: 12
Ответов: 37
Профиль | | #6
Добавлено: 26.12.03 18:13