Formulare
Formulare sind strukturierte Fragenkataloge, die Lieferanten im Lieferantenportal ausfüllen. Sie eignen sich überall dort, wo ein Dokument allein nicht genügt, etwa für Selbstauskünfte oder die Abfrage von Produktions- und Lagerungsbedingungen. Wie Lieferanten ein Formular erleben, beschreibt der Artikel Lieferantenfragebogen. Dieser Artikel richtet sich an Administratoren, die Formulare anlegen und pflegen.
Ein Formular steht nie für sich allein. Es wird einem Checklistenpunkt zugeordnet, und das Regelset der Checkliste bestimmt, welche Entitäten es ausfüllen müssen. Ohne diese Zuordnung sehen Lieferanten das Formular nicht.
Die Formularverwaltung befindet sich im Administrationsbereich unter der Kachel „Formulare“ („Formulare und ihre Felder konfigurieren“).
Formulare anlegen
Section titled “Formulare anlegen”Die Formularliste zeigt pro Formular die ID, den Namen, den Titel und die Zahl der Einträge, also der Formularelemente. Über „Formular erstellen“ wird ein neues Formular angelegt, über die Bearbeiten-Aktion einer Zeile lassen sich seine Angaben ändern. Folgende Felder sind vorhanden:
- Name (Pflicht): ein interner Name, der unter allen Formularen eindeutig sein muss. Lieferanten sehen stattdessen den Titel.
- Titel (DE) (Pflicht): die Überschrift des Formulars für deutschsprachige Kontakte.
- Titel (EN) (Pflicht): die Überschrift für englischsprachige Kontakte.
- Datei-ID der PDF-Vorlage (optional): die ID einer hochgeladenen PDF-Datei als Vorlage des Formulars, wie sie in der Adresse der Dateiseite steht. Bleibt das Feld leer, gibt es keine Vorlage.
Der Formulareditor
Section titled “Der Formulareditor”Ein Klick auf ein Formular öffnet seine Detailseite. Oben stehen Name, Titel (EN) und gegebenenfalls die PDF-Vorlage. Darunter zeigt der Bereich „Felder“ alle Elemente des Formulars als Baum.
Aufbau der Baumansicht
Section titled “Aufbau der Baumansicht”Jede Zeile steht für ein Formularelement und zeigt:
- bei Gruppen deren Nummer, bei allen anderen Elementen den Elementtyp als Kennzeichen,
- den Titel und den Schlüssel des Elements,
- Kennzeichen für besondere Eigenschaften: das zugeordnete Attribut (mit der Zielgruppe in Klammern), „Erforderlich“, „Automatisch ausfüllen“, „Regel“ und „Optionsfilter“. „Regel“ erscheint, wenn ein Validierungs-Ausdruck gesetzt ist, „Optionsfilter“, wenn bei einem Auswahlfeld ein Optionsfilter-Ausdruck gesetzt ist.
Gruppen lassen sich über „Ausklappen“ und „Einklappen“ öffnen und schließen. Ein Klick auf eine Zeile öffnet die Einstellungen des Elements. Solange eine Änderung läuft, sind Ziehen und Verschieben sowie das Öffnen weiterer Elemente gesperrt.
Elemente hinzufügen und anordnen
Section titled “Elemente hinzufügen und anordnen”- Über die Schaltfläche „Formularelement hinzufügen“ im Kopf der Seite entsteht ein neues Element auf der obersten Ebene.
- Dieselbe Schaltfläche in einer Gruppenzeile legt ein neues Element direkt in dieser Gruppe an.
- Elemente werden am Griff gezogen, auch in eine andere Gruppe. Zieht man ein Element weiter nach rechts oder links, rutscht es eine Ebene tiefer oder höher. Escape oder Loslassen außerhalb der Liste bricht den Vorgang ab.
- Zusätzlich verschieben die Pfeile „Nach oben verschieben“ und „Nach unten verschieben“ ein Element um eine Position.
- Über „Löschen“ wird ein Element entfernt (siehe Elemente löschen und umbenennen).
Eine Funktion zum Duplizieren von Elementen oder Gruppen gibt es nicht.
Nummerierung der Gruppen
Section titled “Nummerierung der Gruppen”Gruppen werden automatisch nummeriert: „3“ ist die dritte Gruppe der obersten Ebene, „3.1“ die erste Gruppe darin. Die Nummern sind im Editor, im Portal und im eingereichten Formular gleich. Sie hängen nur vom Aufbau des Formulars ab und ändern sich nicht, wenn Gruppen im Portal ausgeblendet sind. Auf jeder Ebene stehen Felder vor Gruppen.
Elementtypen
Section titled “Elementtypen”Jedes Element hat einen Typ, der nach dem Anlegen nicht mehr geändert werden kann.
| Typ | Verwendung |
|---|---|
| Textfeld | Einzeilige Texteingabe |
| Mehrzeiliges Textfeld | Längere Freitextantworten |
| Checkbox | Ja/Nein-Frage. Im Portal wird sie als Auswahl zwischen „Ja“ und „Nein“ dargestellt. |
| Auswahlfeld | Auswahl aus einer Liste vorgegebener Optionen |
| Datumsfeld | Eingabe eines Datums |
| Uhrzeitfeld | Eingabe einer Uhrzeit |
| Zahlenfeld | Numerische Eingabe |
| Überschrift | Gliedernder Titel ohne Antwort |
| Freitext | Erläuternder Text ohne Antwort |
| Gruppe | Bündelt Elemente. Gruppen der obersten Ebene bilden im Portal einen eigenen Abschnitt. Gruppen können verschachtelt werden. |
| Entitäts-Dropdown | Auswahl von Datensätzen eines Entitätstyps, beispielsweise der Produkte des Lieferanten (siehe unten) |
Überschriften, Freitexte und Gruppen enthalten keine Antwort. Die Einstellung „Erforderlich“ hat für sie daher keine Wirkung.
Einstellungen eines Elements
Section titled “Einstellungen eines Elements”Der Dialog eines Elements ist in die Bereiche „Details“ und „Einstellungen“ gegliedert.
Details
Section titled “Details”- Typ: der Elementtyp (nach dem Anlegen nicht mehr änderbar).
- Schlüssel (Pflicht): kennzeichnet das Feld und muss im Formular eindeutig sein. Ausdrücke lesen die Antwort unter diesem Namen, und das automatische Ausfüllen findet frühere Antworten darüber.
- Titel (DE) und Titel (EN) (Pflicht): die Beschriftung für Lieferanten.
- Sortierung (Pflicht): die Reihenfolge innerhalb der Ebene.
- Übergeordnete Gruppe: die Gruppe, in der das Element steht. „Oberste Ebene (keine Gruppe)“ stellt es auf die oberste Ebene des Formulars.
Einstellungen
Section titled “Einstellungen”Welche Einstellungen angeboten werden, hängt vom Typ ab.
- Optionen (Auswahlfeld): die angebotenen Antworten. Mindestens eine Option wird benötigt, weitere ergänzt „Option hinzufügen“.
- Erforderlich: Das Formular lässt sich nicht einreichen, solange dieses Feld leer ist. Ausgeblendete Felder werden nicht geprüft.
- Automatisch ausfüllen: Das Feld beginnt mit der vorherigen Antwort des Lieferanten zum selben Checklistenpunkt. Das spart bei wiederkehrenden Abfragen Zeit.
- Zugeordnetes Attribut und Zielgruppe: siehe unten.
- Entitätsart und Mehrfachauswahl erlaubt (Entitäts-Dropdown): siehe unten.
- Sichtbarkeits-Ausdruck und Validierungs-Ausdruck: siehe unten.
- Optionsfilter-Ausdruck und Optionen außerhalb der Liste (Auswahlfeld): siehe unten.
Zugeordnetes Attribut
Section titled “Zugeordnetes Attribut”Bei Eingabefeldern lässt sich ein Zugeordnetes Attribut wählen. Das gilt für Textfelder, mehrzeilige Textfelder, Checkboxen, Auswahlfelder, Datums-, Uhrzeit- und Zahlenfelder. Bei Gruppen, Überschriften, Freitexten und Entitäts-Dropdowns gibt es die Zuordnung nicht. Auswahlen von Datensätzen lassen sich stattdessen als Verknüpfung übernehmen (siehe Auswahl als Verknüpfung übernehmen).
Gehört das gewählte Attribut zu einer Zielgruppengruppe, erscheint zusätzlich das Feld Zielgruppe. Dort stehen nur die Zielgruppen dieser Gruppe zur Auswahl. Ohne Angabe wird der Wert ohne Zielgruppe gespeichert. Hat das Attribut keine Zielgruppengruppe, wird das Feld nicht angezeigt. Wechseln Sie das zugeordnete Attribut, wird eine bereits gewählte Zielgruppe zurückgesetzt.
Bei der Freigabe der Einreichung ersetzt die Antwort den aktuellen Wert des Attributs, bei Attributen mit mehreren Werten kommt sie hinzu. Der bisherige Wert bleibt im Verlauf des Attributs erhalten. Auf diese Weise fließen Selbstauskünfte direkt in die Attribute einer Entität. Die QS sieht die Werte vor der Freigabe und kann einzelne abwählen (siehe Übernahme der Antworten in Attribute und Verknüpfungen).
Certiflow überspringt bei der Übernahme ohne Meldung:
- leere Antworten, denn ein leeres Feld bedeutet „nicht ausgefüllt“ und nie „Attribut leeren“,
- Antworten, die nicht zum Datentyp des Attributs oder zu dessen vorgegebenen Werten passen,
- Zuordnungen auf ein Attribut, das zu einem anderen Entitätstyp gehört als der Datensatz der Einreichung.
Der Entitätstyp des Attributs wird beim Einrichten nicht geprüft, weil dasselbe Formular an Checklistenpunkten mehrerer Entitätstypen hängen kann. Achten Sie deshalb selbst darauf, dass das Attribut zu den Entitäten passt, für die das Formular ausgefüllt wird.
Sichtbarkeit und Validierung
Section titled “Sichtbarkeit und Validierung”Mit Ausdrücken lässt sich das Verhalten eines Formulars an frühere Antworten knüpfen. Die Sprache und ihre Möglichkeiten beschreibt der Artikel Ausdrücke, die verfügbaren Daten die Seite Ausdruck-Kontexte. In Formularen stehen die bisherigen Antworten unter form zur Verfügung. Die Antwort eines Felds mit dem Schlüssel menge lautet also form.menge. Werte aus den Einstellungen (config) stehen in Formularausdrücken nicht zur Verfügung, ein solcher Ausdruck wird beim Speichern abgelehnt.
Sichtbarkeits-Ausdruck
Section titled “Sichtbarkeits-Ausdruck”Der Sichtbarkeits-Ausdruck legt fest, wann ein Element gezeigt wird. Ist die Bedingung nicht erfüllt, wird es ausgeblendet. Bei einer Gruppe verschwinden damit auch alle enthaltenen Elemente. Ein neues Element startet mit dem Ausdruck true, ist also immer sichtbar. Ein leerer Ausdruck bedeutet ebenfalls „immer sichtbar“. Ein fehlerhafter Ausdruck lässt das Feld sichtbar.
Die Sichtbarkeit wird während des Ausfüllens im Portal laufend ausgewertet und bei der Einreichung erneut geprüft.
Validierungs-Ausdruck
Section titled “Validierungs-Ausdruck”Der Validierungs-Ausdruck wird beim Einreichen geprüft und im Portal bereits während der Eingabe ausgewertet. Er liefert den Text, den der Lieferant als Begründung sieht. Ein leeres Ergebnis oder null bedeutet, dass die Antwort gültig ist. Typisch ist eine Gruppe aus Auswahlfeldern mit den Optionen „Ja“ und „Nein“, in der mindestens eine Frage mit „Ja“ beantwortet sein muss:
form.frage_a == "Ja" || form.frage_b == "Ja" ? "" : "Mindestens eine dieser Fragen muss mit Ja beantwortet werden."Felder, die ein Validierungs-Ausdruck liest, tragen im Portal ebenso wie Pflichtfelder einen Stern. Die Meldung einer Gruppenregel steht von Anfang an über der Gruppe.
Unbeantwortete Felder absichern
Section titled “Unbeantwortete Felder absichern”Antworten haben in Ausdrücken den Typ ihres Felds: Checkboxen liefern true oder false, Zahlenfelder eine Zahl, alle übrigen Eingabefelder einen Text. Ein Feld, das der Lieferant nicht beantwortet hat, hat den Wert null. Vergleiche, die Werte ordnen, schlagen dann fehl. Ein Ausdruck wie form.menge > 5 wird deshalb beim Speichern abgelehnt und muss abgesichert werden:
form.menge != null && form.menge > 5Optionsfilter für Auswahlfelder
Section titled “Optionsfilter für Auswahlfelder”Bei einem Auswahlfeld lässt sich die Liste der angebotenen Optionen je Entität einschränken. Das ist sinnvoll, wenn nicht jede Option für jeden Datensatz in Frage kommt, etwa weil frühere Angaben eines übergeordneten Lieferanten bestimmte Optionen ausschließen. Im Dialog des Elements stehen dafür unter dem Validierungs-Ausdruck zwei Einstellungen:
- Optionsfilter-Ausdruck: liefert die Liste der Optionen, die angeboten werden sollen. Er kann wie die übrigen Ausdrücke die Daten der Entität und die bisherigen Antworten unter
formlesen. Ein leeres Ergebnis,nulloder ein Fehler im Ausdruck bedeutet: kein Filter, alle Optionen werden angeboten. Namen in der Liste, die keine Option des Felds sind, bleiben wirkungslos. - Optionen außerhalb der Liste: legt fest, was mit den übrigen Optionen geschieht. Bei Ausgrauen erscheinen sie zuletzt unter „Weitere Optionen“ und bleiben wählbar. Bei Ausblenden werden sie nicht angezeigt.
Beide Einstellungen gibt es nur bei Auswahlfeldern. Der Ausdruck wird wie Sichtbarkeits- und Validierungs-Ausdrücke mit den Hilfetexten und dem Bereich „Testen gegen“ bearbeitet. In der Elementliste trägt ein Feld mit Optionsfilter das Kennzeichen „Optionsfilter“. Ein Beispiel: Ein Material soll nur dann zur Auswahl stehen, wenn ein übergeordneter Lieferant das passende Attribut mit „Ja“ bestätigt hat.
"supplier" in predecessors ? [ ["Polyethylen", "Material Polyethylen"], ["Polypropylen", "Material Polypropylen"] ].filter(p, predecessors["supplier"].exists(s, p[1] in s.entity && s.entity[p[1]] == "Ja")) .map(p, p[0]) : []Die Liste enthält Paare aus einer Option und dem Namen eines Attributs, weil CEL keine Hilfsvariablen kennt. Die Bedingung "supplier" in predecessors ist nötig, damit der Ausdruck auch dann funktioniert, wenn über dem Datensatz kein Lieferant steht. Ein leeres Ergebnis heißt hier, dass dem Lieferanten alle Optionen angeboten werden. Weitere Hinweise zu fehlenden Werten finden Sie im Artikel Ausdrücke.
Die Wirkung im Portal beschreibt der Artikel Lieferantenfragebogen. Im Modus Ausblenden gilt eine Antwort außerhalb der Liste beim Einreichen als Regelverstoß, ob das Formular dann trotzdem angenommen oder abgewiesen wird, bestimmt die Einstellung form.submission_validation (siehe Prüfen und Absenden). Beim automatischen Ausfüllen wird eine ausgeblendete Antwort nicht aus dem früheren Eintrag übernommen.
Ausdruck testen
Section titled “Ausdruck testen”Im Dialog lässt sich ein Ausdruck gegen eine Entität testen. Über „Testen gegen“ wird ein Datensatz als Kontext gewählt und das Ergebnis angezeigt, noch bevor das Element gespeichert wird.
Entitäts-Dropdown
Section titled “Entitäts-Dropdown”Mit dem Entitäts-Dropdown wählt der Lieferant Datensätze eines Typs aus, zum Beispiel die Produkte, auf die sich seine Angaben beziehen. Der Administrator legt dafür fest:
- die Entitätsart, aus der gewählt wird,
- ob eine Mehrfachauswahl erlaubt ist.
Der Lieferant sieht die nicht archivierten Datensätze dieses Typs unterhalb seiner eigenen Entität (sowie die eigene Entität selbst) und seine eigenen, noch nicht freigegebenen Entwürfe, die als „(In Prüfung)“ gekennzeichnet sind. Entwürfe anderer Portalzugänge und abgelehnte Entwürfe sind nicht wählbar. Darf der Portalzugang Datensätze dieses Typs anlegen, kann er sie direkt unter dem Feld erstellen. Mehr dazu unter Neue Datensätze anlegen.
Wird ein Entitäts-Dropdown von Mehrfachauswahl auf Einzelauswahl umgestellt, behalten bestehende Antworten ihre mehreren Datensätze. Das Portal und das automatische Ausfüllen berücksichtigen dann nur den ersten.
Auswahl als Verknüpfung übernehmen
Section titled “Auswahl als Verknüpfung übernehmen”Ist die gewählte Entitätsart an einer Beziehung zwischen Entitätstypen beteiligt, bietet das Entitäts-Dropdown das Auswahlfeld „Auswahl als Verknüpfung übernehmen“. Dort wird die Beziehung gewählt, standardmäßig ist keine gesetzt. Bei der Freigabe werden die ausgewählten Datensätze dann zu Verknüpfungen dieser Beziehung. Der Datensatz der Einreichung muss dazu vom anderen Typ der Beziehung sein. Ein Fehlgriff zeigt sich erst bei der Übernahme und lässt die Freigabe scheitern.
Elemente löschen und umbenennen
Section titled “Elemente löschen und umbenennen”Beim Löschen eines Elements fragt Certiflow nach („Formularelement löschen“).
Löschen oder Umbenennen des Schlüssels eines Elements wird abgelehnt, wenn danach die Regel eines anderen Elements einen Schlüssel liest, den es nicht mehr gibt. Die Fehlermeldung nennt das betroffene Element. Passen Sie in diesem Fall zuerst den Ausdruck an.
Schritt für Schritt
Section titled “Schritt für Schritt”- Im Administrationsbereich die Kachel „Formulare“ öffnen und über „Formular erstellen“ ein Formular mit Name und Titeln anlegen.
- Auf der Detailseite Gruppen und Felder mit „Formularelement hinzufügen“ anlegen und anordnen.
- Pro Feld Schlüssel, Titel und gegebenenfalls Pflicht, automatisches Ausfüllen und Zuordnung zu einem Attribut festlegen.
- Bei Bedarf Sichtbarkeits-, Validierungs- und Optionsfilter-Ausdrücke ergänzen und testen.
- Das Formular im Feld „Formular“ eines Checklistenpunkts auswählen.