Source-Transfer

Zur Übertragung von Source­code zwischen LF‑ET und SQL Developer nutzen wir in unseren Beispielen einen einfachen aber effektiven Mechanismus: Das System-Clipboard bzw. die Zwi­schen­ablage.

Dazu wird, wenn nicht schon vorhanden, einmalig eine Konfi­gura­tionsdatei Pro­ject.ini angelegt und in dieser mit der Schlüsselangabe ide.plsql.clipboard=true die auto­ma­tische Verwendung des Clipboards für PL/SQL festgelegt.

Ausserdem soll der Package-Name aus "LFET_" und dem Namen der Ent­schei­dungs­ta­belle gebildet werden, $$etname ist ein Platz­hal­ter und wird bei der Gene­rie­rung durch den Namen der jewei­ligen Ent­schei­dungs­ta­belle ersetzt.

D:\Projekte\LF‑ET-Demo\PLSQL\Pro­ject.ini

ide.plsql=true

ide.plsql.clipboard=true

ide.plsql.packageName=LFET_$$etname

Von LF‑ET ⇒ nach SQL Developer

Nach jeder Gene­rie­rung wird der gene­rier­te Source­code nicht nur als Datei im Filesystem gespei­chert, sondern vom Generator auto­ma­tisch auch zu­sätz­lich in das System-Clipboard kopiert.

Der Anwender wechselt in den SQL-Developer-Edi­tor und fügt dort den Inhalt z.B. mit den Tasten­kombi­nationen STRG + A, STRG + V ein.

Von SQL Developer ⇒ nach LF‑ET

Derselbe Weg funktioniert auch umgekehrt: Änderungen am gene­rier­ten Code in SQL Developer kann LF‑ET erkennen und in die Ent­schei­dungs­ta­belle zurück importieren. Hierzu dient die Funktion Scrapbook einlesen: Ist die auto­ma­tische Verwendung des Clipboards eingestellt, dann versucht LF‑ET zuerst aus dem Clipboard zu importieren, d.h. der Anwender muss in SQL Developer einfach nur den kompletten Source­code mit STRG + A, STRG + C in das Clipboard stellen und dann in LF‑ET die Funktion Scrapbook einlesen aufrufen. Nur wenn im Clipboard kein generierter Sourceode erkennbar ist, dann untersucht LF‑ET in einem zweiten Schritt die gene­rier­te Datei im Filesystem auf Änderungen.

Soll ohne Konfi­gura­tionsdatei ge­ne­riert werden, oder wenn Einstellungen aus der Konfi­gura­tionsdatei überschrieben werden sollen, dann können diese PL/SQL-Gene­rie­rungs­para­me­ter alternativ auch im Prolog zur Ent­schei­dungs­ta­belle definiert werden:

/* $$clipboard=true */

/* $$packageName=LFET_$$etname */

Weiterführende Informationen: