Имя: Пароль:
1C
 
Передача значения между клиентом и сервером
0 Tolstiy Beremenniy
 
14.12.18
05:35
Почему не могу передать значение между клиентом и сервером?
я же передаю массив структур!!!!!


        //
        Масс   = Новый Массив;
        Структ = Новый Структура;
        //
        Структ.Вставить("ВыбраннаяВетвь", Элемент.ТекущиеДанные);
        Масс.Добавить(Структ);    
        //
        УровеньВетвиДерева(Масс);
1 AneJIbcuH
 
14.12.18
05:39
(0) а ошибка какая?
2 Tolstiy Beremenniy
 
14.12.18
05:39
(1) Да как обычно!


{Документ.Поступление.Форма.ФормаПодбора.Форма(156)}: Ошибка при вызове метода контекста (УровеньВетвиДерева)
        УровеньВетвиДерева(Масс);
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'param':
    форма: Элемент
    имя: {http://v8.1c.ru/8.2/managed-application/modules}param
по причине:
3 Mankubus
 
14.12.18
05:44
(0) текущие данные не передашь даже в массиве
4 Tolstiy Beremenniy
 
14.12.18
05:47
(3) Нужно же передавать массив структур?
То есть массив. элементами которого является структура.
Я и помещаю, ветвь дерева в структуру и помещаю её в массив
и передаю?!!!
5 Tolstiy Beremenniy
 
14.12.18
05:51
У меня есть выбранная ветка дерева значений, я хочу её
передать с клиента на сервер!!!!!
Как это сделать? Я ложу её в структуру. Структуру в массив.
И хочу передать!!!! Почему ошибка?
6 Галахад
 
гуру
14.12.18
05:57
(5) Тебя кто-то обманул. В структуру помещают значения строки, а не всю строку целиком.
Почитай статью:
http://catalog.mista.ru/public/240022/
7 catena
 
14.12.18
06:02
(5)Если ты думаешь, что можешь спрятать от сервера значение в яйцо, а яйцо в утку, то ты ошибаешься: как сервер не знал, что такое текущие данные, так и не знает.
8 Tolstiy Beremenniy
 
14.12.18
06:33
Ну вот такая задача, на клиенте я получаю выбранную ветвь
дерева значений. и теперь мне нужно перебрать её строки
и поместить в таблицу значений. Для этого мне нужно передать, ветвь на сервер что бы перебрать её.
как тут правильно поступить?

        ИдентификаторСтроки = Элементы.ДзНоменклатураДокумнетовДляПодбора.ТекущаяСтрока;
        ТекущаяСтрока       = ДзНоменклатураДокумнетовДляПодбора.НайтиПоИдентификатору(ИдентификаторСтроки);
9 Галахад
 
гуру
14.12.18
06:42
Беда какая-то. Неразрешимая задача в рамках 1С. Наверное стоит переформулировать задачу.
10 Tolstiy Beremenniy
 
14.12.18
06:51
(9) Ну задача такая!!!!!!
Есть форма подбора с деревом.
- Документ
  - Номенклатура документа.

Нужно что бы при щелчку по документу. Его номенклатура занеслась в таблицу значений и передалась в форму документа

В процедуру ОбработкаВыбора. Для последующего занесения
в табличную часть документа.
11 Tolstiy Beremenniy
 
14.12.18
06:53
Что за место таблицы значений можно использовать на клиенте?
12 catena
 
14.12.18
06:53
(10)Так передавай номенклатуру, а не текущие данные
13 Tolstiy Beremenniy
 
14.12.18
06:57
(12) На форме подбора текстовые данные.
Они загружены с другой базы как строки.
Нужно несколько строковых значений номенклатуры
передать в процедуру обработка выбора формы документа.
Не понимаю как это сделать ((((((
Голова сломана!!!!!
14 Tolstiy Beremenniy
 
14.12.18
06:58
(12) Да текущие данные это ветвь дерева значений с формы
документа, строки которой мне нужно передать в обработку
выбора формы документа.
15 Tolstiy Beremenniy
 
14.12.18
07:01
ОповеститьОВыборе(Элемент.ТекущиеДанные);
Это ветвь дерева значений с нужными строками, как
вот её выбранную передать в обработку выбора не пойму.
16 oslokot
 
14.12.18
07:05
(7) +1 Красиво! :)
17 hhhh
 
14.12.18
07:34
(13) ну передай массив нескольких этих строковых значений номенклатуры.
18 Tolstiy Beremenniy
 
14.12.18
07:53
(17) Например, любое количество строк

номенклатура
единица измерения
количество
цена
сумма

как это будет????
19 Tolstiy Beremenniy
 
14.12.18
07:53
(17) двумерный массив?
20 FIXXXL
 
14.12.18
08:47
(18) например дерево можно обойти на клиенте ЗНАЧЕНИЯ построчно сложить в структуру, которую добавить в передаваемый массив
на сервере разберешь эти псевдостроки
21 FIXXXL
 
14.12.18
08:51
(18) как вариант, работай НаКлиенте с

ДанныеФормыЭлементДерева.ПолучитьИдентификатор (FormDataTreeItem.GetID)
ДанныеФормыЭлементДерева (FormDataTreeItem)
ПолучитьИдентификатор (GetID)
Синтаксис:

ПолучитьИдентификатор()
Возвращаемое значение:

Тип: Число.

Описание:

Получает идентификатор элемента дерева.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер).

и

ДанныеФормыДерево (FormDataTree)
НайтиПоИдентификатору (FindByID)
Синтаксис:

НайтиПоИдентификатору(<Идентификатор>)
Параметры:

<Идентификатор> (обязательный)

Тип: Число.
Идентификатор строки дерева.
Возвращаемое значение:

Тип: ДанныеФормыЭлементДерева; Неопределено.
Неопределено - элемент не найден.
Описание:

Получает элемент коллекции по идентификатору.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер).

НаСервере
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.