Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Реиндексация после ОЛЕ. Почему после подключения к 7,7 через OLE она отрабатывает, но

v7: Реиндексация после ОЛЕ. Почему после подключения к 7,7 через OLE она отрабатывает, но
Я
   sysadminlk
 
12.10.19 - 18:39
Почему после подключения к 7,7 через OLE она отрабатывает, но при повторной авторизации требует переиндексацию?
Или почему при выходе слетают индексы?

Функция УстановитьПодключение(ПутьКБазе,ЮзерВБазе,ПарольВБазе)  
    Состояние("Подключение...");
    БазаОле=CreateObject("V77.Application");        
    Если БазаОле.Initialize(БазаОле.RMTrade,"/d"+СокрЛП(ПутьКБазе)+" /n"+СокрЛП(ЮзерВБазе)+" /p"+СокрЛП(ПарольВБазе), "NO_SPLASH_SHOW") = 0 тогда
        Сообщить("Ошибка открытия информационной базы!","!");
        Возврат 0;
    Иначе        
        //Сообщить("Подключена база "+ПутьКБазе+"");
        Возврат БазаОле;        
    КонецЕсли;          
КонецФункции
 
 
   sysadminlk
 
1 - 12.10.19 - 18:40
Можно как-то залогиниваться монопольно не индексируя базу? или как починить чтоб индексы не слетали при выходе?
   Pit0n_08
 
2 - 12.10.19 - 19:20
А в конце обработки есть отключение от ИБ БазаОле=""; ?
   Chameleon1980
 
3 - 12.10.19 - 19:24
Аварийное завершение. Глушите переменную подключения?
   sysadminlk
 
4 - 12.10.19 - 19:37
Я глушу при закрытии формы, но объект закрывается сам после того как войдет что-то сделает и всё.
Я выполняю на оле глобальную функцию получаю результат и все объект сам закрывается.
может потому что я глобальную функцию юзаю поэтому?
   Chameleon1980
 
5 - 12.10.19 - 21:24
Хз. В резальтате то что прилетает?
   Смотрящий
 
6 - 12.10.19 - 21:28
(0) реиндекс клюшки просят, если:
- нет активных полльзоввателей в базе.
- таблица _1SUSERS непустая

Краткое описание: таблица предназначена для хранения информации о подключенных пользователях. В таблице всегда одна строка. Именно по наличию строки в этой таблице 1С судит об аварийном завершении программы и предлагает переиндексировать ИБ в случае dbf-версии.
   victuan1
 
7 - 14.10.19 - 13:51
Если ПустоеЗначение(ОЛЕБаза) = 0 Тогда
        Попытка
            ОЛЕБаза.ExecuteBatch("ЗавершитьРаботуСистемы(0)");
        Исключение
        КонецПопытки;
        ОЛЕБаза= 0;
КонецЕсли;

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.