Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Dialog "kein Update-Programm angegeben"



Dieser Dialog erscheint bei den Buttons "Speichern", "Test" und "Update jetzt durchführen", wenn im Eingabefeld Update-Programm nichts eingegeben wurde.

...

Dialog "Programm nicht zugelassen"



Dieser Dialog erscheint beim Button "Speichern", wenn das Update-Programm nicht zugelassen ist. Unter der technischen Beschreibung ist erklärt, wann ein Update-Programm zulässig ist.

...

Dialog "Lösche Einstellungen"



Dieser Dialog erscheint, wenn der Anwender die eingegebenen Informationen löschen möchte.

...

Dialog "Update-Prozess konnte nicht angelegt werden"



Dieser Dialog erscheint beim Button "Speichern", wenn die Update-Informationen nicht in die Datenbank geschrieben werden konnten. Weitere Informationen stehen in der errorError.log-Datei.


Dialog "Fehler beim Update-Prozess"



Soll ein Update durchgeführt werden und dabei treten Fehler auf, erscheint dieser Dialog. Weitere Informationen stehen in der error.log-Datei.

...

Dialog "Kein Update vorhanden"



Soll ein Update durchgeführt werden und es existiert kein Update erscheint dieser Dialog.

...

Dialog "Update durchführen"



(1) Hinweis des Update-Prozesses
(2) Test-Information - wird nur beim Test ausgegeben

...

Dialog "Fehler beim automatischen Update"



Dieser Dialog erscheint, wenn beim automatischen Update (Aufruf von custo diagnostic) ein Fehler aufgetreten ist und der Anwender die Möglichkeit hat diag trotzdem zu starten.



Dieser Dialog erscheint, wenn beim automatischen Update (Aufruf von custo diagnostic) ein Fehler aufgetreten ist und der Anwender die das Update durchführen muss.

...

Ablauf beim automatischen Update


Image Modified


Schritte:


  • custo manager.exe wird gestartet
  • CustoCfg.ini wird eingelesen, Konfig-DB geöffnet und "Cfg_Update"-Tabelle eingelesen
  • "UpdateVersion" und die Versionsnummer des custo manager's werden verglichen und anhand von "CompairOperator" entschieden, ob ein Update ansteht
  • Wenn "MustBePerformed" = true MFC-Dialog für Muss-Update anzeigen, wenn false, dann MFC-Dialog für Kann-Update anzeigen
  • Wenn im Update-Dialog "Später" (bei "Kann") angeklickt wird, startet diag ganz normal
  • Wenn im Update-Dialog "Abbrechen" (bei "Muss") angeklickt wird, MFC-Meldung anzeigen, das diag nicht weiter laufen kann, das es beendet werden muss.
  • Wenn "OK" geklickt wird, wird die in "Command" hinterlegte Exe-Datei mit den in "Parameter" hinterlegten Kommandozeilenparameter für den in "SystemUser" und "SystemPassword" gespeicherten Credentials gestartet
  • sobald der Prozess läuft, wird custo manager.exe beendet, ansonsten Meldung, das das Update nicht gestartet werden konnte und dann weiterer Ablauf wie bei "Abbrechen" oder "Später"

...

In der Config-DB wird eine Neue Tabelle eingefügt "Cfg_Update" mit den Spalten:


Spalte

Beschreibung

CreateDiagUser

Benutzer der das automatische Update angelegt hat

CreateDate

Zeitpunkt an dem das automatische Update angelegt wurde

UpdateVersion

nummerische Produktversion der Exe-Datei, die ausgewählt wurde

 

 

CompairOperator

Vergleichs-Operator der Produktversion ("kleiner" oder "größer")

Command

ausführende Exe-Datei mit kompletten Pfad

Parameter

Aufrufparameter der Exe-Datei

SystemUser

Benutzer des Systems mit dem die Exe-Datei ausgeführt wird

SystemPassword

Passwort des Benutzers mit dem die Exe-Datei ausgeführt wird.
Das Passwort wird verschlüsselt gespeichert.

MustBePerformed

Gibt an, ob das Update durchgeführt werden muss (Muss-Update).

Info

Optionaler Text, der im Hinweis-Dialog angezeigt wird


