Jump to content

Ms Access in der Aufgabenplanung


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hey Sunny,

 

nene.. Das mache ich schon... Wenn die DB aufgeht läuft der Job und erstellt in ein Verzeichnis aus einer Abfrage eine txt Datei.

 

Ich möchte in der Aufgabenplanung einfach nur diese accdb starten... Da spinnt er mir rum... Oder läuft ewig.

 

habe im Programm... Den Pfad samt exe zur MSAccess.exe und im Argument den Speicherort zur accdb.  Also Z:\Datenbank\Schnittstellen\Mail_Export.accdb

Link zu diesem Kommentar

Soll ohne Anmeldung Nachts um 0:00 Uhr ausgeführt werden. 

 

Kann der Admin sein. Ist nicht schlimm in dem Fall.

 

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" "Z:\Datenbank\Schnittstellen\Mail_Export.accdb"

 

Die Aufgabensteuerung macht von selbst aus dem obigen ein Programm Pfad und ein Argument



Komisch ist auch das die Events ewig laufen. Wenn ich die manuell ausführe sind die innerhalb von 10 Sekunden beendet.

 

 

Ich hatte auch schon mal die Access Instanz in eine .cmd Datei gepackt.... und dann über SysWOL64\cmd.exe  und das Argument den Spaß aufgerufen. Gleiches ergebnis.

Link zu diesem Kommentar

Soll ohne Anmeldung Nachts um 0:00 Uhr ausgeführt werden. 

 

Kann der Admin sein. Ist nicht schlimm in dem Fall.

 

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" "Z:\Datenbank\Schnittstellen\Mail_Export.accdb"

LW Z:\ ist ganz schlecht, trag den UNC-Pfad ein.

 

Die Aufgabensteuerung macht von selbst aus dem obigen ein Programm Pfad und ein Argument

Back den Aufruf in eine Batch. Ist der UNC-Pfad denn auch in den Vertrauenswürdigen Pfaden?

Komisch ist auch das die Events ewig laufen. Wenn ich die manuell ausführe sind die innerhalb von 10 Sekunden beendet.

Da fehlen garantiert dem 'ausführenden' Benutzer NTFS-Berechtigungen auf dem Ziel. Wie sieht die Fehlerbehandlung in den Funktionen aus? Wirfst Du mit Messageboxen die Fehler aus? Wenn ja, dann funktioniert das nicht, niemand ist angemeldet, also sieht niemand die Messageboxen, schon läuft alles ewig. Lass die Fehler in eine tblProtokoll schreiben, dann kannst Du sie später lesen und beheben.

 

 

Ich hatte auch schon mal die Access Instanz in eine .cmd Datei gepackt.... und dann über SysWOL64\cmd.exe  und das Argument den Spaß aufgerufen. Gleiches ergebnis.

Wenn dann komplett in die Batch packen, Pfad zur Access Exe und die ACCDB, aber unbedingt ohne LW-Buchstabe. Oder du verlegst die ACCDB auf ein lokales Laufwerk. Beachte aber UAC!

 

Ich soetwas als Dienst laufen, SRVANY.exe und INSTSRV.EXE sind hilfreich dabei. Funktioniert einwandfrei, die Events werden aus dem Timer gefeuert, täglich mehrmals bei mehreren Datenbanken.

Link zu diesem Kommentar
  • 2 Wochen später...

Hallo Sunny,

wie muss ich das mit instsrv machen... Habe gelesen das es bei dem WinSrv2008R2 die SC.exe. ist.

 

Mache ich das nur einmalig? oder muss ich den Dienst jedes mal registrieren? (Neustart etc.)

 

Wäre das dann so: sc.exe create Servicename Mail-Export

 

Aber wo und wie gebe ich den Pfad auf die Datei bzw. das Programm an? Oder muss das gar jedes mal über die Aufgabenplanung laufen?

 

Gruß Matthias

Link zu diesem Kommentar

wie muss ich das mit instsrv machen... Habe gelesen das es bei dem WinSrv2008R2 die SC.exe. ist.

Die Kombination mit der MSAccess.exe und der SC.exe funktioniert nicht so wie gewollt. Du mußt mit der InstSRV.EXE und der SRVAny.exe arbeiten. Hier findest Du zwei Anleitungen zum einrichten:

