![]() |
|
|
#1
|
|||
|
|||
|
Есть DBGrid к которому подключена база данных в формате Access, один из столбцов хранит true или false, в DBGrid это выглядит как рисованный "чекбокс" на строке.
Какое условие нужно слепить, чтобы в тех строках которые выбранные "чекбоксом" (реальное значение в таблице true) по кнопке "Save" сохранялся в тхт файл нужный столбец в строку с разделителем. Пример: Цитата:
В тхт выводится: Филимонов, Нежин, Сахаров, Нежин В StringGrid данная функция просто делалась, а в DBGrid застрял ( Спасибо. |
|
#2
|
||||
|
||||
|
Цитата:
|
|
#3
|
|||
|
|||
|
Да это я понял, но как обратится к той же ячейке которая хранит false или true, чтобы циклом проверить их все?
|
|
#4
|
||||
|
||||
|
Цитата:
Код:
Table1.First;
while not Table1.Eof do
begin
if Table1.FieldByName('чекбокс').AsBoolean then
begin
WriteValue(Table1.FieldByName('Фамилия').AsString);
end;
Table1.Next;
end; |
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
LostFuture (18.01.2014)
| ||
|
#5
|
|||
|
|||
|
Спасибо большое прибольшое.
Получилось так: Код:
var
f: TextFile;
i, k: Integer;
s1:string;
begin
AssignFile(f,('1.txt'));
Rewrite(f);
Append(f);
DBGrid.DataSource.DataSet.First;
while not DBGrid.DataSource.DataSet.Eof do
begin
if DBGrid.DataSource.DataSet.FieldByName('CHECK').AsBoolean then
begin
s1:=(DBGrid.DataSource.DataSet.FieldByName('NAME').AsString)+','+s1;
end;
DBGrid.DataSource.DataSet.Next;
end;
Delete(s1, Length(s1), 1);
Writeln(f,s1);
CloseFile(f); |