Auch wenn es eigentlich seit der neuen UUX Oberfläche kein Thema ist, stolpert man ab und zu noch über das Thema, Dialogfelder in der Legacy-Oberfläche des Matrix42 Service Store als Pflichtfelder zu markieren.
Denn auch wenn es in der Datendefinition die Möglichkeit gibt, Felder Datenbank seitig als erforderlich zu deklarieren, empfiehlt sich diese Möglichkeit nicht, da sonst keine (bestehenden) Datensätze ohne Werte in diesem Feld gespeichert werden können. Außerdem ist das nicht nachträglich machbar.
Falls du also grade vor derselben Herausforderung steht, wie das nochmal ging, musst du nicht weitersuchen! Denn hier gibt’s eine kurze Anleitung, die dir bestimmt weiterhilft 😉
Und hier gibt’s außerdem noch eine Anleitung, um dir ein eigenes gültiges SLL Zertifikat zu erstellen, das auch von Chrome & Edge erkannt wird 🙂
Pflichtfelder in Legacy-Dialogen definieren
Wir nehmen hier als Beispiel mal an, dass wir im Computer-Dialog das Feld Seriennummer aus der SPSAssetClassBase als Pflichtfeld deklarieren wollen. Das Prinzip ist immer das gleiche (oder dasselbe?).
1. Öffne den Reiter “Ereignisse” des Konfigurationselements
Zuerst müssen wir in der Administration das entsprechende Konfigurationselement suchen, öffnen und die Ereignisse öffnen.
2. Füge das gewünschte Feld zu den JS-Variablen hinzu
Hake nun bei deinem gewünschten Pflichtfeld die Checkbox an, um dieses Feld in JavaScript benutzten zu können. Und nein, es gibt keine Suchfunktion 😉
3. Javascript für Pflichtfeldprüfung hinzufügen
Wir sind fast schon am Ziel, jetzt muss nur noch eine JS-Funktion geschrieben werden, die beim Speichern prüft welcher Wert in unserer neuen Variable steht. Also wechsel in den Tab “Beim Speichern” und los gehts:
// Check if Seriennummer null
if (g_SPSAssetClassBase_SerialNumber == null) {
alert("Bitte Seriennummer eingeben");
return false;
}
return true;
Code-Sprache: JavaScript (javascript)
Das war es schon! Sobald man versucht einen Computer, ohne Seriennummer anzulegen oder zu speichern, wird die Meldung “Bitte Seriennummer eingeben” angezeigt und das Objekt lässt sich nicht speichern.
Auch wenn du jetzt die Macht hast, in (eigenen) Dialogen. Formularen, etc. Pflichtfelder hinzuzufügen: Denke nur daran, jetzt nicht alles, was dir in den Sinn kommt, als Pflichtfeld zu deklarieren. Menschen neigen dazu Schwachsinn einzutragen, wenn es “zu viel Arbeit macht” und grade einfach mal schnell gehen muss 😉
Apropos schnell: Hast du schon gewusst, dass du geschlossene Tickets bei einer neuen E-Mail wiedereröffnen kannst, egal ob in UUX oder Legacy?