Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
Info

Gewisse Aufgaben können in Logo automatisiert ausgeführt werden, dazu werden sogenannte Skript-Dateien erstellt und zu einem gewünschten Zeitpunkt aufgerufen. Dies ist beispielsweise hilfreich für das regelmässige Erstellen von Backups, den regelmässigen Import oder Export bestimmter Daten oder die Ausgabe bestimmter Reports.

Die dazu benötigten Skript-Dateien können direkt aus dem jeweiligen Aufgabendialog erstellt und danach über Datei > Skript-Datei ausführen in Logo ausgeführt werden.

Speichern einer Skript-Datei

Unten links im Dialog der verschiedenen Aufgaben befinden sich die Skript-Funktionen.

...

  • Parameter als Aufgabe in die Zwischenablage kopieren – kopiert nur die Parameter zur aktuellen Aufgabe, um diese in ein bereits bestehendes Skript einzufügen.

  • Parameter als Skript in die Zwischenablage kopieren – kopiert die Parameter der Aufgabe inkl. der benötigten Angaben, um diese als Skript irgendwo einzufügen.

  • Parameter in Skript-Datei speichern – speichert die Parameter der Aufgabe direkt als Skript in eine Text-Datei.

...

Certaines tâches peuvent être automatisées dans Logo en créant des fichiers de script et en les chargeant au moment voulu. Cela est utile par exemple pour la création régulière de sauvegardes, l'importation ou l'exportation régulière de certaines données ou la production de certains rapports.

Les fichiers de script peuvent être créés directement à partir de la boîte de dialogue de la tâche, puis exécutés dans Logo via Fichier > Scripts.

Table of Contents

Fichiers script

Enregistrer un fichier script

En bas à gauche de la boîte de dialogue de la tâche requise se trouvent les fonctions de script.

...

  • Copier les paramètres en tant que tâche dans le presse-papier – Copie uniquement les paramètres de la tâche en cours pour les coller dans un script existant.

  • Copier les paramètres en tant que script dans le presse-papier – Copie les paramètres de la tâche, y compris les informations requises, afin de les coller quelque part sous forme de script.

  • Enregistrer le script dans le fichier – Enregistre les paramètres de la tâche directement sous forme de script dans un fichier texte.

Exemple d’un fichier script

