|
Как задать вопрос на сервере? | ☑ | ||
---|---|---|---|---|
0
Zombi
18.03.14
✎
11:12
|
Обработкой загружаю данные, все происходит в серверной процедуре. Хочу у пользователя спросить, не хочет ли он ручками 1 реквизит выбрать. Вопрос() доступен только на клиенте, а серверная процедура не видит клиентские. Как можно спросить у пользователя в данном случае?
|
|||
1
DexterMorgan
18.03.14
✎
11:13
|
ТС - никак.
Наверное пользователь нажимает какую то кнопку? |
|||
2
mikecool
18.03.14
✎
11:13
|
вернуть управление на клиента, спросить, вернуть взад - все же просто
|
|||
3
Aleksey
18.03.14
✎
11:13
|
никак, по новым стандартам нужно спросить ДО отхода поезда
|
|||
4
mikecool
18.03.14
✎
11:13
|
(1) дануна?
|
|||
5
ДенисЧ
18.03.14
✎
11:14
|
Кого на сервере будем спрашивать?
|
|||
6
Defender aka LINN
18.03.14
✎
11:14
|
Серверная, тишина, и тут из стойки с сервером приложений: "Документ не провелся! Что делать?"
|
|||
7
mikecool
18.03.14
✎
11:14
|
(3) что за стандарты?
|
|||
8
Aleksey
18.03.14
✎
11:14
|
(4) А ты как думал
|
|||
9
DexterMorgan
18.03.14
✎
11:14
|
Спрашивай на клиенте кароче заранее и передавай на сервер
|
|||
10
Aleksey
18.03.14
✎
11:14
|
(2) Как???? как прервать серверную процедуру и вернуть управления на клиента, чтобы потом вернуться обратно
|
|||
11
Aleksey
18.03.14
✎
11:14
|
я на этот вопрос 3 год не могу получить ответ на этом форуме
|
|||
12
Aleksey
18.03.14
✎
11:15
|
(5) никого, вопрос спросить у клиента на кленте
|
|||
13
Zombi
18.03.14
✎
11:15
|
Непонятно, что сложного было бы в процессе выполнения серверной процедуры вернуться в клиента, спросить и ответ передать серверу.
|
|||
14
mikecool
18.03.14
✎
11:15
|
делал при подборе товара по штрихкоду - если подбирается более одного возвращал список на клиента, юзер выбираал, возвращал взад выбранное значение и продолжал процедуру далее
|
|||
15
Aleksey
18.03.14
✎
11:16
|
(13) сам в офигиваю. Главное на сервер с клиента можно в любой момент уйти, а вот обратно - фиг там
|
|||
16
DexterMorgan
18.03.14
✎
11:16
|
(2) Ага. а потом опять на сервер, а потом опять на клиент, ты наверное любишь ибацо туда-сюда
|
|||
17
mikecool
18.03.14
✎
11:16
|
+14 или я не так понял задачу в (0)?
|
|||
18
bborisko
18.03.14
✎
11:16
|
Просто вызывать с клиента серверные процедуры по очереди - придется разбить одну серверную на несколько.
|
|||
19
mikecool
18.03.14
✎
11:16
|
(16) мне пох, ибеца железо, я только формирую задачу
|
|||
20
Aleksey
18.03.14
✎
11:17
|
(14) это обратная ситуация когда ты на клиенте, и переодически сервер дергаешь
|
|||
21
mikecool
18.03.14
✎
11:17
|
+19 главное - задача работает
|
|||
22
mikecool
18.03.14
✎
11:17
|
(20) так и (0) обработкой грузит, старт наверное таки с клиента идет
|
|||
23
vde69
модератор
18.03.14
✎
11:18
|
делается так
Процедура НаКлиентеКнопка1() Вопрос = НаСервереПодготовитьДанные(); Если ЗначениеЗаполнено(Вопрос) Тогда //задать вопрос и ввести доп данные КонецЕсли; НаСервереВыполнитьПроцедуру(); КонецПроцедуры |
|||
24
Aleksey
18.03.14
✎
11:19
|
(16) вроде бы не глупый
Дано, загрузить 20 документов Вариант 1. Каждый документ обрабатываем на клиенте, затем данные грзим на сервере, и так 20 раз Вариант 2. Все делаем на сервере и лишь при необходимости возвращаемся на клиенте Вариант 3. Всё грузим на клиенте в ТЗ, переодически запрашивая и проверяя данные на сервере, а затем грузим скопом ТЗ на сервере Ну и в каком случае туда-сюда будет меньше? |
|||
25
Avganec
18.03.14
✎
11:19
|
(0) либо через деление на блоки, либо через распараллеливаемость.
|
|||
26
fisher
18.03.14
✎
11:19
|
(0) Разбить обработку на этапы
1) предварительное сканирование с формированием списка всех вопросов пользователю 2) получение ответов на вопросы 3) окончательная обработка (14) Можешь предложить универсальный способ сохранения серверного контекста между серверными вызовами? Пример - подготовил на сервере мега-таблицу. Начинаешь её обработку. Вернул в середине управление на клиента. Куда мега-таблицу серверную девать? В параметр сеанса паковать? |
|||
27
fisher
18.03.14
✎
11:23
|
(26) + Хотя вру. Знаю способ. Можно через модуль с повторным использованием возвращаемых значений извратиться.
|
|||
28
Aleksey
18.03.14
✎
11:25
|
(27) это как? При условии что речь про внешние обработки
|
|||
29
DexterMorgan
18.03.14
✎
11:31
|
(24) Че за вопрос? По возможности обращения к серверу с клиента нужно минимизировать. Т.е. для ТС нужно подготовить данные, задать все вопросы и т.д. Если же для вопроса нужно обращение к серверу, ну будет два вызова сервера, но для данной задачи больше быть не должно
|
|||
30
kumena
18.03.14
✎
11:51
|
(16) спасибо, посмеялся от души!
|
|||
31
H A D G E H O G s
18.03.14
✎
11:53
|
(12) Мозг сворачивается.
Вот поэтому и нельзя семерочников к клиент-серверу подпускать. |
|||
32
fvadim
18.03.14
✎
11:56
|
(26) я может ошибаюсь, ПоместитьВоВременноеХранилище не поможет?
|
|||
33
Infsams654
18.03.14
✎
11:57
|
(0) не хочешь получить от серверного метода то, на что на клиенте можно ответить?
|
|||
34
PR
18.03.14
✎
12:04
|
(0) Кому?
|
|||
35
MSII
18.03.14
✎
12:09
|
(6) А потом из серверной внезапно поседевший админ выскакивает.
|
|||
36
H A D G E H O G s
18.03.14
✎
12:11
|
(32) Именно он и поможет. Только так. Но, сюрприз, сюрприз, с 8.2.14 МВТ нельзя в нем хранить.
|
|||
37
H A D G E H O G s
18.03.14
✎
12:12
|
Вообще забавно. Проблема высосана из пальца.
Да, конечно, клиентский вызов сервера был бы нелишним и я не вижу причин в отказе от него, но раз сделали - так сделали, ничего страшного. |
|||
38
IKSparrow
18.03.14
✎
12:14
|
(10)(11) Регистр сведений и запись прогресса процедуры тебя спасет.
|
|||
39
kiruha
18.03.14
✎
12:17
|
(0)
Достаточно просто - Запускаешь какую нибудь com в которой реализован вопрос, анализируешь ответ |
|||
40
НеБорис Нуралиев
18.03.14
✎
12:22
|
(37) Это концепция stateless-сервера.
|
|||
41
Aleksey
18.03.14
✎
12:23
|
(33) эээ например устройство куда нужно записать файл недоступно, нужно предложить пользователю записать в другое место
При загрузки произошла ошибка записи (транзакция к примеру), нужно предложить пользователю провести интерактивно, или отказаться от загрузки Вариантов много когда нужно прервать работу и спросить что-то |
|||
42
kiruha
18.03.14
✎
12:26
|
(41)
Я вызываю сторонние com объекты. Тот же Exel работает на ура. Но вопросов в транзакции конечно не задаю - это перебор |
|||
43
НеБорис Нуралиев
18.03.14
✎
12:27
|
(41) Вроде бы для таких целей придумали фоновые операции, аля "асинхронные события".
Мозг конечно выворачивает, но логика в этом есть. |
|||
44
Infsams654
18.03.14
✎
13:24
|
(41) (43) что тут сложного - объясни клиенту что не так (если за рулём не китаец). См (37) "Проблема высосана из пальца. "
|
|||
45
fvadim
18.03.14
✎
13:34
|
(41) не корректнее записывать файл на клиенте?
и как на счёт предварительной настройки? перед загрузкой крыжиками пользователь выбирает действия, например, если ошибка записи - прерывать/продолжать. предложение о ручном проведении можно выдать и после загрузки. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |