|
|
Заполнение областей макета, какой код работает быстрее |
☑ |
|
0
Sam1C
10.05.17
✎
16:20
|
Всем доброго дня!
Какой код работает быстрее:
1)
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
СтруктураДанныхПоставщик = Новый Структура;
ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации(ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Организация, ДанныеПечати.Дата), "ПолноеНаименование");
СтруктураДанныхПоставщик.Вставить("ПредставлениеПоставщика", ПредставлениеПоставщика);
СтруктураДанныхПоставщик.Вставить("Поставщик", ДанныеПечати.Организация);
ОбластьМакета.Параметры.Заполнить(СтруктураДанныхПоставщик);
ТабличныйДокумент.Вывести(ОбластьМакета);
2)
ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
ОбластьМакета.Параметры.ПредставлениеПоставщика = ФормированиеПечатныхФорм.ОписаниеОрганизации(ФормированиеПечатныхФорм.СведенияОЮрФизЛице(ДанныеПечати.Организация, ДанныеПечати.Дата), "ПолноеНаименование");
ОбластьМакета.Параметры.Поставщик = ДанныеПечати.Организация;
ТабличныйДокумент.Вывести(ОбластьМакета);
|
|
|
1
Вафель
10.05.17
✎
16:21
|
на 2х параметрах разницы не будет
|
|
|
2
polosov
10.05.17
✎
16:22
|
(0) Подготовка структуры более наглядно.
По скорости не будет разницы.
|
|
|
3
Sam1C
10.05.17
✎
16:22
|
(0) В типовых почти везде через Структура и Заполнить, хочу понять почему, вроде как второй проще для восприятия?
|
|
|
4
Sam1C
10.05.17
✎
16:23
|
(2) ну не знаю мне как то 2-ой лучше воспринимается + меньше строк
|
|
|
5
Sam1C
10.05.17
✎
16:24
|
Раз нет разницы, значит дело вкуса?
|
|
|
6
h-sp
10.05.17
✎
16:25
|
(3)это же элементарно, Ватсон. 1й вариант - это суперфишка БСП.
2й вариант сразу выкидывай в топку.
|
|
|
7
polosov
10.05.17
✎
16:26
|
(4) В типовых иногда подготовленная структура может использовать по-разному в разных местах кода.
Например при печати счета. Сначала готовится структура, а потом в зависимости от условий могут заполняться разные шапки ПФ.
|
|
|
8
h-sp
10.05.17
✎
16:27
|
(5) прикинь, если в макете нет поля "Поставщик", что произойдет во втором варианте?
|
|
|
9
Вафель
10.05.17
✎
16:27
|
для тестирования лучше через структуру
|
|
|
10
polosov
10.05.17
✎
16:28
|
(8) А ну да, УТ к примеру поддерживает редактирование шаблонов ПФ
|
|
|
11
youalex
10.05.17
✎
16:28
|
1-й вариант, как минимум, универсальней.
Т.к. ОбластьМакета.Параметры.Заполнить() - не выдаст ошибки, в случае отсутствия того или иного параметра в Макете
|
|
|
12
Sam1C
10.05.17
✎
16:29
|
(8) тут согласен
|
|
|
13
mistеr
10.05.17
✎
16:38
|
(0) Возьми да померь. Заодно нам расскажешь.
|
|
|
14
Fragster
гуру
10.05.17
✎
17:05
|
быстрее будет, если в качестве параметра "Поставщик" передавать нужное представление, полученное в запросе, вместо ссылки. Если идет групповая печать и тормозит именно в этом месте. Ну и кэшировать результаты ФормированиеПечатныхФорм.ОписаниеОрганизации, если оно не включено платформой, можно. Например создав свой общий модуль с повторным использованием значений на время вызова.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший