PDA

Vollständige Version anzeigen : UnterBericht für zwei verschieden HauptBerichte


jajiewu
05.07.2006, 17:24
Hallo Forum,

es geht um einen Unterbericht den ich in zwei versch. HauptBerichte verwende.
Ein HauptBerichte wird im Archivbereich verwendet der andere im Normal/Standardbereich

Die Datenherkunft wird per Recordsource (Me.Recordsource = strSQL) im Openereignis des Unterberichts festgelegt.
Ausserdem ist die Option Datenherkunft im Eigenschaftsfenster auf eine Abf gesetzt.
Leider muss ich nun feststellen, dass beim Öffen des Archiv-HauptBerichtes, die Abf immer das Formular fordert, das als Kriterium verwendet wird.

Wenn nur die Abf als Datenherkunft verwendet würde, dann würde ich mich über diese Meldung nicht wundern, es wird aber Recordsource verwendet, und insofern soll die Abf nichts bewirken, sie ist nur deshalb auch angebunden, um die Textfelder im Unterbericht zu binden.

Bisher hat das funktioniert, wenn ich es ändern muss, würd es bedeuten: Für jeden Archiv-HauptBericht seperate Archiv-Unterbericht und seperate Archiv-Abf, das wollt ich vermeiden.

Anne Berg
05.07.2006, 18:42
Offensichtlich wird die Abfrage bereits beim Öffnen aufgerufen, ehe die Datenherkunft überschrieben wird.
Du kannst die Abfrage getrost entfernen, wenn du beim Öffnen eine andere RecordSource zuweist. Wenn du das nicht willst, kannst du dir eine leere Dummy-Tabelle anlegen mit der benötigten Struktur und diese als voreingestellte Datenherkunft einsetzen. Oder du nimmst eine abgewandelte Abfrage, die nicht auf Formularfeldern basiert.

BTW: Ist denn der Aufbau der beiden Unterberichte überhaupt so unterschiedlich, dass sich das nicht mit einem einzigen regeln ließe?

jajiewu
05.07.2006, 18:56
Vom Unterbericht gibt es nur einen, es ist also immer derselbe der verwendet wird.

Im Standard-Hauptbericht verwende ich für den Ubericht kein Recordsource, sondern eben diese Abf

Anne Berg
05.07.2006, 19:11
Sorry, war eigentlich klar genug formuliert. :rolleyes:

Ich würde jedenfalls dabei bleiben, und eine Lösung finden, dass beides funktioniert. Meine Vorschläge dazu gelten ja weiterhin. ;)
Notfalls den Fehler ignorieren. Lässt er sich im Open-Ereignis abfangen?...kein Recordsource, sondern eben diese AbfNun, das ist ja die (voreingestellte) Datenherkunft=RecordSource!

jajiewu
05.07.2006, 20:54
Nein Anne, das hier:
<i>BTW: Ist denn der Aufbau der beiden Unterberichte überhaupt so unterschiedlich, dass sich das nicht mit einem einzigen regeln ließe?</i>
war ein Irrtum.

Es handelt sich auch nicht um eine Fehlermeldung vom VBA Code.
Es ist ein typischer Dialog der erscheint, wenn in einer Abf als Kriterium der Name eines Formsulars verwendet wird , das nicht existiert oder momentan nicht geöffnet ist.

Anne Berg
05.07.2006, 21:01
Ja, den Irrtum hatte ich doch eingesehen und das Parameterfenster kann man auch nicht unterdrücken, hast ja Recht! (ist immer noch heiß und nebenbei läuft der Fernseher - soweit zur Erklärung... ;))

Dann mach doch einfach was ich vorgeschlagen habe: nimm keine oder eine "neutrale" Datenherkunft und stell die jeweils gewünschte RecordSource in jedem Fall beim Öffnen ein. Irgendeine Art von Steuermechanismus wirst du da doch schon drin haben, oder?