Prüfungen und Meldungen
Über dem Formular steht in den Reitern Allgemein und Spalten ein Meldungsblock. Er wird bei jeder Änderung neu gerechnet und unterscheidet zwei Stufen:
- Fehler (rot) – damit funktioniert die Definition nicht.
- Hinweise (gelb) – die Definition läuft, tut aber nicht, was jemand erwartet.
Der Router reicht
metaunverändert durch; falsch wird es erst im Client, und dort still. Deshalb steht es hier.
Gespeichert werden kann in beiden Fällen: der Editor weist nichts ab, was das
Portalskript annimmt. Hinweise, die erst beim Schreiben entstehen (aufgeräumte leere
Einträge, ergänztes schema/catalog), kommen nach dem Speichern dazu.
Fehler
| Meldung | Bedeutung |
|---|---|
| Name fehlt / ist nicht zulässig | nameApi benennt die Custom Property und die Route. Buchstaben, Ziffern und _, beginnend mit einem Buchstaben |
| Tabelle fehlt | ohne nameSQL gibt es nichts abzufragen |
| Verbindung fehlt | ohne connectionId weiß der Router nicht, welche Datenbank |
| Spalte n hat keinen Namen | eine Spalte ohne name ist kein Feld |
| Sortierung n hat keine Spalte | leerer Eintrag in orderBy |
Hinweise
| Meldung | Bedeutung |
|---|---|
| Keine Spalten | die Spaltenliste ist die ganze Schnittstelle – ohne sie kann nichts gelesen oder geschrieben werden |
| Spalte ist doppelt | der Router nimmt die erste und übergeht die zweite |
n leere Einträge in columns |
Löcher aus einer Definitionsdatei; das Speichern entfernt sie |
| Spalte gibt es in der Tabelle nicht | sie fehlt in jeder Antwort |
| Der Primärschlüssel ist nicht deklariert | keyColumns bleibt leer, ein Client kann keine Zeile ändern oder löschen |
| Spalte ist NOT NULL ohne Standardwert, aber nicht deklariert | jedes Anlegen schlägt fehl |
| Sortierung nach einer nicht deklarierten Spalte | der Router lässt den Eintrag fallen |
| Der Werteliste fehlt die Wertespalte | sie wird ignoriert |
| Der Werteliste fehlt die Tabelle | ihr Aufruf endet mit 404 |
Die feste Liste steht in possibleValues |
die API liefert sie, der DEX-Client benutzt sie nicht – unter Werteliste übernehmen |
| View-Spalte ohne SQL-Typ | die API meldet string |
schema / catalog ist leer |
dort gehört die Datenbank hin, in der die Tabelle liegt |
Hinweise rund um Wertelisten
Die häufigste Ursache für eine leere Auswahl im Client sind zwei Wege, die sich gegenseitig ausschließen:
- feste Einträge und eine Werteliste – der Client nimmt die Werteliste,
meta.listItemsbleibt unbeachtet. - Skript und Werteliste – der Client nimmt die Werteliste; das Skript läuft, sein Ergebnis bleibt liegen.
- Skript und feste Einträge – das Skript gewinnt.
- feste Einträge, aber ein Typ, der keine Liste ist – der Client wertet sie nur bei
list,multiplelist,comboboxundcomboboxTextaus.popupundiconorlistbekommen sie nicht. - Einträge ohne
keyoderlabellässt der Client weg, doppeltekeyüberschreiben einander. meta.listScriptParamsohnemeta.listScript– die Parameter werden nirgends übergeben. Ein verschachtelter Parameter kommt im Skript als[object Object]an, weil DOCUMENTS Parameter als Text übergibt.meta.translationPrefixohne Übersetzungsfilter – der Vorsatz wird nirgends benutzt.
No comments to display
No comments to display