![]() |
#1 |
Moderator
|
display метод с параметром
Возможно ли такое ?
В общем ситуация такая: есть отчет, в него в качестве параметра я передал здоровенный контейнер. Отчет не табличного вида, а такой где куча контролов беспорядочно разбросано на дизайне. Теперь в каждый котрол необходимо вывести свой элемент из этого контейнера. Как это сделать ? 1. Распаковать контейнер в кучу переменных, для каждой переменной написать свой дисплей метод и привязать этот метод к контролу. Больно много делать. Лень ![]() 2. Можно в executeQuery каждой секции в нужные контролы выводить определенные данные из контейнера. Дело в том, что дизайн отчета уже есть, причем там разбросаны контролы, которые должны быть завязаны на данные. То есть, я так понимаю этот метод здесь не пойдет. А хотелось бы сделать один метод вида: display str Method(int _n) { if(_n == 1) return элемент 1 из контейнера if(_n == 2) return элемент 2 из контейнера ................ } А в контролах указать DataMethod = Metnod(k), где k для каждого контрола свой. Можно ли реализовать что-то похожее. Может посоветуете какое нибудь решение, а то что-то мне ничего в голову уже не лезет. Благодарю. |
|
![]() |
#2 |
----------------
|
Создать свой EDT-Array (как Dimension). Воткнуть display-метод
PHP код:
Но будет ли это легче... |
|
![]() |
#3 |
----------------
|
Еще вариант
Не передавать параметр в display-метод, а вести глобальный счетчик, который в executeSection обнулялся а при каждом вызове метода увеличивался..
Останется мааааленькая деталь - сопоставить номер вызова метода и контрол, для которого он вызвался. |
|
![]() |
#4 |
Участник
|
Судя по справке только display form data source method может принимать параметр все остальные Display методы не принимают.
|
|
![]() |
#5 |
Участник
|
А по-моему, проще контролы сделать текстовыми и заполнять их в exicuteSection'е
(по имени или по id) - что-то вроде: ReportTextControl RTC; int i = 1; RTC = this.controlNo(i) while (RTC) { RTC.text(getText(i)); RTC = this.controlNo(i); i++; } |
|
![]() |
#6 |
Участник
|
Цитата:
И в контролах указать этот метод и ArrayIndex.
Задаю параметр ArrayIndex - выводит пусто. Не подскажете с чем может быть связано ? |
|
|
![]() |
||||
Тема | Ответов | |||
Grid и display-метод | 20 | |||
OFF display метод в grid.... | 5 | |||
display-метод | 9 | |||
Можно ли в display методе узнать для какого FormControl'а этот метод вызван? | 3 | |||
Display-метод формы | 6 |
|