Diese Felder können auf einer CSC-Seite "Verwaltung/Update" eingestellt werden. Werden die Eingaben gespeichert, ist das Update sofort aktiv. Das Update kann gelöscht oder Editiert werden. Wird der Eintrag editiert, wird es aus der Tabelle entnommen (somit ist es nicht mehr aktiv). Nur wenn diese Einstellung wieder gespeichert wird, ist es wieder aktiv.
In der Tabelle "Cfg_Workstation" wird eine neue Spalte eingeführt "AutoUpdateActive" (bool). Nur wenn dieses Flag true ist, wird die Station den Ablauf für das automatische Update durchführen. Das Flag kann über die CSC-Seite "Verwaltung/Arbeitsstationen" eingestellt werden. Der Standardwert ist aktiv.
Die "nummerische Produktversion", wird aus der Recource der Exe-Datei beim Auswählen der Exe-Datei gelesen. Damit diese Datei zumindest von custo med sind, wird überprüft ob in der Resource "CompanyName" und "LegalCopyright" mindestens das Wort custo steht. Eine Idee wäre auch, da die Setup-Dateien signiert sind, die Signatur ggf. das Zertifikat zu überprüfen. Um es jedoch sehr einfach zu halten wird vorerst darauf verzichtet.
Der Aufruf erfolgt immer mit dem Aufrufparameter "/autoupdate". Wird der Test-Button im CSC aufgerufen wird zusätzlich der Parameter "\test" übergeben.

...

Auf Grund immer wieder auftretender Probleme werden folgende Einstellungen in die CustoCfg.ini realisiert (Konfiguration CustoCfg.ini-Datei):


<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="8f5ecdb4-7396-4e00-9629-b62ad996bcfc"><ac:plain-text-body><![CDATA[

Sektion [Einstellungen]

R/

Orequiredoptional 

O
required
optional 


Beschreibung / Werte

]]></ac:plain-text-body></ac:structured-macro>


UpdateWorkstation

O

1 (Standard) = ein; Es wird eine Verbindung zur Datenbank aufgebaut und prüft darin, ob ein AutoUpdate durchgeführt werden soll.0 = aus; Es wird keine Verbindung zur Datenbank bei diag Start aufgebaut. Dadurch kann auch nie ein AutoUpdate durchgeführt werden.

AdoNofReconnect

O

0 (Standard); Anzahl der Wiederholungen bei einem fehlerhaften Verbindungsaufbau zur Datenbank. Betrifft nur den Verbindungsaufbau für das AutoUpdate (ADO-Schnittstelle).

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="cb577d87-5134-45df-bbf8-9d9c7f201853"><ac:plain-text-body><![CDATA[

Sektion [Service]

R/

Orequiredoptional 

O
required
optional 


Beschreibung / Werte

]]></ac:plain-text-body></ac:structured-macro>


SqlProvider

O

Ersetzt im Verbindungsstring die Einstellung des Providers (ADO-Schnittstelle mit Windowsanmeldung).

ConnectionString

O

Ersetzt den kompletten Verbindungsstring (ADO-Schnittstelle mit Windowsanmeldung).


Fragen & Antworten


  1. Wo im Ablauf des diag wird die Entscheidung getroffen das ein Update gemacht werden kann/mußmuss?
    Antwort: Beim Start des custo managers wird die Config-DB geöffnet und als allererstes aus der UpdateTabelle alle Informationen gelesen, darauf basiert die Entscheidung 
  2. Was kostet die ständige (muß ja schließlich bei jedem Start von diag gemacht werden) Abfrage an Laufzeiteinbuße?
    Antwort: 1 Datenbankabfrage und eine Entscheidung, ca. 50ms 
  3. Was passiert wenn ein notwendiger diag-Update (also ein muss-Update) scheitert?
    Antwort: Dann ist die Installation kaputt und der Administrator muss zur Arbeitsstation laufen und von Hand installieren 
  4. Was passiert (bezogen auf Datenbankkompatibilität) wenn ein diag läuft und bereits andere Stationen einen muss-Update einspielen?
    Antwort: Gar nichts, weil dem Setup das völlig egal ist. Was zur Laufzeit des custo managers passiert, wenn sich die DB ändert, kann ich nicht beurteilen. 
  5. Was passiert wenn ein diag-Update läuft und ich (ungeduldiger Anweder) diag jetzt starte?
    Antwort: Schlimmstenfalls kommt eine Meldung, das eine DLL nicht geladen oder ein Prozedureinsprungspunkt nicht gefunden werden kann. Wer das macht, bekommt vom Admin ein paar auf die Finger! 
  6. Wie wird die Fremdsprachigkeit gewährleistet?
    Antwort: Die Texte werden direkt aus der MLTT gelesen, sofern diese zu diesem Zeitpunkt schon geladen ist.

...