Почему после подключения к 7,7 через OLE она отрабатывает, но при повторной авторизации требует переиндексацию?
Или почему при выходе слетают индексы?
Функция УстановитьПодключение(ПутьКБазе,ЮзерВБазе,ПарольВБазе)
Состояние("Подключение...");
БазаОле=CreateObject("V77.Application");
Если БазаОле.Initialize(БазаОле.RMTrade,"/d"+СокрЛП(ПутьКБазе)+" /n"+СокрЛП(ЮзерВБазе)+" /p"+СокрЛП(ПарольВБазе), "NO_SPLASH_SHOW") = 0 тогда
Сообщить("Ошибка открытия информационной базы!","!");
Возврат 0;
Иначе
//Сообщить("Подключена база "+ПутьКБазе+"");
Возврат БазаОле;
КонецЕсли;
КонецФункции
Я глушу при закрытии формы, но объект закрывается сам после того как войдет что-то сделает и всё.
Я выполняю на оле глобальную функцию получаю результат и все объект сам закрывается.
может потому что я глобальную функцию юзаю поэтому?
(0) реиндекс клюшки просят, если:
- нет активных полльзоввателей в базе.
- таблица _1SUSERS непустая
Краткое описание: таблица предназначена для хранения информации о подключенных пользователях. В таблице всегда одна строка. Именно по наличию строки в этой таблице 1С судит об аварийном завершении программы и предлагает переиндексировать ИБ в случае dbf-версии.
Если ПустоеЗначение(ОЛЕБаза) = 0 Тогда
Попытка
ОЛЕБаза.ExecuteBatch("ЗавершитьРаботуСистемы(0)");
Исключение
КонецПопытки;
ОЛЕБаза= 0;
КонецЕсли;
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший