Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Использование DevExpress 2

Автор: kvazars
Дата сообщения: 15.01.2009 11:45
Подскажите пожалуйста, как повторять на следующих страницах заголовки горизонтальных результирующих cxDBPivotGrid в dxComponentPrinter???
Автор: sam291074
Дата сообщения: 17.01.2009 21:43
Помогите.
Есть VGrid, в нем в одной из строк MRUEdit. По нажатию кнопки открывается диалог и выбирается имя файла. Заношу его в список так

Код: (TcxMRUEditProperties*)(FileNameStatic->Properties->EditProperties))->AddItem(OpenDialogMain->FileName)
Автор: X11
Дата сообщения: 18.01.2009 14:13
Нужно пронумеровать записи (строки) в cxGrid.
Если ты буду нумеровать запросом, то при фильтрации/группировке/сортировке средствами самого грида, естественно, нумерация будет неправильная. Может ExpressQuantumGrid предоставляет средства для нумерации строк?
Автор: afiget
Дата сообщения: 18.01.2009 16:09

Цитата:
Может ExpressQuantumGrid предоставляет средства для нумерации строк?

К сожалению, нет. Я в своих проектах делаю отдельную колонку в GetDisplayText вывожу
Row := Sender.GridView.DataController.GetRowIndexByRecordIndex(ARecord.RecordIndex, False)+1;
AText := IntToStr(Row);
Автор: X11
Дата сообщения: 18.01.2009 16:38
Вооот, то, что доктор прописал, спасибо.
Автор: HighTower
Дата сообщения: 19.01.2009 11:51
всем привет.

такая задача-вопрос, который не смог решать...

имеется TcxGridCardView, вид настроен, всё чики-пуки,

НО, для некоторых карточек внутри этого View требуется СКРЫТЬ некоторые строки... и вот тут у меня тупик...
или это нереально?

спасибо.
Автор: Andy_BitOff
Дата сообщения: 19.01.2009 15:34
Проверить не могу, но как понимаю CardView меняется при смене записи в Датасете, вот на этом событии и работай.
Автор: f3ka
Дата сообщения: 19.01.2009 15:44
Andy_BitOff скорее всего проблема будет если на экране не одна запись отображается... я тоже сразу подумал повесить обработчик на событие смены записи...
но если записей несколько отображается то строки спрячутся (отобразятся) во всех одновременно
Автор: Czechoslovak
Дата сообщения: 19.01.2009 15:50
sam291074

Цитата:
Как мне можно установить ItemIndex в соответствующее значение, ведь на экране не появляется вновь занесенный элемент сразу.


Установи Значение то есть EditValue
Автор: sam291074
Дата сообщения: 19.01.2009 19:10
Czechoslovak
То есть по индексу никак?
Автор: afiget
Дата сообщения: 19.01.2009 19:26
HighTower
Можно отобразить пустое значение в той строке, которую хочешь скрыть, используя OnCustomDrawCell.
Автор: HighTower
Дата сообщения: 19.01.2009 19:32
afiget
сейчас так и сделано, но всё равно не так...
пустая строка получается, некрасиво выглядит...

надо похоже вообще отказываться от карт..
Автор: Andy_BitOff
Дата сообщения: 19.01.2009 21:24
f3ka
Ну почему же? Ведь, для того, чтобы отобразить даже десять карт View должен будет прочитать все десять, иначе откуда он возьмет данные? А когда будет читать сработает событие. Однако как определить какая карта его инициировала... Наверняка у карты, как и у грида есть событие... Названия не помню, но смысл в том, что оно срабатывает когда гридколум хочет прочитать данные из датасета (это событие колонки), и в этот момент можно сделать что угодно.
Автор: jonikDk
Дата сообщения: 19.01.2009 23:38
можно ли с помощью cxGrid сделать мастер детайл для одной мастер таблицы и двух подчиненных, так чтобы подчиненные таблицы находились справа, а не внизу как обычно. (Связь один ко многим).


Автор: afiget
Дата сообщения: 19.01.2009 23:54

