|
Управляемая_Форма | ☑ | ||
---|---|---|---|---|
0
galimovmaks
24.10.13
✎
13:09
|
в УФ обращаюсь к процедуре модуля объекта
&НаКлиенте Процедура Заполнить() Документ = Объект.Ссылка.ПолучитьОбъект(); Документ.ЗаполнитьПоляЗамены(); Документ.Записать(); КонецПроцедуры в процедуре ЗаполнитьПоляЗамены() заполняется табличная часть документа. процедура вызывается, но табличная часть не заполняется. где ошибка? |
|||
1
lxndr
24.10.13
✎
13:13
|
(0) в толстом клиенте запущен? Это плохо.
|
|||
2
galimovmaks
24.10.13
✎
13:15
|
(1) ну да.
|
|||
3
zippygrill
24.10.13
✎
13:16
|
(1) давая подробнее.
|
|||
4
zippygrill
24.10.13
✎
13:16
|
*давай
|
|||
5
galimovmaks
24.10.13
✎
13:16
|
(3) давай. что именно расписать?
|
|||
6
DexterMorgan
24.10.13
✎
13:19
|
Ошибка в процедуре ЗаполнитьПоляЗамены()
|
|||
7
galimovmaks
24.10.13
✎
13:19
|
можно сделать так
&НаСервере Процедура ЗаполнитьСервер() Документ = РеквизитФормыВЗначение("Объект"); Документ.ЗаполнитьПоляЗамены(); ЗначениеВРеквизитФормы(Документ, "Объект"); КонецПроцедуры НО, мне нужно именно с клиента обратиться к процедуре модуля объекта |
|||
8
DexterMorgan
24.10.13
✎
13:19
|
Это че ваще за НаКлиенте
|
|||
9
galimovmaks
24.10.13
✎
13:31
|
(8) директива компиляции
|
|||
10
Euguln
24.10.13
✎
13:32
|
(7) Это что за требование такое?
|
|||
11
GROOVY
24.10.13
✎
13:32
|
(0) Так писать не надо. надо именно перейти на сервер, получить из реквизитов формы прикладной объект, вызвать его процедуру, и потом прикладной объект сконвертировать обратно в данные формы.
|
|||
12
lxndr
24.10.13
✎
13:34
|
(3) в тонком такое вообще не отработает.
|
|||
13
galimovmaks
24.10.13
✎
13:35
|
(10) (11) в процедуре ЗаполнитьПоляЗамены() я получаю КомОбъект. когда делаю с сервера, имя файла записывается в каталог пользователя сервера и от туда не удается получить КомОбъект. а с клиента получается. вот отсюда и требование
|
|||
14
GROOVY
24.10.13
✎
13:36
|
(13) Так передай все что надо на сервер. Так как в (0) написано работать не будет, ты же копию объекта заполняешь.
|
|||
15
galimovmaks
24.10.13
✎
14:01
|
(14) Сделал вот так
&НаКлиенте Процедура Заполнить(Команда) Проц = ЗаполнитьСервер(); Проц.ЗаполнитьПоляЗамены(); Проц.Записать(); КонецПроцедуры &НаСервере Функция ЗаполнитьСервер() Документ = РеквизитФормыВЗначение("Объект"); Возврат Документ; ЗначениеВРеквизитФормы(Документ, "Объект"); КонецФункции срабатывает, НО только когда я документ открываю заново. где ошибка, не подскажите? |
|||
16
GROOVY
24.10.13
✎
14:11
|
&НаКлиенте
Процедура Заполнить(Команда) ЗаполнитьСервер(); КонецПроцедуры &НаСервере ПроцедураЗаполнитьСервер() Документ = РеквизитФормыВЗначение("Объект"); Документ.ЗаполнитьПоляЗамены(); ЗначениеВРеквизитФормы(Документ, "Объект"); КонецПроцедуры |
|||
17
galimovmaks
24.10.13
✎
14:16
|
(16) да блин, я ж говорил, мне с клиента надо процедуру вызывать
|
|||
18
GROOVY
24.10.13
✎
14:17
|
(17) Да я тоже говорил, что так ты нихрена не сделаешь.
|
|||
19
alexei366
24.10.13
✎
14:22
|
(0) А мож после всего этого вызвать процедуру формы перечитать(надеюсь её можно через код вызвать)
|
|||
20
alexei366
24.10.13
✎
14:24
|
(0) Или вообще делаешь как написал + вызываешь потом сервер а там:
Документ = Объект.Ссылка.ПолучитьОбъект(); ЗначениеВРеквизитФормы(Документ, "Объект"); Типа "перечитал" |
|||
21
alexei366
24.10.13
✎
14:25
|
(20) Или в толстом эт все на клиенте можно, но я тут уже хз, с толстым никогда не работал и работать не планирую
|
|||
22
alexei366
24.10.13
✎
14:26
|
(20) Только кстате лучше Ссылку передавать тыже все равно его записываешь "Документ.Записать();".
|
|||
23
alexei366
24.10.13
✎
14:27
|
(20) Или на клиенте в толстом сразу можно ЗначениеВРеквизитФормы(Документ, "Объект");
Корочь тестируй |
|||
24
alexei366
24.10.13
✎
14:29
|
(0) Но а так пацаны правильно говорят что у тя требование какоето не адекватное, мож расскажешь что делаешь мы те посоветуем как сделать лучше
|
|||
25
cw014
24.10.13
✎
14:31
|
Все это от лукавого
|
|||
26
Phace
24.10.13
✎
14:39
|
(17) делай как написано в (16) и не надо придумывать велосипеды.
|
|||
27
regniws
24.10.13
✎
14:44
|
Алло, вы хоть топег четали?
КОМ тут зовется? Документ.ЗаполнитьПоляЗамены(); Никак, то есть в принципе в тонком клиенте никак, вообще, абсолютно напрямую это не сделать. Нужно передавать данные, что наработает эта компонента с клиента на сервер и там уже работать с этими сериализованными данными. Если компонента что-то делает в зависимости от данных в документе, то сначала получаешь на клиента эти данные, зовешь компоненту, потом передаешь эти данные на сервер. А еще нужны объектные блокировки на этот документ тогда, но видимо это совсем выше понимания. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |