Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

работа с DBF [D7]


Windows_3000 ©   (2005-01-09 23:59:00) 

Подскажите пожалуйста как загрузить данные из файла dbf в таблицу, затем обработать их и занести в эту-же таблицу другие данные на основе имеющихся. Т.е. загружаются 3 столбца таблицы, а из них по формулам получаются другие 5. BDE установлен.
Знаю вопрос глупый, но сам с бд почти не работал, а через поиск ничего так и не нашел. Очень прошу написать как это все можно сделать(главное как работать с dbf) или хотя-бы линк на статью по этой теме. Спасибо !


sniknik   (2005-01-10 17:21:00) [1]

обманывает. забудет наверняка (если вспомнил только на сессии).


Anatoly Podgoretsky   (2005-01-10 17:17:00) [2]

Не обманваешь?


Windows_3000   (2005-01-10 17:11:00) [3]

Огромное спасибо Ditrix и DSKalugin !!
ну просто не знаю что бы без вас делал =) Вот сдам сессию и буду учить бд :P


DSKalugin   (2005-01-10 15:00:00) [4]

Чтобы это было наглядно так:

1-Кинь на форму компоненты DataSource, Table, DBGrid

2-в свойствах этих компонент (F11) надо сделать такую привязку
Table.DatabaseName:=директория где лежит DBF или алиас
Table.TableName:=имя файла DBF
DataSource.DataSet:=Table
DBGrid.DataSource:=DataSource

3-проверяем правильность устанавливаем Table.Active=True
В таблице должна появиться информация из DBF
Программно это делается методами Table.Open / Table.Close
при запуске / выходе из программы соответственно.

4-определись куда будет деваться результат расчета
4.1-просто посмотреть и распечатать, отдать начальнику и забыть
для этого подойдет компонент отчетов типа QReport см. панель компонентов.

4.2-сохранить в таблице базы данных DBF (этой или другой)
если в этой

Table.First;
while not Table.EOF do begin
 Table.Edit;
// Тут сам расчет типа
 Table.FieldByName('имя поля с результатом').Value:=
   Table.FieldByName('имя поля исх дан1').Value*
   Table.FieldByName('имя поля исх дан2').Value / 100 -
   Table.FieldByName('имя поля исх дан3').Value;
 Table.Post;
 Application.ProcessMessages;
 Table.Next;
end;

5-Есть тут у нас один Плюшкин, который собирает на свой сервер всякого рода документацию по программированию.
Рекомендую ознакомиться http://podgoretsky.com/ddp.html
Delphi Documentation ProjectАнатолий Подгорецкий
6-Купи книгу
7-изучи примеры, которые прилагаются с Delphi


Ditrix   (2005-01-10 09:38:00) [5]

>>загрузить данные из файла dbf в таблицу
Query.SQL.Text:=
'insert into your_dst_table ( <список полей> ) '+
select * from your_src_table ';
Query.ExecSQL;

your_src_table - это имя твоего dbf файла

>> затем обработать их и занести в эту-же таблицу...
Table.TableName:= 'your_dst_table'
Table.Open;
while not Table.Eof do begin
// обрабатываешь свои поля
 Table.Next;
end;
...где то так....

кстати, разницы между dbf файлом и "таблицей" нет. работа dbf файлами ничем не отличается от работами с paradox файлами.


Наверх

Титульная страница Поиск, карта сайта Написать письмо