Змінюй хід війни! Допомагай ЗСУ!

1С 8.2 управляемое приложение.Как выдать сообщение пользователю при выполнении на сервере?

🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
Статус: Offline
Реєстрація: 08.06.2007
Повідом.: 5968
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #1
1С 8.2 управляемое приложение.Как выдать сообщение пользователю при выполнении на сервере?

Может кто сталкивался.

Дано: обработка больших объемов данных в 1С 8.2, приложение управляемое. Пользователю необходимо периодически выводить индикатор о состоянии выполнения.

Обработка данных выполняется целиком на сервере, на клиент передает только результат выполнения работы (Успешно/неуспешно, лог ошибок).

Метод Состояние доступен только на клиенте (ясен пень), Сообщение пользователю хоть и доступно на сервере, но выдает результат на экран только после отработки на сервере и передаче на клиент. (то бишь все сообщения появятся за долю секунды до завершения обработки, тоже понятно почему). Гонять сервер-клиент туда-сюда для выдачи состояния/сообщения для 50-100 тысяч записей - верх извращения и потеря скорости. а индикатор НУЖЕН!

Как быть? Хоть по электронной почте отсылай через встроенный почтовый клиент.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #2
гм. я так понял тебе нужен индикатор который будет определять текущеее состояние процесса в процентном выражении ? Не проще ли просто вывести в Табло текущий выпоняемый процесс нежели мучаца с индикатором? Представляеш как часто прийдеца серверу гонять данные на индикатор при изменении состояния если ты говориш что там от 50-100 тыщах записей ?)
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #3
Представляеш как часто прийдеца серверу гонять данные на индикатор при изменении состояния если ты говориш что там от 50-100 тыщах записей ?)

Представляю. Поэтому делать таковое извращение даже не собираюсь.

вывести в Табло текущий выпоняемый процесс
?

Это как?
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #4
Тут вся соль заключается в том, чтобы оповещать пользователя непосредственно С СЕРВЕРА. И боже упаси гонять туда-сюда клиент-сервер.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #5
ну так хотябы в табло будут лица строки. и он будет видить все ) ... я такую хню делал когда перегружал справочники из одной базы в другую )
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #6
в табло, это в таблицу значений что ли?
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #7
З,ы а как ты себе по другому представляеш себе измененение индикатора если на него не поступают все время данные ? можно поставить задержку опроса состояния по времени...чтобы не каждую запись выводил...

Зы. хотелось бы еще понять что вы гоняете - записи регистров ? элементы справочников ?
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #8
З,ы а как ты себе по другому представляеш себе измененение индикатора если на него не поступают все время данные ? можно поставить задержку опроса состояния по времени...чтобы не каждую запись выводил...

Зы. хотелось бы еще понять что вы гоняете - записи регистров ? элементы справочников ?

:) Вызовом клиента из выполнения на сервере. :D
Гоняются данные из файла в справочники, документы, регистры и проч.

Ответа на свой вопрос в гугле и документации не нашел. Думаю, может кто сталкивался и каким боком решали этот вопрос.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #9
подозреваю что обычный сервер с толстым клиентом :)
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #10
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #11
:D нет

Он просто в цикл зафигачивал:
...
Сообщить(ВыполняемоеДействие);
...

А смысл? (Точнее .....СообщениеПользователю.Сообщить();) Юзер увидит результат только после окончания работы на сервере и при передаче на клиента. Толку?
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #12
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #13
Я пока вижу варианты решения:
1. Забить.
2. Объяснить заказчику, что он не прав.
3. Объяснить заказчику, что 1С не прав.
4. Превратить загрузку в полный ппц в виде индусского кода и увеличением времени выполнения в пару раз с загибом сервера и клиента, зато с индикатором, блин.
5. Отсылать юзеру сообщения 1 раз на 1000 записей на мыло. :D

6. Отсылать СМС!!! :іржач:
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #14
для рассылки смс ..у меня даже обработка гдето была ))))

предлагаю совместить пунк 2 + 1 елси не нравица сделать 4 по моему рецепту. вывалить в окно все загружаемые строки ) пусть смотрит как быстро меняюца бегущие строки )
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #15
почему после окончания, если сообщения в цикле выводятся?
сообщение будет на каждое действие. а табло вроде можно как-то очищать.

;) истину глаголиш.зачем очищять табло? пусть вниз ползунок бежит. увидит всю историю передачи )

почему после окончания, если сообщения в цикле выводятся?
сообщение будет на каждое действие. а табло вроде можно как-то очищать.


а толстый клиент от 8.1 как раз ничем не отличается.

я вобще про концепцию клиент сервер говорю для управляемых форм. а не конкретно для тонкого\толстого клиента. Меня напрягает например что нельзя теперь напрямую обращатся к элементу справочника или табличной части документа. Это теперь приходится делать через жопу
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #16
почему после окончания, если сообщения в цикле выводятся?
сообщение будет на каждое действие. а табло вроде можно как-то очищать.

Не веришь? Выполни под тощим клиентом конструкцию типа

&НаСервере
Процедура Адын()

Для ш = 1 по 100500 Цикл

Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Хлабысь +"Строка(1);
Сообщение.Сообщить();

КонецЦикла;

КонецПроцедуры


&НаКлиенте
Процедура Два()
Адын();
КонецПроцедуры

И увидишь, что будет.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #17
а можно и без ОчиститьСообщения(); тогда он увидит всю историю перегрузки :)
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #18
а можно и без ОчиститьСообщения(); тогда он увидит всю историю перегрузки :)

И после каждого сообщения выдавать его данные. Шоб не расслаблялся.

Вобщем, выбираю п.1 + п.3.
Пункты 5 или 6 клиенту не озвучиваю.:D

Всем спасибо.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #19
Нужен администратор 1С 8 (упп + бухучет для украины). Есть удаленный доступ.
 
  • 🟠 22:25 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
  • #20
Ага! Великий Ктулху услышал мои молитвы! Вышел новый, 14й релиз платформы 1С8.2, где есть возможность выдать сообщение пользователю при работе на сервере в явно указанную форму! :yahoo:
 
Назад
Зверху Знизу