Имя: Пароль:
1C
1С v8
Глобальная клиентская переменная через расширение. Как??
,
0 trim89
 
16.03.20
13:14
Доброго времени суток!
Есть такая задача. Конфа спа-салон, несколько операторов на телефоне, у них открыта 1с и их программа, которая звонки перехватывает, как называется - не суть. Когда оператор отвечает, в 1с у оператора должно открываться окно либо неизвестный клиент, либо окно записи известного клиента. Поиск клиента идет по телефону. Конфу снимать с поддержки никак нельзя.

Решил через расширение. Добавил регистр, web сервис. Их программа при ответе оператора добавляет через веб в регистр запись, что с данного ip получен данный телефон. На клиенте 1с включен обработчик одидания, который по ip текущего компа смотрит запись в регистре. Если запись есть, ищет по телефону клиента и открывает нужную форму на нужном компе.

Проблема в том, что обработчик работает с интервалом секунда и запущен в модуле приложения при начале работы. То есть каждый раз вычислять ip не камильфо. Нужно его куда то положить, но через расширение глобальную переменную добавить не смог, она не видна. Кто нибудь так делал? Как ещё можно закэшировать ip?

Вариант с записью в блокнот и чтением, или открытием обработки, у которой в реквизите формы всё записано уже просмотрены)
1 vicof
 
16.03.20
13:17
Параметры сеанса
2 trim89
 
16.03.20
13:22
(1) они на сервере читаются. Раз в секунду на сервер ходить не хочется
3 famnam
 
16.03.20
13:22
может в модуль повторного вычисления?
4 Cyberhawk
 
16.03.20
13:24
(2) Реквизит формы, отображаемой на рабочем столе
5 trim89
 
16.03.20
13:26
(3) поподробнее, что это?
6 trim89
 
16.03.20
13:29
(4) этот вариант уже рассмотрен. Хочется более изящно, типа запись в локальный кэш, но я не знаю делается ли такое вообще и в принципе.
7 famnam
 
16.03.20
13:31
(5) общий модуль с опцией "Повторное использование возвращаемых значений"
8 arsik
 
гуру
16.03.20
13:32
9 H A D G E H O G s
 
16.03.20
13:43
Ну перехвати в расширение процедуру основной конфигурации, делов то
10 Александр Б
 
16.03.20
13:45
(6) Глупости.
Реквизиты обработки для того и нужны, чтобы с ними работала обработка. Это грамотное и правильное решение. Получаешь раз, пишешь в реквизит и используешь его. А запись в кэш - это уже как раз извращение совсем не изящное.
11 trim89
 
16.03.20
13:51
(8) хм, что то интересное, завтра почитаю. Спасибо.
12 Александр Б
 
16.03.20
13:52
(10) Хотя если механизм работает не с обработкой, а отдельно, то да. Нужно другое решение. Предполагал, что у пользователя уже активен некий АРМ.
13 trim89
 
16.03.20
14:02
(9) перехватить что? Глобальные переменые определяются не в процедуре.