Fernsteuerung über die Kommandozeile
Die Fernsteuerung von easymap über Kommandozeilenreferenz bietet die Möglichkeit, elementare Funktionen aus anderen Anwendungen heraus mit einfacher Programmierung zu steuern, z.B. das Öffnen, Aktualisieren und Drucken von Karten. Die Fernsteuerung kann auch über ein Batch-Skript erfolgen.
Sie können mit entsprechender Programmierung Windows veranlassen, easymap zu starten, eine easymap-Kartenmappe zu öffnen und am Bildschirm anzuzeigen. Enthält eine Kartenmappe verknüpfte Daten, so aktualisiert easymap die Karten automatisch. Enthalten die Karten Analysen mit äquidistanten oder gleich verteilten Werteklassen, so werden auch die Werteklassen automatisch aktualisiert.
easymap wird dabei über die Kommandozeile mit speziellen Parametern gestartet die von easymap in Aktionen umgesetzt werden. Vor allem für regelmäßig wiederkehrende, automatisierte Aufgaben kann dieses Verfahren interessant sein.
Folgende Dinge sind über diesen Ansatz möglich:
- Öffnen, Speichern und Schließen von Kartenmappen
- Drucken und Grafikexport von Bestandteilen der Kartenmappe
- Modifizieren der Kartenmappe in engen Grenzen, z.B. Sichtbarkeit der Objekte ändern.
Wenn Sie weitergehenden Zugriff auf die Kartenmappe benötigen, verwenden Sie bitte das COM-Objektmodell.
Im Folgenden führen wir einige Beispiele für Kommandozeilenrefenenzen aus (bitte beachten Sie, dass diese Fernsteuerungsbefehle für geübte Programmierer gedacht sind).
Mit Hilfe von Kommandozeilenparametern ist es möglich eine große Menge von Kartenmappen zu verarbeiten. Die Steuerung kann z.B. über ein Batch-Skript erfolgen.
Jeder Befehl besteht immer aus dem Namen des Befehls und einer Liste von Parametern. Die Parameterliste steht immer in Anführungszeichen und die Parameter sind mit Semikolon getrennt. Optionale Parameter (in der Befehlsreferenz durch eckige Klammern gekennzeichnet) können weggelassen werden. Es können beliebig viele Befehle aneinandergereiht werden.
Beispiel:
Ausdrucken einer kompletten Kartenmappe:
Kommandozeile: EasyMap.exe open "Dateiname.empx" print "" close ""
Befehl: /?
Ausgeben der Kommandozeilenhilfe:
Kommandozeile: EasyMap.exe /?
Befehl: Open "Dateiname;[Show];[Dokumentname]"
Parameter:
Dateiname | Pfad zur Kartenmappe (Dateiname.empx) |
Show |
(optional) 1=Programmfenster ist sichtbar (default) 0=Programmfenster ist nicht sichtbar |
Dokumentname | (optional) Der Dokumentname wird in folgenden Befehlen zur Identifikation der Kartenmappe verwendet. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Beispiel:
Kartenmappe unsichtbar öffnen und den Dokumentnamen „Doc1“ setzen:
Kommandozeile: EasyMap.exe open "Dateiname.empx;0;Doc1"
Gibt die komplette Kartenmappe, oder Teile davon, auf dem aktuellen Standarddrucker aus:
Befehl: Print "[Blatt|Druckbereichsname|Reportname];[Dokumentname]"
Parameter:
Blatt/Druckbereichsname/Reportname | (optional) Name des Blattes bzw. des Druckbereichs (oder des Reports) welches gedruckt werden soll. Ist dieser Parameter leer werden alle Blätter gedruckt. |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
„Druckbereich 2“ in der Kartenmappe „Doc1“ ausdrucken:
Kommandozeile: EasyMap.exe print "Druckbereich 2;Doc1"
Exportiert ein Blatt bzw. einen Druckbereich als Grafik. Das Grafikformat wird automatisch anhand der Dateierweiterung bestimmt:
Befehl: Export "Dateiname; Blatt|Druckbereichsname|Reportname;[Bildhöhe];[Dokumentname]"
Parameter:
Dateiname | Dateiname der Grafik. Folgende Grafikformate werden unterstützt: PNG, JPG, BMP, TIF, EMF, PDF |
Blatt/Druckbereichsname/ Reportname | Name des Blattes bzw. des Druckbereichs oder des Reports, das exportiert werden soll. |
Bildhöhe | (optional) Höhe des Bildes in Pixeln. Die Breite des Bildes wird automatisch bestimmt. Ist dieser Parameter leer wird die Bildhöhe automatisch bestimmt (72 DPI). |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
„Blatt 1“ mit einer Bildhöhe von 2048 Pixeln als PNG exportieren:
Kommandozeile: EasyMap.exe export "Blatt 1;2048"
Exportiert ein Blatt, die gesamte Kartenmappe oder einen Report als Office-Dokument. Das Format wird automatisch anhand der Dateierweiterung bestimmt. Die weiteren Einstellungen des Exports richten sich nach den zuletzt in dieser Kartenmappe verwendeten Einstellungen.
Befehl: exportdocument "Dateiname; [Blatt|Reportname]; [Show]; [Dokumentname]"
Parameter:
Dateiname | Dateiname des Office-Dokuments. Folgende Formate werden unterstützt: DOC, PPT |
Blatt/Reportname | Name des Blattes bzw. des Reports, der exportiert werden soll. Wenn dieser Parameter leer ist, wird die gesamte Kartenmappe exportiert. |
Show | (optional) „Show“ bewirkt das anschließende Öffnen des Exports in der entsprechenden Anwendung. |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer, wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
„Report 1“ in eine PowerPoint-Präsentation exportieren und anschließend zeigen:
Kommandozeile: EasyMap.exe exportdocument "C:\Rep1.ppt;Report 1;Show"
Die gesamte Kartenmappe nach Word exportieren und anschließend zeigen:
Kommandozeile: EasyMap.exe exportdocument "C:\Karte.doc;;Show"
Exportiert Daten einer Tabelle oder eine Abfrage in eine Datei. Es werden die Dateiformate CSV und XLS/XLSX unterstützt.
Kommandozeile: exportdata "filename; Tablename|Viewname;[DocumentName]"
Parameter:
Dateiname | Dateiname des Datenexports. |
Tablename/Viewname | Name der Tabelle oder Abfrage die exportiert werden soll. |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer, wird die zuletzt geöffnete Kartenmappe verwendet. |
Ersetzt den Text im angegebenen Freihandtext:
Befehl: SetText "Freihandtext;Text;[Dokumentname]"
Parameter:
Freihandtext | Name des Freihandtext-Elements. Bitte stellen Sie sicher, dass der Name des Elements eindeutig ist. |
Text | Beliebiger Text. "\n" erzeugt einen Zeilenumbruch. |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
Text in Freihandtext „Überschrift 1“ setzen:
Kommandozeile: EasyMap.exe settext "Überschrift 1;Beispiel 1:“
Ermöglicht das Zeigen bzw. Verbergen von Objekten:
Befehl: SetVisible "Objektname;[true|false];[Dokumentname]"
Parameter:
Objektname | Name des Objekts. Bitte stellen Sie sicher, dass der Name des Objekts eindeutig ist. |
[true|false] |
true=Objekt anzeigen false=Objekt verbergen |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
„Farblegende 1“ unsichtbar schalten:
Kommandozeile: EasyMap.exe setvisible "Farblegende 1;false“
Lädt eine Klassifizierung aus einer XML-Datei, die zuvor im Einstellungsdialog der Analyse abgespeichert wurde. Bitte achten Sie darauf, dass die Analyse-Eigenschaften auf Benutzerdefiniert stehen, damit die Analyse korrekt ausgeführt wird.
Befehl: SetKlassifizierung "Analysenname;Klassifizierung; Konfigurationsfile;[DokumentName] "
Parameter:
Analysename | Name der Analyse (z.B. Flächenfärbung 1). Bitte stellen Sie sicher, dass der Name des Elements eindeutig ist. |
Klassifizierung | Nummer der Klassifizierung. Entspricht der Reihenfolge der Tabs im Einstellungsdialog der Analyse. |
Konfigurationsfile | Pfad zu einer gespeicherten XML-Datei. |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
Kommandozeile: EasyMap.exe setklassifizierung "Flächenfärbung 1; 0;klassifizierung.xml"
Speichert eine Kartenmappe unter dem angegebenen Dateinamen ab:
Befehl: Save "Dateiname;[Dokumentname]"
Parameter:
Dateiname | Neuer Dateiname der Kartenmappe (Dateiname.empx) |
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
Aktuelle Kartenmappe unter neuem Dateinamen speichern:
Kommandozeile: EasyMap.exe save "datei_neu.empx"
… alle Änderungen werden verworfen - falls keine weiteren Kartenmappen geöffnet sind, wird das Programm beendet.
Befehl: Close "[Dokumentname]"
Parameter:
Dokumentname | (optional) Name der Kartenmappe. Ist dieser Parameter leer wird die zuletzt geöffnete Kartenmappe verwendet. |
Sie können den Parameter Dokumentname nur verwenden, wenn Sie die Kartenmappe mittels des Open-Befehls über die Fernsteuerung per Kommandozeile geöffnet haben und dort einen Dokumentnamen für die Kartenmappe vergeben haben.
Beispiel:
Aktuelle Kartenmappe schließen:
Kommandozeile: EasyMap.exe close ""
Ermöglicht es, eine Kartenmappe für den easymap explorer freizugeben.
Befehl: Publish "[ID der Kartenmappe]" /instance:update /publishserver:"<Servername>" /publishusername:"<Benutzername>" /publishpassword:"<Passwort>"
Parameter:
ID der Kartenmappe | ID der Kartenmappe, die ersetzt werden soll. Dieser ID kann über die Adresse bei der Betrachtung der Karte im Browser ermittelt werden. |
/instance:update | Legt fest, dass eine vorhandene Kartenmappe ersetzt werden soll. |
/publishserver:"<Servername>" | Legt den Server fest, auf den die Kartenmappe hochgeladen werden soll. |
/publishusername:"<Benutzername>" | Legt den Benutzernamen fest, unter dessen Berechtigung die Freigabe erfolgen soll. |
/publishpassword:"<Passwort>" | Legt das zum Benutzer zugehörige Passwort fest. |
Für eine automatisierte Freigabe können Sie diesen Befehl mit dem Open und Close Befehl kombinieren.
Beispiel:
Eine Kartenmappe wird auf dem Portal unter der Adresse
https://easymap-xplorer.de/Catalog/4acbf219-ae91-4f7e-a122-2e5136323af6
angezeigt. Sie soll ersetzt werden, wobei diese Aktion unter dem Login eines Benutzers mit der E-Mail benutzer@email.de und dem Passwort 123 erfolgen soll.
Kommandozeile: Easymap.exe /batch /instance:update /publishserver:"https://easymap-xplorer.de" /publishusername:"benutzer@email.de" /publishpassword:"123" open "c:\easymap\Interessenten.empx;0" publish "4acbf219-ae91-4f7e-a122-2e5136323af6" close ""
Kartenmappe öffnen, Freihandtext setzen, exportieren, Kartenmappe schließen:
Kommandozeile: EasyMap.exe open "kartenmappe.empx;0" settext "Überschrift 1;Beispiel 2:" export "kartenmappe.empx;Blatt 1;1024" close ""
Blatt 1 aus allen Kartenmappen im aktuellen Verzeichnis exportieren (Batch-Datei):
Kommandozeile: FOR %%f IN (*.empx) DO start /Wait EasyMap.exe open "%%f;0" export "%%f.png;Blatt 1" close ""