none
Access 2010 Fehler 3734

    Frage

  • Hallo Zusammen,

    Meine Datenbank läuft im Netzwerk. Leider bekomme ich immer wieder mal die Meldung: "Datenbank wurde von Rechner "x" in den Zustand versetzt, in dem sie nicht geöffnet oder gesperrt werden kann." Die Datenbank-Optionen sind bestimmt nicht auf "öffnen Exclusiv" eingestellt! 
    Was kann ich tun?

    Freitag, 13. Juli 2012 17:57

Antworten

  • Hallo Zusammen,

    hier meine Rückmeldung zu dem Fehler 3734.

    Der Fehler ist bis jetzt nicht mehr aufgetreten!!!

    Was habe ich gemacht:

    Über ein Script lösche ich, wenn es existiert ein Verzeichnis "c:\datenbanken", danach erstelle ich das Verzeichnis "c:\datenbanken". Jetzt kopiere ich aus dem Netzwerk das Frontend (accde) in das Verzeichnis "c:\datenbanken" und starte das Frontend.

    Zu den Hinweisen von Henry:

    Ich habe das Glück das alle Access Anwender in meinem Unternehmen die gleiche Access Version benutzen (Software Verteilung)

    Das Script bricht ab, weil es das Verzeichnis nicht löschen kann,  somit kann die Datenbank auch nicht ein zweites Mal gestartet werden.

    Vielen Dank nochmal für alle Anregungen und Hinweise

    Gruß Hans

    • Als Antwort markiert hawaja Montag, 16. Juli 2012 11:51
    Montag, 16. Juli 2012 11:51