http://www.serverhowto.de/Applikationen-als-Dienste-einrichten.228.0.html

http://support.microsoft.com/kb/137890/de

 

Bei Application trägst Du folgendes ein:

"Pfad zur MSAcess.exe" "Pfad zur ACCDB"

Wenn das eingetragen ist, kopiere den vollständigen Pfad in die Zwischenablage und anschließend in die Adresszeile vom Windows Explorer. Geht die Datenbank auf? Wenn ja, ist alles in Ordnung. Beachte und bedenke unbedingt die Makrosicherheit und die Vertrauenswürdigen Pfade bei Access!

 

 

Mache ich das nur einmalig? oder muss ich den Dienst jedes mal registrieren? (Neustart etc.)

Einmalig, dann kannst Du den Dienst in Services.msc starten. Funktioniert es korrekt, siehst Du es daran dass im Verzeichnis der ACCDB eine LACCDB erstellt wurde.

Aber wo und wie gebe ich den Pfad auf die Datei bzw. das Programm an? Oder muss das gar jedes mal über die Aufgabenplanung laufen?

Für die Aufgabenplanung erstellst Du dir eine Batchdatei:

@echo off
net stop Name_des_Dienstes

net start Name_des_Dienstes
Die Batchdatei rufst Du aus dem Aufgabenplaner heraus auf. Auch hier gilt, wird die LACCDB erstellt, funktioniert es richtig.Ganz wichtig! Der ausführende Benutzer sieht keine Fehlermeldungen in Form einer Messagebox, Du mußt also sämtliche Fehlermeldungen in eine Protokolltabelle schreiben lassen und die täglich auswerten oder per Mail den täglichen Inhalt verschicken. Wenn man das einmal angelegt hat, geht das zukünftig recht schnell.
Link zu diesem Kommentar

Hallo Sunny,

 

also ohne die Anführungszeichen "PFad" geht es ohne Probleme im Windows Explorer auf.

 

In der cmd Datei muss ich bei Pfad zur Exe die Anführungszeichen einsetzten aber beim Pfad zur Datei will er sie nicht... Da spinnt er rum.

 

Brauch ich unbedingt in der WInSrv2008R2 umgebung dieses Reskit für Win Srv 2003??

 

