Diese Funktionalität ist nur in bestimmten Ausbaustufen verfügbar.

Jobdefinition ändern um Schlüssel-Wert-Paare zu importieren

Voraussetzungen:

Mit der vierten Jobdefinition konnte erfolgreich eine Konfiguration erzeugt werden.

Der Job wurde durch einen webserviceTrigger ausgelöst, d.h. es wurde im Browser eine URL mit POST-Parameter eingegeben, die den Job ausgelöst und gleichzeitig ein Argument für eine Aktion übergeben hat.

In diesem Abschnitt wird gezeigt, wie mehrere Argumente übergeben werden, damit Schlüssel-Wert-Paare in einem Parameter des Typs Map gespeichert werden. Dazu soll als Basismodell die EOX-Datei Feeder.eox verwendet werden, die mit Test 4 erzeugt worden ist.

Kopieren Sie das Basismodell:

  1. Öffnen Sie im Job Server die Seite Jobs.
  2. Klicken Sie in der Zeile des vorangegangenen Jobs (Job4_<Job-ID>)auf das Symbol um den Dialog Dateidownload zu öffnen.
  3. Geben sie als Download-Ziel das Verzeichnis <Job Server installation path>\resources\JobServer\EOX an.

Erstellen Sie eine Aktion:

  1. Starten Sie EEC.
  2. Wählen Sie als Datenbasis die Datei <Job Server installation path>\resources\JobServer\EOX\Feeder.eox.
  3. Entfernen Sie die Markierung der Option Nur-lesend öffnen.
  4. Bestätigen Sie mit [OK].
  5. Navigieren Sie im Bibliotheks-Katalog zu T_Mechatronic_ModularSystem.
  6. Erstellen Sie eine Unit mit dem Namen Actions.
  7. Navigieren Sie zur Unit Actions.
  8. Wählen Sie aus dem Kontextmenü Neu > Objekt....
  9. Wählen Sie im Assistenten für ein neues Objekt Action.
  10. Schließen Sie den Assistenten mit [Fertigstellen].
  11. Geben Sie im Feld Name den Namen setFeederParameterMapAction ein.
  12. Öffnen Sie den Editor Methoden.
  13. Geben Sie im Feld Name den Namen run ein.
  14. Wählen Sie aus der Dropdown-Listbox Sprache die Sprache Java.
  15. Klicken Sie auf (Argument hinzufügen).
  16. Ersetzen Sie in der Spalte Name den Namen New Argument durch params.
  17. Ersetzen Sie in der Spalte Typ den Typ Engineering.Object durch Engineering.Map.
  18. Geben Sie im Feld Code den folgenden Java-Code ein:
import com.mind8.mechatronic.skill.api.LiteralFormulaBuilder;
import com.mind8.mechatronic.skill.AbsoluteNameUtil;
// get Feeder from UnitOfWork
feederEO = AbsoluteNameUtil.getObjectByAbsolutePath("Feeder.Mechatronic.Feeder",self.getUnitOfWork());
// get parameter ParameterMap
parameter = feederEO.getParameter("ParameterMap");
					
// set ParameterMap with key-value-pairs
parameter.setPrettyValue(LiteralFormulaBuilder.buildLiteralFormula(params));
// save changes
self.getUnitOfWork().saveChanges();
  1. Speichern Sie die Action.

Die Action sollte dieses Aussehen haben:

Ändern Sie die bestehende Jobdefinition:

  1. Erstellen Sie eine Kopie der bestehenden JMX-Datei jobdef4.jmx mit dem Namen jobdef5.jmx.
  2. Öffnen Sie die JMX-Datei jobdef5.jmx mit einem beliebigen Editor, beispielsweise Notepad++.
  3. Ändern Sie den Namen der Jobdefinition von <jobdefinition name="Job4" zu <jobdefinition name="Job5".
  4. Ändern Sie die Angabe des Modells zu eox\Feeder.eox (Dateipfad anpassen).
  5. Tauschen Sie die Zeile <action name="Engineering.ImportIMXCommand" arguments="List{trigger.params.pathToIMX}" /> gegen die folgende Zeile aus:
<action name="T_Mechatronic_ModularSystem.Actions.setFeederParameterMapAction" arguments="List{trigger.params}"/>
  1. Speichern Sie die JMX-Datei.

Die komplette JMX-Datei sollte das folgende Aussehen haben:

  1. Verschieben Sie die Jobdefinition jobdef4.jmx in das Verzeichnis <Job Server installation path>\resources\JobServer\JMX.
  2. Fahren Sie mit Abschnitt Test 5 - Per webserviceTrigger Schlüssel-Wert-Paare in Map-Parameter schreiben fort.