for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Л и с о в о д ы   в с е х   с т р а н,  о б ъ е д и н я й т е с ь !!!  

Список Форумов  :: Вопросы по 1С
   :: Помощь сайту :: 

Хранение Com-соединения
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 24.12.16 11:35:43ОтветитьЦитировать
На форме две кнопки.
Одна из них устанавливает com-соединение:
  
  Процедура СоединениеСБазой(Команда)  
  	ДиалоговыйВыбор=Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);  
  	ДиалоговыйВыбор.Заголовок="Путь к базе";  
  	ДиалоговыйВыбор.Фильтр="";  
  	ДиалоговыйВыбор.ПредварительныйПросмотр=Ложь;  
  	  
  	Если ДиалоговыйВыбор.Выбрать() Тогда  
  		Отказ=Ложь;  
  		Коннектор=Новый COMОбъект("V83.ComConnector");  
  		СтрокаПодключения="File="""+СокрЛП(ДиалоговыйВыбор.Каталог)+""";Usr=""АдминБ8"";";  
  		Попытка  
  			Дескриптор=Коннектор.Connect(СтрокаПодключения);  
  			  
  			СоединениеУстановлено="Да";  
  			ЦветРамкиСУ=Новый Цвет(0,255,0);  
  			Элементы.СоединениеУстановлено.ЦветРамки=ЦветРамкиСУ;  
  			  
  			Сообщить(Дескриптор);  
  			  
  		Исключение  
  			СоединениеУстановлено="Нет";  
  			ЦветРамкиСУ=Новый Цвет(255,0,0);  
  			Элементы.СоединениеУстановлено.ЦветРамки=ЦветРамкиСУ;	  
  			Сообщить("Ошибка подключения!" +ОписаниеОшибки());  
  			Отказ=Истина;  
  		КонецПопытки;  
  	КонецЕсли;  
  	  
  КонецПроцедуры

Вторая кнопка выполняет поиск остатков товара, если есть связь с БД. В VFP дескриптор я хранил в свойствах формы, подскажите пож-та как хранить свойства соединения в 1С, чтобы можно было к нему обратится в коде второй кнопки?
Ratings: 0 negative/0 positive

Re: Хранение Com-соединения
Аспид
Автор

Сообщений: 3178
Откуда: Москва
Дата: 24.12.16 16:40:20ОтветитьЦитировать
Как мне кажется, достаточно процедуру СоединениеСБазой превратить в функцию, возвращающая, по вашей терминологии, "Дескриптор".
И использовать его во второй кнопке.
Зингер
подскажите пож-та как хранить свойства соединения в 1С
Я храню в константе.
Зингер
чтобы можно было к нему обратится в коде второй кнопки?
Сделать функцию соединения, и ее использовать везде, где требуется соединение.

И стоит иметь ввиду. Что соединение, без использования живет где то 10-20 минут.
Потом умирает, показывая 1С что все в порядке (((
Те. вы думаете что оно есть, пытаетесь использовать - а вот нету(


------------------
Ratings: 0 negative/0 positive

Re: Хранение Com-соединения
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 24.12.16 16:57:46ОтветитьЦитировать
Аспид
Я храню в константе.
У меня случай с внешней обработкой и УФ. Где тогда хранить?

Аспид
Сделать функцию соединения, и ее использовать везде, где требуется соединение.
И каждый раз соединяться с БД?



Исправлено: Зингер, 24.12.16 19:47
Ratings: 0 negative/0 positive

Re: Хранение Com-соединения
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 25.12.16 09:03:38ОтветитьЦитировать
Вроде де бы поборол. Объявил
  
  &НаКлиенте  
  Перем КомОбъект;

Только теперь Com-запрос приходится вызывать тоже на Клиенте.
Ratings: 0 negative/0 positive

Re: Хранение Com-соединения
Аспид
Автор

Сообщений: 3178
Откуда: Москва
Дата: 25.12.16 13:07:30ОтветитьЦитировать
Зингер
И каждый раз соединяться с БД?
Если у функции указать "Повторное использование..." - "На время сеанса"
То, соединение будет использовано только однажды. А дальше, просто мгновенный возврат на него.
Я задавал похожие вопросы здесь. Все по полочкам разложили. Поищите.


------------------
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут писать в этом форуме.

On-line: 47 leonid  and Guests: 46


© 2000-2018 Fox Club 
Яндекс.Метрика