AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

Ein Thema von baurat · begonnen am 23. Okt 2011 · letzter Beitrag vom 2. Nov 2011
Antwort Antwort
Seite 2 von 2     12
baurat

Registriert seit: 20. Jan 2007
34 Beiträge
 
#11

AW: Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

  Alt 29. Okt 2011, 22:26
Mhhh, nicht auf Anhieb, hast Du mal debugt nach TFieldType des Feldes ....
In die Richtung hab ich auch schon überlegt. Das Feld schuelerid hat ja auch schon vorher beim "Import" in die MemTable für Probleme gesort, das hat sicher die gleiche Ursache.
Dachte vielleicht, dass das an einem Spezialfeldtyp von den Zeos-Komponenten liegt, dass die da irgendwas tricksen was nicht Standard ist - dem ist aber leider nicht so, die persistenten Felder in der mysql-Query sind alle die Felder aus der DB-Unit (schuelerid ist TLargeIntField).

Debuggen: Hm. In der NoAutoInc wird schuelerid as ftLargeInt richtigerweise erkannt. Warum klappts nicht? Wenn ich in NoAutoInc ftLargeInt als ftInteger erzeuge, funktionierts!?!?

Verstehe ich nicht

Naja, mal sehen obs noch weitere Schwierigkeiten damit gibt...
Auf jeden Fall nochmal Danke!
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#12

AW: Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

  Alt 29. Okt 2011, 22:59
hast Du eine ältere Delphiversion?
http://www.distribucon.com/blog/Comm...,guid,220.aspx
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
baurat

Registriert seit: 20. Jan 2007
34 Beiträge
 
#13

AW: Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

  Alt 30. Okt 2011, 13:20
Ahhhhh, das sieht doch stark nach einer Ursache aus. Ja, ich hab noch D6 prof.

Offenbar ist die "neue" midas.dll abwärtskompatibel bis D5 (http://www.distribucon.com/midas.aspx) , deswegen hab ich sie mal runtergeladen.

Jetzt hab ich sie mal spaßeshalber in c:\windows\syswow64 für die alte ersetzt, aber das ändert offenbar nichts, gleicher Fehler. Die midas.dll wird im laufenden Projekt eingebunden (Ansicht - Debug - Module). Aber ohne den Zusatz
if (ft = ftLargeint) then Result := ftInteger
in NoAutoInc bleiben die schuelerids leer.


Naja immerhin läufts so, ist zwar seltsam aber damit werd ich wohl leben (müssen).

Trotzdem Danke!

Lg Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

  Alt 30. Okt 2011, 14:19
Ich denke dafür würde ich mir eine temporäre Tabelle auf dem MySQL erzeugen und diese dann im DBGrid anzeigen lassen.

Dabei kann man auch berücksichtigen, dass man eben nur x Spalten benötigt (das CREATE TEMPORARY TABLE-Statement muss man halt anpassen).

Wenn die Eingabe abgeschlossen ist, dann trägt man einfach (geht z.B. auch mit einer StoredProcedure) die Werte aus der temporären Tabelle in die echte Tabelle ein.

Das sollte auch unabhängig von der verwendeten Delphi-Version möglich sein, da wir aus der Client-Sicht eine echte komplett beschreibbare Tabelle vor uns haben

Ach ja, man darf natürlich die Feldliste nicht schon zur Design-Time komplett zuweisen, da wir ja eine dynamische Feldliste haben
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (30. Okt 2011 um 14:22 Uhr)
  Mit Zitat antworten Zitat
baurat

Registriert seit: 20. Jan 2007
34 Beiträge
 
#15

AW: Einer query zusätzliche Felder hinzufügen und als CheckBox editieren

  Alt 2. Nov 2011, 00:31
Ich denke dafür würde ich mir eine temporäre Tabelle auf dem MySQL erzeugen und diese dann im DBGrid anzeigen lassen.

Dabei kann man auch berücksichtigen, dass man eben nur x Spalten benötigt (das CREATE TEMPORARY TABLE-Statement muss man halt anpassen).

Wenn die Eingabe abgeschlossen ist, dann trägt man einfach (geht z.B. auch mit einer StoredProcedure) die Werte aus der temporären Tabelle in die echte Tabelle ein.

Das sollte auch unabhängig von der verwendeten Delphi-Version möglich sein, da wir aus der Client-Sicht eine echte komplett beschreibbare Tabelle vor uns haben

Ach ja, man darf natürlich die Feldliste nicht schon zur Design-Time komplett zuweisen, da wir ja eine dynamische Feldliste haben
... ja, im Prinzip läufts auf das gleiche hinaus. Hatte an eine UDF schon mal gedacht, denn es geht ja noch weiter: ich hab jetzt eine Liste mit Namen und IDs und sagen wir mal 4 Spalten zum Anklicken der Anwesenheit. Jetzt muss ich aber noch für *jedes* Feld ne extra Query an die DB schicken, ob für diesen Termin schon eine Entschuldigung vorliegt. DAs macht bei sagen wir mal 20 Schülern mal schnell 80 Anfragen, die übers Netz gehen. Die DB liegt irgendwo bei 1&1, ich hoffe dass das performancemäßig halbwegs hinhaut. Aber genau deswegen dachte ich schon an ne UDF, die das in einem Aufwasch serverseitig erledigt und mir dann nur eine Ergebnismenge liefert, anstelle 80 hin- und herzutelefonieren.

Nur sind UDF dann halt das nächste Thema, mit dem ich noch nie zu tun hatte. Ideal wäre sowas wie
select getAbsenzenliste(kursid, termin1, termin2, ...., terminx)
wobei termin1 bis terminx einfache zeitstempel sind.
Die UDF holt dann erst mal alle kursmitglieder des kurses und prüft dann für jeden jeden Termin durch. Tja, im Kopf hätt ich's schon...

Na mal sehen, aktuell klappts mit dein Einzelqueries schon mal ganz gut, das Netz darf halt nicht klemmen...
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 02:29 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