Alle Antworten

  • Am 13.07.2012 schrieb hawaja:

    Meine Datenbank läuft im Netzwerk. Leider bekomme ich immer wieder mal die Meldung: "Datenbank wurde von Rechner "x" in den Zustand versetzt, in dem sie nicht geöffnet oder gesperrt werden kann." Die Datenbank-Optionen sind bestimmt nicht auf "öffnen Exclusiv" eingestellt! 

    Ist die DB in Front- und Backend aufgeteilt? Wenn nein, hol das nach.
    http://www.donkarl.com?FAQ1.35 Falls bereits eine Aufteilung
    vorgenommen wurde, hat jeder Anwender sein eigenes Frontend? Wenn
    nein, dann sorge dafür dass jeder sein eigenes Frontend hat.

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/

    Freitag, 13. Juli 2012 18:13
  • Hallo Winfried,

    Meine Datenbanken liefen unter 2003 mit Frontend und Backend Jahre lang problemlos, erst seit der Umstellung auf Access 2010 treten die Probleme in unterschiedlichen Datenbanken auf. Jedem Anwender ein eigenes Frontend zu geben, halte ich aus Wartungsgründen nicht für sehr vorteilhaft weil ich bis jetzt einfach nach Änderung im Frondend die accde im Netzwerk ausgetausch habe.

    Gibt es noch eine andere Lösung?

    Gruß Hans

    Freitag, 13. Juli 2012 19:05
  • Am 13.07.2012 schrieb hawaja:

    Meine Datenbanken liefen unter 2003 mit Frontend und Backend Jahre lang problemlos, erst seit der Umstellung auf Access 2010 treten die Probleme in unterschiedlichen Datenbanken auf. Jedem Anwender ein eigenes Frontend zu geben, halte ich aus Wartungsgründen nicht für sehr vorteilhaft weil ich bis jetzt einfach nach Änderung im Frondend die accde im Netzwerk ausgetausch habe.

    Du mußt dich umstellen. Es gibt keine andere Lösung. Ob das für dich
    Wartungsfreundlich ist oder nicht, spielt keine Rolle. Es nicht zu
    machen ist nicht kundenfreundlich.

    Zum regelmässigen updaten gibt es genügend Möglichkeiten. Innerhalb
    einer Windows Domain ist es ein Kinderspiel.

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/

    Freitag, 13. Juli 2012 19:17
  • Hallo hawaja

    Ich lasse die Benutzer das Frontend jeweils durch einen klick auf eine CMD datei in Ihr Lokales C:Temp kopieren und öffnen.

    Hat den Vorteil, dass wen du modifikationen durchführst der Benutzer jeweils die neuste Datei kopiert und öffnet.

    Die Gemeinsam benutzten Tabellen legst du in eine Datenbank welche du im Netzlaufwerk speicherst. In dem Frontend verknüpfst du die Tabellen. Somit arbeiten alle mit dem eigenen Frontend bearbeiten aber die Daten gemeinsam im Backend.

    Textdatei als .cmd gespeichert:

    @echo off
    echo.
    echo.
    echo.
    echo          Bitte warten...
    echo.
    echo          Die Datenbank wird aus Performance Gruenden ins c:/Temp kopiert!
    echo.
    if exist C:\Temp\Datenbank.accdb DEL C:\Temp\Datenbank.accdb
    copy "G:\DeinPfadZurDatenbank\Datenbank.accdb" C:\Temp\Datenbank.accdb
    echo          Starte Datenbank
    C:\Temp\Datenbank.accdb

    Gruss beat78

    Freitag, 13. Juli 2012 21:11
  • Hallo Zusammen,

    vielen Dank für die schnellen Antworten, ich werde am Montag prüfen ob der Fehler durch ein Frontend für jeden Anwender das Problem löst. Desweiteren werde ich euch berichten wie ich die Verteilung des Frontends in Zukunft realisiere. Ich befürchte nur das die Verteilung des Frontends das Problem nicht löst. Der Fehler 3734 sagt aus das der Datensatz gesperrt wurde und ich vermute das die Sperrung in der laccdb des Backends realisiert wurde. Ich habe noch eine Anwendung Frondend accdb und Backend mdb wo dieser Fehler nicht auftaucht. Nur bei den Anwendungen die komplett auf Access 2010 umgestellt sind, entsteht diese Fehlermeldung.

    Gruß Hans 

    Samstag, 14. Juli 2012 09:20
  • Am 13.07.2012 schrieb Beat_78:

    if exist C:\Temp\Datenbank.accdb DEL C:\Temp\Datenbank.accdb
    copy "G:\DeinPfadZurDatenbank\Datenbank.accdb" C:\Temp\Datenbank.accdb
    echo          Starte Datenbank
    C:\Temp\Datenbank.accdb

    Was machst Du, wenn es C:\Temp nicht gibt? Oder wenn der Benutzer kein
    LW G:\ hat? Dann schlägt die Kopieraktion fehl.

    So würde es besser aussehen:

    if exist "%temp%\DB.accdb" del "%temp%\DB.accdb"
    copy "\\Server\Share\DB.accdb" 2%temp%\DB.accdb"
    "%temp%\DB.accdb"

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/

    Samstag, 14. Juli 2012 15:59
  • Hallo Hawaja

    On 14.07.2012 02:05, hawaja wrote:

    Meine Datenbanken liefen unter 2003 mit Frontend und Backend Jahre lang
    problemlos, erst seit der Umstellung auf Access 2010 treten die
    Probleme in unterschiedlichen Datenbanken auf. Jedem Anwender ein
    eigenes Frontend zu geben, halte ich aus Wartungsgründen nicht für sehr
    vorteilhaft weil ich bis jetzt einfach nach Änderung im Frondend die
    accde im Netzwerk ausgetausch habe.

    Dann hast Du das Whitepaper, das im link erwähnt wird (Betrieb von Access Anwendungen, gibt's im Downloadbereich des www.dbdev.org) nicht gelesen.
    Wenn Du eine Starter Anwendung verwendest, ist dieses Verfahren mindestens so wartungsfreundlich, wie das von Dir benutzte Vorgehen. Du kopierst nämlich weiterhin nur Deine neue Frontend (vorteilhaft als MDE) auf das Netzwerklaufwerk und die Starteranwendung stellt dann sicher, dass der Benutzer die neuste Version erhält und startet. Für Dich gibt es ausser der Konfiguration der Starteranwendung nichts zu tun. Kommt hinzu, dass Du nun dem Benutzer lediglich einen Link auf die Starteranwendung geben musst (welche durchaus auf dem Netzwerk Laufwerk liegen darf) und die Anwendung dann automatisch installiert wird, falls diese nicht installiert ist und mit den richtigen Parametern gestartet wird.

    Versuch's mal und Du wirst vom genannten Problem verschont werden.

    Gruss
    Henry

    Montag, 16. Juli 2012 02:51
  • Hallo Beat_78

    Deinem Ansatz fehlen einige wichtige Elemente:
    - Die Versionskontrolle: Du kopierst immer, unabhängig davon, ob die neuste Version bereits installiert ist oder nicht
    - Zwang, die neuste Version zu benutzen: Du stellst nicht sicher, dass der Benutzer immer die aktuelle Version benutzt. Wenn einer faul ist, wird er bald mal eine Frontend haben, die nicht mehr zur Backend passt
    - Die Konfiguration stellt nicht sicher, dass immer die richtige Access Version gestartet wird
    - Der Benutzer kann den Update starten, wenn die Anwendung bereits läuft, was zu einem unkontrollierten Verhalte führen kann, abhängig davon, in welchem Zustand sich die andere Instanz befindet.

    Verwende besser eine Starter Awendung, die z.B. auf Access oder VB basiert. Nebst der ziemlich einfachen Version (mit offenem Code), die's beim www.dbdev.org im Download Bereich gibt, gibt's auch nocht die ziemlich professionelle (und ebenfalls kostenfreie) Ausführung von Tony Toews, genannt AutoFE. Suche nach AutoFE und Du wirst diese finden.

    Gruss
    Henry

    On 14.07.2012 04:11, Beat_78 wrote:

    Hallo hawaja

    Ich lasse die Benutzer das Frontend jeweils durch einen klick auf eine
    CMD datei in Ihr Lokales C:Temp kopieren und öffnen.

    Hat den Vorteil, dass wen du modifikationen durchführst der Benutzer
    jeweils die neuste Datei kopiert und öffnet.

    Die Gemeinsam benutzten Tabellen legst du in eine Datenbank welche du
    im Netzlaufwerk speicherst. In dem Frontend verknüpfst du die Tabellen.
    Somit arbeiten alle mit dem eigenen Frontend bearbeiten aber die Daten
    gemeinsam im Backend.

    Textdatei als .cmd gespeichert:@echo off
    echo.
    echo.
    echo.
    echo          Bitte warten...
    echo.
    echo          Die Datenbank wird aus Performance Gruenden ins c:/Temp
    kopiert!
    echo.
    if exist C:\Temp\Datenbank.accdb DEL C:\Temp\Datenbank.accdb
    copy "G:\DeinPfadZurDatenbank\Datenbank.accdb" C:\Temp\Datenbank.accdb
    echo          Starte Datenbank
    C:\Temp\Datenbank.accdb



    Gruss beat78

    Montag, 16. Juli 2012 02:58
  • Hallo Zusammen,

    hier meine Rückmeldung zu dem Fehler 3734.

    Der Fehler ist bis jetzt nicht mehr aufgetreten!!!

    Was habe ich gemacht:

    Über ein Script lösche ich, wenn es existiert ein Verzeichnis "c:\datenbanken", danach erstelle ich das Verzeichnis "c:\datenbanken". Jetzt kopiere ich aus dem Netzwerk das Frontend (accde) in das Verzeichnis "c:\datenbanken" und starte das Frontend.

    Zu den Hinweisen von Henry:

    Ich habe das Glück das alle Access Anwender in meinem Unternehmen die gleiche Access Version benutzen (Software Verteilung)

    Das Script bricht ab, weil es das Verzeichnis nicht löschen kann,  somit kann die Datenbank auch nicht ein zweites Mal gestartet werden.

    Vielen Dank nochmal für alle Anregungen und Hinweise

    Gruß Hans

    • Als Antwort markiert hawaja Montag, 16. Juli 2012 11:51
    Montag, 16. Juli 2012 11:51
  • Am 16.07.2012 schrieb hawaja:

    Das Script bricht ab, weil es das Verzeichnis nicht löschen kann,  somit kann die Datenbank auch nicht ein zweites Mal gestartet werden.

    Zeig doch bitte das Script zum löschen/leeren des Verzeichnisses, das
    kann man sicherlich verbessern. ;)

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/

    Montag, 16. Juli 2012 17:03