Process number

4D - Documentation   Français   English   German   Spanish   Japanese   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 6.0


Process number (Prozessname{; *}) Numerisch

ParameterTypBeschreibung
ProzessnameStringProzessname der zu findenden Prozessnummer
*Rückgabe der Prozessnummer
FunktionsergebnisNumerischProzessnummer

Beschreibung

Die Funktion Process number gibt die Prozessnummer zum Prozess Prozessname zurück. Wird kein Prozess gefunden, gibt Prozessnummer den Wert Null (0) zurück.

Mit dem optionalen Parameter * können Sie von 4D Client aus die Prozessnummer eines Prozesses finden, der auf dem Server ausgeführt wird. Der zurückgegebene Wert ist dann negativ. Diese Option ist besonders hilfreich bei den Befehlen GET PROCESS VARIABLE und SET PROCESS VARIABLE. Weitere Informationen dazu finden Sie in der Beschreibung zu diesen Befehlen.

Wird die Funktion mit dem Parameter * von einem Prozess auf dem Server ausgeführt, ist der zurückgegebene Wert positiv.

Beispiel

Sie erstellen ein eigenes Palettenfenster, das in einem eigenen Prozess läuft. Hier bauen Sie eigene Tools für die Interaktion mit der Designumgebung ein.

Sie wollen zum Beispiel einen Eintrag in einer hierarchischen Liste von Schlüsselwörtern auswählen und in das vorderste Fenster der Designumgebung einsetzen. Dazu können Sie die Zwischenablage verwenden, das Ereignis Einsetzen muss jedoch in einem Designprozess stattfinden. Folgende kleine Funktion gibt die Prozessnummer des Design-Prozesses zurück, jedoch nur, sofern dieser aktiv ist:

      ` Projektmethode Design process number 
      ` Design process number -> Lange Ganzzahl
      ` Design process number -> Nummer des Designprozesses

   $0:=Process number(Get indexed string(170;3))
      ` Name des Designprozesses ist gespeichert in der 'STR#" Ressource ID=170, 
         String #3 in 4D

Mit dieser Funktion setzt die folgende Projektmethode den als Parameter erhaltenen Text in das vorderste Fenster der Designumgebung:

      ` Projektmethode PASTE TEXT TO DESIGN
      ` PASTE TEXT TO DESIGN ( Text )
      ` PASTE TEXT TO DESIGN ( Text zum Einsetzen in das vorderste Designfenster )

   C_TEXT($1)
   C_LONGINT($vlDesignPID;$vlCount)

   $vlDesignPID:=Design process number 
   If ($vlDesignPID # 0)
         ` Setze Text in die Zwischenablage
      SET TEXT TO CLIPBOARD($1)
         ` Sende Ereignis Ctrl-V / Befehl-V
      POST KEY(Ascii("v");Command key mask;$vlDesignPID)
         ` Rufe wiederholt DELAY PROCESS auf, so dass das Ereignis 
         ` von der Zeit her in den Designprozess übertragen werden kann
      For ($vlCount;1;5)
         DELAY PROCESS(Current process;1)
      End for 
   End if 

Referenz

GET PROCESS VARIABLE, PROCESS PROPERTIES, Process state, SET PROCESS VARIABLE.


4D - Documentation   Français   English   German   Spanish   Japanese   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next