collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 31
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 13953
  • stats Beiträge insgesamt: 66364
  • stats Themen insgesamt: 8942
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: verwaister Verzeichnispfad  (Gelesen 1804 mal)

Offline Guenther

  • Newbie
  • Beiträge: 29
verwaister Verzeichnispfad
« am: Februar 16, 2018, 11:32:57 »
Liebe AccesslerInnen! Ich könnte mal Hilfe gebrauchen.
Ich habe in einer DB eine Tabelle mit den Namen aller Mitglieder. Für jedes Mitglied wird, sofern ein Brief erstellt wird, auf einem Netzlaufwerk ein Verzeichnis erstellt. Nun hat sich leider ergeben, dass Namen gelöscht wurden, das Verzeichnis auf dem Netzwerk aber nicht. Das ist inzwischen ausgeschlossen, trotzdem liegen einige verwaiste Verzeichnisse dort.
Nun würde ich gerne in einer Schleife das Netzlaufwerk durchgehen und mir die verwaisten Verzeichnisse in einer MsgBox anzeigen lassen. Könnte mir da jemand auf die Sprünge helfen - DANKE  :D
 

Offline daolix

  • Access-Profi
  • **
  • Beiträge: 350
  • Von nix nen Plan
Re: verwaister Verzeichnispfad
« Antwort #1 am: Februar 16, 2018, 13:00:34 »
Hallo
du könntest per Dos'en-Dir die Namen der Verzeichnisse in eine Textdatei umleiten und diese dann als Grundlage einer Abfrage mit z.B. einer Where Not In - Klausel mit deiner Namenstabelle abgleichen und dir dann die überschüssigen Verzeichnisse anzeigen lassen.
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #2 am: Februar 16, 2018, 18:41:37 »
Hallo daolix,
leider kann ich mit "Dos'en-Dir" nichts anfangen :( Kannst du deinen Vorschlag etwas konkretisieren? Nehmen wir an, mein Netzlaufwerk lautet J:, das Hauptverzeichnis Daten und für jedes Mitglied wird in diesem Ordner ein Unterordner angelegt.
Danke :)
 

Offline daolix

  • Access-Profi
  • **
  • Beiträge: 350
  • Von nix nen Plan
Re: verwaister Verzeichnispfad
« Antwort #3 am: Februar 16, 2018, 19:11:45 »
Hallo
mit Dos'en-Dir ist der "DOS" - Dir-Befehl des Commandozeileninterpreters gemeint.

