v8: on-line обмен данными (или запрос) между 2-мя разными конфигурациями

1. aim 20.03.08 13:17 Сейчас в теме
Может кто подскажет (хотя бы с чего начать изучение, ключевые слова): как можно в 8-ке реализовать обмен данными. Например, я работаю в конф. "Бухгалтерия" и хочу запросить кадровые данные на сотрудника из конф. "УПП" (на удаленном компе) синхронизированные по таб номеру (или ИНН). Можно ли это сделать штатными способами (и сколькими)?
Или проще писать dll-ки, которые через wind-овый COM-маршаллинг запустят на удаленном компе другую dll-2, которая запустит 1Сv8, которая выудит данные, которые отправятся обратно ко мне и т.д. и т.п.
(Так часто сталкиваешься с запросами и их обработкой (например при googl-ении), что начинает казаться, что это очень просто.)
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. aim 21.03.08 09:13 Сейчас в теме
Насколько я на сегодняшний день понимаю (этой темой и 8-кой занимаюсь недавно):

1) Получить разовые данные из удаленной базы можно через COM- (объект v8COMConnect) или Automation- (v8.Application) подключения. Которые, похоже, подключаются напрямую к ФАЙЛАМ удаленной базы (при наличии соответствующих Windows-прав доступа на файлы). Независимые подключения к файлам базы, похоже разрешены 1С.

2) Если удаленная база хорошо запрятана в удаленной сети, то взаимодействовать нужно через WEB-сервер и Активные Страницы, постоянно-запущенные в удаленной сети. К Активным Страницам можно делать подобие разового кадрового запроса. Сама удаленная Активная Страница взаимодействует с целевой базой также через COM- или Automation- подключения к ФАЙЛАМ базы.


Можно ли подключиться не к ФАЙЛАМ, а к самому постоянно-запущенному ПРИЛОЖЕНИЮ/ПРОЦЕССУ 1С через порт и посылать ему раз в неделю кадровый запрос непойму. Хотя наличие 3-уровневой архитектуры (выделенный сервер приложения) и кода, выполняемого на стороне сервера вроде зовет проверить эту возможность.


Хотя, т.к. кадровые данные могут вестись не только в 1С, но и в Excel, Paradox/DBF и т.д., то взаимодействие через постоянно-запущенный WEB-сервер возможно лучче.

Или, ещё проще, -- позвонить (не в обед), чтобы прислали по электронке хорошо-запароленный rar-архив с необходимыми данными и "немного" подождать. Главный плюс "телефонного" запроса -- наличие "подписи/ответственности" за предоставленные данные. А главнейший минус -- возможность ошибок, фальсификаций, отсутствие независимого контроля данных.
3. German 413 24.03.08 11:34 Сейчас в теме
Через прямой доступ к таблицам проше пареной репы
4. aim 24.03.08 14:43 Сейчас в теме
3) В 7-ке, вроде была какая-то функция "ОбработкаВеншнегоСобытия()", возможно это и есть прямой путь достучаться до запущенного 1С-ехе-шника. Только наверняка придется прикинуться dll-кой. Но и в этом случае проблемы с запросами из внешних сетей останутся. Так что -- web-службы отлаженные и защищаемые ?
5. aim 25.03.08 15:33 Сейчас в теме
4) В общем случае прямой доступ ко всей базе (всем файлам) ВСЕМ пользователям давать не хочется. Должен быть какой-то фильтрующий орган (WEB-сервер, 1С-ский ехе-шник).

(Слышал, что в SQL-базах можно разграничить доступ до отдельных записей. Далее всякие "источники Данных ADO" и т.д. Но 1С-овские данные хранятся во внутреннем формате...)
6. aim 25.03.08 15:37 Сейчас в теме
В принципе, для не слишком обильного траффика сообщений можно не "отправлять" запрос в целевую конфигурацию, а "положить" запрос для целевой конфигурации в предопределенную папку. Пусть сама оттуда берет, анализирует и шлет мне ответ.
7. steban 73 25.03.08 16:25 Сейчас в теме
Возможно стоит посмотреть в сторону MOM (Message Oriented Middleware).
Например MSMQ http://en.wikipedia.org/wiki/MSMQ.
Вся прелесть обмена данными через MSMQ в том, что посылающее и принимающее приложения не обязаны одновременно быть on-line.
Пример кода для v7.7 есть тут: http://www.1cpp.ru/forum/YaBB.pl?num=1154885072/37#37
легко адаптируется для v8.
8. aim 02.04.08 08:52 Сейчас в теме
Наверное, лучший выход - это электронная почта.
1) Может прорваться далеко в сеть, к любому настроенному компу.
2) Принимающее приложение 1с играет активную роль по фильтрации запроса.
3) Ответ может сформировать автоматически постоянно-запущенный сеанс (сервер) [наверное(?)], даже при отключенных пользователях. (например проверка почты 1 раз в час)
4) При необходимости, ответ можно ускорить -- пользователь вручную. (Почти on-line.)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот