|
Управляемый интерфейс: как в процедуре &НаКлиенте увидеть процедуру &НаСервере? | ☑ | ||
---|---|---|---|---|
0
Remarko
06.04.12
✎
18:13
|
Есть процедура в общем модуле, выполняется на сервере, в ней создается объект WSОпределения (доступен только на сервере). Потом в форме внешней обработки я хочу обратиться к этой процедуре, как это сделать?
|
|||
1
Armando
06.04.12
✎
18:15
|
ИмяОбщегоМодуля.ИмяПроцедуры(Параметры)
|
|||
2
Fragster
гуру
06.04.12
✎
18:15
|
ты не поверишь...
|
|||
3
Remarko
06.04.12
✎
18:15
|
(1) даже в одном модуле не видит
|
|||
4
lxs
06.04.12
✎
18:16
|
(доступен только на сервере).
вызов клиента поставь |
|||
5
Remarko
06.04.12
✎
18:18
|
&НаСервере
Процедура ПолучитьСоединение(Сервис) Экспорт Определение = Новый WSОпределения(WSОпределение); Сервис = Новый WSПрокси(Определение, XXX, YYY, ZZZ); КонецПроцедуры &НаКлиенте Процедура ПолучитьСоединениеКлиент(Сервис) Экспорт ПолучитьСоединение(Сервис); КонецПроцедуры |
|||
6
Remarko
06.04.12
✎
18:18
|
(4) где поставить?
|
|||
7
lxs
06.04.12
✎
18:19
|
на общем модуле
|
|||
8
Леха Дум
06.04.12
✎
18:20
|
Перевод сервера в режим отладки не предлагать?
|
|||
9
lxs
06.04.12
✎
18:21
|
(8) нах?
|
|||
10
Remarko
06.04.12
✎
18:22
|
(7) на модуле стоят три флага Клиент, Сервер, Внешнее соединение
|
|||
11
Remarko
06.04.12
✎
18:23
|
еще есть Вызов сервера, может он..
|
|||
12
Леха Дум
06.04.12
✎
18:24
|
(9) конец рабочего дня однако... (5) читаем вынимательно про инструкции препроцессору и где они работают
|
|||
13
lxs
06.04.12
✎
18:26
|
проверил, все видится)) без всяких клиентов и серверов..
|
|||
14
Remarko
06.04.12
✎
18:27
|
(13) из формы внешней обработки не видит
|
|||
15
vmv
06.04.12
✎
18:28
|
опять фигня какая-то, да что ж такое - вы все бухие?
|
|||
16
Remarko
06.04.12
✎
18:28
|
(15) точнее изъясняйтесь плс
|
|||
17
GROOVY
06.04.12
✎
18:29
|
Вызвать со стороны сервера процедуру находящуюся на клиенте НЕВОЗМОЖНО.
|
|||
18
Remarko
06.04.12
✎
18:29
|
(13) &НаСервере нужно, иначе WSОпределения не доступны
|
|||
19
Remarko
06.04.12
✎
18:30
|
(17) как поступать, если нужно в обработке получить инфо с сервера?
|
|||
20
Remarko
06.04.12
✎
18:31
|
я ж не со стороны сервера к клиенту хочу обратиться, а наоборот
|
|||
21
vmv
06.04.12
✎
18:32
|
если не юзать контекст формы, то можно объявить мотод в общем модуле с директивами клиент и сервер и в какой-либо форме вызыывать этот метод и с клиента и серваера или наоборот - так просто ляпнул - автор постановку задачи не уточнил, хотя наверяняка там бредятина 15 века до нашей ери
|
|||
22
Fragster
гуру
06.04.12
✎
18:36
|
(17) ему наоборот надо
|
|||
23
Remarko
06.04.12
✎
18:36
|
ну чего ж не вызываецца-то?))
|
|||
24
Remarko
06.04.12
✎
18:37
|
(22) ей)
|
|||
25
Кокос
06.04.12
✎
18:38
|
я так понял ты хочешь из модуля формы вызвать функцию из общего серверного модуля?
|
|||
26
vmv
06.04.12
✎
18:38
|
(19 да блина как как
&НаКлиенте Процедура ЧотаСделатьНаКлиенте() // чота делаем ..... // блин эта шняга тока на сервере может юзаться СтруктураПолучитьХреньССервера = ОбщиийМодульВсякаяХреньССервера.WSОпределения(); // опа, получили хрень с сервера ..... Предупреждение("Согласно хрени с сервера вы косячите - вас рассрелять?", 10); // Обработка.Расстрел.ОткрытьФормуКазни(); КонецПроцедуры |
|||
27
Remarko
06.04.12
✎
18:39
|
(25) да
|
|||
28
Кокос
06.04.12
✎
18:40
|
создай функцию посредник в модуле формы.
&НаСервере Функция ПосредникНаСервере() Возврат ОбщийСерверныйМодуль.СервернаяФункция(); КонецФункции &НаКлиенте Бла бла бла Значеньице = ПосредникНаСервере() бла бла бла |
|||
29
Fragster
гуру
06.04.12
✎
18:40
|
(24) опаньки! и даже фотка заполнена
|
|||
30
5 Элемент
06.04.12
✎
18:40
|
"Экспорт" добавить
|
|||
31
GROOVY
06.04.12
✎
18:40
|
Если нужно вызвать процедуру из модуля формы (со стороны клиента) то у общего модуля должен быть установлен флаг "Вызов сервера" ну и процедура экспортная должна быть.
|
|||
32
Remarko
06.04.12
✎
18:41
|
вроде так и делаю, лана, сделаю паузу, и экспорт есть, во внешней обработке:
&НаКлиенте Процедура Команда1(Команда) Сервис = Неопределено; ОбщегоНазначенияКлиентСервер.ПолучитьСоединениеКлиент(Сервис); Результат = Сервис.Sum(2,3); Сообщить(Результат); КонецПроцедуры |
|||
33
GROOVY
06.04.12
✎
18:41
|
На всякий случай: в общем модуле не надо писать &НаСервере...
|
|||
34
Кокос
06.04.12
✎
18:42
|
ну или процедуру посредник. пофигу короче
|
|||
35
5 Элемент
06.04.12
✎
18:42
|
ты в (11) написала "еще есть Вызов сервера, может он.." точно он, тебе уже давно пишут
|
|||
36
Кокос
06.04.12
✎
18:43
|
(32) сделай как (28) в твоем случае
&НаСервере Функция Команда1Сервере() Сервис = Неопределено; ОбщегоНазначенияКлиентСервер.ПолучитьСоединениеКлиент(Сервис); Результат = Сервис.Sum(2,3); ВОзврат Результат; КонецПроцедуры &НаКлиенте Процедура Команда1(Команда) Сообщить(Команда1Сервере()); КонецПроцедуры |
|||
37
vmv
06.04.12
✎
18:45
|
тема исчесчерпала себя, топикастера на кухню - фсе
|
|||
38
Кокос
06.04.12
✎
18:46
|
(37) УФ не для женщин :)
|
|||
39
Remarko
06.04.12
✎
18:48
|
(37) (38) ой, я вас умоляю))) советы понятны, далее разберусь, сейчас так: без НаСервере - тип не определен для WSОпределения, с НаСервере из формы обработки - процедура не найдена
|
|||
40
Кокос
06.04.12
✎
18:51
|
(39) как в (36) попробовала?
|
|||
41
Кокос
06.04.12
✎
18:51
|
(39) в (36) обе процедуры находятся в форме.
|
|||
42
GROOVY
06.04.12
✎
19:08
|
Не поленился: http://narod.ru/disk/45380350001.e63733c9ed42e4bb80548d094d63fee1/1Cv8.dt.html
Из клиентской процедуры модуля формы обработки вызывается процедура общего модуля. |
|||
43
Remarko
07.04.12
✎
20:08
|
Спасибо всем за помощь! Заработало после того как вызываемую процедуру выделила в отдельный модуль с флагами Сервер и Вызов сервера, без Клиента и Внешнего соединения, как GROOVY и показал в примере.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |