Forums Neueste Beiträge
 

Maßnahmen gegen Fehler 3048

13/02/2009 - 12:14 von Dietmar Thesing | Report spam
Hallo liebe ExpertInnen,

ich habe den Fehler 3048 bekommen "Mehr Datenbanken können nicht
geöffnet werden."

Jetzt bin ich dabei, die Maßnahmen umzusetzen, die man hier beim
Googeln findet (vor allem von Dir, Henry), speziell gerade das spàtere
Setzen der RowSource von ungebundenen Listenfeldern und Kombifeldern
auf verschiedenen Registerkarten. Das mache ich beim Change-Ereignis
des Registerelements.

Die Frage: Macht es Sinn, genauer, werden Instanzen geschlossen, wenn
ich beim Verlassen der jeweiligen Registerkarte (Change-Ereignis)
diese auch wieder auf nix ("") setze?

Herzlichen Dank für etwaige Antworten
Gruß
Dietmar
 

Lesen sie die antworten

#1 Jens Schilling
13/02/2009 - 12:50 | Warnen spam
Hallo, Dietmar

Dietmar Thesing wrote:
ich habe den Fehler 3048 bekommen "Mehr Datenbanken können nicht
geöffnet werden."



Michel hatte sich mal die Mühe gemacht, die wesentlichen Dinge zum Fehler
3048 zusammen zu tragen. Ich zitiere einmal :

Zusammengetragen von Michel Fouquet :

Die Meldung zum Fehler 3048 ist leider irreführend. Dabei geht es nicht um
Datenbanken als solche, sondern um Instanzen (Objektvariable). Das
"ordentliche" Schließen und Vernichten der Objektvariablen wird durch ein
zweites Problem überlagert - die Anzahl der verfügbaren "table handles".
Dazu :

http://support.microsoft.com/defaul...US;Q165272

Da geht es zwar um Jet 3.5, aber die Hinweise auf die sog. TableID (table
handle) sind entscheidend.

2. Große Fresser von Handles sind die Domànenfunktionen, zumal in Verbindung
mit dem Befüllen von Endlosformularen oder Berichten.

3. Große Fresser von Handles sind verschachtelte Abfragen (Subselects).

4. Große Fresser von Handles sind UNION-Abfragen.

5. Große Fresser von Handles sind Berichte mit zahlreichen Unterberichten
(und vielen Berechnungen im Format-Ereignis).

6. Große Fresser von Handles sind Formulare mit Kombi- und/oder
Listenfeldern, insbesondere kaskadierende Kombifelder (Inhalt des
zweiten beruht auf Vorauswahl im ersten), und mehreren gebundenen
Unterformularen. Alle nicht benötigten Formulare schließen.

7. Große Fresser von Handles sind mehrfach aufgerufene Formularfilter ohne
Schließen des Formulars.

8. Große Fresser von Handles sind rekursive Aufrufe oder Schleifen

9. Soweit ich mich dunkel erinnere, erzeugen auch Indexe TableIDs und machen
damit den Speicher zu. D.h. der Aufruf *einer* Tabelle mit 5 Indexen verbràt
von vornherein schon mal 6 Handles. Durch eine Domànenfunktion gejagt, da
gehen schon massig Handles weg.

10. Große Fresser von Handles sind replizierte Datenbanken.

In manchen Fàllen tauchte das Problem erst nach der FE/BE-Aufteilung auf.
Eine *eingebundene* Tabelle verbraucht bereits mindestens 2 table handles.

Zitat Ende

Die Frage: Macht es Sinn, genauer, werden Instanzen geschlossen, wenn
ich beim Verlassen der jeweiligen Registerkarte (Change-Ereignis)
diese auch wieder auf nix ("") setze?



Mit Set xxx = Nothing vernichtest Du eine Instanz, nicht mit
Anführungszeichen.

Gruss
Jens
______________________________
FAQ: http://www.donkarl.com

Ähnliche fragen