|
УФ запись на клиенте | ☑ | ||
---|---|---|---|---|
0
mxs089
15.12.16
✎
09:55
|
&НаКлиенте
Процедура ... ФормаДокумента = ПолучитьФорму(...); ... теперь нужно записать, ЗаписатьНаСервере(ФормаДокумента); КонецПроцедуры &НаСервереБезКонтекста Процедура ЗаписатьОбъектНаСервере(ФормаДокумента) ДанныеФормы = ДанныеФормыВЗначение(ФормаДокумента.Объект, Тип(...)); ДанныеФормы.Записать(); КонецПроцедуры Ошибка при вызове метода контекста (ЗаписатьОбъектНаСервере) ЗаписатьОбъектНаСервере(ФормаДокумента); по причине: Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: Запись значения свойства 'param': форма: Элемент имя: {http://v8.1c.ru/8.2/managed-application/modules}param по причине: Ошибка отображения типов: Отсутствует отображение для типа 'УправляемаяФорма' Как записать документ на клиенте? |
|||
1
Heckfy
15.12.16
✎
09:57
|
Дык надо на сервер не форму а объект передать. :)
|
|||
2
mxs089
15.12.16
✎
09:59
|
(1) когда передаю объект, такая ошибка
Ошибка при установке значения атрибута контекста (Объект) ЗаписатьОбъектНаСервере(ФормаДокумента.Объект); по причине: Нельзя изменять поле, содержащее объект данных формы |
|||
3
Heckfy
15.12.16
✎
10:03
|
Дык сначала нужно объект получить, потом форму. :)
|
|||
4
Fedor-1971
15.12.16
✎
10:07
|
(0)(2) Сформулируй словами что ты хочешь сделать? Только полностью.
Есть некий документ, мне надо, например, "Создать и записать экземпляр" или "Открыть заполненную форму без записи", или "Инициировать создание объекта без записи" (3) Шутишь? получить объект? НаКлиете есть только ссылка на него, или форма (просто так НаСервер не передаётся, поскольку является коллекцией) |
|||
5
mxs089
15.12.16
✎
10:13
|
нужно открыть форму документа на клиенте, заполнить и записать изменения
|
|||
6
mxs089
15.12.16
✎
10:14
|
написал так
&НаСервереБезКонтекста Функция ЗаписатьОбъектНаСервере(Знач ДанныеФормы) ОбъектДанныеФормы = ДанныеФормыВЗначение(ДанныеФормы, Тип(...)); ОбъектДанныеФормы.Записать(); ЗначениеВДанныеФормы(ОбъектДанныеФормы, ДанныеФормы); Возврат ДанныеФормы; КонецФункции и копироватьданныеформы в формадокумента.объект |
|||
7
mxs089
15.12.16
✎
10:17
|
не понимаю, почему нельзя в серверную процедуру передать форму, в типовых решениях в общих серверных модулях как раз принимают в качестве параметра форму
|
|||
8
Fedor-1971
15.12.16
✎
10:46
|
(5) соотнеси две вещи:
1. Объект существует на сервере и там с ним работают (создают, заполняют, записывают). Подготовь данные для заполнения и отправь на сервер (создай объект, заполни, сохрани - на клиент возвращай ссылку). 2. форма - это представление объекта для клиентской части, некоторые функции(процедуры) помеченные как Экспортные можно вызывать при получении формы НаКлиенте, но смысла нет гемороиться с такими вызовами. Логика простая: Если получил форму - то она нужна для отображения пользователю (заполненная или чистая), остальные действия с Объектом лучше делать НаСервере по ссылке или подготовленным данным для создания объекта. (7) в УФ форму (как сущность) можно передавать как параметр только в варианте Сервер-Сервер, программного интерфейса передачи Клиент-Сервер нет, о чём тебе было сообщено в (0) Отвыкай работать через формы. Проектируй работу системы так, что-бы не было надобности дёргать формы для заполнения/создания объектов |
|||
9
Fedor-1971
15.12.16
✎
10:50
|
(5) Для УФ правильно: отправить данные для создания объекта НаСервер, там его создать и заполнить, вернуть ссылку НаКлиент, если нужно, то открыть пользователю форму объекта по ссылке
|
|||
10
Fedor-1971
15.12.16
✎
10:51
|
9+ ошибочка вышла
заполнить = заполнить+записать (иначе ссылки не будет) |
|||
11
Вафель
15.12.16
✎
10:53
|
почему форму именно на сервере записать нужно?
Вообще то это на клиенте делается форма.Записать |
|||
12
Heckfy
15.12.16
✎
10:55
|
(4) А то. У меня сегодня телепат.длл барахлит.
|
|||
13
mxs089
15.12.16
✎
11:04
|
(8) по поводу сервер-сервер, при открытии формы на сервере экземпляр формы не создается?
|
|||
14
Cyberhawk
15.12.16
✎
11:09
|
(13) Открытие формы не происходит на сервере
|
|||
15
Fedor-1971
15.12.16
✎
11:36
|
(13) в СП почитай где для УФ существуют ОткрытьФорму и ПолучитьФорму
В открытой форме переходишь в контекстную процедуру НаСервере (форма целиком приедет на сервер), потом можешь передать дальше ЭтаФорма или Объект в общие модули (вызов Сервер-Сервер) |
|||
16
Mort
15.12.16
✎
12:17
|
Клуб любителей нетрадиционных методов создания объектов.
|
|||
17
mxs089
15.12.16
✎
12:19
|
спасибо всем! очень помогли)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |