Имя: Пароль:
1C
1С v8
Тонкий клиент - есть возможность оповещения пользователя с сервера?
0 RomaH
 
naïve
19.04.12
10:53
Обработка - запросом выбираю список ссылок и регистрирую изменения в плане обмена

хотелось бы видеть сколько это по времени займет еще

как оповестить о ходе выплнения?

можно в журнал писать - но надо открывать второй сеанс
как еще можно7
1 pumbaEO
 
19.04.12
10:54
на клиенте Обработчик, и дергать сервер.
вебсокеты 1С не реализовала.

Короче с сервера на клиент - НЕТ.
2 Ненавижу 1С
 
гуру
19.04.12
10:56
3 RomaH
 
naïve
19.04.12
10:57
да даже не средсвами 1С

можно еще писать куда-либо в базе - но читать опять же с другого сеанса
а средствами ОС? типа нетсенд - но с обновляемым текстом сообщения
4 Ненавижу 1С
 
гуру
19.04.12
10:59
(3) в Inerbase/Firebird есть EVENT
5 RomaH
 
naïve
19.04.12
11:00
(2) с запросом будет изврат

Вызвать выполнение запроса
выполнить запрос
вернуть на клиента результат запроса

в цикле 10000000 раз вызвать сервер и сделать то что надо
долго
6 Ненавижу 1С
 
гуру
19.04.12
11:07
(5) ровно как ты и хотел ))
7 WebberNSK
 
19.04.12
11:07
(0) клиент запускает фон. задание. сервер куда нибудь пишет процесс. клиент читает, выводит...
8 RomaH
 
naïve
19.04.12
11:20
типа такого:

   ОбщееКоличество = Результат.Количество();
   
   ДатаПоследнегоСообщения = ТекущаяДата();
   
   Счетчик = 0;
   
   Пока Результат.Следующий() Цикл
       
       Счетчик = Счетчик + 1;
       
       Если ТекущаяДата() - ДатаПоследнегоСообщения > 2 Тогда
           
           ДатаПоследнегоСообщения = ТекущаяДата();
           
           ТекстСообщения = "" + Счетчик + "/" + ОбщееКоличество;
           
           ОповеститьКлиента(ТекстСообщения);
           
       КонецЕсли;
           
       ПланыОбмена.ЗарегистрироватьИзменения(УзелМИС2011,Результат.Ссылка);
       
   КонецЦикла;
   
   
   
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ОповеститьКлиента(ТекстСообщения)
   
   КоманднаяСтрока = "msg /server:" + ИмяКомпьютера() + " /time:1 * " + ТекстСообщения;

   ЗапуститьПриложение(КоманднаяСтрока);
   
КонецПроцедуры

а менее криво?
9 fisher
 
19.04.12
11:21
Да как не извращайся, а идеально не получается.
Чем красивше - тем сложнее и тормознутей реализация выходит.
Даже чисто теоретически для гладкого и реального прогресс-бара нужен постоянный обмен данными с сервером, что не есть гуд. Думаю, поэтому до сих пор на уровне платформы и не реализовано. Хотя, конечно, могли бы замутить человеческий прогресс бар с гладким интерполированным выводом без частых обменов.
10 Diman000
 
19.04.12
11:26
(5) Вызывай не 1000000 раз. Разбей этот миллион раз на 20 частей и вызови сервер всего 20 раз. А прогресс отображай с шагом 5%.
11 acsent
 
19.04.12
11:27
(2) хорош уже свой левый способ пиарить
12 ДенисЧ
 
19.04.12
11:28
(11) Пропиарь свой, правый...
Тебе куча народу будет благодарна...
13 acsent
 
19.04.12
11:29
правильно делать так:
http://infostart.ru/public/76309/
14 fisher
 
19.04.12
11:45
(13) Пробовал сравнивать производительность на больших объемах обрабатываемых данных с гладеньким прогресс-баром (маленькими порциями) и без прогресс-бара?
Закон Брукера: Даже маленькая практика стоит большой теории.