Вопрос № 47404: Здравствуйте, у меня вопрос по ответу на вопрос N 33674. Там был дан совет устанавливать
соединение сразу при старте проекта. Код был такой:
Sub DellWithSQL()
Dim sSql As String
Dim adoCnn As New ADODB.Connection
Set adoCnn ...Вопрос № 47429: Добрый день!
Подскажите как заставить программу на VB6 ждать пока не распечатается документ Word.
Заранее спасибо.
..
Вопрос № 47.404
Здравствуйте, у меня вопрос по ответу на вопрос N 33674. Там был дан совет устанавливать соединение сразу при старте проекта.
Код был такой:
Sub DellWithSQL()
Dim sSql As String
Dim adoCnn As New ADODB.Connection
Set adoCnn = Access.CurrentProject.Connection
sSql = "delete from tbfn"
adoCnn.Execute sSql
End Sub
Где это нужно сделать? И как чтобы объект adoCnn не потерялся.
PS Использую формат Access2000
Отправлен: 26.06.2006, 22:23
Вопрос задал: AL_PP (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Филатов Евгений Геннадьевич
Здравствуйте, AL_PP!
В меню Project/Properties свойство StartUp Object = Sub Main .
Тогда при запуске проекта будет запускаться модуль, в котором можно сделать ввод пользователя и пароль, подключение к базам,
начальные установки и др.
Например текст Module1 :
Option Explicit
Option Base 1
'MS Access
Public dbf As New ADODB.Connection
Public r_tmp As New ADODB.Recordset
Sub Main ( )
..
'Можно добавить ввод пользователя и пароль с проверкой
..
dbf.Open "Persist Security Info=False;DSN=База данных MS Access;DBQ=Pr.mdb;DefaultDir=;FIL=MS Access;MaxBufferSize=2048;PageTimeout=300;UID=admin;"
dbf.Execute "update predpr set ROs_file=null,RJit_file=null"
..
'Далее идет текст программы
dbf.Close
End
End Sub
В таком случае (т.е. при объявлении переменной dbf как глобальная ) возможно использование данного подключения во всех модулях
и процедурах проекта, в которых нет объявления местной переменной с тем же именем.
В Вашем примере переменная объявлена локальной, поэтому при выходе из процедуры связь будет утеряна.
Отвечает: Александр Шевченко
Здравствуйте, AL_PP!
Чтобы объект adoCnn не потерялся его нужно объявить в любом модуле (если их нет - меню Project->Add Module), в самом верху
модуля вставить
Dim adoCnn as ADODB.Connection
тогда объект adoCnn будет виден для всего проекта.
также в модуль вставить
Sub Main
Set adoCnn = New ADODB.Connection
Form1.Show 'где Form1 главная форма проекта
End Sub
и в свойствах проекта указать Startup Object: Sub Main
при запуске проекта будет выполняться процедура Main, из которой будет инициализироваться объект adoCnn и показываться главная
форма.
Ответ отправил: Александр Шевченко
(статус: 5-ый класс)
Ответ отправлен: 27.06.2006, 11:06
Вопрос
№ 47.429
Добрый день!
Подскажите как заставить программу на VB6 ждать пока не распечатается документ Word.
Заранее спасибо.