Hallo!
Möchte dem Anwender die möglichkeit geben, nur bestimmte Felder einer Tabelle
anzeigen zu lassen.
Auswahl erfolgt über ListBox, schreibe mit der Selection(+Multi) dann die
SQL-Abfrage.
Bekomme aber dann immer eine Fehlermeldung wenn ich den 2. oder 3. ... Eintrag EINZELN
anwähle.
1.Eintrag ->single select geht, multi-select oder alle auch.
WARUM???
Delphi-Quellcode:
procedure TfrmMain.btnSelectClick(Sender: TObject);
var
Content : string;
i : integer;
ContentLength : integer;
begin
if lbFields.ItemIndex <> -1 then
begin
Content := '';
for i := 0 to lbFields.SelCount -1 do
begin
if lbFields.Selected[i] = true then
Content := Content + lbFields.Items[i] + ', ';
end;
ContentLength := Length(Content);
Delete(Content, ContentLength -1, 2);
qryMain.Close;
dbgrd2.Refresh;
srcmain2.DataSet := nil;
qryMain.SQL.Clear;
qryMain.SQL.Add('Select ' + Content + ' From ' +
ExtractFileName(opndlgOpen.FileName));
qrymain.ExecSQL;
srcmain2.DataSet := qryMain;
qryMain.Open;
end
else
begin
Application.MessageBox('Kein Feld ausgewählt. ', 'Fehler', MB_OK or
MB_ICONEXCLAMATION);
end;
end;
Vielen Dank, Philipp