4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81

DBGridEh-DataSource-MemTableEh-DataDriverEh-ADODataSet-ADOConnection

23.01.2012, 14:38. Показов 9435. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не как не получается связать дбгрид'ех c бд по принципу
DBGridEh-DataSource-MemTableEh-DataDriverEh-ADODataSet-ADOConnection

MemTableEh-DataDriverEh-ADODataSet какие свойства надо изменить у этой группы?

кто может объяснить последовательность действий или есть пример буду очень признателен!

кстать гугл не помогает/в русском хэлпе ЭхЛиба такого не нашел
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.01.2012, 14:38
Ответы с готовыми решениями:

AdoQuery+DataSource+DBGridEh
Столкнулся с такой проблемой! В компоненте DBGridEh использую checkbox, все работает шикарно за исключением, последнего чекбокса! хоть...

Динамическое создание компонентов ADOConnection, ADODataSet, DataSource
Доброго дня, Работаю над курсовым проектом по Базам Данных. Уже изучил компоненты ADOConnection, ADODataSet, DataSource, TDBGrid....

DBGridEh+MSSQL+MemTableEh+CheckBox как?
Добрый день. Появилась необходимость создать динамически формируемую таблицу древовидного типа с галочками около каждого пункта....

11
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
24.01.2012, 12:54
Кто Вам подсказал такую причудливую цепочку и с какой целью ?
0
4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81
24.01.2012, 13:30  [ТС]
такую цепочку указывает хэлп EhLibrary
c обычным подключением(DBGridEh-AdoTable-ADOConnection) в DBGridEh фильтрация данных происходит не корректно и в фильтр не подгружается список уникальных значений поля!

ну теперь и цель ясна-добиться корректной работы фильтра в DBGrid
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
24.01.2012, 15:48
У Вас неправильное понимание о назначении и фунционировании грида. В т.ч. и эхлибовского. Все операции по отбору, фильтрации, упорядочению, поиску и т.д. данных в датасете выполняются собственно датасетом (в Вашем случае - TADOTable), но никак не гридом

MemTableEh, насколько мне известно, это набор данных в памяти в виде (и по функционалу) того же датасета. Используется в тех случаях когда табличные данные не привязаны ни к какому DAC, но программист хочет обеспечить пользователю "табличный" сервис. Вероятно, разработчики "датасета в памяти" предусмотрели какой-то "переходный" фунционал для перемещения данных "память"-"база через обычный TDataSet", но Вы, очевидно, не дали себе труда разобраться в нем, решив что эта связь делается тупым бросанием компонент и установления связи между ними в дизайне в стиле Фаронова-Архангельского Возможно, таинственный зверь с именем DataDriver и есть тот самый "переходник".
Думаю, что Вы мудрите излишне, пытаясь болты закручивать пинцетом - не проще ли изложить задачу, а потом уже рассказывать про инструменты, которые Вы использовали при ее решении ?
0
4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81
24.01.2012, 21:10  [ТС]

Не по теме:

:jokingly: неплохо сказано, как завуалировано))