Wobei ich aber immer noch die verstehe das dieses einfache Skript was Manuell unter dem Administrator läuft nicht über die Aufgabenplanung vernünfitg läuft. Es sind die gleichen User mit logischer Weise gleichen Rechten. Er motzt nicht im Manuellen Modus rum.... :-(

 

 


 

 


EDIT:


Habe mal alles so versucht nachzustellen wie es in der Anleitung ist.

 

DIenst mit instsrv.exe angelegt. Hatte auch alles geklappt.

War dann im RegEdit zufinden. Habe dann einen Schlüßel angelegt... ( Container unter dem Dienst) Schlüßel habe ich Parameters genannt.

In Paramters habe ich eine Neue Zeichenfolge mit dem Namen Application angelegt in Application habe ich den Wert

 

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" \\Server\Promember\Datenbank\Schnittstellen\Mail_Export.accdb

  eingefügt.

Kann den Dienst nicht starten. Er sagt mir was von es dauert zulange bis die ANwendung startet.... :-(

Ich dreh noch durch.... :-(

bearbeitet von Matze1708
Link zu diesem Kommentar

also ohne die Anführungszeichen "PFad" geht es ohne Probleme im Windows Explorer auf.

OK, das ist ja schon gut. ;)

 

 

In der cmd Datei muss ich bei Pfad zur Exe die Anführungszeichen einsetzten aber beim Pfad zur Datei will er sie nicht... Da spinnt er rum.

In der Batch reicht IMHO auch der Pfad zur ACCDB aus.

 

BTW: In deinem Fall wird einsetzen mit nur einem t geschrieben. ;)

 

 

Brauch ich unbedingt in der WInSrv2008R2 umgebung dieses Reskit für Win Srv 2003??

Nein, du brauchst nur die beiden Dateien.

 

Wobei ich aber immer noch die verstehe das dieses einfache Skript was Manuell unter dem Administrator läuft nicht über die Aufgabenplanung vernünfitg läuft. Es sind die gleichen User mit logischer Weise gleichen Rechten. Er motzt nicht im Manuellen Modus rum.... :-(

Probier doch einfach mal aus nur den Pfad zur ACCDB reinzuschreiben.

 

 

DIenst mit instsrv.exe angelegt. Hatte auch alles geklappt.

War dann im RegEdit zufinden. Habe dann einen Schlüßel angelegt... ( Container unter dem Dienst) Schlüßel habe ich Parameters genannt.

In Paramters habe ich eine Neue Zeichenfolge mit dem Namen Application angelegt in Application habe ich den Wert

 

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" \\Server\Promember\Datenbank\Schnittstellen\Mail_Export.accdb

  eingefügt.

Kann den Dienst nicht starten. Er sagt mir was von es dauert zulange bis die ANwendung startet.... :-(

Ich dreh noch durch.... :-(

Auszug aus einem Dienst:

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" "C:\Programme\DBPfad\MeineDB.accdb"

Dienst startet einwandfrei.

Link zu diesem Kommentar

Hallo,

 

also ich habe nun mal die Datei in einen Lokalen Pfad kopiert.

 

Wenn ich die Aufgabenplanung so einstelle das es nur bei angemeldeten User läuft.... Dann funktioniert das ganze Teil. Stelle ich unter gleichem user um das es auch bei abgemeldeten User läuft... Konto ist dann immer noch der Admin.... Geht zwar die ACCDB Datei auf laccd Datei wird angelegt läuft sich aber Tod....

Ich kann dann nach Stunden den Prozess MSAccess.ese im TaskManager abschießen und die laccdb Datei manuell löschen....

 

Also darauf sollte nun auch der Admin volle Rechte haben :-)

Link zu diesem Kommentar

Wenn ich die Aufgabenplanung so einstelle das es nur bei angemeldeten User läuft.... Dann funktioniert das ganze Teil. Stelle ich unter gleichem user um das es auch bei abgemeldeten User läuft... Konto ist dann immer noch der Admin.... Geht zwar die ACCDB Datei auf laccd Datei wird angelegt läuft sich aber Tod....

Was passiert denn in der Access-DB genau? Wenn dort irgendwelche Netzlaufwerke verwendet werden die es dann nicht gibt, kann das nicht funktionieren. Hast du in den Subs/Functions die Fehlermeldungen in eine Protokolldatei umgeleitet?

 

Weshalb hast Du denn keinen Dienst angelegt?

Link zu diesem Kommentar

Hallo Sunny,

 

ich habe noch mal bissl rum gespielt....

Mein Gedanke war.... Aber das hattest du schon geschrieben... Ich hatte die Tabellen in der Datei auf ein netzlaufwerk ( Z:\) gebunden.

Das wird ganz bestimmt nich zur Laufzeit verbunden sein. :-(  habe es aber auf den UNC Pfad umgestellt. Gleiches problem... Dann habe ich datei einfach in das gleiche Laufwerk (C:\) kopiert und auch die Tabellen auf die Datei auf dem Lokalen Pfad gemappt.

Es geht immer noch nicht....

 

Eine Fehlerasuwertung habe ich nicht.... da ist nur ein gespeicherter Export drin die 2 verlinkten Tabellen und eine Union-Abfrage.

Link zu diesem Kommentar

Mein Gedanke war.... Aber das hattest du schon geschrieben... Ich hatte die Tabellen in der Datei auf ein netzlaufwerk ( Z:\) gebunden.

Das wird ganz bestimmt nich zur Laufzeit verbunden sein. :-(  habe es aber auf den UNC Pfad umgestellt. Gleiches problem... Dann habe ich datei einfach in das gleiche Laufwerk (C:\) kopiert und auch die Tabellen auf die Datei auf dem Lokalen Pfad gemappt.

Es geht immer noch nicht....

Du machst irgendetwas grundsätzlich falsch. Kannst Du die Datenbank uploaden so dass man sich das anschauen kann? Wenn es nicht öffentlich sein soll, dann kannst Du mir den Link zum Download auch per PN schicken.

 

Eine Fehlerasuwertung habe ich nicht.... da ist nur ein gespeicherter Export drin die 2 verlinkten Tabellen und eine Union-Abfrage.

Eine Datenbank ohne Fehlerbehandlungsroutinen ist ganz schlecht. Wird denn das Formular automatisch gestartet wenn Du die DB aufrufst?

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...