Das list-Element wird innerhalb der Parameter-Konfiguration verwendet, um eine Liste mit Feldern darzustellen, zu der beliebig viele Elemente hinzugefügt und wieder entfernt werden können.
Folgende Attribute können dabei für das list-Element verwendet werden:
Attribut |
Wert |
Erforderlich |
Bedeutung |
id |
Text |
Ja |
Eindeutige ID für den Parameter |
name |
Text (übersetzbar) |
Ja |
Text im Formular vor dem Element |
desc |
Text (übersetzbar) |
Ja |
Text, der als Tooltip bei dem Element angezeigt wird |
worktable |
yes | no |
Ja |
Prozesstabelle kann als Ressource genutzt werden |
subtable |
yes | no |
Ja |
Untertabelle kann als Ressource genutzt werden |
fixed |
yes | no |
Ja |
Fester Wert kann als Ressource genutzt werden |
datatype |
int | decimal | varchar | date | file |
Ja |
Datentyp für das Element |
required |
yes | no |
Nein |
Bestimmt, ob ein Feld ein Pflichtfeld ist |
texttype |
checkbox |
Nein |
Checkbox statt in der Spalte Wert anzeigen |
udl |
yes |
Nein |
Auswahlliste in der Spalte Parameter darstellen |
default |
int |
Nein |
Anzahl der vordefinierten Einträge der Liste beim ersten Aufruf |
Auswahlliste als Formularfeld für Parameter
Um in der Spalte Parameter statt eines Eingabefelds eine Auswahl anzuzeigen, verwenden Sie den Parameter udl=yes. Zusätzlich müssen Sie in der Systemaktivität die Methode getUDL mit einem zweidimensionalen Array der gewünschten Einträge als Rückgabewert implementieren (siehe Abschnitt Optionale Methoden).
Beispiel: Parameter als Auswahlliste
Konfiguration
<list id="fieldList1" name="Erste Liste" worktable="yes" subtable="no" fixed="no" datatype="varchar" required="no" udl="yes">
<list id="fieldList2" name="Erste Liste" worktable="yes" subtable="no" fixed="no" datatype="varchar" required="no" udl="yes">
Definition einer Liste in SystemActivity.php
public function getUDL($udl, $elementID)
{
if ($elementID == 'fieldList1') {
return [
['name' => '-', 'value' => ''],
['name' => 'Option 1', 'value' => '1'],
['name' => 'Option 2', 'value' => '2'],
['name' => 'Option 3', 'value' => '3']
];
}
if ($elementID == 'fieldList2') {
return [
['name' => '-', 'value' => ''],
['name' => 'Option 1', 'value' => '1'],
['name' => 'Option 2', 'value' => '2'],
['name' => 'Option 3', 'value' => '3']
];
}
return null;
}
Anzeige im Systemaktivität-Dialog
Auslesen von Werten bei Ausführung der Systemaktivität
protected function firstFunction()
{
$stepStatus = $this->getStepStatus();
$list1Values = $this->resolveInputParameterListValues('fieldList1');
$list2Values = $this->resolveInputParameterListValues('fieldList2');
foreach ($list1Values as $paramName => $value) {
if ($paramName == '1' && $value == 'Ende') {
$this->setStepStatus(99);
return;
}
}
foreach ($list2Values as $paramName => $value) {
if ($paramName == 'param1' && $value == 'Ende') {
$this->setStepStatus(99);
return;
}
}
if ($stepStatus == 0) {
$this->setStepStatus(1);
}
if ($stepStatus == 1) {
$this->setStepStatus(99);
}
}