Цитата:
так чтобы подчиненные таблицы находились справа, а не внизу как обычно.

рисунок давай
Автор: jonikDk
Дата сообщения: 20.01.2009 10:09
afiget


на всякий случай, а то у меня ссылка не отображается
Ссылка
Автор: f3ka
Дата сообщения: 20.01.2009 10:39
Andy_BitOff
проблема вся в том что не существует каждой колонки (строки) для каждой записи в датасете... и если повесить прятать/показывать то будет прятаться/показываться для ВСЕХ записей...
jonikDk
а не легче ли сделать сложный запрос и поставить объединение ячеек?
Автор: jonikDk
Дата сообщения: 20.01.2009 11:30
f3ka
я думал об этом... но не решился и поэтому решил спросить
Как в этом случае будет работать суммирование ??
У меня сейчас так и сделано сложный запрос с объединением трех таблиц есть. Но не получится что данные будут по несколько раз суммироваться ??
Например в 1 подч таблице 2 записи, во 2 таблице 3 записи по связке с главной таблицей. Для второй записи из главной таблице может быть наоборот в 1 таблице больше записей чем во второй.
Получается мне надо будет для всех полей из 3 таблиц ставить объединение ячеек. Корректно ли будет это работать, особенно суммирование по числовым полям ??
Автор: afiget
Дата сообщения: 20.01.2009 11:33
jonikDk
Вижу 2 варианта. Какой из них выбрать, смотри сам.
1. То, что написал f3ka: сделать сложный запрос и поставить объединение ячеек. Этот вариант хорош, если выполняется немного сложных запросов в единицу времени и сервер достаточно мощный.

2. Поставить рядом 3 грида. Масштабируемость такого решения лучше, но придется немного поработать над визуальным отображением и реализовать свой переход между гридами в пределах одной строки родительской таблицы, если необходимо сохранить перемещение фокуса как в одном гриде.
Автор: jonikDk
Дата сообщения: 20.01.2009 12:04
afiget
по первому варианту, суммирование будет работать правильно или нет ??
а во втором варианте, тоже не все так просто как раз таки в визуальном отображении данных во всех трех гридах ?? Что в cxGrid можно для каждой строки отдельно указывать ее высоту ??
Автор: Andy_BitOff
Дата сообщения: 20.01.2009 12:45
f3ka
Это-то я прекрасно понимаю
Просто, если уж задача такая как ты это описал, то выбран не тот инструмент. Grid'ы (табличное представление данных) не предполагает сокрытия одной ячейки, только строки/столбца целиком.
Автор: afiget
Дата сообщения: 20.01.2009 12:57

Цитата:
по первому варианту, суммирование будет работать правильно или нет ??

Суммирование чего?
Кстати, мог бы и попробовать уже сам

Цитата:
Что в cxGrid можно для каждой строки отдельно указывать ее высоту ??

По твоему рисунку все строки каждого грида будут одинаковые, задать размер для всех строк можно, конечно.
Автор: jonikDk
Дата сообщения: 20.01.2009 13:31
afiget
суммирование по всем числовым столбцам

мог бы попробую, но чего то у меня скептический настрой по поводу возможной реализации. Вечером постараюсь попробовать и постараюсь отписаться
Автор: f3ka
Дата сообщения: 20.01.2009 14:10
Andy_BitOff дык не я задачу ставил, а HighTower... это его вопрос был...
Автор: jonikDk
Дата сообщения: 20.01.2009 14:58
afiget
попробовал поставить объединение ячеек, сумма как я и ожидал увеличивается в зависимости от строк в детальных таблицах
Автор: f3ka
Дата сообщения: 20.01.2009 15:35
jonikDk значит надо самому отрабатывать суммирование объединенных ячеек...
вот здесь приведен подсчет при объединении ячеек...
думаю что можно сделать какие-нить выводы
Автор: jonikDk
Дата сообщения: 20.01.2009 15:54
f3ka
спасибо, буду разбираться.
Автор: zuskatt
Дата сообщения: 21.01.2009 18:21
Доброго всем вечера.