Folgendes Bsp geht von der Annahme aus das die einzelnen Verzeisnissnamen der Mitglieder ein entsprechendes Feld in einer deiner Tabellen besitzen. (großgeschriebenes anpassen)
dim s as string
call createobject("wscript.shell").run("cmd.exe /c dir j:\daten\ /b /ad  1>j:\daten\sdir.txt", 0, true)
with currentdb.openrecordset("select f1 from [text;database=j:\daten\;hdr=no].sdir.txt where (((f1) not in (select DEIN_ID_FELD from DEINE_TABELLE)));")
do while .eof = false
s = s & .fields(0).value & vbcrlf
.movenext
loop
.close
end with
msgbox s
kill "j:\daten\sdir.txt"
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #4 am: Februar 16, 2018, 19:50:53 »
Hallo daolix,
Danke für den Code!  :D Leider kann ich den Code nicht mehr vor nächsten Montag einpflegen. Ich gebe dann Rückmeldung.
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #5 am: Februar 21, 2018, 09:13:08 »
Hallo daolix,
konnte mich leider erst heute wieder der Sache widmen.
Die select-Anweisung habe ich entsprechend angepasst. Beim Ausführen erhalte ich leider eine Fehlermeldung in Zeile 3 (with currentdb.openrecordset("select f1 from [text;database=j:\daten\;hdr=no].sdir.txt where (((f1) not in (select DEIN_ID_FELD from DEINE_TABELLE)));"). Es könne das Objekt -sdir.txt- nicht gefunden werden. :-\.
Zugriff auf das Netzlaufwerk liegt vor. Es scheint so, als ob die sdir.txt nicht erstellt wird. Hast du eine Idee?
DANKE
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1227
Re: verwaister Verzeichnispfad
« Antwort #6 am: Februar 21, 2018, 10:10:17 »
Man könnte ja durchaus einmal nachsehen, ob die Datei sdir.txt vor dem Auftreten des Fehlers existiert.
Grüße von der (⌒▽⌒)
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #7 am: Februar 21, 2018, 10:38:16 »
Hallo Lachtaube,
die Datei besteht eben nicht- daher kann eben dann auch nicht darauf zugegriffen werden. Mir ist leider nicht klar, warum sie erstellt wird.
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1227
Re: verwaister Verzeichnispfad
« Antwort #8 am: Februar 21, 2018, 11:26:20 »
Der Zweck liegt darin begründet, alle Verzeichnisnamen zu ermitteln, damit in einer SQL-Abfrage die Verzeichnisnamen ausgeschlossen werden können, die keine Waisen sind - also nur die Waisen übrig lassen.

Kannst Du die Datei denn in einer Eingabeaufforderung-Sitzung manuell anlegen? Zuerst J: eingeben, danach cd \daten eintippen und anschließend den Befehl dir /b /ad > sdir.txt absetzen (jede Eingabe jeweils mit der Eingabetaste abschließen). Danach prüfen, ob die Datei sdir.txt im Verzeichnis existiert.
Grüße von der (⌒▽⌒)
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #9 am: Februar 21, 2018, 12:19:11 »
Hallo Lachtaube,
das geht- die Datei wird erstellt!
 

Offline Lachtaube

  • Access Guru
  • ****
  • Beiträge: 1227
Re: verwaister Verzeichnispfad
« Antwort #10 am: Februar 21, 2018, 12:32:57 »
Dann sollte der Code von Daolix ja laufen, wenn Du die zweite und letzte Zeile auskommentierst.
Grüße von der (⌒▽⌒)
 

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #11 am: Februar 21, 2018, 12:50:13 »
DANKE! Werde das nochmals probieren.
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23320
Re: verwaister Verzeichnispfad
« Antwort #12 am: Februar 21, 2018, 13:32:10 »
Hallo,

Access mag die Punkte in der verknüpften Tabelle nicht..
Ein Aliasname löst das Problem:

with currentdb.openrecordset("select T.f1  from [text;database=j:\daten\;hdr=no].sdir.txt as T where (((T.f1) not in (select DEIN_ID_FELD from DEINE_TABELLE)));")

Offline Guenther

  • Newbie
  • Beiträge: 29
Re: verwaister Verzeichnispfad
« Antwort #13 am: Februar 22, 2018, 12:25:24 »
Hallo!
Konnte inzwischen wieder mit dem Problem beschäftigen. Es ist definitiv so, dass die txt-Datei in Zeile nicht erstellt wird. Wenn ich sie manuel über die Eingabeaufforderung erstelle, dann läuft der Code in der restlichen Form wie von daolix vorgeschlagen durch. Das von DF6GL angedeute Problem zeigt sich nicht.
Leider werden aber in der MsgBox dann ALLE Namen angezeigt. Mit dem Filter klappt es leider noch nicht. Habe in meiner Tabelle ein Feld exakt den Namen des Verzeichnisses auf dem Laufwerk entspricht. Dieses habe ich in der select-Anweisung eingepflegt. Müsste ich den Code von einem Formular mit den Namen aus aufrufen?
 

Offline daolix

  • Access-Profi
  • **
  • Beiträge: 350
  • Von nix nen Plan
Re: verwaister Verzeichnispfad
« Antwort #14 am: Februar 22, 2018, 13:32:29 »
Hallo
Wenn keine txt Datei erstellt wird  (auch keine 0-Byte große) könnte es bedeuten das wscript wohl nicht ausgeführt wird. K.A warum. Sicherheitseinstellungen?
In der Textdatei stehen nur die Namen der Verzeichnisse von J:\Daten\ (z.B. Guenther BeiAOM). In deiner Tabelle sollte dann auch nur das stehen, nicht der komplette Path, oder zusätze wie z.B. ein backslash.
Zitat
Müsste ich den Code von einem Formular mit den Namen aus aufrufen?
Nein. den Code in ein Modul als Sub einfügen und diese Sub Ausführen.