Имя: Пароль:
1C
1C 7.7
V77.Application Initialize не закрывается процесс...
0 perkos
 
03.08.11
13:39
на форме есть две кнопки,
подключится

   V71 = СоздатьОбъект("V77.Application");
   ФлагИнициализацииИБД1 = V71.Initialize(V71.RMTrade,"/D"+СокрП(ВыбКаталогИБ1)+"","NO_SPLASH_SHOW");

и отключится от сервера
       //V71.СохранитьЗначение("НеЗапрашиватьПодтверждениеПриВыходе", ПустоеЗначение(0));
       //V71.ExecuteBatch("ЗавершитьРаботуСистемы(0);");
       ФлагИнициализацииИБД1 = 0;
       тз = 0;
       тзПроекты = 0;
       Выписка = 0;
       БИ = 0;  
       Д = 0;
       БухИт1 = 0;
       Опер = 0;
       Движения = 0;
       V71 = 0;

обнуляю все глобальные переменные на всякий случай.

так вот, если я не выполняю кода то отключение происходит нормально, но после выполнения кода обработки отключится уже не удается, подайте совету...
1 perkos
 
03.08.11
13:40
пользователь остается подключеный к базе, каталог занят, если завершаеш процесс, вопросы по реиндексации.

подключаюсь к бухгалтерии 77
2 perkos
 
03.08.11
13:55
как наверняка отключится от базы, освободить сеанс 1с?
3 ДенисЧ
 
03.08.11
13:56
В обработке инициализируются какие-то переменные?
4 perkos
 
03.08.11
13:59
да конечно, я их обнуляю в процедуре отключения от базы
5 zavsom
 
03.08.11
14:02
kill1c
6 andrewks
 
03.08.11
14:05
(5) shutdown
7 perkos
 
03.08.11
14:06
нельзя... кил из за реиндексации, и из за не известности ид процесса...
8 perkos
 
08.08.11
15:44
(= решил трабл! мне просто попалась быдлокодерская обработка с накопированными кусками кода подключения к базе. В этих кусках глобальным переменным модуля функция CreateObject присваивала постоянно новые ссылки на подключенную базу, похоже без предварительного удаления. Выделил этот кусок в процедурку с очисткой переменных OLE перед созданием и все ок.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс