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

» Компонент Tdbf в Delphi 6

Автор: Smog
Дата сообщения: 01.07.2004 18:43
Скачиваю отсюда http://sourceforge.net/project/showfiles.php?group_id=34085&package_id=54025&release_id=247571 , вроде устанавливаю, как надо, сам компонент появляется на странице Samples, но даже скачанная с того сайта демобд ( http://sourceforge.net/project/showfiles.php?group_id=34085&package_id=54594&release_id=209804) не хочет работать, в частности нет свойства index у компонента.
Delphi 6, WinXP
Помогите, может у кого есть опыт работы
Автор: ranc
Дата сообщения: 06.07.2004 12:00
Какая версия компонента? У меня все работает.
Автор: Smog
Дата сообщения: 06.07.2004 14:10
ranc
6.3.6
можешь какой нибудь примерчик с основами скинуть?
Автор: ranc
Дата сообщения: 09.07.2004 06:58
Я с индексами не работаю, но:
там есть такое свойство "IndexName", где выбираешь имя индекса (если они определены). А вообще индексы описаны в свойстве "Indexes"
Автор: Smog
Дата сообщения: 09.07.2004 14:34
ranc
да мне любой пример кода, в котором обычные операции создание/редактирование и проч
Автор: MrZeRo
Дата сообщения: 09.07.2004 19:31
Smog
TDBF работает как часы!
Вот, например, выдержка из рабочего проекта
Ничего примечательного, но все же ...

Цитата:

DBF1.FilePath := ExtractFilePath(DFileName);
DBF1.TableName := ExtractFileName(DFileName);
DBF1.Open;
with DBF1 do
begin
Append;
FieldByName('F1').AsString := 'Something';
FieldByName('F2').AsString := 'SomethingElse';
Post;
end;

Автор: Smog
Дата сообщения: 10.07.2004 05:26

MrZeRo

Цитата:
DFileName

это что?
Автор: ranc
Дата сообщения: 10.07.2004 07:07
Smog
IMHO, это полный путь+имя файла-базы данных DBF.
А вообще работа с TDbf практически ничем не отличается от работы с TTable, кроме, конечно, маленьких своих ньюансов. Например, мне так и не удалось сделать, чтобы связать 2 базы на TDbf по master-detail.
Автор: vserd
Дата сообщения: 10.07.2004 12:11
ranc
Вычисляемые поля используешь?
Если используешь, в Гриде отображаешь?
Онинормально работают?
Просто у меня простейшее вычисляемое показывается только в одной записи в гриде.
Если не трудно, сделай такой код в OnCalcFields (создай вычисляемое поле 'TestString типа строка).
Begin
DataSet.FieldByName('TestString').asstring = '1';
end;

Должно быть 1 во всех записях с этим полем.
Автор: Smog
Дата сообщения: 13.07.2004 03:40
ладно, у меня заработало вроде все после удаления/повторной установки компонента.
Кто мне скажет, можно ли создавать базу данных програмно и сохранять ее в файл, а то DBF1.FilePath := ExtractFilePath(DFileName); выдает ошибку "файл не найден"?

Автор: ranc
Дата сообщения: 13.07.2004 09:11
Smog

Цитата:
procedure CreateTable ;
Call CreateTable at runtime to create a table using this datasets current definitions. If the
table already exists, CreateTable overwrites the tables structure and data.
If the FieldDefs property contains values, these values are used to create field definitions.
Otherwise the Fields property is used. One or both of these properties must contain values
in order to create a database table.
If the Indexes property contain values, these values are used to create indexes on the table.



Цитата:
procedure CreateTableEx ( DbfFieldDefs : TDbfFieldDefs );
Call CreateTableEx to create a table using given field definitions. These dbf field definitions
give more power, as you can specify precision for numeric fields, for example.


Это из документации по TDbf. Надеюсь, понятно, или нужно разъяснить?
Автор: Smog
Дата сообщения: 13.07.2004 16:49
ranc

Цитата:
Надеюсь, понятно, или нужно разъяснить?

это понятно, а как ее в файле сохранить?
Автор: MrZeRo
Дата сообщения: 13.07.2004 17:25
Smog
1. Устанавлавается FilePath - каталог, где будет создаваться таблица (например, 'C:\')
2. Устанавливается TableName - имя создаваемой таблицы (например, '1.dbf')
3. Заполняется FieldDefs - какие поля нужны
4. Вызывается метод CreateTable

Страницы: 1

Предыдущая тема: Выбор бд для форумного клиента под Delphi


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