Situation:
- Aus einem Projekt habe ich 2 Forms und 1 DataModule kopiert um, diese in einem neuen Projekt zu nutzen. Es gab geringfügige Anpassungen im Uses-Bereich, um selbst definierte Typen und Konstanten aus einer anderen Unit zu nehmen. Die Anpassungen können keine Auswirkung auf mein Problem haben.
- In einem TCRDBGrid (mit eigenen Erweiterungen und seit Jahren so verwendet) wird im OI eine DataSource aus dem kopierten DataModule zugewiesen.
- Das DataModule wird zur Laufzeit erzeugt.
- Das DataModule wird nicht zusätzlich automatisch erzeugt.
- Das zugehörige DataSet (Query) hat Ergebnisse.
- Im Grid wird nichts angezeigt. Die Darstellung ist so, als wäre das DataSet nicht aktiv.
Was ich bisher geprüft oder gemacht habe:
- Alle Sourcen durchsucht, ob es noch eine Instanz des DataModules existiert. Ist nicht der Fall.
- Alle DCUs gelöscht
- DPR-Datei geprüft. Alles korrekt.
- Debugging ergibt, dass DataSource aus dem OI eine andere Adresse hat, als die im DataModule.
Wenn ich die DataSource im Code neu zuweise, wird alles korrekt angezeigt. Aber das will ich so nicht akzeptieren. Hat jemand eine Idee, woran das liegen kann oder was ich nochmal prüfen kann?
Ich hatte so einen Fall noch nie. Auch ein Kollege von mir hat schon einen Blick darauf geworfen und konnte nichts falsches entdecken.
Ergänzung:
Wenn ich das DataModule automatisch erzeugen lasse, funktioniert alles. Das ist bei mir aber nicht üblich, da ich alle Forms und DataModule nur dann erzeuge, wenn es im Programm benötigt wird.