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

Список Форумов  :: Вопросы по 1С
  

V83.COMConnector
Аспид

Сообщений: 3338
Откуда: Москва
Дата: 22.05.16 11:58:54
По моим наблюдениям, конект пропадает через какое то, короткое (минут 10?) время. В случае если не используется.
Но в конфа показывает наличие этого конекта - как активное.

Кто то сталкивался?
Чем то грозит?


------------------




Исправлено: Аспид, 22.05.16 12:39
Ratings: 0 negative/0 positive

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 23.05.16 07:42:41
Вообще. Я считаю, что держать постоянно открытым COM-соединение это нехорошо. Тем более, с 1С. Потому-то такой схемы я не реализовывал ни разу. Соответственно, с таймаутом я не встречался и чем оно может грозить тоже не в курсе.

Я бы лучше настроил фоновое задание со стороны 1С, которое пишет/читает из любой скульной базы с определенной периодичностью. Данная схема менее напряжная по ресурсам. И более надёжная (если корректно отлавливать ошибки).

PS. Запамятовал. Связывается 7-ка с 8-кой? Может тоже в обратную сторону и с определенной периодичностью?



Исправлено: pasha_usue, 23.05.16 07:44
Ratings: 0 negative/0 positive

Re: V83.COMConnector
Аспид

Сообщений: 3338
Откуда: Москва
Дата: 23.05.16 08:33:58
В данном случае, передача их фокса.
По сути, передаю типы цен, и привязываю их к договору.
И делать это лучше, из привычной среды.

pasha_usue
Я считаю, что держать постоянно открытым COM-соединение это нехорошо
Согласен конечно. если б не такой долгий коннект. (5-10 сек)
Но в реальной жизни, это наверное не важно.
Это при отладке, я то и дело перезапускаю передачу.
А в реале, ну передадут 1 договор в день, максимум)))
Наверное забью болт на это.
Для отладки, просто коннект сделаю пабликом. В рантайме локальным.

Кстати, такая же фишка, у коннекта 8ки с 7кой.
Но про это читал, еще в тех ссылках, что ты присылал.

Фоновое задание, не хочу.
Хочется что бы все происходило СОЗНАТЕЛЬНО для пользователей.
И надеюсь, когда то переход на 8ку перейдет, и со временем, вся эта синхронизация, будет не нужна)))


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

Re: V83.COMConnector
Аспид

Сообщений: 3338
Откуда: Москва
Дата: 12.08.16 08:52:59
Аспид
Фоновое задание, не хочу.
Одумался. Хочу)
Все реализуется не сложно.
Но вот с сообщением об ошибках беда(
Отловил ошибку. Что дальше делать?
Можно послать по почте сообщение.
Но как бы сразу юзеру сообщить?

Опишу пример.
Контрагенты. Редактируются. По "Сохранить" запускается фоновое задание (ФЗ), которое все делает.
У меня есть идентификатор ФЗ. Могу где то следить за его выполнением.
Но где то по попытке выскакивает исключение. Все на севере.
Как это клиенту подпихнуть?
Что бы он сразу мне сообщил.


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

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 12.08.16 09:18:03
Писать надо в объект: Новый СообщениеПользователю()
Читать надо из массива: ИдентификаторЗадания.ПолучитьСообщенияПользователю()
Опрашивать надо асинхронно через: ПодключитьОбработчикОжидания()

infostart.ru



Исправлено: pasha_usue, 12.08.16 09:18
Ratings: 0 negative/0 positive

Re: V83.COMConnector
Аспид

Сообщений: 3338
Откуда: Москва
Дата: 12.08.16 09:48:55
pasha_usue
Писать надо в объект: Новый СообщениеПользователю()
Читать надо из массива: ИдентификаторЗадания.ПолучитьСообщенияПользователю()
Опрашивать надо асинхронно через: ПодключитьОбработчикОжидания()

infostart.ru

Все слова понятны.
Но вопрос в том.
Все это надо привязывать к форме, и тогда вся реализация понятна.
Но Нажали "Сохранить и закрыть".
Есть вариант, здесь же и контролировать завершения ФЗ. Просто форма не закроется, но можно продолжать работать.
Как то не очень красиво.

Хотелось бы необычного)))
Т.е. форма закрылась. И все всё забыли)
Но в случае ошибки, пользователю выскакивает сообщение.

