23.02.2013 Aufrufe

Oracle Application Express Tipps für Entwicklung und ... - Trivadis

Oracle Application Express Tipps für Entwicklung und ... - Trivadis

Oracle Application Express Tipps für Entwicklung und ... - Trivadis

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Auditing Attribute<br />

Jede Tabelle sollte Attribute besitzen, die pro Datensatz den Ersteller mit<br />

Erstelldatum <strong>und</strong> den Editor mit Editdatum ausweisen. Das Füllen dieser vier<br />

Spalten sollte über Before-Insert-Update-Trigger bewerkstelligt werden.<br />

Gr<strong>und</strong>:<br />

� Änderungen an Daten können so einfacher nachvollzogen werden<br />

� Der Audit passiert direkt in der Datenbank <strong>und</strong> muss nicht in der Anwendung<br />

berücksichtigt werden<br />

Geschäftslogik von Visualisierung trennen<br />

Geschäftslogik <strong>und</strong> Berechnungen sollten unbedingt in der Datenbank, innerhalb<br />

von Views, Triggers, Packages, Prozeduren <strong>und</strong> Funktionen, realisiert werden.<br />

Wenn der PL/SQL Code keine GUI-Elemente enthält, kann er ohnehin vollständig<br />

in die DB ausgelagert werden. Generell sollte so viel Geschäftslogik wie möglich in<br />

die DB ausgelagert bzw. so wenig PL/SQL Code wie möglich in APEX hinterlassen<br />

werden. Es sollten lediglich die <strong>für</strong> die Visualisierung notwendigen SQL Befehle<br />

<strong>und</strong> Funktions- bzw. Prozeduraufrufe in der APEX <strong>Entwicklung</strong>sumgebung<br />

gehalten werden.<br />

Gr<strong>und</strong>:<br />

� Klassischer Ansatz der Software <strong>Entwicklung</strong><br />

� Einfacheres Debugging <strong>und</strong> Ressourcenkontrolle möglich<br />

� Mehrfachverwendung von Code möglich (Modularisierung)<br />

View-Schicht statt direkter Tabellenzugriff<br />

Um einerseits die Vorteile der Wizard-getriebenen <strong>Entwicklung</strong> zu nutzen <strong>und</strong><br />

andererseits ein hohes Mass an Kontrolle über die DML Transaktionen zu<br />

behalten, sollten sämtliche APEX-Formulare, in denen DML Operationen (Insert,<br />

Update, Delete) vorkommen, ausschliesslich über Views auf die Daten zugreifen.<br />

Die Implementierung der DML-Logik kann bei Bedarf (komplexe Views, komplexe<br />

Updates etc.) in Instead-Of-Trigger verlagert werden. Diese Vorgehensweise ist<br />

selbst dann empfehlenswert, wenn das APEX-Formular direkt nur auf eine einzige<br />

View zugreift.<br />

<strong>Oracle</strong> <strong>Application</strong> <strong>Express</strong> <strong>Tipps</strong> <strong>für</strong> <strong>Entwicklung</strong> <strong>und</strong> Betrieb 19

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!