Lade...
 

CX_SYSTEM_OBJECT::Start

CX_SYSTEM_OBJECT::Start

Beschreibung:

Diese Klassenfunktion startet einen neuen ClassiX® Prozess und initialisiert ihn mit übergebenen Parametern. Die Methode kehrt direkt nach dem Start des neuen Prozesses zurück und wartet nicht darauf, dass sich der neu gestartete Prozess beendet.

 

203947

Der übergebene Vektor wird hierbei als JSON serialisiert und in die Umgebungsvariable CX_START_STACK gesetzt. Der Prozess wird mit der Startoption --load_start_stack gestartet und lädt daraufhin den Stack aus der Umgebungsvariable.

Die JSON-Serialisierung arbeitet dabei wie folgt:

  • INTEGER werden als JSON-int serialisiert
  • Persistente Objekte werden als JSON-Objekt der Form {"id":} serialisiert
  • VECTORen werden als JSON-Array (rekursiv) serialisiert
  • STRINGs werden als JSON-string serialisiert
  • Alle anderen Typen werden in einen String umgewandelt und als JSON-string serialisiert

Der gestartete Prozess deserialisiert dieses JSON wieder in einen InstantView-Vector, der beim INITIALIZE des Hauptmoduls auf dem Stack liegt.

 

Vor Dll-Version 203947

Der übergebene Vektor darf nur aus persistenten Objekten bestehen und dieser Vektor liegt bei der gestarteten Instanz im INITIALIZE des Hauptmoduls genauso auf dem Stack. Die persistenten Objekte werden als Liste von Objektadressen über die --objects Startoption an den ClassiX-Prozess übergeben.

 

Das neue ClassiX mit der gleichen INI-Datei und (falls gesetzt) EXT-Datei gestartet, wie der startende ClassiX-Hauptprozess.

Code-Beispiel:
GetObjectsSelected(, ListBox) # Cardinality if { "printThread.cxp" [ GetObjectsSelected(, ListBox) # iterate {} user if user cyberEnterprise objectClass CX_INVOICE = if "SendMsg(PRINT_INVOICE)" else "SendMsg(PRINT_CREDIT_NOTE)" ] # Revert SystemObject Call(Start) }

Das im obigen Beispiel gestartete Projekt-Modul "printThread.cxp" bekommt beim Aufruf den Vektor übergeben und verarbeitet diesen. Der Inhalt des Vektors sollte also im gestarteten Projekt-Modul bekannt sein.

Stack

Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top
VECTOR<OBJECT>
 
  Top-1 STRING Vollständiger Pfad zur CXP-Datei
Stack(Out) Top    
Funktionsaufruf: Call(Start)