Seitenhistorie
...
Erstellen einer Datenbankabfrage (Query)
Methode | Beispiel | |||||
---|---|---|---|---|---|---|
create | Allgemein: Mit Hilfe dieser Methode kann ein typisiertes Query-Object angelegt werden, mit dessen Hilfe Datenbankabfragen ausgeführt werden können. Dabei wird auf eine abstrakte Query-Language zurückgegriffen. Abfragen mit SQL-Syntax sind nicht möglich.
Folgende Bedingungen können verwendet werden:
Und für Numerische Attribute:
Weitere Informationen finden sich in folgenden Klassen (unter api.nuclos.de): org.nuclos.api.businessobject.attribute.Attribute<T> org.nuclos.api.businessobject.attribute.NumericAttribute<T> Suchen von Einträgen mit einem bestimmten Status
Welchen Status ein BusinessObject einnehmen kann, hängt von dem zugewiesenen Statusmodel ab. Dazu gibt es für jedes Statusmodel eine entsprechende Klasse, hier "BestellungSM", die alle Status als Konstanten beinhaltet. | |||||
execute | Diese Funktion führt eine Query aus und gibt eine typisierte Liste als Ergebnis zurück.
|
...
Methode | Beschreibung | ||||||
---|---|---|---|---|---|---|---|
exist | Mit Hilfe der exist-Methode kann eine Subquery in eine äußere Query eingebunden werden. Die Verknüpfung von Query und Subquery findet ausschließlich über (Fremd)schlüssel statt. Hier ein Beispiel. Ziel der Abfrage ist die Ermittlung einer Liste von Bestellungen, für die Kunden mit vollständigen Zahlungsbedingungen hinterlegt sind:
Soll nicht der PrimaryKey als Referenzfeld der Subquery verwendet werden, sondern ein anderer ForeignKey, muss dieser beim Aufruf der exist()-Methode mit angegeben werden:
Neu (Ab 4.34.0 und 4.33.6: Soll eine echte Subform-Suche ausgeführt werden, d.h. es werden Hauptdatensätze mit einer Subform-Bedingung gesucht, dann gilt folgendes Beispiel:
Zu beachten ist, dass die Subquery selbst nicht vom QueryProvider ausgeführt werden muss. Sie wird in ihrer fertigen "Strduktur" der äußeren Query übergeben. |
...
Auslesen eines einzelnen Eintrages
Methode | Beispiel | ||
---|---|---|---|
getByIdget | Mit Hilfe dieser Methode kann ein einzelnes BusinessObject anhand der Id ausgelesen werden.
|
Suche anhand von Aktionen und Status
Methode | Beispiel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
getByState | Mit Hilfe dieser Methode können Datenbankeinträge in Form von BusinessObjekten ermittelt werden, die einen bestimmten Status besitzen. Die Status befinden sich in den Statusmodell-Klassen.
| ||||||||||
getByProcess | Mit Hilfe dieser Methode können Datenbankeinträge in Form von BusinessObjekten ermittelt werden, die einer oder mehreren Aktionen angehören. Eine Aktion ist immer einem Businessobjekt zugewiesen, weshalb sie im Funktionsaufruf nicht extra angegeben werden muss. Aktionen werden in Nuclos konfiguriert und aufgrund ihrer Zugehörigkeit zum Businessobjekt in den BusinessObjekten als Konstanten hinterlegt, z.B. Auftrag.Sonderauftrag oder Auftrag.Normalauftrag
Anmerkung: Aktionen können in den Businessobjekten direkt gesetzt werden. Wichtig dabei ist, dass aufgrund der Typsicherheit einem Businessobjekt nur die Aktionen zugewiesen werden können, die auch zur entsprechenden Businessobjekt gehören.
|