Имя: Пароль:
1C
1С v8
8.2: передать табличную часть документа на сервер
0 Kaidend
 
25.11.11
11:27
Всем привет. Есть самописная конфигурация, в ней есть документ "поступление товаров и услуг", а у документа есть стандартная табличная часть "Товары" - номенклатура, количество, цена, сумма и так далее.

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

Как организовать передачу табличной части между формой и серверным общим модулем?
1 den158
 
25.11.11
11:28
А зачем ее передавать, если можно с сервера к ней обратиться?
2 Kaidend
 
25.11.11
11:29
Если просто в клиентском обработчике события нажатия на кнопку написать что-то типа:

ТестовыйОбщийМодуль.ПроверкаПередачи(Объект.Товары)

то 1С сообщает:

Нельзя изменять поле, содержащее объект данных формы
3 Kaidend
 
25.11.11
11:30
Если поступить более хитро, и в клиентской процедуре формы вызвать серверную процедуру этой же формы с таким кодом:

ТабличнаяЧасть = РеквизитФормыВЗначение("Объект.Товары", Тип("ДокументТабличнаяЧасть.ПоступлениеТоваровИУслуг.Товары"));
ТестовыйОбщийМодуль.ПроверкаПередачи(ТабличнаяЧасть);
ЗначениеВДанныеФормы(ТабличнаяЧасть, Объект.Товары);

то код отрабатывает без ошибок, но значение ТабличнаяЧасть - Неопределено. То есть он почему-то не выполняет преобразование реквизита формы в значение.
4 Kaidend
 
25.11.11
11:31
(1) Каким образом? Документ еще не записан в БД.
5 Kaidend
 
25.11.11
11:32
Можно выгружать в таблицу значений, передавть ее на сервер, там ее модифицировать, потом загружать обратно в ТЧ.

Но это как-то странно.

Почему все-таки не работает нормально код в (3)?
6 ДенисЧ
 
25.11.11
11:35
А на сервере взять ЭтаФорма.Объект.Товары? Не?
7 Kaidend
 
25.11.11
11:38
(6) А по-русски выражаться? Не?
8 Kaidend
 
25.11.11
11:43
А, туплю. В форме на сервере ведь доступен сам объект, а не только данные формы.

Что мне нравится в 1Сниках - так это умение выражаться полунамеками.

Ладно, всем спасибо.