79 / 79 / 20
Регистрация: 13.05.2009
Сообщений: 537
Записей в блоге: 1
1

Совмесное хранилище

07.03.2013, 12:01. Показов 1240. Ответов 7
Метки нет (Все метки)

Задача стоит следующая: Реализовать запись некоторых документов из одной базы в другую, например в "базе-1" записан или изменет счет покупателю, в это же время должно произойти создание или изменение документа в "базе-2". Так вот реализация этого решено сделать через доступ к 1с через СОМ, но так как обе базы на 1 компьютере, и пользователей много работает в режиме терминал, то очень накладно по ресурсам компьютера, для каждого юзера создавать свой СОМ-обьект еще одной базы 1с. Можно ли как то реализовать, чтобы создавался 1 СОМ обьект при старте первого юзера, а остальные просто использовали его.
Пытался сделать так:
СОМ1С = Новый COMObject("V82.COMConnector");
connection = СОМ1С.Connect("File=""Calc82"";Usr=""Администратор"";Pwd=""a dmin""");
Константы.СОМ1.Записать(connection);

но потом когда пытался прочитать то в connection оказалось пусто, какие есть идеи по решению поставленной задачи?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2013, 12:01
Ответы с готовыми решениями:

1с на сетевом хранилище
Здравствуйте, имеется сетевое хранилище D-link dns-325 и 1С 7.7 Сетевая (Бухгалтерия), два...

Хранилище Значения
Коллеги, изучая интересную вещь ХранилищеЗначения наткнулся на кое какие непонимания.. С...

внешнее хранилище
Кто-нибудь сталкивался с организацией внешнего хранилища для прикрепленных файлов в 1с? Задача -...

1с На Сетевом Хранилище
Здравствуйте, имеется сетевое хранилище D-link dns-325 и 1С 7.7 Сетевая (Бухгалтерия), два...

7
899 / 876 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
07.03.2013, 12:15 2
Цитата Сообщение от MrAndrey_ka Посмотреть сообщение
но потом когда пытался прочитать то в connection оказалось пусто
Конечно, Константы не для этого предназначены.

Видится 2 варианта:
1. Закрывать КОМ соединение, после того как оно отработало.
2. Реализовать фоновую очередь. Т.е. фиксировать измененные объекты и запускать одного "робота", который получая список объект передает их в др. базу.
0
79 / 79 / 20
Регистрация: 13.05.2009
Сообщений: 537
Записей в блоге: 1
07.03.2013, 12:30  [ТС] 3
Цитата Сообщение от Fenomen Посмотреть сообщение
Видится 2 варианта:
1. Закрывать КОМ соединение, после того как оно отработало.
2. Реализовать фоновую очередь. Т.е. фиксировать измененные объекты и запускать одного "робота", который получая список объект передает их в др. базу.
минусы каждого: в первом варианте после изменения и записи каждого документа будет каждый раз заново открывать базу, что может сказаться на производительности, а во втором варианте будет задержка передачи документов.

Хотя со вторым минусом можно смирится. А как создать фоновый поток, который опять же будет единым для всех юзеров?
0
Модератор
Эксперт 1С
3130 / 2812 / 528
Регистрация: 10.03.2011
Сообщений: 10,826
Записей в блоге: 1
07.03.2013, 12:44 4
Он будет скорее независимым от юзеров.
Можно воспользоваться регламентными заданиями в ветке Конфигурации - ОБЩИЕ
0
899 / 876 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
07.03.2013, 12:58 5
Цитата Сообщение от MrAndrey_ka Посмотреть сообщение
а во втором варианте будет задержка передачи документов.
Хотя со вторым минусом можно смирится.
Регламентное задание можно настроить хоть с периодичностью в секунду. Можно на основании него наплодить несколько фоновых и организовать параллельность. Но в вашем случае я думаю обработки раз в минуту будет вполне достаточно (А может и еще реже), Вы же не систему реального времени делаете.

Цитата Сообщение от Dethmontt Посмотреть сообщение
Можно воспользоваться регламентными заданиями в ветке Конфигурации - ОБЩИЕ
Здесь, стоить отметить, что если вариант работы файловый, нужно запускать платформу под специальным пользователем, для работы рег. заданий.
0
79 / 79 / 20
Регистрация: 13.05.2009
Сообщений: 537
Записей в блоге: 1
07.03.2013, 13:02  [ТС] 6
Цитата Сообщение от Fenomen Посмотреть сообщение
Здесь, стоить отметить, что если вариант работы файловый, нужно запускать платформу под специальным пользователем, для работы рег. заданий.
Тоесть, для того чтобы это работало нужно чтобы в базе постоянно находился определенный пользователь?
0
899 / 876 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
07.03.2013, 13:04 7
Цитата Сообщение от MrAndrey_ka Посмотреть сообщение
Тоесть, для того чтобы это работало нужно чтобы в базе постоянно находился определенный пользователь?
Если у Вас база файловая, а не клиент-серверная, то да.
0
2953 / 1765 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
07.03.2013, 22:12 8
Цитата Сообщение от MrAndrey_ka Посмотреть сообщение
Тоесть, для того чтобы это работало нужно чтобы в базе постоянно находился определенный пользователь?
А кто мешает запускать сеанс с изобретённым Вами пользователем? Хоть автоматом из винды, например, по расписанию.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2013, 22:12

Хранилище значения
Записываю: Регистр = РегистрыСведений.СохраненныеНастройки.СоздатьНаборЗаписей(); Пользователь =...

Хранилище значений
Привет всем! Люди, подскажите пожалуйста, первый раз сталкиваюсь с хранилищем значений, как его...

Поле с типом Хранилище Значений
Доброго времени. С 1С абсолютно не знаком, но дали задачу по интеграции с пред написанным...

РС + дин список + хранилище значений
день добрый ! есть регистр сведений, один из реквизитов - хранилище значений ( там настройки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.