Schieben von PDF´s in den richtigen Ordner

  • Mahlzeit;

    das Script müsste folgendes tun:

    -erkennen wann die pdf erstellt worden ist (so ist sie benannt "2018-01-23 14-52-56.pdf), also das Jahr und der Monat ist relevant, in dem Fall das Jahr 2018 und der Monat 01

    -erkennen um welches Bauelement es sich handelt (das steht in der pdf zb "Bauelement 10100892)

    -anschließend die pdf in den passenden Ordner schieben, also in dem Fall: "O:\2018\2018-01\10 100 892"

    Es enstehen jeden Tag 5 -10 solche Protokolle voll automatisch in einem Ordner wo sie darauf warten sortiert zu werden, und das sollte dieses script tun.

    Ich wäre sehr dankbar!

    Weiteres Beispiel:

    - PDF 2018-03-25 23-09-51.pdf (In der pdf steht: Bauelement 10102776)

    -Passender Ordner "O:\2018\2018-03\10 102 776"

    Anbei ein paar beispiel pdf´s

  • Hallo Sascha,

    hab hier mal schnell was zusammengebastelt. Die Exe läuft auch ohne die .au3 Dateien, im ersten Dialog musst du den Ordner auswählen, wo die PDFs vollautomatisch entstehen und im 2. Dialog das Laufwerk, wo sie hinsortiert werden sollen (in deinem Fall "O:"). Die Unterordner werden bei Bedarf automatisch angelegt. Das Skript überprüft den Ordner alle 1,5 Sekunden auf neue PDFs, beenden kannst du das Skript über das Icon im Tray auf der Taskleiste (rechter Mausklich -> "PDF-Sortierer beenden). Der Quellcode sowie alle weiteren Dateien sind im ZIP-Archiv. Wenns nicht funktioniert oder bei Fragen einfach nochmals schreiben.

    LG NO1 :)

    Edit: PDF Sortierer.exe ist das Programm, die pdftotext.exe wird von dem Programm benötigt.

  • Sind die PDFs im gewünschten Ordner angekommen? Weil eigentlich werden die verschoben und nicht kopiert. Wo sollen die PDFs denn rausgelöscht werden?

    • Offizieller Beitrag

    @NO1: An Deinem Script stört mich, dass Du das Verzeichnis ständig abfragst, ob neue PDFs vorhanden sind. Besser ist, wenn das Script auf eine Nachricht (Event) von Windows wartet und erst dann die PDFs einliest. So kann sich die Festplatte auch mal "schlafen legen". Außerdem kann man "pdftotext.exe" auch so aufrufen, dass der Text direkt als Stream an AutoIt übergeben wird, damit spart man sich das erstellen und wieder loeschen der Textdateien. Dein _FileListToArray kannst Du auch gleich mit Dateifilter ("*.pdf") aufrufen, dann musst Du das nicht noch zusätzlich ausfiltern.

    Nicht falsch verstehen! Das soll nur konstruktive Kritik sein, wie man es besser machen kann.

    Im Anhang gibt es meine Version des PDF-Sortierers (mit den obigen Features).

  • Guten Morgen,

    also nach mehrerem rum probieren muss ich sagen , entweder mache ich was falsch oder es funktioniert nicht. Es kommt nur die Meldung "Bearbeitete PDF-Dateien" und unten steht 0...also passiert erstmal nichts.

    Und natürlich habe ich die Pfade eingegeben wo die Dateien hin sollen und wo die ordner liegen in denen sie einsortiert werden sollen, das wäre in beiden fällen O:\.

    Es müssen übrigens die Pfade in der die PDF´s einsortiert werden sollen nicht erstellt werden, diese existieren schon, falls das wichtig ist.

    • Offizieller Beitrag

    Hast Du die PDFs erst nach dem starten des Scripts nach "O:\" kopiert oder lagen die schon beim Start des Scripts dort?

    Im letzteren Fall kann ja nichts passieren, weil es kein Event von Windows gibt. Das Script reagiert erst, wenn ein PDF im überwachten Verzeichnis erstellt wird.

    Wenn es häufiger passiert, dass dort bereits PDFs liegen und die beim Scriptstart einsortiert werden sollen, dann könnte ich noch einen Button zum sortieren einbauen.

  • Oscar

    oder beim Start des Scriptes das Verzeichnis mit filexist abfragen? Spart den Button und die Aktion?

    MFG

    Peter

    Hinweise auf Suchmaschinen finde ich überflüssig - wer fragt hat es nicht gefunden oder nicht verstanden. Die Antwort gibt sich oftmals schneller als der Hinweis auf Dr. Goggle & Co.

    Ab 19-10-22 ergänzt um:

    Die Welt wird nicht bedroht von den Menschen, die böse sind, sondern von denen, die das Böse zulassen. (Albert Einstein)