Versions Compared

Key

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

Certaines tâches peuvent être automatisées dans Logo en créant des fichiers de script et en les appelant 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 > Exécuter le fichier script.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-papiercopie 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 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 fichierenregistre Enregistre les paramètres de la tâche directement sous forme de script dans un fichier texte.

Exemple d’un fichier script

Code Block
; -------------------------------------------------------------------------
; Ligne de départ avec spécification de la tâche (valeur de ProductGroup)
@GEOLOGIX_SCRIPT Logo12

; Spécification des variables qui peuvent être utilisées dans les paramètres.
@VARIABLE InputDirectory=D:\Scripts\Input
@VARIABLE OutputDirectory=D:\Scrips\Output
@VARIABLE Prefix=Import_Drain

; Spécification facultative d'un fichier journal
@LOGFILE %OutputDirectory%\Logs\%Filename%_%Date%.log

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

; -------------------------------------------------------------------------
@TASK RAPPORTDESARRETS
@COMMENT Arrêts
FFilename=%OutputDirectory%\Rapport_Arrets.xlsx
@ENDTASK

; -------------------------------------------------------------------------
@TASK DRAINIMPORTCHAMBRES
@COMMENT Drain\Import d'Excel\1. chambres
Filename=%InputDirectory%\%Prefix%_chambre.xls
@ENDTASK

; -------------------------------------------------------------------------
; Avec les commandes @INCLUDE des fichiers de script supplémentaires peuvent être inclus.
; Ces fichiers include ne peuvent contenir que des blocs @TASK ou des requêtes @INCLUDE supplémentaires.
@INCLUDE Export_Base_Sections.txt

Mots clés / commandes prédéfinis

Mots-clés

Description

Exemple

@GEOLOGIX_SCRIPT

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

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

@VARIABLE InputDirectory=D:\Scripts\Input

@LOGFILE

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

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

@TASK

REPORTGRABENFLICKE

RAPPORTFOUILLES

@COMMENT

Commentaire sur la tâche. Ce message est affiché dans l'application pendant l'exécution. Par exemple, des

notes

indications sur les filtres peuvent être notées.

@COMMENT

Report für alle Parkplätze in der Gemeinde

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

Sections.txt

@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:\Rapport_20200311.xlsx

Date

Date actuelle sous la forme yyyymmdd

D:\Rapport_%Date%.xlsx

D:\Rapport_20200311.xlsx

Time

Heure actuelle sous la forme hhmmss

D:\Rapport_%Time%.xlsx

D:\Rapport_130417.xlsx

Filename

Nom du fichier de script sans extension de fichier

D:\%Filename%_%Date%.log dans le fichier script
T:\Scripts\

ReportKuba

RapportKuba.txt

D:\

ReportKuba

RapportKuba_20200311.log

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 > Exécuter le fichier script 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

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)

Diese Angaben können entweder direkt im Windows Scheduler eingegeben oder in einer Text-Datei mit der Endung *.cmd gespeichert werden, welches dann im Scheduler eingebunden wirdSi 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.