Значит, МоиСообщения = Новый СообщениеПользователю()
Вот этот МоиСообщения, кому принадлежит? Где его создать?

Может просто создать некую общую форму, которая будет независимо крутится, и в случае необходимости выводить?
Что то в тумане пока у меня.


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

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 12.08.16 10:21:25
Вешать глобальный обрабочик ожидания в модуле управляемого приложения. В нем держать массив всех запущенных регламентных заданий. Периодически этот массив оббегать с МойМассив[Счетчик].ПолучитьСообщенияПользователю().

Лучше всего создать свой общий модуль. И в нём всё держать. А в модуле управляемого приложения добавить только одну строчку инициализации структур этого модуля.
Ratings: 0 negative/0 positive

Re: V83.COMConnector
spinz

Сообщений: 5263
Дата: 12.08.16 11:34:29
Аспид
Контрагенты. Редактируются. По "Сохранить" запускается фоновое задание (ФЗ), которое все делает.
А зачем здесь вообще нужно фоновое задание?
Ratings: 0 negative/0 positive

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 12.08.16 11:51:59
spinz
Аспид
Контрагенты. Редактируются. По "Сохранить" запускается фоновое задание (ФЗ), которое все делает.
А зачем здесь вообще нужно фоновое задание?
Пользователь записал элемент справочника и хочет другими делами заниматься, а 1Ска в этот момент долго-долго поднимает COM-соединение на 7-ку, потом дублирует туда изменения. COM держать постоянно открытым - тоже не вариант.
Ratings: 0 negative/0 positive

Re: V83.COMConnector
spinz

Сообщений: 5263
Дата: 12.08.16 12:11:12
А, это в КОМе, думал речь идет об обычной работе в 1С
Ratings: 0 negative/0 positive

Re: V83.COMConnector
Аспид

Сообщений: 3338
Откуда: Москва
Дата: 12.08.16 15:53:44
Пытался всех обмануть)))
ВызватьИсключение("Не сработало");
Увы... из обычного запуска срабатывает.
Из фонового, тишина)
Я так понимаю, что фоновая задача, это другой клиент, без UI.

Видимо надо делать как Паша советует. Уж больно это глубоко для меня(

А вот мысль, которую за час реализую)
Пишу что надо изменить в табл. на MS SQL (Контрагент - код- null, Договор - КодДоговора - кодКонтрагента)
На Шарпе пишу сервис, который следит за этой таблицей.
И када надо, все куда надо прописывает (берет из 8.3 пишет в 7.7), и помечает, что запись обработана.

Не?...

Перечитал, и вспомнил анекдот:
-А мы зубы через Ж... рвем
-А зачем?
-А у нас все так
)))


------------------




Исправлено: Аспид, 12.08.16 15:57
Ratings: 0 negative/0 positive

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 12.08.16 16:12:23
Да. Это разные сеансы, у них разные соединения. Причем и сеанс и соединение фонового задания являются виртуальными и генерятся самим сервером. Поэтому ваши "Сообщить" попадают на виртуальный сеанс, который их тупо проглатывает.
Информации о том, из какого соединения было вызвано фоновое задание у сервера нет. Связь возможна только одностороняя. У вас есть идентификатор задания, по этому идентификатору можно потеребить.
Ratings: 0 negative/0 positive

Re: V83.COMConnector
sphinx

Сообщений: 25696
Откуда: Каменск-Уральски
Дата: 13.08.16 23:30:54
Сорри за оффтоп..
Паш, а правда, что 1С с Постгрессом имеет проблемы? Типа, отваливаются соединения и/или виснет при определенных условиях.


------------------
"Вы поступили правильно, мой друг, но, боюсь, совершили ошибку"..."(с)
Ratings: 0 negative/0 positive

Re: V83.COMConnector
pasha_usue
Автор

Сообщений: 3229
Откуда: Е-бург
Дата: 15.08.16 09:30:22
sphinx
Сорри за оффтоп.. Паш, а правда, что 1С с Постгрессом имеет проблемы? Типа, отваливаются соединения и/или виснет при определенных условиях.
Постгресс требует обслуживания. Так же, как и MS, между прочим. Просто в MS план обслуживания мышкой накликал и радуешься. А в ПГ надо немножко руки иметь не из жопы.
Ratings: 0 negative/0 positive



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

On-line: 10 Taran Тьма  (Гостей: 8)

16.09.2019 17:10:24 exec: 0.03
Mem: 1.337 Mb

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