![]() |
|
Табличная часть в УП | ☑ | ||
---|---|---|---|---|
0
MaiorovYury
07.04.14
✎
10:53
|
Добрый день,
задам наверное совершенно нубский вопрос, но с управляемым приложением раньше ни разу не работал. Надо переписать обработки с ОП на УП. При попытке обратиться к табличной части моей обработки просто по ее названию, вылетает ошибка, причем как для сервера, так и для клиента {Форма.Форма1.Форма(303,2)}: Переменная не определена (Отгрузки) <<?>>Отгрузки.Очистить(); (Проверка: Сервер) {Форма.Форма1.Форма(42,17)}: Переменная не определена (Отгрузки) НоваяСтрока = <<?>>Отгрузки.Добавить(); (Проверка: Тонкий клиент) Как обращаться к табличным частям моей обработки внутри управляемой формы? |
|||
1
Wobland
07.04.14
✎
10:54
|
внутри сервера. преобразовать реквизит формы в значение (объект)
|
|||
2
MaiorovYury
07.04.14
✎
10:55
|
Эти ошибки вылетают при попытке сохранить внешнюю обработку
1С:Предприятие 8.3 (8.3.4.437) |
|||
3
MaiorovYury
07.04.14
✎
10:56
|
(1) то есть ЭтаФорма.ЭлементыФормы.Отгрузки
А дальше? :) |
|||
4
Wobland
07.04.14
✎
10:59
|
ещё один считает, что данные - это то, чтоон видит
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) об=РеквизитФормыВЗначение("Объект"); |
|||
5
Wobland
07.04.14
✎
11:00
|
на тебе более информативный кусок
&НаКлиенте Процедура ЗаполнитьСлучайно(Команда) Если Вопрос("Табличная часть будет очищена. Продолжить?", РежимДиалогаВопрос.ДаНет)=КодВозвратаДиалога.Да Тогда СлучайноЗаполнить(); КонецЕсли; КонецПроцедуры &НаСервере Процедура СлучайноЗаполнить() док=РеквизитФормыВЗначение("Объект"); СерверныйМодуль.ЗаполнитьСлучайно(док); ЗначениеВРеквизитФормы(док, "Объект"); КонецПроцедуры |
|||
6
vvp91
07.04.14
✎
11:11
|
>> (1), (4), (5) преобразовать реквизит формы в значение (объект)
Так делать не надо. >> (0) Как обращаться к табличным частям моей обработки внутри управляемой формы? Внутри УФ есть основной реквизит формы, называется (как правило) - Объект. Если у обработки есть табчасти, то основной реквизит формы будет с типом ДанныеФормыСтруктураСКоллекцией, читай про этот тип в справке. // Обращаться внутри УФ тривиально как на клиенте, так и на сервере: Объект.Отгрузки.Очистить(); СтрокаОтгрузки = Объект.Отгрузки.Добавить(); СтрокаОтгрузки.ДатаОтгрузки = ТекущаяДата(); Если обращение идет на клиенте (в методах с директивой &НаКлиенте), то платформа сама обеспечивает передачу данных формы на сервер. Если обращение идет на сервере (в методах с директивой &НаСервере), то платформа обеспечивает передачу нужных измененных данных для отображения на клиенте. |
|||
7
MaiorovYury
07.04.14
✎
11:15
|
(6) О, спасибо!
Уже думал, что беда с этими преобразованиями |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |