|
Как правильно определить наличие параметра в области макета |
☑ |
0
bvb
24.01.12
✎
13:31
|
При использовании разных макетов при одном алгоритме заполнения возникает проблема :
что в одном макете параметр есть и его надо заполнять, а в другом нет и если его пытаться заполнить будет ошибка.
Как правильно (не через попытку) оапределить наличие параметра в макете.
|
|
1
Wobland
24.01.12
✎
13:31
|
почему через попытку неправильно?
|
|
2
Feanor
24.01.12
✎
13:32
|
ЗаплонитьЗначенияСвойств
|
|
3
Wobland
24.01.12
✎
13:32
|
да и вообще, Параметры.Заполнить()
|
|
4
Рэйв
24.01.12
✎
13:33
|
ТабличныйДокумент (SpreadsheetDocument)
Параметры (Parameters)
Использование:
Только чтение.
Описание:
Тип: ПараметрыМакетаТабличногоДокумента. Содержит коллекцию параметров макета табличного документа.
См. также:
ПараметрыМакетаТабличногоДокумента
(С)СП
Ключевое слово - КОЛЛЕКЦИЮ
|
|
5
Поpyчик-4
24.01.12
✎
14:02
|
(0) Вот так правильно
// Функция определяет существует ли реквизит у какого-либо объекта.
//
Функция ЕстьРеквизитОбъекта(Объект, ИмяРеквизита) Экспорт
КлючУникальности = Новый УникальныйИдентификатор;
СтруктураРеквизита = Новый Структура(ИмяРеквизита, КлючУникальности);
ЗаполнитьЗначенияСвойств(СтруктураРеквизита, Объект);
Возврат СтруктураРеквизита[ИмяРеквизита] <> КлючУникальности;
КонецФункции // ЕстьРеквизитОбъекта()
Пример использования
Для каждого ПараметрШаблона Из СтруктураШаблона.ПараметрыШаблона Цикл
Если ЕстьРеквизитОбъекта(Область.Параметры, ПараметрШаблона.Значение) Тогда
НаименованиеКолонки = СтруктураРезультата.СоответствиеПолейСКДКолонкамТаблицыТоваров.Получить(Справочники.ШаблоныЭтикетокИЦенников.ПолучитьИмяПоляВШаблоне(ПараметрШаблона.Ключ));
Если НаименованиеКолонки <> Неопределено Тогда
Область.Параметры[ПараметрШаблона.Значение] = СтрокаТовары[НаименованиеКолонки];
КонецЕсли;
КонецЕсли;
КонецЦикла;
|
|
6
bvb
24.01.12
✎
16:00
|
(5) Спасибо.
прссто отличная функция
|
|
7
Поpyчик-4
24.01.12
✎
17:54
|
(6) Это штатная. Выдернута из обработки печать ценников и этикеток в УТ 11. В Рознице 2 она тоже есть.
|
|