Главная страница
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.041 c
8-1121170462
nstur
2005-07-12 16:14
2005.12.18
Выполнить Stretch jpg файла


1-1132221617
Максим
2005-11-17 13:00
2005.12.18
Как узнать, какие модули из проекта войдут в приложение?


2-1132956257
Gala_l
2005-11-26 01:04
2005.12.18
Naity simvol v faile


4-1128525702
Максим
2005-10-05 19:21
2005.12.18
Информация о системе


2-1133518721
msgipss
2005-12-02 13:18
2005.12.18
как можно использовать наследование TService