Code Block
; -------------------------------------------------------------------------
; Startzeile mit Angabe zur Applikation (Wert von Ligne de départ avec spécification de la tâche (valeur de ProductGroup)
@GEOLOGIX_SCRIPT Logo12

; Spécification Angabedes vonvariables Variablen,qui diepeuvent inêtre Paramsutilisées verwendetdans werdenles könnenparamètres.
@VARIABLE InputDirectory=D:\Scripts\Input
@VARIABLE OutputDirectory=D:\Scrips\Output
@VARIABLE Prefix=Import_Drain

; Spécification Optionalefacultative Angabed'un einerfichier Logdateijournal
@LOGFILE %OutputDirectory%\Logs\%Filename%_%Date%.log

; -------------------------------------------------------------------------
@TASK BACKUPBACKUPDATEN
@COMMENT Datenbank Backup
EFileBackup de la base de données
EReportFile=%OutputDirectory%\Backup.zip
@ENDTASK

; -------------------------------------------------------------------------
@TASK REPORTELMEABSCHALTUNGENRAPPORTDESARRETS
@COMMENT AbschaltungenArrêts
FFilename=%OutputDirectory%\ReportRapport_AbschaltungenArrets.xlsx
@ENDTASK

; -------------------------------------------------------------------------
@TASK DRAINIMPORTSCHAECHTEDRAINIMPORTCHAMBRES
@COMMENT Drain\Import aus d'Excel\1. Schächtechambres
Filename=%InputDirectory%\%Prefix%_Schachtchambre.xls
@ENDTASK

; -------------------------------------------------------------------------
; ÜberAvec les commandes @INCLUDE Commands können weitere Scriptdateien eingebunden werdendes fichiers de script supplémentaires peuvent être inclus.
; Diese Include Dateien können jeweils nur Ces fichiers include ne peuvent contenir que des blocs @TASK Blöckeou oderdes weitererequêtes @INCLUDE Anweisungen enthaltensupplémentaires.
@INCLUDE Export_Base_AbschnitteSections.txt

Vordefinierte Schlüsselwörter / Befehle

...

Schlüsselwort

...

Beschreibung

...

Mots clés / commandes prédéfinis

Mots-clés

Description

Exemple

@GEOLOGIX_SCRIPT

Gibt an, zu welcher Applikation die Skript-Datei gehört. Diese Information muss i.A. nicht bearbeitet werden.

Précise l'application à laquelle le fichier de script appartient. Ces informations n'ont généralement pas besoin d'être modifiées.

@GEOLOGIX_SCRIPT Logo12

@VARIABLE

Definieren Sie Variablen zur weiteren Verwendung im Skript

Définit des variables pour une utilisation ultérieure dans le script

@VARIABLE InputDirectory=D:\Scripts\Input

@LOGFILE

Definieren Sie mit @LOGFILE eine Protokoll-Datei. Das Protokoll zu der Aufgabe wird dann in diese Datei abgespeichert. Die Angabe einer Protokoll-Datei wird dringend empfohlen zur Nachverfolgung und Fehlersuche

Définit un fichier journal. Le journal de la tâche est ensuite enregistré dans ce fichier. La spécification d'un fichier journal est fortement recommandée pour le suivi et le débogage.

@LOGFILE D:\

Protokoll

Protocole.log

@TASK

Die Identifikation der Aufgabe. Diese Information muss i.A. nicht bearbeitet werden

Identification de la tâche. Ces informations ne doivent généralement pas être modifiées.

@TASK

REPORTGRABENFLICKE

@INCLUDE

Mit @INCLUDE können weitere Skript-Dateien eingebunden werden. Diese Dateien können jeweils nur @TASK Blöcke oder weitere @INCLUDE Anweisungen enthalten

RAPPORTFOUILLES

@COMMENT

Kommentar zu Aufgabe. Wird beim Ausführen in der Applikation angezeigt. Hier können z.B. Hinweise zu Filtern notiert werde.

@COMMENT Report für alle Parkplätze in der Gemeinde X

Commentaire sur la tâche. Ce message est affiché dans l'application pendant l'exécution. Par exemple, des indications sur les filtres peuvent être notées.

@COMMENT Rapport de toutes les places de stationnement dans la commune X

@INCLUDE

Avec @INCLUDE, des fichiers de script supplémentaires peuvent être inclus. Ces fichiers ne peuvent contenir que des blocs @TASK ou des déclarations @INCLUDE supplémentaires. Les e-mails ne sont envoyés que si le script est exécuté via un appel en ligne de commande (voir ci-dessous).

@INCLUDE Export_Base_

Abschnitte

Variable

Beschreibung

Beispiel - Eingabe

Beispiel - Ergebnis

Today

Aktuelles Datum

D:\Bericht

Sections.txt

Vordefinierte Variablen

Folgende Variablen sind vordefiniert und können in den Script-Dateien verwendet werden:

@LOGEMAILS

@LOGEMAILSUBJECT

Les résultats du script exécuté peuvent être envoyés par e-mail via @LOGEMAILS.

Indication pour l'objet de ces e-mails.

Cette fonctionnalité n'est actuellement disponible que pour les projets sur les serveurs de Begasoft.

@EMAILS hans.muster@email.ch, greta.muster@email.ch

Log pour le script XY

Variables prédéfinies

Les variables suivantes sont prédéfinies et peuvent être utilisées dans les fichiers de script :

Variable

Description

Exemple - Entrée

Exemple - Résultat

Today

Date actuelle

D:\Rapport_%Today%.xlsx

D:\

Bericht

Rapport_20200311.xlsx

Date

Aktuelles Datum in der Form

Date actuelle sous la forme yyyymmdd

D:\

Bericht

Rapport_%Date%.xlsx

D:\

Bericht

Rapport_20200311.xlsx

Time

Aktuelle Zeit in der Form

Heure actuelle sous la forme hhmmss

D:\

Bericht

Rapport_%Time%.xlsx

D:\

Bericht

Rapport_130417.xlsx

Filename

Name der Script-Datei ohne Dateierweiterung

Nom du fichier de script sans extension de fichier

D:\%Filename%_%Date%.log

in der Script-Datei

dans le fichier script
T:\Scripts\

ReportKuba

RapportKuba.txt

D:\

ReportKuba

RapportKuba_20200311.log

Ausführen von Aufgaben in Skript-Dateien

Wurde eine Skript-Datei erstellt bzw. gespeichert, kann diese danach über Menü Datei > Skript-Datei ausführen aufgerufen und die enthaltenen Aufgaben ausgeführt werden. Enthält eine Skript-Datei mehrere Aufgaben, können entweder einzelne Aufgaben oder alle Aufgaben ausgeführt werden.

...

Ausführen von Skripts über Windows Command Prompt

Sollen Aufgaben regelmässig und zu bestimmten Zeitpunkten ausgeführt werden, kann der Windows Task Scheduler (Aufgabenplanung) verwendet werden. Dazu werden zusätzlich zur Skript-Datei die folgenden Angaben beinhalten:

  • Pfad zum Logo.exe, welches gestartet werden soll

  • Angabe der INI-Datei, welches verwendet werden soll (liegt dieses nicht im selben Verzeichnis wie das Logo.exe, muss der gesamte Pfad angegeben werden)

  • Angabe der Skript-Datei(en), welche(s) ausgeführt werden soll(en)

...

Projectname

Nom du projet (du fichier INI)

%Projectname%_%Date%

Kantonsstrassen_ZH_20241028

IniFile

Bezeichnung der Ini-Datei

%IniFile%_%Today%

Logo_Kt.Zürch_20241028

Exécution de tâches dans des fichiers de script

Si un fichier script a été créé ou enregistré, il peut être appelé via le menu Fichier > Scripts et les tâches qu'il contient peuvent être exécutées. Si un fichier script contient plusieurs tâches, il est possible d'exécuter soit des tâches individuelles, soit toutes les tâches.

...

Windows Task Scheduler

Exécution de scripts via Windows Command Prompt

Si les tâches doivent être exécutées régulièrement et à des moments précis, le planificateur de tâches de Windows peut être utilisé. Pour cela, il faut disposer des informations suivantes en plus du fichier script :

  • Chemin d'accès à Logo.exe, qui doit être démarré

  • Spécification du fichier INI à utiliser (si celui-ci ne se trouve pas dans le même répertoire que Logo.exe, le chemin d'accès complet doit être spécifié)

  • Spécification du (des) fichier(s) de script à exécuter

Ces informations peuvent être soit saisies directement dans le planificateur de Windows, soit enregistrées dans un fichier texte avec l'extension *.cmd, qui est ensuite inclus dans le planificateur.

Code Block
\\server01\Logo12\Logo12.exe -config ktGraubuendenCtValais.ini -script D:\LOGO\batch_signalshp.txt

In diesem Beispiel wird Dans cet exemple, Logo12.exe gestartet, die Datenbank des Kantons Gaubünden geöffnet und der Batch-Export von Signalen in ein Shapefile ausgeführt.

...

est lancé, la base de données du Canton du Valais est ouverte et l'exportation par lots des signaux vers un shapefile est exécutée.

Panel
panelIconId2757
panelIcon:exclamation:
panelIconText
bgColor#FFEBE6

Si des données doivent être exportées vers un fichier (ex : shapefile), il faut s'assurer que le fichier correspondant n'est pas bloqué par quelqu'un au moment de l'exportation.

Vider la corbeille à papier via la ligne de commande

Au démarrage de Logo, les objets qui ont dépassé la période définie sont supprimés de la corbeille. Selon le nombre d'objets qui doivent être supprimés de la corbeille, cela peut prendre plus de temps.

Pour effectuer cette étape en dehors des heures de travail, la corbeille peut être exécutée via l'entrée suivante du planificateur de tâches Windows.

Code Block
Logo12.exe -checkemptyrecyclebin

Problèmes et solutions

Problèmes avec les accents / caractères spéciaux

La solution consiste à ouvrir le fichier script dans l'éditeur et à l'enregistrer avec le jeu de caractèresUTF8 avec BOM.

Par sécurité, tous les scripts utilisés dans Logo devraient être enregistrés dans le jeu de caractèresUTF8 avec BOM, dans le cas contraire ils pourraient ne pas fonctionner correctement lors de leur exécution dans Logo.