Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
17.07.2013, 18:53
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
Здравствуйте. Имеется готовый отчёт на СКД. При выводе отчёта перед шапкой печатаются параметры, который пользователь задал в настройках формирования отчёта. В макете внутри СКД есть только две строки, содержащие параметры НачалоПериода и КонецПериода. А, как показано на скриншоте, выводится слово "Параметры:" и ещё третий параметр. Подскажите пожалуйста, в каком месте СКД можно манипулировать выводом этих задаваемых пользователем параметров. В частности, нужно не выводить третий параметр при определённом его значении, или, на крайний случай, вообще не выводить этот параметр никогда. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 08:21
|
|||
---|---|---|---|
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
NecroArt, поиграйтесь этими настройками. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 10:43
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
Закладка параметры. Галочка ограничение доступности. Насколько я помню - если стоит то параметр не выводится в скд. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:16
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
перед выводом получить скомпилированный макет, бежать по ячейкам, затирать ненужное, возвращать макет скд обратно ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:16
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
DmitriyZNecroArt, поиграйтесь этими настройками. Игрался, но это никак не влияет на вывод. И, думаю, это не приемлимо, т.к. это общее свойство на все параметры - нужно выводить остальные два; хотя, если убрать все параметры, то можно потом добавить только нужные вручную. Программист 1сЗакладка параметры. Галочка ограничение доступности. Насколько я помню - если стоит то параметр не выводится в скд. Да, он не выводятся при этом, но проблема в том, что он и не доступен для изменения пользователем. Нужно сохранить доступность параметра в настройках, при этом убрав его из вывода в макет. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:20
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
Последний выдох ГПЖ, Спасибо, как вариант сейчас попробую. Не подскажите, где нужно вмешиваться? Вот код, который выводит макет Код: html 1. 2. 3. 4. 5. 6.
ЭлементыФормы.Результат - как видно, область для вывода сформированного макета. Нужно работать с ДокументРезультат после строки "ПроцессорВывода.УстановитьДокумент(ДокументРезультат);"? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:33
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
у меня такое было в отчете, строящимся на базе типового Функция СформироватьТиповойОтчет(ОтчетОбъект, Результат = Неопределено, ДанныеРасшифровки = Неопределено, ВыводВФормуОтчета = Истина, ВнешниеНаборыДанных = Неопределено, ВыводитьШапкуОтчетаНаВсехСтраницах = истина) Экспорт Если ТипЗнч(Результат) = Тип("Строка") Тогда ПараметрыИсполненияОтчета = Неопределено; ПараметрыИсполненияОтчета = ОтчетОбъект.ПолучитьПараметрыИсполненияОтчета(); ДанныеРасшифровки = Неопределено; // Вывод отчета в XML СохранениеНастроек.ЗаполнитьНастройкиПриОткрытииОтчета(ОтчетОбъект); ОтчетОбъект.ДоработатьКомпоновщикПередВыводом(); // Сгенерируем макет компоновки данных при помощи компоновщика макета КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(ОтчетОбъект.СхемаКомпоновкиДанных, ОтчетОбъект.КомпоновщикНастроек.Настройки, ДанныеРасшифровки); // Создадим и инициализируем процессор компоновки ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; Если ПараметрыИсполненияОтчета <> Неопределено И ПараметрыИсполненияОтчета.Свойство("ИспользоватьСобытияПриФормированииОтчета") И ПараметрыИсполненияОтчета.ИспользоватьСобытияПриФормированииОтчета тогда ОтчетОбъект.ПередВыводомОтчета(МакетКомпоновки, ПроцессорКомпоновки); КонецЕсли; Если ВнешниеНаборыДанных = Неопределено Тогда ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,, ДанныеРасшифровки); Иначе ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки); КонецЕсли; ............. ............. ............. Процедура ПередВыводомОтчета(МакетКомпоновки, ПроцессорКомпоновки) Экспорт Для каждого _макеты Из МакетКомпоновки.Макеты.Макет1.Макет Цикл Для каждого _ячейки Из _макеты.Ячейки Цикл Для каждого _элемент Из _ячейки.Элементы Цикл Если _элемент.Значение = "На начало периода" Тогда _элемент.Значение = Формат(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода").Значение, "ДФ=dd.MM.yyyy"); ИначеЕсли _элемент.Значение = "На конец периода" Тогда _элемент.Значение = Формат(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода").Значение, "ДФ=dd.MM.yyyy"); ИначеЕсли _элемент.Значение = "Сумма_АП с ""Начало периода"" по ""Конец периода""" Тогда _элемент.Значение = "Сумма_АП с " + Формат(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода").Значение, "ДФ=dd.MM.yyyy") + " по " + Формат(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода").Значение, "ДФ=dd.MM.yyyy"); ИначеЕсли _элемент.Значение = "Договор (на конец периода)" Тогда _элемент.Значение = "Договор (" + Формат(КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода").Значение, "ДФ=dd.MM.yyyy") + ")"; КонецЕсли; КонецЦикла; КонецЦикла; КонецЦикла; КонецПроцедуры ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:53
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
Последний выдох ГПЖ, Спасибо за ответ. То есть после строк Код: html 1. 2.
В переменной МакетКомпоновки хранится конечный макет с заполненными ячейками, который и будет выведен, куда прикажут? После этих строк в нём уже можно искать интересующие данные? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 11:55
|
|||
---|---|---|---|
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
NecroArt, Нарисуйте свой макет для компоновки и не надо в код лезть. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2013, 12:20
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
DmitriyZ, Кажется, до меня начинает доходить (скд то только начал разбирать). В скд на вкладке "Макеты" вижу подходящий макет. Я думал, что это он выводится, но, очевидно, скд формирует в себе свой макет, а этот не использует. Буду искать, как указать его в качестве основного. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.07.2013, 10:05
|
|||
---|---|---|---|
|
|||
СКД Вывод пользовательских параметров в табличный документ |
|||
#18+
NecroArtПрограммист 1сЗакладка параметры. Галочка ограничение доступности. Насколько я помню - если стоит то параметр не выводится в скд. Да, он не выводятся при этом, но проблема в том, что он и не доступен для изменения пользователем. Нужно сохранить доступность параметра в настройках, при этом убрав его из вывода в макет.Меняет только чуть сложнее код примерно такой. КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода").Значение=что-то ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=28&tablet=1&tid=1519753]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 153ms |
0 / 0 |