Помогите, плз разобраться. Я совсем недавно работаю с компонентами DevExpress, и пока сильно путаюсь в их св-вах...
есть иерархическая структура
Бизнес: id, name_business
Регион id, name_region
Точки id, name_point, id_region, id_business
конечный результат: список ид-точек, НО
пользователь хочет видеть список Бизнес, и выбрать 1,2 ... n - записей, и чтобы автоматически отобрались все включенные в это множество регионы и точки, и также далее: если есть необходимость сузить поиск по региону или даже отобрав бизнес/регион/ и получив список точек - чтобы была возможность удаления и из этого самого нижнего уровня. В гриде стоит группировка по полям Бизнес - 1ур-нь, Регион- 2 ур-нь. Как при клике на верхний ур-нь(на любой уровень) - получить значение ключевого поля(ну или хоть что-нибудь, по чему можно было бы обновить данные датасета) ?
пример:
бизнес: турагенства +
-----------------------------------
регион: Киев +
---------------------------------
точки: крещатик 26 +
набережная 12 +
---------------------------------
регион: Львов --
----------------------------------
точки: франка 15 --
пр-т мира 23 --
------------------------------------
бизнес: банки +
-----------------------------------
регион: Киев +
---------------------------------
точки: победы 38 +
кирова 12 --
окружная 3 +
---------------------------------
регион: Львов --
----------------------------------
точки: франка 65 --
набережная 56 --
------------------------------------
бизнес: спорткомплекс --
-----------------------------------
регион: Киев --
---------------------------------
точки: победы 38 --
победы 56 --
---------------------------------
регион: Львов --
----------------------------------
точки: франка 65 --
пр-т мира 24 --
------------------------------------



Автор: xokc
Дата сообщения: 21.01.2009 19:22
zuskatt

Цитата:
В гриде стоит группировка...


Цитата:
ак при клике на верхний ур-нь(на любой уровень) - получить значение ключевого
поля(ну или хоть что-нибудь, по чему можно было бы обновить данные датасета) ?

Непонятно в гриде все-таки группировка (тогда зачем еще что-то обновлять?) или же мастер-деталь?

Автор: zuskatt
Дата сообщения: 21.01.2009 21:47
мой запросик возвращает такой набор данных:
бизнес регион точка
б_1 р_1 т_1
б_1 р_1 т_1
б_1 р_1 т_1



Добавлено:
сорри, случайно отправилось
есть 3 таблички: точки [id, name, id_business, id_region], , регион [id,region_name], бизнес [id,business_name]
если взять [бизнес-точка], или [регион-точка] - то мастер-деталь, а в моем случае ... даже не знаю как его назвать ...

бизнес регион точка
б_1 р_1 т_1
б_1 р_1 т_2
б_1 р_1 т_3
б_1 р_2 т_4
б_1 р_2 т_5
б_2 р_1 т_6
б_2 р_2 т_7
б_2 р_3 т_8
б_2 р_3 т_9
б_3 р_1 т_10
б_3 р_1 т_11
б_3 р_4 т_12
б_3 р_4 т_13
б_4 р_1 т_14
б_4 р_2 т_15
б_4 р_2 т_16

Для моей задачи нужно получить определенный набор точек, так-как пользователь будет с этим набором проводить опред.действия.
Но хотят, чтобы можно было указать(например выделить галочкой)
б_1
б_4 / р_2
и это бы автоматически создавало набор точек
т_1, т_2, т_3, т_4, т_5, т_15, т_16

я использую cxGrid c группировкой по полям ( бизнес , регион)





Добавлено:
а обновлять нужно для удобства: видов бизнеса у меня 5 или 6, а точек 500-600. и если выделить 1-2 бизнеса, то таким образом можно сразу отобрать 250 точек, а когда на экране монитора вывалится список из 600 строк, то разобраться в этом уже сложно.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182

Предыдущая тема: Язык программирования на русском языке


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.