Имя: Пароль:
1C
1С v8
Проброска OLE|COM-соединения по сети lan/инет
,
0 Garykom
 
гуру
10.09.15
16:31
Собственно возникла тупейшая/гениальная идея.
Хочется удобный механизм онлайн обмена (передачи данных) между базами расположенными на разных компах.
Связь по сети или через инет есть.
Каким бы способом сделать сабж?

Т.е. вызывается из 1С базы1 (комп1) COM-соединение к базе2 (комп2).
И причем комп1 доступа к файловой или серверной базе2 не имеет.

Это нечто вроде проброски обычных портов.
1 Garykom
 
гуру
10.09.15
16:32
(0)+ удобство в том что не нужно в обоих базах обмен настраивать, только в одной достаточно (неважно источнике или приемнике)
2 DmitrO
 
10.09.15
16:35
:)
комп1 не имеет, а кто имеет, кто то же должен иметь, не бывает так чтобы никто нас не имел? )
3 vde69
 
10.09.15
16:36
эта технология называется DCOM
4 TormozIT
 
гуру
10.09.15
16:36
Нужно обеспечить RPC коммуникации и поднять на одном из компьютеров COM+ приложение с нелокальной (удаленной) активацией. Дальше создаем удаленный COM Объект и используем принцип "Минимизация количества COM-вызовов"
КомСоединитель = Новый COMОбъект(“V83.ComConnector”, ИмяКомпьютера);
ВнешнееСоединение = КомСоединитель.Connect(СтрокаСоединения);


http://catalog.mista.ru/public/387577/
5 DmitrO
 
10.09.15
16:37
(3)щас она уже называется COM+, службы компонентов.
(3)так кто имеет-то?
6 TormozIT
 
гуру
10.09.15
16:38
(5) COM+ и DCOM - разные вещи.
7 Serginio1
 
10.09.15
16:39
DCOM + VPN
8 Garykom
 
гуру
10.09.15
16:43
(4) очень неплохо
а не под Windows Server на удаленной машинке оно пашет?
9 Garykom
 
гуру
10.09.15
16:45
Как бы хочется то немного не того.
Некая программка которая запускается на обоих компах, настраивается на связь по сети (простым образом) и все.

Можно делать вызовы COM соединений к локальному (этой нашей программе) а они автоматом транслируются на удаленные вызовы нужные
10 Garikk
 
10.09.15
16:49
не под Windows server в смысле под линух? DCOM во всех виндах актуальных есть (и XP в т.ч.)
11 Garykom
 
гуру
10.09.15
16:52
(10) да между двумя Win7 можно штатно проброску настроить?
12 Serginio1
 
10.09.15
17:03
(9) В Delphi была такая Приблуда как TSocketConnection.
Она как раз выполняла то, что ты хочешь.
13 TormozIT
 
гуру
10.09.15
17:08
(9) Ты как раз описал proxy-COM-object из технологии DCOM.
14 mistеr
 
10.09.15
17:14
DCOM в настройке и администрировании тот еще геморрой. Кроме того через него лезут всякие вирусы, поэтому по умолчанию в Винде его давно отключают. Плюс еще настройка VPN, если узлы удаленные. В обшем простым решением его назвать никак нельзя.

Да и ненадежная схема получится, если связь через интернет.
15 TormozIT
 
гуру
10.09.15
17:15
С пингом до 150мс DCOM отлично работает. Дальше начинаются редкие сбои. После 200мс сбои становятся уже частыми и использовать его становится неразумно.
16 igork1966
 
10.09.15
17:16
(0) Можно через Web-сервис организовать. По крайней мере будет работать когда не винда.
17 Garykom
 
гуру
10.09.15
17:30
(16) удаленную базу менять низзя, даже отдельный сеанс не запустить ибо лицух нету
COM соединение к этой базе можно, они не лицензируются
собственно в этом и проблема
что один фиг лисапед писать в виде некой прокладки которая будет на удаленном компе крутиться и транслировать данные

База2 (комп2) <> COM <> Прокладка (комп2) <> что угодно инет <> База1 (комп1)
18 TormozIT
 
гуру
10.09.15
17:37
DCOM для внешнего соединения 1С выглядит так
[Процесс COM-клиента (proxy-object внешнее соединение 1C)] <RPC-канал> [(stub-object внешнее соединение 1C) Процесс COM- сервера] <tcp-канал> [rphost.exe]
19 igork1966
 
10.09.15
17:38
(17) http://v8.1c.ru/o7/201312rest/index.htm
вот это не подойдет?
20 Garykom
 
гуру
10.09.15
17:48
(19) эта Х только на платформе 1С 8.2 работает, сервер этой защиты
так что все методы прочие далеко идут
21 DmitrO
 
10.09.15
18:41
Кажется именно по этой технологии и работал сервер 1С Предприятия 8.0 )
22 TormozIT
 
гуру
10.09.15
19:21
(21) Верно. Сервер 1с 8.0 работал через COM+ приложение
23 mistеr
 
11.09.15
08:59
(17) Е-мае, оказывается столько гемморроя из-за копечной жадности! Твое время на написание прокладки стоит в несколько раз больше. Или оно бесплатно?
24 Garykom
 
гуру
11.09.15
11:18
(23) к сожалению жадность то не копеечная

мало того что лицухи нужны дополнительные если робота держать постоянно запущенного
так еще и в 2 местах писать код, вместо одного

причем что то изобретать придется все равно для обмена по сети
стандартный обмен через файлы не очень подходит, много лишнего
тут больше похоже на дисконтный сервер (запрос статуса карты, кол-во накопленных покупок и продаж, начисление/списание баллов)
25 TormozIT
 
гуру
11.09.15
11:31
В статье (4) рассмотрены основные проблемы при использовании COM-связи между базами 1С через медленные каналы. Сначала отладь обмен между локальными базами, потом уже включай его через DCOM. Думаю ничего проще здесь не придумаешь.
26 Serginio1
 
11.09.15
11:36
(24) На самом деле через файлы по схеме самое то.
Лишнее прекрасно сжимается. Зато Можно работать по Tcp/IP,
Вэб сервисы итд.


Ну и если знаком с другими языками то
Можно использовать protobuf, WCF итд
27 Garykom
 
гуру
11.09.15
11:42
(26) да все можно, способов прекрасно знаю что туча
думал самым простейшим обойтись если бы можно было легко (и надежно) пробросить com соединение
28 Serginio1
 
11.09.15
12:45
(27) Сом как раз самый сложный.
Например в .Net давно уже отказались от COM в пользу WCF
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.