| Auszug | ||
|---|---|---|
| ||
Nuclos Datenbankobjekte: Views, Funktionen, Prozeduren, Nuclet-Transfer, Reihenfolge, Löschanweisung, CA_-Funktionen, PostgreSQL/Oracle. |
Sprache: Deutsch · English
Eigene Views, Funktionen und Prozeduren als Teil eines Nuclets – inkl. Reihenfolge/Löschanweisung und CA_-Konvention.
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Panel | |||||
|---|---|---|---|---|---|
| |||||
Auf dieser Seite
|
Menüaufruf: (Konfiguration) - (Datenbank) - (Datenbankobjekte)
|
...
Datenbankobjekte konfigurieren
benutzerdefinierte Views, Funktionen, Prozeduren usw. als Teil eines Nuclets
...
– bei einem Nuclet-Transfer werden sie mitübernommen. Typische Anwendungen: DB-Funktionen für berechnete Attribute, Views für virtuelle Businessobjekte
...
oder Packages für Jobs
...
.
Menüaufruf: Konfiguration → Datenbank → Datenbankobjekte
| Info | ||
|---|---|---|
| ||
Über das Feld Reihenfolge (seit Nuclos 3.10) |
...
legst du Abhängigkeiten fest: Beim Ändern/Transfer werden alle Objekte in absteigender Reihenfolge gelöscht und in aufsteigender |
...
wieder angelegt. Voraussetzung |
...
ist |
...
ein Löschstatement je Objekt. |
Zuerst ein Datenbankobjekt mit passendem Typ anlegen: function, index, package, package body, procedure, view. Für jedes unterstützte Datenbanksystem kann ein eigenes Objekt hinterlegt werden; herangezogen wird das des aktiven Systems.
| Warnung | ||
|---|---|---|
| ||
Soll eine Function für ein berechnetes Attribut dienen, muss ihr Name mit |
Datenbankobjekt anlegen und Typ zuweisen.
Im Datenbankobjekt-Quelltext (Konfiguration → Datenbank → Datenbankobjekt-Quelltexte) trägst du den DB-spezifischen Code ein. Ist Aktiv gesetzt, wird das Objekt beim Speichern erzeugt/aktualisiert. Den Schema-/DB-Namen setzt Nuclos automatisch davor – nicht selbst angeben. Die Löschanweisung wird beim Löschen des Datensatzes ausgeführt.
Maske „Datenbankobjekt-Quelltext“.
| Codeblock | ||
|---|---|---|
| ||
CREATE OR REPLACE FUNCTION <name>(imoduleid numeric)
RETURNS numeric AS
$BODY$
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;v |
| Codeblock | ||
|---|---|---|
| ||
CREATE OR REPLACE FUNCTION GET_NEXT_NUMBER(imoduleid numeric)
RETURNS numeric AS
$BODY$
DECLARE
iresult NUMERIC (20, 0);
BEGIN
SELECT intnaechstenummer INTO iresult
FROM t_eo_nummern
WHERE strbezeichnung = 'Kundennummer';
RETURN iresult;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100; |
| Codeblock | ||
|---|---|---|
| ||
DROP FUNCTION IF EXISTS GET_NEXT_NUMBER(imoduleid numeric) CASCADE |
| Warnung | ||
|---|---|---|
| ||
Bei PostgreSQL muss immer eine Löschanweisung angegeben werden. |
Dieses Vorgehen liefert auch ein gutes Indiz dafür, ob nach Änderungen einzelner Datenbankobjekte alle Datenbankobjekte weiterhin fehlerfrei zusammenspielen, der erfolgreiche Abschluss des vollständigen Löschens und Erstellens wird mit einer entsprechenden Erfolgsmeldung quittiert.
Hier sind die unterstützten Datenbanksysteme aufgelistet. Es können Objekte für die jeweiligen Datenbanksysteme auch mehrfach angelegt werden, um z.B. ein System von einer Datenbank auf eine andere zu portieren. Es werden immer die Datenbankobjekte vom jeweils eingesetzten Datenbanksystem herangezogen.
Zunächst muss ein Datenbankobjekt angelegt und ein entsprechender Typ zugewiesen werden. Es stehen folgende Typen zur Auswahl:
Bitte beachten Sie, wenn eine Function für ein berechnetes Attribut eingesetzt werden soll, muss der Name des Datenbankobjektes mit CA_ beginnen. Nur diese Objekte stehen in der Auswahl einer Berechnungsvorschrift im Entitätenwizard zur Verfügung.