Autor Beitrag
burli
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 43



BeitragVerfasst: Do 21.08.03 00:05 
Hi,
vielleicht hat das ja schonmal gehabt und kann mir weiterhelfen. Ich habe in meiner App mehrere DBLookupComboBox und andere DB Compnents, die sich irgendwie seltsam verhalten.

Kurz zum System. DB ist MySQL, ich glaub Version 4, dazu MyODBC
Verwenden tue ich dann noch die BDE von Borland.

Jetzt zum eigentlichen Problem: Die DB Felder zeigen manchmal Einträge doppelt an oder es fehlen welche. Hier mal ein paar Screenshots zur Verdeutlichung.

www.embedit.de/image/pic1.jpg
www.embedit.de/image/pic2.jpg
www.embedit.de/image/pic3.jpg

Das erste Bild zeigt das Original wie es aussehen soll

Das gleiche passiert auch manchmal bei DBGrid. Da werden nach einer Änderung manchmal alle Einträge doppelt angezeigt und nach einen Refresh ist es dann wieder ok.

Ist das schonmal jemandem passiert? Wie kann man dem abhelfen?

Danke und Gruß
Markus
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Do 21.08.03 01:17 
Das ist ziemlich eindeutig ein klassischer Fehler in der Programmierung. :lol: Da ist irgendwo ein Next zuviel oder zuwenig oder an der falschen Stelle. D.h.: du überspringst einen Datensatz, oder bist schon zu spät an, so daß er einen Schritt zurück macht und alles doppelt kommt. 8)

_________________
Gruß
Hansa
burli Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 43



BeitragVerfasst: Do 21.08.03 01:23 
Kann ich mir irgendwie nicht ganz vorstellen. Ich mache da nämlich garnichts selbst. Das macht die Komponente alles automatisch. Ich gebe lediglich die Tabelle an in der der Inhalt von der ComboBox ist, der Angezeigt werden soll und die Tabelle in der dann der eigentliche Wert abgelegt wird. Die ComboBox verbindet also zwei Tabellen.
Und der Fehler tritt immer auf wenn ich auf den Pfeil zum aufklappen klicke. Also erstes mal klicken, geht vielleicht, zweites mal klicken, 1. Fehler, nochmal klicken 2. Fehler, drittes mal klicken wieder 1. Fehler usw. Ich rufe da keine einzige Zeile Source auf
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Do 21.08.03 01:32 
Dann mußt Du trotzdem mal den Source zeigen. Viel ist das nicht.

_________________
Gruß
Hansa
burli Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 43



BeitragVerfasst: Do 21.08.03 01:45 
Wenn ich ehrlich sein soll wüsste ich nicht welchen Source ich dir schicken sollte. Mit der Komponente ist keine einzige Zeile Source verknüpft.
Bin mittlerweile mal hergegangen und habe statt einer Tabelle aus der MySQL DB eine identische Tabelle im Paradox Format erstellt und als *.db abgespeichert. Die entsprechende TTable eingefügt, die DBComboBox umgestellt und siehe da, es geht wie gewünscht. Irgendwie scheint mir da der Wurm in dem MyODBC Treiber zu sein
burli Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 43



BeitragVerfasst: Do 21.08.03 01:53 
Habe zum Test nochmal ein neues Projekt angelegt. Es enthält nichts anderes als 2 Tabellen, 2 DataSource und de DBLookupComboBox. Keine einzige Zeile Source, und es passiert genau das gleiche.
Muß wohl also irgendwo an dem ODBC Treiber oder an MySQL liegen Kennt das einer?

Es ist die DBLookupComboBox, nicht wie oben fälschlich mal geschrieben DBComboBox

Wenn ich parallel dazu eine DBLookupListbox einfüge zeigt sie den gleichen Kram an wie die ComboBox, auch gleichzeitig wenn beide Komponenten an die gleichen Tabellen und Felder angeschlossen sind

Weiß nicht mehr weiter, bitte helft mir
burli Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 43



BeitragVerfasst: Do 21.08.03 12:24 
Hab das Problem glaub ich selbst beheben können.

DBLookupComboBox/ListSource/DataSet/CachedUpdate:=True

Danach gehts anscheinend