Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как переделать, что бы
 
 автор: час   (15.01.2010 в 18:07)   личное сообщение
 
 

имеется код

             
            Dim rst As ADODB.Recordset
            Set rst = New Recordset
                 ' Проверка наличия таблицы в другой базе
            If FUN_IS_TABLE_IN_BASA("CLIENT_CARDS_TBL", GLB_DATA_DB_CONNECTION) = True Then
                rst.Open " SELECT CLIENT_CARDS_TBL.*" _
                & " From CLIENT_CARDS_TBL", GLB_DATA_DB_CONNECTION, adOpenKeyset, adLockOptimistic
                Else
                Call MsgBox("Отсутствует таблица базы CLIENT_CARDS_TBL", vbCritical)
                rst.Close
                Set rst = Nothing
                Exit Function
            End If
            
            If rst.RecordCount = 0 Then
                Call MsgBox("Отсутствуют данные в указаном файле", vbCritical)
                rst.Close
                Set rst = Nothing
                Exit Function
            End If

КАК БЫТЬ ВОТ С ЭТИМ МЕСТОМ - порою и закрывать нечего - тада ошибка
             rst.Close
        Set rst = Nothing
        

  Ответить  
 
 автор: snipe   (15.01.2010 в 18:16)   личное сообщение
 
 

Ловить ошибку по номеру
Хотя Kot_k_k и говорит что это парковаться по звуку
Но я бы сделал так

  Ответить  
 
 автор: час   (15.01.2010 в 18:20)   личное сообщение
 
 

привет!!!

  Ответить  
 
 автор: час   (15.01.2010 в 18:19)   личное сообщение
 
 

А попробуйте вот так


             Dim rst As ADODB.Recordset
            Set rst = New Recordset
                 ' Проверка наличия таблицы в другой базе
        If FUN_IS_TABLE_IN_BASA("CLIENT_CARDS_TBL", GLB_DATA_DB_CONNECTION) = True Then
                rst.Open " SELECT CLIENT_CARDS_TBL.*" _
                & " From CLIENT_CARDS_TBL", GLB_DATA_DB_CONNECTION, adOpenKeyset, adLockOptimistic
                    If rst.RecordCount = 0 Then
                        Call MsgBox("Отсутствуют данные в указаном файле", vbCritical)
                        rst.Close
                        Set rst = Nothing
                        Exit Function
                    End If
        Else
                Call MsgBox("Отсутствует таблица базы CLIENT_CARDS_TBL", vbCritical)
                Exit Function
        End If


Ну и бестолковый, Вы - час!!!!!!!!

  Ответить  
 
 автор: Clerkus   (15.01.2010 в 18:42)   личное сообщение
 
 

хм ... я бы спросил таблицу MSysObjects друго базы .... ну само сабой ИМХО ....

  Ответить  
 
 автор: kot_k_k   (16.01.2010 в 12:06)   личное сообщение
 
 


rst.Close
Set rst = Nothing



это как вылезать поссать из душевой кабинки - суперинтилигентность.

п.с. есть сво-ва EOF и BOF

  Ответить  
 
 автор: час   (16.01.2010 в 15:10)   личное сообщение
 
 


а я против ветра пускаю струю
Пусть все обегают пока я стою

  Ответить  
 
 автор: kot_k_k   (16.01.2010 в 15:44)   личное сообщение
 
 

как там рекурсия?


я только не понял зачем закывать переменную, тем более если это небольшая функция, оно само сбросит все переменные при выходе из ф-ции

  Ответить  
 
 автор: час   (16.01.2010 в 16:30)   личное сообщение
26 Кб.
 
 

Рекурсия живёт своей повторяющейся жизнью...
======================================================
Не знаю как само - но я взял за правило - в начале объявил - в конце очистил.

  Ответить  
 
 автор: alecks_lp   (16.01.2010 в 23:24)   личное сообщение
 
 

В хелпе так:

    If Not rs Is Nothing Then
        If rs.State = adStateOpen Then rs.Close
        Set rs = Nothing
    End If

  Ответить  
 
 автор: час   (17.01.2010 в 15:24)   личное сообщение
 
 

Спасибо !!!!!!!!!
- точно !!!!


rs.State = adStateOpen

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList