|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
День добрый! Такое дело - из под VBA посредством ADO коннекчусь к FoxPro базе, делаю там что-то, потом закрываю коннект, закрываю рекордсет - myRecordset.Close Set myRecordset = Nothing myConnection.Close Set myConnection = Nothing выхожу из своей программы. Проблема в том, что база, с которой я работал остается недоступной вплоть до полного выхода из офис приложения Т.е. пока я не закрою весь скажем Excel, до базы будет не добраться (Ассess denied). Может кто сталкивался с таким, подскажите, плз! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2004, 14:11 |
|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
Будет недоступной откуда? С этого же приложения или извне? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2004, 14:38 |
|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
извне, из того же FoxPro например... я так понимаю, что VBA не удаляет созданные объекты не смотря на то, что я их вроде как закрываю и убиваю ссылки на них. (такое было замечено даже на обычных переменных типа Integer или Boolean - значения, которые они имели к концу работы сессии программы, доступны при следующем запуске программы...) как с этим бороться? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2004, 16:17 |
|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
ЗЫ: на счет обычных переменных - это работает, когда они объявлены глобально, с локальными все Ok! А вот с объектами все хуже - локальны только ссылки на них, вот объекты и висят до одури, точнее до полного выхода... ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2004, 16:24 |
|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
День добрый! Такое дело - из под VBA посредством ADO коннекчусь к FoxPro базе, делаю там что-то, потом закрываю коннект, закрываю рекордсет - Уважаемый товарищ! Не мог бы ты выслать кусок кода как ты коннектишся к foxpro базе и закрываеш связь. Очень умоляю! Заранее спасибо! a1a@freemail.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 11:30 |
|
Access denied после закрытия ADO
|
|||
---|---|---|---|
#18+
' ADO-соединение Public Sub ADO_SQL1(NewName1 As String, SQL_str As String) ' Директория где находятся dbf файлы def_dir = ActiveWorkbook.Path Set ds = Workbooks("zt.xls").Sheets("Итого") 'ds.Range("A2:E5000").ClearContents ' создаем объект соединения Set cnn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") ' свойства соединения для работы с DBF cnn.Provider = "Microsoft.Jet.OLEDB.4.0" cnn.Properties("Extended Properties") = "dBase IV" cnn.Properties("Data Source") = def_dir & "\" 'Set cnn = New ADODB.Connection 'cnn.Open "Driver={Microsoft dBASE Driver (*.dbf)};uid=;pwd=;database=" & def_dir & "\" & NewName1 & ";" ' открываем соединение cnn.Open 'Открываем набор записей rs.ActiveConnection = cnn rs.Source = SQL_str 'rs.Source = "Select dt, ad, k, ak, smr from " & NewName1 & " WHERE (DT>='300000' and DT<='329999')ORDER BY dt,ad" 'rs.Source = "Select dt, ad, k, Sum(smr) from " & NewName1 & " GROUP BY dt,ad,k HAVING(DT>='300000' and DT<='329999') ORDER BY dt,ad" rs.Open k = 2 While Not IsEmpty(ds.Cells(k, 1).Value) k = k + 1 Wend If rs.EOF Then 'MsgBox "Файл не содержит записей !" Else ' Крутим наборчик ds.Activate i = k rs.MoveFirst While Not rs.EOF If rs.Fields("dt") <> "" Then ds.Cells(i, 1).Value = rs.Fields("dt") ds.Cells(i, 2).Value = rs.Fields("ad") ds.Cells(i, 3).Value = rs.Fields("k") ' Флаг служит для для уменьшения параметров запроса - только для основного и вспомог. произ-в. If flag_group = 1 Then ds.Cells(i, 4).Value = rs.Fields("ak") End If If flag_group = 1 Then ds.Cells(i, 5).Value = rs.Fields("np") End If If flag_group = 1 Then ds.Cells(i, 7).Value = CDate(rs.Fields("dod")) End If If flag_group = 1 Then ds.Cells(i, 6).Value = rs.Fields(6).Value Else 'ds.Cells(i, 6).Value = rs.Fields("smr") ds.Cells(i, 6).Value = rs.Fields(3).Value End If End If Application.StatusBar = "Обрабатывается " & i & " строка dbf файла" DoEvents i = i + 1 rs.MoveNext Wend End If ' Закрываем набор rs.Close Set rs = Nothing ' Закрываем соединение cnn.Close End Sub Scio me nihil scire <<Jojo®>> ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 11:36 |
|
|
start [/forum/topic.php?fid=61&fpage=375&tid=2186683]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
8ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 309ms |
total: | 460ms |
0 / 0 |