105 Prodat Lokales Start Script (RunLocal) » Historie » Revision 20
Revision 19 ([E] Rocco Kreutz, 11.03.2025 14:35) → Revision 20/27 ([E] Rocco Kreutz, 11.03.2025 14:41)
h1. Einrichtung "Prodat lokal starten"
{{toc}}
Herkunft ##16585 *Video* hier in Anhängen: > https://redmine.prodat-sql.de/attachments/23547
h2. Hintergründe
Prodat über VPN oder bei langsamen WLan zu starten, dauert zu lange. Hintergrund ist, dass ~1GB an Bibliotheken geladen werden.
* Prodat wird aus einem zentralen Verzeichnis im Netzwerk in ein lokales Verzeichnis kopiert
* In diesem lokalen Verzeichnis wird eine Konfigurations-Datei angelegt (..\Administration\RunLocal\SetCfgVariables.bat) welche folgende Werte enthält
** Programm (Default ist ProdatSQL.exe)
** Parameter (Default ist -REMEMBER_SERVER:1)
** Quelle (Default ist der Pfad in dem RunLocal_Setup.bat liegt (ohne \Administration\RunLocal\), welches gestartet wird - diese und die anderen zugehörigen reinen Setup-Batch-Scripte sind von der Synchronisierung aussgeschlossen)
* Desweiteren werden eine Batch für das manuelle Aktualisieren mittels eines Shortcuts auf dem Desktop angelegt (..\Administration\RunLocal\RunLocal_Setup_Shortcut.bat)
* Sowie eine Batch welche mittels der Windows-Aufgabenverwaltung täglich um 23 Uhr gestartet wird - dieses ruft das Batch-Script für den Shortcut auf - Working-Path Problem beim Einrichten von Windows-Tasks mittels SCHTASKS.exe (..\Administration\RunLocal\RunLocal_WinTaskScript.bat)
* ProdatRunLocal.exe, welche das eigentliche Batch-Script startet
** Um zu vermeiden, dass Benutzer in der Lage sind das Batch-Script anzuhalten indem in das Console-Fenster geklickt wird (TODO)
* Beide Batch-Scripte terminieren alle Programm-Instanzen, aktualisieren das lokale Prodat und starten das Programm neu
* Das Einrichtungs-Setup bietet 2 automatische Einrichtungen mit Standardwerten an
** *Variante 1 Standard* : benutzt die folgenden Werte für die Konfiguration und das lokale Verzeichnis und führt die einzelnen Menu-Optionen des Setup als 'Programm' aus
*** lokales Verzeichnis: *C:\ProdatERP\*
*** Programm: *ProdatSQL.exe*
*** Parameter: <keine Parameter>
*** Quelle: Verzeichniss der RunLocal_Setup.bat (ohne \Administration\RunLocal\) welche ausgeführt wird
** Variante 2 bde : benutzt die folgenden Werte für die Konfiguration und das lokale Verzeichnis und führt die einzelnen Menu-Optionen des Setup als 'Programm' aus
*** lokales Verzeichnis: *C:\ProdatERP\*
*** Programm: *ProdatSQL.exe*
*** Parameter: *-REMEMBER_SERVER 1 -L -U "BDE" -M 11 -UniqueName PRODAT-BDE-UNIQUEHANDLE*
*** Quelle: Verzeichniss der RunLocal_Setup.bat (ohne \Administration\RunLocal\) welche ausgeführt wird
h1. Setup / Installation
*Script - welche PRODAT in ein lokales Verzeichnis kopiert und aktuell hält*
* *Auf dem Rechner, auf dem Prodat in Zukunft lokal ausgeführt werden soll, dass Script \\<Server>\<Prodat-Installation\Administration\RunLocal\RunLocal_Setup.bat ausführen.*
** z.B.:
*** Pfad zur Prodat-Installation auf dem Server (Remote) ist \\192.168.1.100\Prodat-ERP\
*** Auf dem Rechner dann Eingabeaufforderung starten
*** \\192.168.1.100\Prodat-ERP\Administration\RunLocal\RunLocal_Setup.bat starten
* Damit wird alles konfiguriert und eingerichtet.
* RunLocal_Setup bietet ein Menu an
* Die einzelenen Menu-Punkte werden mit einem einzelnen Buchstaben angesteuert, welcher in [] vorweggestellt ist
* Nach Ausführung eines einzelnen Menu-Punktes, wird jeweils wieder das Menu angezeigt
** [S] Setze lokales Verzeichniss für weitere Ops
** [Q] Setze (cfg) Quell-Verzeichniss (Remote-Directory)
** [P] Setze (cfg) Programm
** [A] Setze (cfg) Programm-Paramter
** [Z] Zeige Konfiguration und lokales Verzeichniss
** [M] Schreibe Konfiguration-Datei
** [N] Lade Konfiguration-Datei
** [K] Kopiere Prodat nach lokal (Down-Sync)
** [E] Erstelle Windows-Task (automatisches Update von Lokal)
** [L] Lösche Windows-Task
** [C] Erstelle Shortcut (Prodat Instanzen beenden, Updaten, Starten)
** [D] Lösche Shortcut
** [X] Exit
* Die einzelnen Schritte
# [S] Geben Sie das lokale Verzeichniss an
#* Muss nach jedem Start von RunLocal_Setup erneut anegegeben werden
#* Prodat wird vom Server (Remote) in dieses Verzeichniss kopiert
#* In diesem Verzeichniss unter \Administration\RunLocal\ wird die Konfigurations-Datei gespeichert als auch weitere Scripts
# [Q] Geben Sie das Quell-Verzeichniss an
#* Wie in dem obigen Beispiel, wäre dies z.B: \\192.168.1.100\Prodat-ERP\
#* Sollten vor Ort statt UNC-Pfaden Laufwerke verwendet werden (z.B. mittels Login-Script verbunden), ist dies natürlich auch möglich (z.B: S:\Prodat-ERP\)
# Menu-Punkt [P] muss normalerweise nicht ausgeführt werden, da das Setup, dass zu startende Programm bereits standardmäßig auf ProdatSQL.exe setzt
#* Grundsätzlich ist es möglich ein anderes Programm anzugeben, welches gestartet/beendet (Task/Manuell) (nach Aktualisierung des lokalen Verzeichnisses) werden soll
# [A] Geben sie die Parameter an, mit denen Prodat gestartet werden soll
#* Der Standardwert ist -REMEMBER_SERVER:1 wird also für die meisten Fälle nicht ausreichend sein
#* Um herauszufinden welche Parameter nötig sind, schauen Sie am besten in die Eigenschaften der Startverknüpfung der bestehenden Prodat-Installation (welche via Server startet)
# [Z] Lassen Sie sich die momentanen Werte der Konfiguration anzeigen, um diese zu kontrollieren
# [M] Wenn Sie die korrekten Konfigurations-Werte angegeben haben, schreiben Sie diese in die lokale Konfigurations-Datei
# Der Menu-Punkt [N] lädt eine Konfigurations-Datei, muss also während der ersten Einrichtung nicht aufgerufen werden
#* Kann nur ausgeführt werden, sofern eine lokale Konfigurations-Datei existiert und das lokale Verzeichniss nach dem Start von RunLocal_Setup.bat angegeben wurde
#* Falls man die Konfigurations-Datei manuell bearbeitet hat z.B.
#* Wenn man das RunLocal_Setup bereits ausgeführt hatte, eine Konfigurations-Datei erstellt wurde und dann RunLocal_Setup erneut startet
# [K] Führt eine Synchronisierung des lokalen Verzeichnisses mit dem Quell-Verzeichniss aus
#* Dies ist eine echte Synchronisierung, d.h. dannach ist der Inhalt des lokalen Ordners EXAKT GLEICH mit dem Inhalt des Quell-Ordners mit Ausnahme der in der \Administration\RunLocal\exclude_default.rcj angegebenen Excludes
#* Unterordner \Administration\RunLocalder enthält zusätzlich die Konfigurations-Datei und nur die Scripte die benötigt werden
#* Die Ordner \Backup, \Temp und \Help werden nicht heruntergeladen (exclude_default.rcj)
#* *.7z und *.zip Dateien werden nicht heruntergeladen (exclude_default.rcj)
#* Sollten im lokalen Verzeichniss Dateien/Verzeichnisse existieren, welche nicht im Quell-Verzeichniss existieren (und welche nicht in exclude_default.rcj als excluded aufgeführt sind), werden diese gelöscht !!!
# [E] Erstellt eine Windows-Task (Windows Aufgabe, taskschd.msc)
#* Da der Arbeitspfad ("Starten in" Parameter in der Task) nicht mittels Kommandozeile gesetzt werden kann, MUSS dies manuell gesetzt werden
#** Entweder Aufgabenverwaltung über Windows-Starmenu starten
#** oder taskschd.msc starten
#*** "Ausführen" über das Windows-Startmenu wählen und taskschd.msc eingeben
#*** oder über Eingabeaufforderung taskschd.msc starten
#** "Starten in" auf das Verzeichniss setzen, in dem sich das Script welches als Task ausgeführt wird, befindet (Verzeichniss-Teil - ohne den Dateiname - des angegebenen Scriptes einfach kopieren)
#* Diese Task wird täglich um 23 Uhr ausgeführt
#* Die Task führt folgende Schritte aus
#** Fährt ALLE Programm-Instanzen (mittels [P] angegebenes Programm) herunter
#** Aktualisiert das lokale Verzeichniss (Update - keine Synchronisierung, in exclude_default.rcj angegebene Excludes werden berücksichtigt)
#** Startet Programm neu (Programm welches mit [P] Konfiguriert wurde, mit den Paramtern welche mittels [A] konfiguriert wurden)
# Falls es nicht mehr gewünscht wird, dass automatisch das Update-Script ausgeführt wird, kann mit [L] die Windows-Task wieder gelöscht werden
# [C] Erstellt auf dem Desktop einen Shortcut, welcher das Update-Script startet (ALLE Programm-Instanzen beenden, lokales Verzeichniss aktualisieren, Programm starten)
# [D] Löscht den Shortcut vom Desktop
# [X] Beendet RunLocal_Setup (wird automatisch nach 30 Sekunden ohne Benutzer-Aktivität ausgeführt)
h2. Silent Install
* RunLocal_Setup.bat kann mit 2 Parametern gestartet werden, um eine non-user-interaktive Installation eine der beiden Standard-Installationen auszuführen
** @RunLocal_Setup.bat SILENT_INSTALL_DEFAULT@
*** Führt die Batch aus, als ob der Benutzer @1@ im Menu gedrückt hätte und dannach @x@
** @RunLocal_Setup.bat SILENT_INSTALL_DEFAULTBDE@
*** Führt die Batch aus, als ob der Benutzer @2@ im Menu gedrückt hätte und dannach @x@
h3. Automatisierung (Standard 1)
* Mittels @HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce@ kann @\\Server\ProdatShare\Administration\RunLocal\RunLocal_Setup.bat SILENT_INSTALL_DEFAULT@ aufgerufen werden, um auf der Maschine Prodat-RunLocal zu installieren
* Der Shortcut zum starten wird auf dem Desktop des Benutzers angelegt, welcher das Setup tatsächlich ausführt
** Diesen Shortcut @Prodat Lokal - Aktualisieren und neustarten@ entweder auf den öffentlichen Desktop verschieben
** Oder eigenen ShortCut im öffentlichen Desktop erstellen mit Ziel: 'C:\ProdatERP\Administration\RunLocal\ProdatRunLocal.exe'