Так про задание: обычная база данных,работа с таблицами(добавл\удал\переимен полей и таблиц), с поиском, печатью, экспортом в эксэль\ворд и необходима фильтрация и сортировка по всем столбцам(но есть одно но исходя и работы с таблицами - количество полей заранее не известно - и в ручную фильтр делать для меня просто не представляется реальностью и возможным

ну и немного цитат, из хэлпа:
На текущий момент библиотека умеет фильтровать и заполнять список уникальных значений колонки только для датасета типа TMemTableEh. Для фильтрации и заполнения уникальных значений при подключении грида к другому датасету перепишите функцию TDatasetFeaturesEh.FillSTFilterListDataV alues и по необходимости зарегистрируйте новый класс, наследуемый от TDatasetFeaturesEh ....
TDataDriverEh является базовым классом для TBDEDataDriverEh, TSQLDataDriverEh, TIBXDataDriverEh, TDBXDataDriverEh и TADODataDriverEh
этим мы и руководствуемся
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
25.01.2012, 07:25
MsGuns,
MemTableEh, насколько мне известно, это набор данных в памяти в виде
не совсем так но близко. В последних версиях EhLib в гриде появилась возможность интерактивной группировки данных по любому из полей датасета. Для этих манипуляций и используется такая хитрая связка. Т.е. в этой связке MemTableEh добавляет функциональность чтоб реализовать данные механизмы.
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
25.01.2012, 11:58
Я когда-то пытался использовать эхлиб именно из-за его супер-пупер грида. Но очень скоро бросил ибо увидел какой монстрокод добавляется к моему проекту и как тяжко дебажить его в поисках ошибки. Или надо написать собственный перерисовщик ячеек например. ИМХО, разработчики попытались всунуть в этот грид несусветный функционал- типа и повар, и плотник, и на мышей охотник. В результате получился монстр-агрегат, который в руках неопытного начинает пилить мышей и охотиться на кастрюли.
Все ИМХО, конечно
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
25.01.2012, 12:33
MsGuns, да есть такое за ехлибом. Не знаю как сам на него перешел всегда хватало инфопауера. Чего не хватало пилил руками. Писал функционал, а тут блин пилить затычки приходится.
Чужой проект - чужие грабли, а лоб мой.
0
4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81
25.01.2012, 12:35  [ТС]
ладно, со связкой проблемы...
А можно изменить состав условий фильтра? удалить ненужные которые работать отказываются!

вот например в хэлпе указано что из выпадающего фильтра можно удалить слова сортировки
В следующем примере в коде события грида OnSTFilterListValues удаляются элементы выпадающего списка, выполняющие сортировку:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TForm1.DBGridEh1FillSTFilterListValues(Sender: TCustomDBGridEh;
  Column: TColumnEh; Items: TStrings; var Processed: Boolean);
var
  Index: Integer;
begin
  Sender.DefaultFillSTFilterListValues(Column, Items);
  Index := Items.IndexOfObject(PopupListboxItemEhSortAsc);
  if Index >= 0 then
    Items.Delete(Index);
  Index := Items.IndexOfObject(PopupListboxItemEhSortDes);
  if Index >= 0 then
    Items.Delete(Index);
  Processed := True;
end;
например удалить пустые и не пустые, содержит, не содержит, больше, меньше и равно и т.д
есть список этих объектов?
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
25.01.2012, 12:38
Слушай вот ты знаешь с эхами идет папка с демками. Открыть и перекомпилять не пробовал?
Там есть то что тебе надо. Если нет демок то они с легкостью качаются на офе эхов.
1
4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81
25.01.2012, 12:41  [ТС]
спасиба за дельный совет! попробуем-отпишемся
0
4 / 4 / 1
Регистрация: 10.12.2010
Сообщений: 81
29.01.2012, 00:19  [ТС]
очень тяжело но разобраться получилось) хотя их исходники такая гадость! спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.01.2012, 00:19
Помогаю со студенческими работами здесь

Сумирование по столбцу с использованием компонентов DBGrid, ADOConnection, ADODataSet
Ребята,в DBGrid есть записи:Наименование товара,Фирма-производитель и Стоимость. Как посчитать стоимость товара по определенной фирме и...

Сумирование по столбцу БД Access с помощью компонентов DBGrid,ADOConnection,ADODataSet
Ребят уже 3 часа я ищу как это сделать и не могу найти , нахожу чтото типо такого Query1->SQL->Text = "SELECT SUM(sum) FROM...

ADOConnection, ADOQuery, DataSource. Разбор полетов)
в общем, есть несколько РадиоБатонов, кликанье по которым определяет содержимое SQL запроса. вот среди них на обработчике события клика...

Как подключить базу даных через: ADOConnection + ADOQuery + DataSource + BDGrid?
Как подключить базу даных через:ADOConnection+ADOQuery+DataSource+BDGrid???Подскажите пожалуйста!!!!

Можете сформулировать, для чего конкрето служат компоненты adoconnection, adotable и datasource?
Можете сформулировать, для чего конкретно служат компоненты adoconnection, adotable и datasource?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru