AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DBGrid Daten ändern

Ein Thema von Andidreas · begonnen am 25. Aug 2011 · letzter Beitrag vom 27. Sep 2011
Antwort Antwort
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

DBGrid Daten ändern

  Alt 25. Aug 2011, 16:41
Datenbank: SQLite • Version: ? • Zugriff über: ADUCOM SQLite
hallo zusammen...

kann man daten in einem dbgrid nachträglich abänder/manipulieren?

auf meiner form habe ich ein TDBGrid, TDataSource, Query Komponente... alles ist so miteinander verbunden, das nachdem absetzen eines selects die daten automatisch im TDBGrid angezeigt werden...

über die folgende prozedur habe ich schon versucht die daten nachträglich im dbgrid zu manipulieren (grund ist die falsche darstellung von umlauten):

Delphi-Quellcode:
procedure Tmain_form.prTDBGridUTF8ToAnsi(DBGrid: TDBGrid);

var
i : Integer;

begin

  //Disable Screen Update
  DBGrid.DataSource.DataSet.DisableControls;

  DBGrid.DataSource.DataSet.First;

  While Not (DBGrid.DataSource.DataSet.Eof) Do
  Begin
    For i := 0 To DBGrid.Columns.Count -1 Do
    Begin
      DBGrid.Columns[i].Field.Value := UTF8ToAnsi(DBGrid.Columns[i].Field.AsString);
    End;
    DBGrid.DataSource.DataSet.Next;
  End;

  DBGrid.DataSource.DataSet.First;

  //Enable Screen Update
  DBGrid.DataSource.DataSet.EnableControls;


end;
wenn ich an der stelle wo ich die "UTF8ToAnsi" konvertierung vornehme anhalte, dann seh ich auch das er die inhalte umgewandelt hat... aber hinther in der anzeige werden die umlaute die ich konvertieren möchte immer noch falsch angezeigt...

mach ich etwas falsch oder geht es gar nicht das ich die daten im DBGrid manipulieren kann?
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Benutzerbild von defede
defede

Registriert seit: 10. Aug 2006
Ort: Stötten am Auerberg
72 Beiträge
 
Delphi 7 Professional
 
#2

AW: DBGrid Daten ändern

  Alt 25. Aug 2011, 19:02
Hallo,
also die Daten musst du auf der Datenbank ändern.
Also mit Query.Edit und dann Query.Post ODER
per UPDATE,StorProc usw...

Soll es nur so aussehen als Ob kannst du Felder unsichtbar machen
und CalcFields nehmen. Alternativ kannst auch das OwnerDraw nutzen
und selber malen. Findest hier im Forum viele gute beiträge dazu.
Invader Zim
Obey Zim
Fear Zim
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

AW: DBGrid Daten ändern

  Alt 26. Aug 2011, 09:25
in der db stehen die daten korrekt drin... ich hab nur ein problem mit miener query komponente, diese holt mir die daten nicht korrekt ab, obwohl die DB selber und die DB komponente auf UTF8 eingestellt ist...

werd mir das mit calcfields und ownerdraw mal anschauen...

gibt es sonst noch möglichkeiten?
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
schlecki

Registriert seit: 11. Apr 2005
Ort: Darmstadt
148 Beiträge
 
Delphi XE2 Enterprise
 
#4

AW: DBGrid Daten ändern

  Alt 26. Aug 2011, 09:41
ich würde mal prüfen, welches Charset deine Query/Connection verwendet und in welchem Format deine Daten in der Datenbank stehen.

Falls du das nur für die Anzeige machen möchtest, schau dir mal TField.OnGetText, bzw. OnSetText an. klick hier
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: DBGrid Daten ändern

  Alt 26. Aug 2011, 11:52
die connection ist auf "UTF8" eingestellt... und das pragma encoding der db ebenfalls, wobei die sqlite standardmäßig eh mit "UTF8" arbeitet... und in der query komponente kann ich den characterset net definieren...

vielen dank für den link, werd ich mir dann auch noch anschauen...
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#6

AW: DBGrid Daten ändern

  Alt 5. Sep 2011, 13:13
ich hab mir das ganze mit dem OnGetText oder OnSetText angeschaut...
lt. der beschreibung von embercadero müsst ich da ja schon im vornherein wissen welche felder ich im ergebnis anzeig...
aber bei meinem aufbau weiß ich das ja nicht unbedingt im voraus, da ich die felder ja erst im select befehl definiere und nicht schon vorher im designer!
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Laines

Registriert seit: 21. Sep 2011
1 Beiträge
 
#7

AW: DBGrid Daten ändern

  Alt 27. Sep 2011, 20:54
Hay

Gibt es hierfür schon eine Lösung?

Ich bekomme in meiner Anzeige der Daten im DBGrid für die Umlaute ? (Fragezeichen) und komme irgendwie nicht weiter, dass diese nur im Grid geändert angezeigt werden.

Gruß
Laines
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz