|
Выполнение функций в другой конфигурации | ☑ | ||
---|---|---|---|---|
0
e2v
29.07.19
✎
14:53
|
Совета надо 8)))
Есть две базы 1С. В одной есть функции возвращающие данные нужные в другой базе. Как лучше организовать доступ и выполнение? Проще говоря, хочу из первой конфы выполнить функцию, находящуюся во второй конфе и обработанные данные вернуть в первую конфу. 8))) Функция будет выполняться множеством запросов, поэтому скорость имеет значение. Пробовал по COM-соединению - тормозит. Подключение как Внешняя База - штука хорошая, но прописывать все справочники и регистрысведений, нужные для запроса, из базы источника - труба. Чето больше не знаю как еще можно 8))). Признателен любой идее. |
|||
1
palsergeich
29.07.19
✎
14:54
|
(0) через web или http сервисы будет самый правильный вариант ИМХО
|
|||
2
MyNick
29.07.19
✎
14:55
|
(0) КОМ? Это та технология из прошлого тысячелетия? Когда уже одинэсники начнут спрашивать, что означает эта аббревиатура..
|
|||
3
e2v
29.07.19
✎
15:53
|
(1) Пробовал, нормально.
Но хотелось бы не менять конфу в базе источнике. Она стандартная. |
|||
4
e2v
29.07.19
✎
15:54
|
(2) Технология старая, но вот в такой ситуации ничего другого не придумывается.
8)) |
|||
5
palsergeich
29.07.19
✎
15:54
|
(3) юзай механизм расширений. Общие модули и веб / http сервисы прекрасно живут в расширениях
|
|||
6
lodger
29.07.19
✎
15:59
|
(3) сделай расширение.
|
|||
7
e2v
29.07.19
✎
16:06
|
(5) По расширениям согласен.
Но у меня вопрос другой. Есть ли кроме COM объекта какой нибудь метод выполнить функцию в другой конфе 1С ? Мало знаю про это. Мож еще как-то кто-то делает ? Может не средствами 1с? |
|||
8
Провинциальный 1сник
29.07.19
✎
16:22
|
(7) "Есть ли кроме COM объекта какой нибудь метод выполнить функцию в другой конфе 1С ? "
К сожалению, 1с не реализовала нативный метод межпроцессного взаимодействия, не завязанный на ОС. А COM признали нерекомендуемым и устаревшим.. |
|||
9
ВикторП
29.07.19
✎
16:25
|
(8) Дайте мне ссылку на "А COM признали нерекомендуемым и устаревшим.." - хочу показать кой- кому
|
|||
10
e2v
29.07.19
✎
16:27
|
Ясно. 8)))
Как то так и думал. Не могло быть всё хорошо 8))) |
|||
11
palsergeich
29.07.19
✎
17:05
|
(9) В стандартах прописано, что исполняемый код должен выполняться на любой ОС.
|
|||
12
Сияющий в темноте
29.07.19
✎
17:14
|
что мешает реализовать аналог Com в другой ос,тем более,что из всего com нужно только загрузить dll и дать ей управление.
с внешними компонентами научились нативно,вот осталось и подключение нативным сделать. и,в отличие от DDE,Com не признан устаревшей технологией,тем более,что в windows vista и болен поздних часть системных вызовов построены на технологии Com. Устаревшим считается технология ActiveX,но она только часть ComponentObjectModel. |
|||
13
Сияющий в темноте
29.07.19
✎
17:17
|
И это,я в базовой версии исполнял код о внешнего вызова через внешнюю обработку и обработчик событий от внешней компоненты.
причем конфа не менялась от слова совсем. |
|||
14
Rovan
гуру
29.07.19
✎
17:19
|
(0) "Функция будет выполняться множеством запросов, поэтому скорость имеет значение. "
А если пакетный запрос !? (7) "Есть ли кроме COM объекта какой нибудь метод выполнить функцию в другой конфе 1С ? " Есть ! OLE, но он еще более тормознутый ! |
|||
15
bolero
29.07.19
✎
19:30
|
(9) что там показывать, достаточно попросить на линуксе запустить
|
|||
16
Жан Пердежон
29.07.19
✎
19:57
|
(0) пили свой веб-сервис
|
|||
17
Сияющий в темноте
29.07.19
✎
20:04
|
||||
18
Franchiser
гуру
29.07.19
✎
20:59
|
OData
|
|||
19
H A D G E H O G s
29.07.19
✎
21:04
|
Свой веб-сервис требует своего веб-сервера.
|
|||
20
palsergeich
29.07.19
✎
23:36
|
(19) Кэп. Не узнаю Вас в гриме)
|
|||
21
e2v
30.07.19
✎
08:20
|
(18) Вчера дискусия продолжилась. 8)) Я отвалился.
Не ответить не прилично. ODATA требует настройки веб сервиса в конфигурации источника, а хотелось бы вообще не прикасаться к источнику , никак, не расширением, ни веб сервисами. Это связано с проблемами источника. |
|||
22
e2v
30.07.19
✎
08:23
|
(14) Пакетный запрос не подходит,т.к. запросы от разных пользователей проходят через
конфигурацию2 в конфигурацию1. Т систематизировать их во времени не удастся. Это HTTP-запросы из разных приложений. Или я чего не так понял? |
|||
23
e2v
30.07.19
✎
08:31
|
(13) Конечно можно написать запрос (или выполнить функцию) через СОМ.
Но дело в том, что запрос на подключение идет долго. В моем случае. Может чего поднастроить надо? Ситуация такая. Приложение на JAVA посылает POST запрос. Конфа1 на 1С его принимает, обрабатывает и для ответа привлекает данные из конфы2. Есть таймаут, в который нужно уложиться с ответом. К тому же запросов может быть до 20 потоком. И это от одного пользователя. А их в плане до 20 будет. Понимаю, это мои проблемы. 8))) |
|||
24
ДенисЧ
30.07.19
✎
09:03
|
(23) Если тыкую связку строишь - то грех вторую кнфигурацию не подтюнить
|
|||
25
e2v
30.07.19
✎
09:24
|
(24) Таки вот и хочу.
Но как ? Схожусь на вариант 0DATA, но придется веб сервер делать и базу публиковать. А на ВнешнихИсточникахДанных все шикарно, но писанины много.Например, запрос к региструсведений.срезпоследних как организовать? Етож целый геморой. 8)) |
|||
26
ДенисЧ
30.07.19
✎
09:26
|
(25) Тебе функции нужно звать? Или прямо к объектам лазить?
|
|||
27
e2v
30.07.19
✎
09:47
|
(26) Лучше функции вызывать. Вообще решение проблемы.
Но как это сделать без СОМ соединения не пойму. ODATA пока не в счет. |
|||
28
ДенисЧ
30.07.19
✎
09:49
|
(27) хттп-сервис, тебе же же предложили.
|
|||
29
e2v
30.07.19
✎
09:54
|
(28) Х-м-м. Я всегда страдал плохой дикцией 8)))
Я же говорю, не желательно лезть в конфу источник, даже расширением. А HTTP сервис подразумевает именно это, писать в конфу. Или я не прав? Изменения возможны только в конфе1, которая работает с HTTP запросами извне. |
|||
30
palsergeich
30.07.19
✎
10:06
|
(29) тебе шашки или ехать?
|
|||
31
Ник080808
30.07.19
✎
10:20
|
(29) через выполнить команду системы запускаешь вторую базу с выполнением обработки при старте. в обработке пихаешь вызовы конфы. конфу править не нужно) извращение, но если не ком и не править конфу других вариантов нету
|
|||
32
olegves
30.07.19
✎
10:26
|
(0) у ОМ, где расположена функция долна стоять галка "Внешнее соединение"
|
|||
33
ДенисЧ
30.07.19
✎
10:30
|
(29) А я тебе ответил в (24)...
|
|||
34
ДенисЧ
30.07.19
✎
10:30
|
(31) И ты думаешь, это будет быстрее КОМа?
|
|||
35
Asmody
30.07.19
✎
10:32
|
(0) Пусть твоя база-источник крутит твои запросы в рег.задании и выкладывает результаты в файл с некоторой периодичность. А вторая этот файл читает при необходимости.
|
|||
36
Asmody
30.07.19
✎
10:33
|
(34) Тут, понимаешь, весь вопрос в том, где ему нужна скорость - при отправке или при получении данных. И какова должна быть реальная актуальность этих данных.
|
|||
37
Asmody
30.07.19
✎
10:34
|
Так-то можно и какую-нибудь MQ прикрутить
|
|||
38
Провинциальный 1сник
30.07.19
✎
10:37
|
(29) Это в 1с называется "прогресс". Терпи и получай удовольствие.
|
|||
39
ДенисЧ
30.07.19
✎
10:40
|
(36) У него будет 20 подключений в минуту ))
Ком-объект можно на клиенте хранить... А 1с запускать каждый раз... |
|||
40
lodger
30.07.19
✎
10:40
|
(29) "Я же говорю, не желательно лезть в конфу источник, даже расширением.
А HTTP сервис подразумевает именно это, писать в конфу. Или я не прав? " - нет. не прав. почитай матчасть http://v8.1c.ru/o7/201410ext/index.htm |
|||
41
Asmody
30.07.19
✎
10:42
|
(39) Ему нужна актуальность данных за 5 секунд? Торговый автомат пишет?
|
|||
42
ДенисЧ
30.07.19
✎
10:46
|
(41) "К тому же запросов может быть до 20 потоком. И это от одного пользователя.
А их в плане до 20 будет" |
|||
43
bolero
30.07.19
✎
10:54
|
В случае, когда на конфе-источнике не надо выполнять функции, а только взять данные - я использую прямой доступ к базе и мозги себе не делаю. Веб-сервер для этого не нужен.
|
|||
44
Ник080808
30.07.19
✎
11:04
|
(43) "прямой доступ к базе " расшифруй
|
|||
45
e2v
30.07.19
✎
13:05
|
(40) Мат.часть прочел. 8)))
Понял, что плохо разъяснил. 8)) Расширение в любом случае запускается или прикручивается на конфе источнике. Я физически этого сделать не могу. (не спрашивай почему). Остается выход - зная конфу источника читать базу удаленно. |
|||
46
Жан Пердежон
30.07.19
✎
13:15
|
колхоз - дело добровольное
|
|||
47
e2v
30.07.19
✎
13:15
|
Народ. Спасибо, что не посылаете. 8)))
Несколько мыслей уже натолкнули. Проверяю последовательно. Но в некоторых записях вижу недопонимание. Если не надоело, еще раз объясню суть проблемы. Есть веб-приложение на JAVA. Иметь с ним связь можно только принимая от него запросы-POST и давая ответы на них. Так как на один запрос надо дать один ответ (технология такая), получается сколько запросов столько ответов. Тут проблем нет. Но в ответ надо включить данные из базы 1С из другой конфигурации2 (и на другом сервере). Множество запросов делать не удобно. Я использую функции, находящиеся в другой конфе2, которые дают мне нужные данные. Делаю это через СОМ. Но так как запросов много то возникает таймаут из-за тормозов СОМ. Вот и думаю как это обойти. Т.е. не изменяя конфу2 (базу2) выполнять на ней функции , только быстро. Как-то так. Вроде понятно 8))) |
|||
48
e2v
30.07.19
✎
13:16
|
(46) Не ну если есть что-то вменяемое посоветуй.
Может вне 1С. |
|||
49
e2v
30.07.19
✎
13:17
|
(44) Прямой доступ к базе - когда из SQL-и напрямую читаю, минуя 1С предприятие.
|
|||
50
Вафель
30.07.19
✎
13:17
|
(47) самое простое - увеличить таймаут
|
|||
51
e2v
30.07.19
✎
13:19
|
(43) Вопрос. А как работать с регистрами. Там таблиц несколько. Есть пример?
|
|||
52
Жан Пердежон
30.07.19
✎
13:19
|
(48) если возможно - тащить медленно данные к себе в базу периодически; отдавай их быстро уже из своей базы по запросу
|
|||
53
e2v
30.07.19
✎
13:19
|
(50) Гы 8)))
|
|||
54
e2v
30.07.19
✎
13:21
|
(52) Ну да , думал и так.
Пока не пробовал. Думал еще зеркало SQL-ки делать на базу. Не знаю. Чето как то не красиво 8))) |
|||
55
e2v
30.07.19
✎
13:24
|
(41) Не. Организация сделала сайт с оформлением заявок и продаж товаров для работы с клиентами.
Товары в одной базе, цены в другой, клиенты на листочке 8))) |
|||
56
Вафель
30.07.19
✎
13:27
|
а почему бы приложению не брать данные из разных баз?
|
|||
57
e2v
30.07.19
✎
13:30
|
(56) Потому что писали его люди, которые всегда правы 8)))
|
|||
58
e2v
30.07.19
✎
13:31
|
А вот какие мысли про кэширование СОМ соединения через веб сервер?
Если кто пробовал- хелп мне примерчик. |
|||
59
lodger
30.07.19
✎
13:37
|
(47) опубликую базу2 как odata. http://catalog.mista.ru/public/711302/
|
|||
60
bolero
30.07.19
✎
14:49
|
(49) Например:
|
|||
61
e2v
30.07.19
✎
15:37
|
(60) Это не я спрашивал про прямой доступ к базе. 8)))
Согласен, тоже выход, но с объектом ВнешниеИсточникиДанных даже проще. Иначе SQL-ку надо нормально знать. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |