Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.18;
Скачать: CL | DM;

Вниз

Acсess и Делфи.   Найти похожие ветки 

 
Сергей А.   (2005-11-29 21:30) [0]

Я не занимался БД поскольку раньше такой задачи не было, но сейчас возникла потребность решить некоторые задачи с помощью Delphi. Предистория такая! На работе я сделал в Аксесе файл в котором содержится 12 таблиц (по количеству месяцев) и определенные запросы. Я работаю непосредственно в таблицах. Скажем сейчас ноябрь, поэтому всю текущую информацию я записываю в соответствующую таблицу. Таблицы однотипны. В них около 20 полей: дата заказа, имя клиента, комплектация заказа, дата готовности и.т.д. Мне бы очень хотелось управлять этой таблицей из Делфи приложения. Под управлением я понимаю добавление новых записей, проведение сортировки, фильтрации (скажем нажав на кнопку оставить только определенных клиентов или цеха фабрики, которые выполняют заказ), подготовки отчетов для печати. Кроме того, очень важно, чтобы в определенных полях появлилсь значки в зависимости от содержания определенного поля. Например, у меня есть поле "тип клиента". Необходимо отследить если в поле "имя клиента" указан к примеру, ЧП Пупкин, то в поле "тип клиента" надо написать "VIP" и выделить эту ячейку скажем красным цветом.

Вопрос в связи с этим вот какой! Во-первых, можно ли выполнить все, что я до этого описывал с помощью Делфи на базе уже имеющегося Аксесовского файла. Если можно, то просьба указать какие компоненты нужно использовать и вообще в какую сторону "копать"?

Заранее благодарен.


 
Дева ©   (2005-11-29 22:16) [1]

ADO + JET
ADOTable - TableName просто выбираешь из списка свои готовые запросы
ADOQuery - там можно запрос SELECT * FROM Запрос1


 
Сергей А.   (2005-11-30 00:16) [2]

У меня опять же 2 вопроса!
1 Вопрос.
В Аксесе сделанные мной таблицы имеют нормальный вид. Например, ширина столбца поля "код заказа" самая маленькая, а поле "примечание" самое большое. Потом там где у меня цифры в таблице, запятая идет после 2 знака, а в TDBGrid ширина столбцов одинаковая и после запятой идет куча знаков. Как сделать так, чтобы TDBGrid отображал таблицу также как и в Аксесе или как настроить TDBGrid?
2 Вопрос.
Когда я загрузил в TDBGrid Аксесовскую таблицу, то возникла необходимость установить фильтр. Причем понятно, что можно сделать запрос и этот запрос проведет нужную фильтрацию, но мне бы хотелось провести фильтрацию в рамках TDBGrid. Можно ли программно через TDBGrid провести фильтрование или скажем скрыть определенные поля?

Заранее благодарен.


 
Virgo_Style ©   (2005-11-30 00:30) [3]

Сергей А.   (30.11.05 0:16) [2]

2a. TDataSet.Filter, TDataSet.Filtred или DataSet.OnFilterRecord
2b. двойной клик по DBGrid (сначала выставить Connected и Active = true)


 
Дева ©   (2005-11-30 02:52) [4]

С вопросом 1 не сталкивалась, если надо было просто руками меняла размер столбцев,
на вопрос 2 есть свойство Filter и Filtered
В Filter пишешь условия вильтрации (Field1 = DDD) и ставишь Filtered = true;
Если хочешь, чтобы фильтрация происходила из каких-то условий, которые задаешь например в Edit1, то можно

ADOQuery1.Filter:=Edit1.Text+" Like """+Edit2.Text+"""";
ADOQuery1.Filtered:=true;



Страницы: 1 вся ветка

Текущий архив: 2005.12.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.065 c
3-1130418816
mefisto
2005-10-27 17:13
2005.12.18
Какую технологию для доступа к данным выбрать ?


4-1129270424
Чапаев
2005-10-14 10:13
2005.12.18
Создать property sheet page


3-1130995880
Dreamse
2005-11-03 08:31
2005.12.18
Как узнать существует ли столбец ?


14-1132996973
Антон773
2005-11-26 12:22
2005.12.18
новости мира компонент


3-1130503241
Брат
2005-10-28 16:40
2005.12.18
Передача параметра