Projekt

Allgemein

Profil

RunLocal Flow » Historie » Version 5

[E] Rocco Kreutz, 06.08.2026 12:42

1 4 [E] Rocco Kreutz
h1. RunLocal Ablauf
2 2 [E] Rocco Kreutz
3 4 [E] Rocco Kreutz
Diese Seite beschreibt die beiden Einstiegspunkte fuer RunLocal und welche Pruefungen bzw. Aktionen auf jeder Seite ausgefuehrt werden.
4 2 [E] Rocco Kreutz
5 4 [E] Rocco Kreutz
*Remote* bedeutet die normale Netzwerkinstallation von @ProdatERP.exe@.
6
*Lokal* bedeutet die kopierte Installation unter @C:\ProdatERP\@ mit @Administration\RunLocal@ daneben.
7 2 [E] Rocco Kreutz
8 5 [E] Rocco Kreutz
{{drawio_attach(RunLocal_Flow.drawio)}}
9 2 [E] Rocco Kreutz
10 4 [E] Rocco Kreutz
h2. Kurzfassung
11 2 [E] Rocco Kreutz
12 4 [E] Rocco Kreutz
* Im entfernten @ProdatERP.exe@ gibt es im Login-Dialog den Button *RunLocal*.
13
* Dieser startet @ProdatRunLocal.exe@ aus der Netzwerkinstallation mit @SILENT_INSTALL_DEFAULT@.
14
* @ProdatRunLocal.exe@ prueft zuerst das eigene Update und startet danach entweder das Installations-Batch oder das Shortcut-/Update-Batch.
15
* Die Batch-Dateien erzeugen oder aktualisieren die lokale Kopie, die Shortcuts und den geplanten Task.
16
* Bei spaeteren Starts kann @ProdatERP.exe@ zusaetzlich pruefen, ob die lokale RunLocal-Kopie aktuell ist, und bei Bedarf in den lokalen Launcher wechseln.
17 2 [E] Rocco Kreutz
18 4 [E] Rocco Kreutz
h2. Einstiegspunkte und Verhalten
19 2 [E] Rocco Kreutz
20 4 [E] Rocco Kreutz
|_. Seite |_. Startpunkt |_. Was wird geprueft |_. Was wird ausgeloest |
21
| Remote | Login-Dialog-Button in @ProdatERP.exe@ | Der Button ist nur aktiv, wenn die App nicht bereits lokal laeuft, ausser im Dev-/Debug-Modus. | Startet @ProdatRunLocal.exe@ mit @SILENT_INSTALL_DEFAULT@. |
22
| Remote | Startpfad in @ProdatERP.exe@ | Prueft, ob RunLocal aktualisiert werden muss und ob die entfernte Quelle erreichbar ist. Vergleicht Marker-Daten und den konfigurierten Remote-Root. | Kopiert bei Bedarf die aktuelle @ProdatRunLocal.exe@ in den lokalen RunLocal-Ordner und startet den lokalen Launcher. |
23
| Remote oder lokal | Start von @ProdatRunLocal.exe@ | Verweigert den Start von Netzwerk-/UNC-Pfaden ohne Silent-Install-Parameter. Fuehrt den eigenen Update-Check gegen die entfernte RunLocal-Kopie aus. | Startet @RunLocal_Setup.bat@ fuer die Erstinstallation oder @RunLocal_ShortcutScript.bat@ fuer den Normalfall. |
24
| Lokal | @RunLocal_Setup.bat@ | Liest oder schreibt @RunLocal_SetCfgVariables.bat@, prueft die Verzeichnisse und kontrolliert die Robocopy-Verfuegbarkeit. | Erzeugt die lokale Verzeichnisstruktur, synchronisiert Dateien, erzeugt Task- und Shortcut-Skripte. |
25
| Lokal | @RunLocal_UpdateLocal.bat@ | Nutzt @Prodat.INSTALL.MARKER@ und die konfigurierten Pfade zur Entscheidung ueber den Sync-Modus. | Spiegelt remote nach lokal, beendet laufende @ProdatERP.exe@-Instanzen und startet die App optional erneut. |
26 2 [E] Rocco Kreutz
27 4 [E] Rocco Kreutz
h2. Laufzeit von der Login-Maske
28 2 [E] Rocco Kreutz
29 4 [E] Rocco Kreutz
# Der Benutzer ist in der entfernten Installation und klickt im Login-Dialog auf *RunLocal*.
30
# Der Login-Dialog prueft, ob das aktuelle Programm lokal oder remote laeuft.
31
# Wenn das Programm remote laeuft, wird der Button aktiviert und @ProdatRunLocal.exe@ mit @SILENT_INSTALL_DEFAULT@ gestartet.
32
# @ProdatRunLocal.exe@ fuehrt danach das Setup-Batch aus und erzeugt bzw. aktualisiert die lokale Installation.
33 2 [E] Rocco Kreutz
34 4 [E] Rocco Kreutz
h2. Start- und Updatepfad in ProdatERP.exe
35 2 [E] Rocco Kreutz
36 4 [E] Rocco Kreutz
# @ProdatERP.exe@ startet entweder von der Netzfreigabe oder aus der lokalen Kopie.
37
# Der Startcode erkennt, ob die App remote oder lokal laeuft.
38
# Er liest den konfigurierten Remote-Root aus @RunLocal_SetCfgVariables.bat@.
39
# Er prueft die Erreichbarkeit mit dem Safe-Check-Helper.
40
# Er vergleicht Inhalt und Zeitstempel von @Prodat.INSTALL.MARKER@ zwischen lokal und remote.
41
# Wenn die lokale Kopie veraltet ist und der Remote-Root zur Konfiguration passt, wird die aktuelle @ProdatRunLocal.exe@ in den lokalen RunLocal-Ordner kopiert.
42
# Danach wird der lokale @ProdatRunLocal.exe@ gestartet, damit der lokale Ablauf weiterlaeuft.
43 2 [E] Rocco Kreutz
44 4 [E] Rocco Kreutz
h2. Was die Batch-Dateien tun
45 2 [E] Rocco Kreutz
46
* @RunLocal_Setup.bat@
47 4 [E] Rocco Kreutz
** Schreibt @RunLocal_SetCfgVariables.bat@.
48
** Erzeugt die lokale Struktur @Administration\RunLocal@.
49
** Erzeugt das Shortcut-Hilfsskript und das Task-Skript.
50
** Ruft @RunLocal_UpdateLocal.bat SYNC@ auf, um die Installation zu spiegeln.
51
** Erzeugt den Desktop-Shortcut und den lokalen Neustart-/Update-Shortcut.
52 2 [E] Rocco Kreutz
53
* @RunLocal_UpdateLocal.bat@
54 4 [E] Rocco Kreutz
** Liest die Konfigurationsdatei.
55
** Prueft Quell- und Zielpfade.
56
** Fuehrt Robocopy-Mirroring aus.
57
** Nutzt @Prodat.INSTALL.MARKER@ als Inhalts-/Zeitstempel-Markierung.
58
** Startet @ProdatERP.exe@ erneut, ausser @DONTSTARTPRODAT@ wurde uebergeben.
59 2 [E] Rocco Kreutz
60
* @RunLocal_Setup_Task.bat@
61 4 [E] Rocco Kreutz
** Erstellt oder loescht den geplanten Task @CIMPCS\ProdatERP - Run Lokal - Update@.
62 2 [E] Rocco Kreutz
63
* @RunLocal_Setup_Shortcut.vbs@
64 4 [E] Rocco Kreutz
** Erstellt oder loescht die @.lnk@-Dateien fuer den lokalen Neustart und den Desktop-Eintrag.
65 2 [E] Rocco Kreutz
66 4 [E] Rocco Kreutz
h2. Wichtige Dateien
67 2 [E] Rocco Kreutz
68
* @PRODAT\Application\ProdatRunLocal\280\ProdatRunLocal.dpr@
69
* @PRODAT\Application\ProdatRunLocal\USelfUpdate.pas@
70
* @PRODAT\Prodat\Prodat-SQL\udbs.pas@
71
* @PRODAT\Prodat\Prodat-SQL\UP2005Start.pas@
72
* @ExternKomponenten\RUNTIME-Dirs\Administration\RunLocal\RunLocal_Setup.bat@
73
* @ExternKomponenten\RUNTIME-Dirs\Administration\RunLocal\RunLocal_UpdateLocal.bat@
74
* @ExternKomponenten\RUNTIME-Dirs\Administration\RunLocal\RunLocal_Setup_Task.bat@
75
* @ExternKomponenten\RUNTIME-Dirs\Administration\RunLocal\RunLocal_Setup_Shortcut.vbs@