Beiträge von oberh

    Hi Bugfix!


    Ja danke, habe ich gesehen ... ;)

    Ob ich das

    Code
    '2E464F', '202020'

    aber auch in einem Jahr noch nachvollziehen kann ... wer weiss, wer weiss ... ;)

    Jetzt habe ich ja einen funktionierenden Code und brauche so auch nicht nachfragen, wie "" (also leere Zeichenkette) anstelle Deiner 3 Leerzeichen ersetzt wird ... <räusper> :)


    Hi Moombas!

    Deinen Vorschlag werde ich im Hinterkopf behalten. Danke Dir!

    Hi zusammen!


    Zitat

    Das das Skript nicht mehr funktioniert, wenn die .dll fehlt ist (aus meiner Sicht) doch logisch.

    Ich bin ja noch Anfänger in AutoIt.

    Für mich war es aber logisch, die dll und die au3 mit in den Include-Ordner zu packen, da sie ja auch per Include in den Code eingefügt werden.


    So habe ich mir damals in Access auch eine Funktionssammlung angelegt, die ich dann in meinen Datenbanken eingebunden habe. Die Funktionssammlung habe ich immer laufend gehalten.

    Wenn es dann irgendwo deswegen knallte, wurden die Datenbanken eben entsprechend angepasst.

    Allerdings muss ich zugeben, dass die Datenbanken natürlich nur im Hause, wenn auch in verschiedenen Abteilungen, also in einem Netzwerk, verwendet wurden.


    Zitat


    ...und den Pfad direkt gesetzt (damit man nicht immer durch den FileSelectFolder-Dialog durch muss

    Das muss leider sein, da sich dieser Pfad immer wieder ändern kann.

    Wir arbeiten mit einem Aktenplan und jeder BPlan wird mit einer eigenen Auftragsnummer abgelegt.

    Darunter kann jeder die Ordner strukturieren, wie er möchte (naja ... fast).


    Zitat


    Kompiliere dein Skript (mit F7) als *.exe

    Ja, das macht Sinn.

    Da warte ich aber ein paar Tage ... hatte heute morgen meine Anleitung verschickt, wie die Scripte in Geograf einzuninden sind.

    Wäre blöd, wenn ich das jetzt schon wieder ändern lasse.

    Die Digitalisierung der BPäne entwickelt sich ja gerade.

    So wird es noch genug an Änderungen der Digitalisierrichtlinien z.B. geben, mit denen ich die Änderung in die exe "einbetten" kann. ;)


    Edit ... Mist zu früh abgeschickt ... :)


    Zitat


    FileInstall ("DBF.dll", @ScriptDir & "\DBF.dll") ; Einbinden der DLL

    Cool ...


    Ein Dankeschön an alle, die sich hier beteiligt haben!


    LG

    Olaf

    Hi Musashi!


    Habe es gerade auf meinem privaten Rechner laufen lassen - es funktioniert.


    Im Laufe des Tages werde ich Dein Script Schritt für Schritt umbauen und sehen, wo es letztlich hakt.


    Super! Danke vielmals!

    Guten Morgen zusammen und vielen Dank, dass Ihr Euch so viele Gedanken macht!


    Nun habe ich mir gerade auf meinem privaten Rechner auch AutoIt installiert.


    Habe mir meine au3-Dateien ebenso dorthin kopiert und habe beide #AutoIt3Wrapper_UseX64 Varianten getestet.


    Die dbf wird weiterhin nicht geöffnet.


    Was habe ich denn gemacht, nachdem es gelaufen hatte ... (Brainstorming) ...


    ... Zunächst habe ich den Dateinamen als kompletten String mit Pfad drin stehen gehabt.

    ... Dann habe ich FileselectFolder eingebaut. Auch zu dem Zeitpunkt meine ich, lief das Script noch.

    ... Die Kommentarzeilen kamen als Nächstes hinzu.

    ... Die Beispieldatei habe ich dann über einen Export aus meinem Geograf-Projekt, welches mir als "Legende" dient, neu erstellt.

    Zwischenzeitlich hatte ich noch ein paar Punkte und Texte dort hinein gepackt, die aber für die Flächen-dbf, die hier geändert

    werden soll, unerheblich sind. Auch habe ich vorab noch ein paar Spalten neu definiert in der zugrunde liegenden Datenbank,
    aus der die dbf abgeleitet wird. Dies sollte auch nicht zum jetzigen Problem führen.
    Zudem kann ich die dbf in Excel öffnen und auch als kopletten Shape in ArcGIS.

    Die Datei kann also nicht beschädigt sein - Ihr könnt sie ja auch öffnen ...

    ... An der Konfiguration von AutoIt habe ich nichts geändert. Privat habe ich FileselectFolder sogar neu über einen Link hier im
    Forum implementiert.

    ... An unserer EDV kann es nicht liegen - privat läuft das Script ja auch nicht.


    Und dennoch muss sich ja irgend etwas geändert haben ... <Haare rauf´>

    Jepp ... Behördenwahn pur ... :)


    Immerhin sollen wir, was die Sicherheit angeht, mit zu den führenden Behörden in D gehören ...


    Ja, werde es mal auf meinem privaten Rechner testen, wenn ich morgen wieder im Homeoffice bin.


    Allerdings muss ich auch da aufpassen, was ich installiere ...


    Kürzlich habe ich Zoom für private Zwecke installiert. Prompt kam eine Meldung: Jeder, der die Software auf seinem privaten Rechner nutzt (mit dem ja auch Homeoffice gemacht wird), fliegt aus dem Netz ...

    Also musste ich es wieder deinstallieren ...


    Moombas

    Danke Dir ... Schaue ich mir gleich mal an ... Da war ich zwar schon, hatte aber SciTe nicht gesehen ...

    Hi!


    Keine Chance ...

    Sie lassen nur noch Fremdsoftware zu.

    Für solch ein kleines Tool ist es aber doch Blödsinn eine Fremdfirma zu beauftragen.


    Leider sehen sie nur als Beispiel ein Projekt, wo der Programmierer die Stelle gewechselt hatte und niemand nun mehr die Datenbank betreuen konnte.


    Ich selbst habe hingegen schon Daten gerettet, wo die Kaufsoftware nicht mehr lief und die Firma und damit ein Support nicht mehr existierte.


    Ich habe zwar noch eine Access-Lizenz, jedoch kann ich die Programme nicht mehr verteilen.


    Bei diesem Projekt hier wollen wir eine andere Abteilung bei der Digitalisierung von Bebauungsplänen helfen.

    Die dort vorrätige Software arbeitet mit alphanumerischen Schlüsseln (siehe Feld PLANZ), die je Geometrietyp eindeutig sind.

    Wir hier arbeiten aber mit Geograf, wo die Konstruktionswerkzeuge einfach besser sind.

    Allerding kollidieren hier die Schlüssel bei Linien- und Flächenobjekten,

    Daher habe ich jedem flächenförmigen Objekt ein ".FO" an den Schlüssel gehangen.

    Wenn wir die Daten also abgeben wollen (per SHP-Schnittstelle), dann muss diese Zeichenkette entfernt werden - erhalten wir Daten und wollen diese bei uns einlesen, muss die Zeichenkette ergänzt werden.

    Schlüsselkonflikt gelöst ...


    Keiner konnte ahnen, dass aus diesem "ich programmiere mal eben was in AutoIt" solch ein Problem entsteht ... :)


    Musashi

    Darauf lasse ich es ankommen ... :)


    AutoIt habe ich schon im Netzwerk liegen. In Geograf habe ich eine Symbolleiste mit den beiden Befehlen erzeugt, sodass sie jeder nutzen kann.

    Hi!


    Die hatte ich oben schon eingestellt.


    Musashi

    Dein Script habe ich auch mal abgespeichert und in den selben Ordner meine dbf gelegt.

    Dann habe ich noch mal den Inhalt Deiner dbf.zip verglichen mit dem Stand, der mir von gestern vorlag - bis auf die Minute identisch.

    Die dll und die au3 habe ich dann trotzdem noch einmal in den include-Ordner von AutoIt verschoben.

    Habe es durchlaufen lassen ... immer noch öffnet er die dbf nicht. >Grrrr....>


    Den SciTE kann ich hier nicht installieren ... dazu habe ich keine Rechte.

    Programmiere ja nicht mehr in Access, da es von unserer EDV nicht gewollt ist, dass hier programmiert wird.

    Daher habe ich mich ja nun für AutoIt entschieden, um wenigstens kleinere Tools schreiben zu können.

    Hi!


    Komme mir vor, als wäre ich ein Dummy ...


    Sorry ... habe jahrelang in Access programmiert ...


    Habe es jetzt abgeändert in: Global $sPLANZ


    Ich rufe das Script immer über die Autoit3.exe mit der au3-Datei als Parameter auf.


    Als "GUI" nutze ich nur den Notepad++.


    Und natürlich starte ich den Code vorher immer erst einmal, bevor ich ihn hier poste ...


    Die falsche Deklaration hat aber wohl nicht gestört.


    Habe jetzt mal den Code auf das Wesentliche reduziert und durchlaufen lassen ...

    Immer noch kommt die Meldung: "Fehler beim Öffnen der dbf ..."

    Musashi: Habe bitte ein wenig Geduld mit mir ... :)


    EDIT-BugFix: Code formatiert

    Hi!

    Normalerweise bin ich derzeit im Homeoffice ... heute mal nicht. Daher ist hier gerade etwas mehr los ...

    Habe jetzt auch die Hochkommata im Code geändert, und nicht nur in der Kommentarzeile ... <schäm> ;)


    Dateien

    Hi!


    Erst einmal vielen Dank!


    Doch, doch ... das lief ...


    Danach hatte ich lediglich die Messageboxen eingefügt - und damit den Gänsefüßchenfehler.

    Und das EndIf ist verschwunden, weil ich hier im Forum überschüssige Zeilen entfernt hatte - leider einmal eine zu viel.

    Jo ... die Deklaration steht nun außerhalb der Schleife.


    Danke auch noch mal für die beiden Anhänge. Beide hatte ich gestern erst herunter geladen. :)


    Hmmm ... "Fehler beim Öffnen der dbf ..." heißt es weiterhin ...


    Ich füge den Code jetzt noch mal 1:1 ein ...


    Hi Leute!


    Habe mir zwei kleine Scripte mit der DBF-UDF von Funkey geschrieben.

    Sinn ist es, in einer DBF in einer Spalte drei Zeichen zu entfernen, bzw hinzuzufügen.


    Tja ... gestern lief das Script noch ... heute nicht mehr ... und vielleicht sehe ich gerade den Wald vor lauter Bäumen nicht ...

    Vielleicht könnt Ihr mir ja ein wenig auf die Sprünge helfen ...


    Hier mal das erste Script ...

    Es öffnet die DBF nicht mehr, die selbstredend existiert und auch nicht beschädigt ist.



    Vielen Dank im Voraus

    Olaf

    Hallo Ihr Zwei!


    Erst einmal Danke für Eure Antworten!

    Zitat

    Erscheint nach dem einlesen kein Hinweis oder ähnliches?


    Diesen Knackpunkt haben mein Kollege und ich gerade herausgefunden :D


    Eine Meldung per Dialog oder dergleichen existiert nicht. Aber:


    Die NAS-Datei wird zunächst in die MDB eingelesen.


    Im zweiten Schritt wird aus dieser MDB auf %temp% eine Textdatei erzeugt, die die Grafik in einem für Geograf lesbaren Format beinhaltet.


    Ich warte also ab, bis die Meldung "Lese <Textdatei>" erscheint und kopiere mir diese sofort weg. Erst hier weiss ich ja, dass sie vollständig sein muss.


    Ist der Import abgeschlossen, dann löscht Geograf die Originaldatei.


    Dies kann ich jetzt in einer Warteschleife mit Fileexists abfragen und dann KIVID/Geograf beenden.


    Selbst bei Randkacheln mit extrem wenig Inhalt - also fixem Import - funktioniert dies.


    Ergo: Für das genannte Problem habe ich eine Lösung gefunden.


    Auf zum nächsten Problem ...

    Hallo zusammen!


    Ich heiße Olaf, bin 45 Jahre alt und arbeite bei einer Stadtverwaltung in der Vermessung.


    Hier habe ich vor ungefähr 20 Jahren langsam angefangen, mich mit Access zu beschäftigen.


    Im Laufe der Zeit sind so einige kleine Datenbanken (Auftragsverwaltung mit Abrechnungs-/Berichtswesen, DB für Vorkaufsrechte, Grenzniederschriften, Baulastenverzeichnis ... und viele nützliche Tools entstanden.


    Seit nun ungefähr drei Jahren wünscht unsere EDV-Abteilung keine Eigenprogrammierungen mehr.


    Gerade an der mittlerweile angeschafften Software ist ersichtlich, wie destruktiv dies sein kann.


    Unter Anderem ist dies auch der Grund meines ersten Hilfeschreies hier im Forum.


    Seit auch nun drei Jahren warte ich auf die Anbindung einer Personal- oder besser noch File-Geodatabase - erhalte Versprechungen ... und ich denke, Ihr wisst, wie es weiter geht.


    Wenn Ihr Fragen habt, beantworte ich diese gerne.

    Hi zusammen!


    Zunächst einmal: Ich bin absoluter Neuling in AutoIt.


    Bisher habe ich ein paar Datenbanken in Access 2002 geschrieben - ganz unerfahren bin ich zumindest in VBA also nicht.


    Da von der "Obrigkeit" nicht mehr gewünscht ist, in Ac (nun 2010) zu programmieren, habe ich vorgeschlagen, das o.g. Projekt in AutoIt zu bewerkstelligen.


    Vorgegeben: Einmal wöchentlich erhalten wir NAS-Daten vom Katasteramt. Diese werden durch einen Kollegen in einem Rutsch bereits automatisiert in ein GIS gespielt. Eine Schnittstelle zu der Software KIVID/Geograf existiert nicht. Auf Grund der Komplexität der ALKIS-Daten - und der permanenten Vorgabenänderungen, macht es keinen Sinn, eine Schnittstelle zu kaufen und zu konfigurieren.


    Zudem haben wir für das Programm KIVID eine eigene NAS-Schnittstelle.


    Das Problem: KIVID arbeitet intern noch mit mdb´s - wir scheitern also an der Dateigrößenbeschränkung von 2 GB und können deshalb die Daten nicht wie beim GIS in einem Rutsch einlesen. Ich muss hierfür einzelne Projekte anlegen.


    Die größte Datei/Kachel habe ich testweise manuell geladen - die Größe der MDB hält sich einem halben GB im Rahmen.


    Die Urladung (Erstabgabe) erfolgte in 66 räumlichen Kacheln - sprich XML-Dateien.


    Die Anzahl der Fortführungsdateien beschränkt sich auf die betroffenen Kacheln der Urladung.


    Aus diversen Gründen kann jederzeit anstatt einer Fortführung eine neue Urladung erfolgen.


    Sowohl das Datum der Urladung, als auch das Datum der der Fortführung sind in den Dateinamen enthalten.


    Eine Kachelzuordnung erfolgt lediglich über ein Koordinatenpaar, welches ebenfalls im Dateinamen enthalten ist.


    Sind alle Kacheln mit Daten gefüllt, werden nur die Graphischen exportiert und zusammen in ein einziges Geograf-Projekt geladen, aus dem sich die Sachbearbeiter bedienen können.


    Das Entladen und zusammenladen habe ich bereits per Batch gelöst.


    Das zu schreibende Tool soll künftig auf einem virtuellen Rechner autarg laufen, um meine Rechnerkapazität nicht einzuschränken. (Die größte Kachel benötigt ca. 6h). Außerdem sind KIVID und Geograf momentan auf einem Server installiert. Auf dem virtuellen Rechner werde ich sie lokal installieren.




    Diese groben Rahmenbedingungen zeigen schon auf, dass eine Automation durchaus sinnvoll ist.




    Jetzt nun zu meinem akuten Problem:


    Ich habe es schon hinbekommen, dass die Software KIVID geöffnet wird. Intern wird zusätzlich Geograf gestartet.


    Nach dem Öffnen von KIVID wandere ich zum entsprechenden Menüpunkt und schreibe den Dateinamen in den Datei-öffnen-Dialog.


    Nun muss ich warten, bevor ich KIVID mit Winclose beenden kann.


    Leider flackern die kleinen Dialoge (zumeist als Fortschrittsbalken) so schnell über den Bildschirm, dass ich weder den Titel, noch den Text erkennen kann.


    Lassen sich diese Fenster, bzw die Informationen, die ich für winwaitclose benötige aufzeichnen?


    In einem Fenstertitel erscheint immer eine anderslautende temporäre Datei à la "Lese '6z34.in'"


    Kennt Winwaitclose Wildcards - und wie lautet dann die Syntax?




    Ich danke Euch im Voraus.