|
обработка событий внешней базы в v8
|
|||
---|---|---|---|
#18+
Доброго времени суток. Подскажите, каким образом лучше и правильней реализовать следующий сценарий: есть внешняя база(постгресс, мускуль не важно), в которую заносится информация о поступающих звонках. требуется: при внесении новой строки в эту бд у диспетчеров в 1с8 выскакивает окошко с информацией о клиенте с вопросом о создании документа/счета для этого клиента. как я это вижу: у каждого диспетчера стоит приложение, которое ждет событий бд, как только оно наступает - по activex передает в 1с информацию о звонке, что надо мигнуть сообщением и в случае утвердительного ответа заполнить документ и вывести его. возможно ли так сделать? есть еще второй вариант - не использовать внешних приложений и обрабатывать работу с базой из 1с, возможно ли это? как сделать реакцию на событие/поступление данных? как сделать так, чтобы процедура постоянно ожидала событие и не зацикливала работу самой платформы? п.с. прошу прощения за некоторую сумбурность объяснений %) не 1сник я. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2008, 15:29 |
|
обработка событий внешней базы в v8
|
|||
---|---|---|---|
#18+
Обработка внешних событий - часть используемого еще с платформы 7 интерфейса Внешних Компонент (ВК) Для платформы 8 этот интерфейс, кажется, не изменился - хотя поводов проверить не было, хватает функционала самой платформы (в отличии от 7.7, для которой компоненты делал). Написать по описанию и примерам ВК от 1С свою компоненту на любом из языков, пригодных для COM и IDispatch - может любой вменяемый программист, знакомый с этими понятиями. Примеры и интерфейсы приведены для С++ (кажется, теперь уже и для C#), Delphi разных версий и VB. А организовать из своей ВК взаимодействие с другой базой - тоже вполне реально. Вызывать же из другого приложения 1С и передавать ей данные - можно, но не в этом случае. Каждое COM-соединение с 1С - это еще один клиентский процесс, который взаимодействует с базой, и только с ней, а не с другими клиентами (оператором БД то есть). А Клиенты 1С хорошо изолированы, и передать какие-либо данные от процесса-сторожа процессу оператора никак нельзя - только через БД. Ну, или окошком оператору мигнуть - пусть, бедолага, сам клиента в справочнике ищет. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2008, 16:07 |
|
обработка событий внешней базы в v8
|
|||
---|---|---|---|
#18+
большое спасибо за информацию - уже немного проясняется способ :) смотрю в сторону ЗагрузитьВнешнююКомпоненту в функции ПриНачалеРаботыСистемы(), а далее ОбработкаВнешнегоСобытия(), осталось только посмотреть в коде как эти события генерятся. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2008, 16:34 |
|
обработка событий внешней базы в v8
|
|||
---|---|---|---|
#18+
Ищите набор "Технология создания внешних компонент". 1С продает его за небольшую денежку - в комплекте дискета и тонкая книжка. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2008, 16:40 |
|
обработка событий внешней базы в v8
|
|||
---|---|---|---|
#18+
сть еще второй вариант - не использовать внешних приложений и обрабатывать работу с базой из 1с хороший вариант. , возможно ли это? как сделать реакцию на событие/поступление данных? Возможно. соединяйся через адо и по таймеру проверяй состояние. авторкак сделать так, чтобы процедура постоянно ожидала событие и не зацикливала работу самой платформы? читай про ПодключитьОбработчикОжидания ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2008, 09:33 |
|
|
start [/forum/topic.php?fid=28&fpage=166&tid=1524689]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 134ms |
0 / 0 |