Wegweiser zur Dokumentation

Graphics Builder verfügt über ein umfassendes Online-Hilfesystem, das Informationen über viele grundlegende Themen, Themen mit Referenzen und Instruktionen enthält.

So machen Sie sich mit Graphics Builder vertraut:

1	Lesen Sie die Kurzanleitungen, wenn Sie einen kurzen Überblick über die einzelnen Komponenten erhalten wollen:

•	Wählen Sie ?Kurzanleitung.

2	Führen Sie Schritt für Schritt die Lernprogramme aus, wenn Sie wissen möchten, wie die gebräuchlichsten Aufgaben ausgeführt werden:

•	Wählen Sie ?Lernprogramme.

3	Schlagen Sie in den Online- bzw. gedruckten Handbüchern nach:

•	Wählen Sie ?Handbücher.

4	Suchen Sie in den Hilfethemen:

•	Wählen Sie ?Hilfethemen, um das Inhaltverzeichnis und den Index aufzurufen.

•	Drücken Sie [Hilfe] (auf den meisten Plattformen ist dies die Taste F1), um einen kontextbezogenen Hilfetext aufzuruifen.

•	Wählen Sie ?Tastaturbelegung, oder drücken Sie [Tastenbelegung] (auf den meisten Plattformen ist dies die Taste Strg-K), wenn Sie eine Übersicht über die Form Builder-Tastenbefehle erhalten möchten.


Bogenobjekte erstellen

So erstellen Sie ein Bogenobjekt:

1	Wählen Sie das Bogen-Werkzeug aus der Werkzeugpalette.

2	Klicken und ziehen Sie diagonal in dem Layout, um den gewünschten Bogen zu definieren. Danach lassen Sie die Maustaste los.

Um den Bogen eines Kreises zu zeichnen, halten Sie beim Ziehen die Umschalttaste gedrückt.


Ellipsenobjekte erstellen

So erstellen Sie ein Ellipsenobjekt:

1	Wählen Sie das Ellipsen-Werkzeug aus der Werkzeugpalette.

2	Klicken und ziehen Sie diagonal in dem Layout, um die gewünschte Ellipse zu definieren. Danach lassen Sie die Maustaste los.

Um einen Kreis zu zeichnen, halten Sie beim Ziehen die Umschalttaste gedrückt.


Freihandobjekte erstellen

So erstellen Sie ein Freihandobjekt:

1	Wählen Sie das Freihand-Werkzeug aus der Werkzeugpalette.

2	Klicken und ziehen Sie in dem Layout, um die gewünschte Freihandform zu definieren. Danach lassen Sie die Maustaste los.

Mit dem Freihand-Werkzeug können keine beschränkten Bewegungen durchgeführt werden.


Linienobjekte erstellen

So erstellen Sie ein Linienobjekt:

1	Wählen Sie das Linien-Werkzeug aus der Werkzeugpalette.

2	Klicken Sie im Layout auf den gewünschten Ausgangspunkt, ziehen Sie zu dem gewünschten Endpunkt, und lassen Sie die Maustaste dann los.

Um eine horizontale, vertikale oder eine Linie mit 45 Grad zu zeichnen, halten Sie beim Ziehen in die gewünschte Richtung die Umschalttaste gedrückt.


Polygonobjekte erstellen

So erstellen Sie ein Polygonobjekt:

1	Wählen Sie das Polygon-Werkzeug aus der Werkzeugpalette.

2	Wählen Sie die gewünschte Position des ersten Scheitelpunkts, danach wählen Sie den nächsten Scheitelpunkt usw. Um das Polygon abzuschließen, doppelklicken Sie auf den letzten Scheitelpunkt.

Daraufhin wird eine Linie gezogen, die den ersten und letzten Scheitelpunkt verbindet.

Um ein horizontales, vertikales oder 45-Grad-Segment zu zeichnen, halten Sie beim Definieren eines Scheitelpunkts die Umschalttaste gedrückt. Die Beschränkung eines Scheitelpunkts wirkt sich nicht auf nachfolgende Scheitelpunkte aus.


Polygonzugobjekte erstellen

So erstellen Sie ein Polygonzugobjekt:

1	Wählen Sie das Polygonzug-Werkzeug aus der Werkzeugpalette.

2	Wählen Sie die gewünschte Stelle für den ersten Scheitelpunkt, danach wählen Sie den nächsten Scheitelpunkt usw. Um den Polygonzug abzuschließen, doppelklicken Sie auf den letzten Scheitelpunkt.

Wenn Sie den ersten und letzten Scheitelpunkt nicht manuell verbinden, wird im Gegensatz zu dem Polygonobjekt keine Verbindungslinie gezogen.

Um ein horizontales, vertikales oder 45-Grad-Segment zu zeichnen, halten Sie die Umschalttaste bei der Definition eines Scheitelpunkts gedrückt.


Rechteckobjekte erstellen

So erstellen Sie ein Rechteckobjekt:

1	Wählen Sie das Rechteck-Werkzeug aus der Werkzeugpalette.

2	Klicken und ziehen Sie diagonal in dem Layout, um das gewünschte Rechteck zu definieren. Danach lassen Sie die Maustaste los.

Um ein Quadrat zu zeichnen, halten Sie die Umschalttaste beim Ziehen gedrückt.


Abgerundete Rechteckobjekte erstellen

So erstellen Sie ein abgerundetes Rechteckobjekt:

1	Klicken Sie auf das Werkzeug Abgerundetes Rechteck in der Werkzeugpalette.

2	Klicken und ziehen Sie diagonal in dem Layout, um das gewünschte abgerundete Rechteck zu definieren. Danach lassen Sie die Maustaste los.

Um ein abgerundetes Quadrat zu zeichnen, halten Sie die Umschalttaste beim Ziehen gedrückt.


Formen programmgesteuert erstellen

  Verwandte Themen

So erstellen Sie Formen programmgesteuert:

  Benutzen Sie die vordefinierten PL/SQL-Prozeduren von Graphics Builder.

Mit dem folgenden Beispiel wird ein großes farbiges Rechteck erstellt, das als Hintergrund für andere Objekte und Diagramme benutzt wird.

PROCEDURE create_background IS
  the_back   OG_OBJECT;
  rect_pos   OG_POINT;
  rect_ht    NUMBER;
  rect_wi    NUMBER;
BEGIN
/*Set the start position of the rectangle*/
  rect_pos.x:=.5*OG_INCH;
  rect_pos.y:=.5*OG_INCH;
/*Set the rectangle's height and width*/
  rect_ht:=6*OG_INCH;
  rect_wi:=4*OG_INCH;
/*Make the rounded rectangle object*/
  the_back:=OG_MAKE_RRECT(rect_pos, rect_ht, rect_wi);
/*Set the object's foreground fill color and pattern*/
  OG_SET_FFCOLOR(the_back, 'color 25');
  OG_SET_FILLPAT(the_back, 'gray50');
END;


Über Symbole

Sie können Symbole als dekorative Grafikelemente in dem Layout benutzen oder können Symbole angeben, die als Darstellungstyp in einer Diagramm-Feldvorlage benutzt werden sollen.


Symbole aus der Symbolpalette auswählen

So wählen Sie ein Symbol aus der Symbolpalette aus:

1	Öffnen Sie die Symbolpalette, indem Sie das entsprechende Symbol in der Werkzeugpalette wählen.

Die Palette mit den verfügbaren Symbolen wird geöffnet.

2	Wählen Sie das gewünschte Symbol aus.

Die Palette wird geschlossen, und das Symbol wird in dem Symbol für die Symbolpalette angezeigt. Das Symbol wird für jedes gerade ausgewählte Symbolobjekt und für neue Symbolobjekte verwendet, die Sie mit dem Symbol-Werkzeug in das Layout einfügen. Die Auswahl bleibt für die aktuelle grafische Anwendung wirksam, bis Sie sie erneut ändern.

Die verfügbaren Symbole können nicht geändert werden.


Symbole in das Layout setzen

So setzen Sie ein Symbol in das Layout:

1	Wählen Sie das Symbol-Werkzeug aus der Werkzeugpalette.

2	Wählen Sie die Stelle, an der das Symbol stehen soll.

Das gerade in der Symbolpalette ausgewählte Symbol wird in dem Layout angezeigt.


Symbole programmgesteuert erstellen

  Verwandte Themen

So erstellen Sie Symbole programmgesteuert:

  Verwenden Sie die vordefinierte Prozedur OG_MAKE_SYMBOL von Graphics Builder.

Zum Beispiel:

PROCEDURE make_sym IS
  place  OG_POINT;
BEGIN
  place.x:=1*OG_INCH;
  place.y:=2*OG_INCH;
  OG_MAKE_SYMBOL(place, 5, OG_MEDIUM_SYMSIZE);
END;


Über Text und Textfelder

  Verwandte Themen

Graphics Builder verfügt über zwei Objekte für das Hinzufügen von Text zu einer grafischen Anwendung: Textobjekte und Textfeldobjekte. Mit diesen Objekten können Sie folgende Aktionen durchführen:

•	Textobjekte erstellen

•	Textobjekte programmgesteuert erstellen

•	Textobjekte bearbeiten

•	Textfeldobjekte erstellen

•	Attribute für das ganze Textobjekt oder Textfeldobjekte einstellen

•	Attribute für ein teilweises Textobjekt oder ein standardmäßiges Textfeldobjekt einstellen

•	Sie können Textobjekte für die Angabe von Titeln, die Beschriftung von Grafikelementen oder die Vermittlung von Instruktionen an Endbenutzer verwenden. Benutzen Sie Textfeldobjekte, um Eingabebereiche bereitzustellen, in die Endbenutzer zur Laufzeit Text eingeben können.


Textobjekte manuell erstellen

So erstellen Sie ein Textobjekt:

1	Wählen Sie das Text-Werkzeug aus der Werkzeugpalette aus.

2	Erstellen Sie wie folgt in dem Layout eine Umrandung, die den Textcursor enthält:

Wählen Sie die Stelle in dem Layout, an der das Textobjekt beginnen soll. Der Text wird nur auf die nächste Zeile umbrochen, wenn Sie die Eingabetaste drücken.

Ziehen Sie einen bestimmten Bereich für das Textobjekt. Der Text wird umbrochen, damit er in die horizontalen Grenzen der Umrandung paßt. Gegebenenfalls wird die Umrandung vertikal vergrößert, um den eingegebenen Text aufzunehmen.

3	Geben Sie den Text ein. Drücken Sie die Eingabetaste, um einen Zeilenumbruch zu erzwingen.

4	Wenn Sie fertig sind, klicken Sie an einer beliebigen Stelle außerhalb des Textobjekts im Layout, um den Textmodus zu beenden.

Wenn Sie ein Textobjekt erstellen, ohne Text einzugeben, wird das Objekt automatisch gelöscht. Um ein leeres Textobjekt zu erstellen, erstellen Sie das Objekt zuerst mit etwas Text, und löschen Sie den Text dann. Sie können ein leeres Textobjekt nur erstellen, wenn es über eine feste Umrandung verfügt.


Textobjekte programmgesteuert erstellen

  Beispiel	  Verwandte Themen

So erstellen Sie Textobjekte programmgesteuert:

1	Erstellen Sie das Textobjekt.

2	Erstellen und fügen Sie ein zusammengesetztes Textelement in das Haupttextobjekt ein.

•	Ein zusammengesetztes Textelement stellt eine Textzeile innerhalb des Textobjekts dar. Das zusammengesetzte Textelement kann eine oder mehrere Textfolgen (einfache Textelemente) enthalten.

•	Das erste zusammengesetzte Textelement wird bei dem Indexpunkt Null (0) des Textobjekts eingefügt, es sei denn, es werden ausdrücklich andere Angaben gemacht.

3	Erstellen Sie ein einfaches Textelement, das in das vorher erstellte zusammengesetzte Textobjekt eingefügt wird.

Bei einem einfachen Textelement handelt es sich um eine Textfolge, die in die Zeile eingefügt wird, die von dem zusammengesetzten Textelement erstellt wurde.

4	Fügen Sie das einfache Textelement in das zusammengesetzte Textelement ein. Fügen Sie einfache Textelemente nacheinander ein, wobei jedes bei einem angegebenen Indexpunkt innerhalb des zusammengesetzten Textelements eingefügt wird.

5	Wiederholen Sie die Schritte 3 und 4, bis Sie das Textobjekt mit dem gewünschten Text aufgefüllt haben.

Sie können Größen-, Schriftart- und Zeichenabstandsattribute individuell für jedes einfache Textelement oder für das Textobjekt als Ganzes festlegen.


Beispiel: Textobjekte programmgesteuert erstellen

In dem folgenden Beispiel wird ein Textobjekt bei Punkt (1", 1") in dem Layout erstellt. Das Textobjekt enthält zwei zusammengesetzte Textobjekte (Textzeilen). Das erste zusammengesetzte Textobjekt enthält ein einfaches Textelement (Zeichenfolge), während das zweite zusammengesetzte Textobjekt zwei einfache Textelemente enthält. Diese beiden Textzeilen sind in einer Times-Schriftart mit 12-Punkt wie folgt geschrieben:

Dies ist Zeile 1.

Und jetzt Zeile 2.

PROCEDURE make_text IS
   text_obj   OG_OBJECT;
   text_pos   OG_POINT;
   smp_rec    OG_SMPTEXT_ATTR;
 BEGIN
/* Set text object's origin properties */
   text_pos.x:=OG_INCH;
   text_pos.y:=OG_INCH;

/* Make the text object */
   text_obj:=OG_MAKE_TEXT(text_pos);

 /* Insert a new compound text element into the text
      object at index 0 */
    OG_INSERT_CMPTEXT(text_obj, 0);

/* Set simple text record for desired text string*/
    smp_rec.str:='Dies ist Zeile 1.';
    smp_rec.mask:=OG_STR_SMPTEXTA;

/* Insert a new simple text element at index 0
      in text object's compound text element at
      index 0, using defined simple text record */
    OG_INSERT_SMPTEXT(text_obj, smp_rec, 0, 0);

/* Insert a new compound text element into the text
     object at index 1 */
    OG_INSERT_CMPTEXT(text_obj, 1);

/* Change the simple text record's text string */
    smp_rec.str:='Und jetzt';

/* Insert a new simple text element at index 0
      in text object's compound text element at
      index 1, using defined simple text record */
    OG_INSERT_SMPTEXT(text_obj, smp_rec, 1, 0);

/* Change the simple text record's text string */
    smp_rec.str:=' Zeile 2.';

/* Insert a new simple text element at index 1
      in text object's compound text element at
      index 1, using defined simple text record */
    OG_INSERT_SMPTEXT(text_obj, smp_rec, 1, 1);

/*Set font size and typeface for text object*/
   OG_SET_FONT_PTSIZE(text_obj, '12');
   OG_SET_FONT_TYPEFACE(text_obj, 'Times');
END;


Textfeldobjekte erstellen

So erstellen Sie ein Textfeldobjekt:

1	Wählen Sie das Werkzeug Textfeld aus der Werkzeugpalette.

2	Klicken und ziehen Sie in dem Layout, um eine rechteckige Umrandung zu definieren. Danach lassen Sie die Maustaste los.

  Um ein quadratisches Textfeld zu erstellen, halten Sie die Umschalttaste beim Ziehen gedrückt.

  Um Standardtext in das Textfeld einzugeben, gehen Sie folgendermaßen vor:

3	Wählen Sie das Text-Werkzeug aus der Werkzeugpalette.

4	Wählen Sie das Textfeldobjekt. An der Stelle, an der Sie geklickt haben, wird ein Textcursor angezeigt.

5	Geben Sie den Text ein.

6	Sobald Sie fertig sind, klicken Sie außerhalb des Textfeldobjekts an einer beliebigen Stelle in dem Layout, um den Textmodus zu beenden.

Zur Laufzeit wird in dem Textfeld der Standardtext angezeigt. Benutzer können diesen Text ändern.


Zeichnungen importieren

So importieren Sie eine Zeichnung:

1	Wählen Sie Datei [image] Importieren [image] Zeichnung, um das Dialogfeld Importieren anzuzeigen.

2	Geben Sie die Datenquelle für die Datei an, indem Sie die Optionsschaltfläche Datenbank oder Dateisystem auswählen.

3	Geben Sie den Datei-/Modulnamen in das entsprechende Feld ein, oder klicken Sie auf Durchsuchen, um das Datei-Dialogfeld Ihres Betriebssystems oder das Dialogfeld Datenbank anzuzeigen, in dem Sie die Datei bzw. das Modul auswählen können.

4	Wählen Sie das Zeichnungsformat aus der Dropdown-Liste Format.

5	Klicken Sie auf OK, um die Zeichnungsdatei zu importieren.

Die importierte Grafik wird in dem Layout angezeigt.

Hinweis:  Wenn gruppierte Objekte in einer Datei vorhanden sind und die Datei dann in das CGM-Format konvertiert wird, sind diese Objekte nicht mehr gruppiert.

Graphics Builder akzeptiert Zeichnungsdateien, die im CGM-Format gespeichert sind, oder Grafikdateien aus anderen Oracle-Anwendungen, die im Oracle Format gespeichert sind. Graphics Builder importiert die Zeichnung in die aktive Ebene, es sei denn, es werden ausdrücklich andere Angaben gemacht.


Bilder importieren

So importieren Sie ein Bild:

1	Wählen Sie Datei [image] Importieren [image] Bild, um das Dialogfeld Importieren anzuzeigen.

2	Geben Sie die Datenquelle für die Datei an, indem Sie die Optionsschaltfläche Datenbank oder Dateisystem auswählen.

3	Geben Sie den Datei-/Modulnamen in das entsprechende Feld ein, oder klicken Sie auf Durchsuchen, um das Datei-Dialogfeld Ihres Betriebssystems oder das Dialogfeld Datenbank anzuzeigen, in dem Sie die Datei bzw. das Modul auswählen können.

4	Wählen Sie das Bildformat aus der Dropdown-Liste Format.

5	Klicken Sie auf OK, um die Bilddatei zu importieren.

Die importierte Grafik wird in dem Layout angezeigt.


Grafikobjekte mit PL/SQL importieren

  Verwandte Themen

So importieren Sie Grafikobjekte mit PL/SQL:

  Benutzen Sie die vordefinierte Prozedur OG_IMPORT_IMAGE von Graphics Builder.

In dem folgenden Beispiel wird ein Bild in die aktive Ebene im aktiven Fenster importiert:

PROCEDURE import_the_image IS
   the_image   OG_OBJECT;
   the_layer   OG_LAYER;
BEGIN
  the_layer:=OG_GET_LAYER('layer1');
  OG_ACTIVATE_LAYER(the_layer);
  the_image:=OG_IMPORT_IMAGE('my_image',OG_FILESYSTEM,
    OG_TIFF_IFORMAT);
END;


Über Klänge

Klänge werden benutzt, um Endbenutzer zur Laufzeit auf bestimmte Ereignisse aufmerksam zu machen. So könnten Sie z.B. einen Alarm aufzeichnen, der ausgelöst wird, wenn Daten in einem Diagramm unter einen bestimmten Schwellwert fallen. Die Wiedergabe von Klängen zur Laufzeit muß mit PL/SQL programmgesteuert erfolgen.


Klänge aufzeichnen

So zeichnen Sie einen Klang auf:

1	Wählen Sie im Objektnavigator den Unterknoten Klang aus, und wählen Sie die Schaltfläche Erstellen oder Navigator [image] Erstellen. Wenn in der aktuellen grafischen Anwendung kein Klang vorhanden ist, doppelklicken Sie auf den Knoten Klang im Navigator, um einen neuen Klang im Dialogfeld für die Klangwiedergabe zu erzeugen..

Ein neuer Klang (der anfänglich die Bezeichnung soundx hat) wird erstellt, und das Dialogfeld für die Klangwiedergabe wird angezeigt.

2	Um den neuen Klang aufzuzeichnen, klicken Sie auf Aufzeichnen.

3	Wenn die Aufzeichnung abgeschlossen ist, klicken Sie auf Stop.

4	Klicken Sie auf  OK, um den Klang zu akzeptieren und das Dialogfeld zu schließen.

Der Klang wird zu Ihrer grafischen Anwendung hinzugefügt. Sie können den Klang über die vordefinierte PL/SQL-Prozedur OG_PLAY_SOUND aufrufen.


Klänge programmgesteuert aufzeichnen

  Verwandte Themen

So zeichnen Sie einen Klang programmgesteuert auf:

  Benutzen Sie die vordefinierte Prozedur OG_RECORD_SOUND von Graphics Builder.

Im folgenden Beispiel wird das Klang-Dialogfeld in der grafischen Anwendung zur Laufzeit angezeigt. In diesem Dialogfeld kann der Benutzer einen neuen Klang aufzeichnen:

PROCEDURE record_warning IS
   warn_sound   OG_SOUND;
BEGIN
   warn_sound:=OG_GET_SOUND('warning');
   IF NOT OG_ISNULL(warn_sound) THEN
      OG_RECORD_SOUND(warn_sound);
   END IF;
END;


Klänge importieren

So importieren Sie Klänge:

1	Wählen Sie Datei [image] Importieren [image] Klang, um das Dialogfeld Klang importieren anzuzeigen.

2	Wählen Sie die Optionsschaltfläche Dateisystem oder Datenbank, um die Quelle der Datei anzugeben.

3	Geben Sie den Namen der Datei in das Feld Datei ein, oder klicken Sie auf Durchsuchen, um eine Liste der Dateien anzuzeigen, unter denen Sie wählen können.

4	Wählen Sie das entsprechende Klangdateiformat aus der Dropdown-Liste Format.

5	Klicken Sie auf OK, um das Dialogfeld zu akzeptieren und den Klang zu importieren.

Der Klang wird zu Ihrer grafischen Anwendung hinzugefügt. Sie können den Klang über die vordefinierte PL/SQL-Prozedur OG_PLAY_SOUND aufrufen.

Sie können eine bestehende Klangdatei aus dem Dateisystem oder der Datenbank importieren.


Grafische Anwendungen importieren

So importieren Sie eine grafische Anwendung:

1	Wählen Sie Datei [image] Importieren [image] Grafische Anwendung, um das Dialogfeld Grafische Anwendung importieren anzuzeigen.

2	Geben Sie Namen und Speicherort der grafischen Anwendung an. Außerdem geben Sie an, ob aktive Ebenen aus jeder grafischen Anwendung gemischt werden sollen oder nicht und wie Namenskonflikte aufgelöst werden sollen.

3	Wählen Sie Import, um das Dialogfeld zu akzeptieren und die grafische Anwendung zu importieren.

Sie können eine grafische Anwendung, die in dem Dateisystem oder in einer Datenbank gespeichert ist, in die aktuelle grafische Anwendung importieren. Dies ist eine Möglichkeit, den Inhalt einer grafischen Anwendung in eine andere bestehende grafische Anwendung zu kopieren und die beiden grafischen Anwendungen optimal zu kombinieren.


Über Ebenen

Sie können alle Aktionen mit Ebenen über das Dialogfeld Ebeneneinstellungen durchführen. Um dieses Dialogfeld anzuzeigen, wählen Sie Werkzeuge [image] Ebenen aus dem Menü. Viele Aktionen können auch mit dem Objektnavigator ausgeführt werden. Die möglichen Aktionen umfassen:

•	Erstellen neuer Ebenen

•	Umbenennen von Ebenen

•	Aktivieren von Ebenen

•	Aktivieren einer Ebene mit PL/SQL

•	Verbergen und Anzeigen von Ebenen

•	Verbergen und Anzeigen von Ebenen mit PL/SQL

•	Neuanordnen von Ebenen

•	Löschen von Ebenen

Die aktive Ebene ist die Arbeitsebene. Sie wird immer angezeigt. Sie können jedoch mehrere Ebenen erstellen, die zusammen mit der aktiven Ebene angezeigt werden. Außerdem können Sie mehrere Ebenen verbergen. Wenn Sie eine neue grafische Anwendung erstellen, enthält diese eine Ebene mit der Bezeichnung layer0. Da dies die einzige Ebene ist, ist sie standardmäßig die aktive Ebene.

Mit PL/SQL können Sie bestehende Ebenen zur Laufzeit verwalten. Die aktive Ebene ist die einzige Ebene, mit der die Endbenutzer kommunizieren können, Sie können jedoch die aktive Ebene mit PL/SQL ändern, je nachdem, wo die Benutzereingabe erfolgen soll. Außerdem können Sie die Stapelreihenfolge von Ebenen verbergen, anzeigen und ändern, um individuelle Objekte ganz oder teilweise zu verdecken.

So könnte z.B. Ihr Layout als eine einzige Oberfläche angezeigt werden.

Sie kann jedoch in Wirklichkeit aus mehreren Ebenen bestehen.

Sie können festlegen, daß eine beliebige Anzahl von Ebenen zu einem bestimmten Zeitpunkt angezeigt oder verborgen wird. Die aktive Ebene muß immer angezeigt werden.


Neue Ebenen erstellen

So erstellen Sie eine neue Ebene:

1	Wählen Sie das Ebenenobjekt im Objektnavigator.

2	Wählen Sie die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Layouteinstellungen anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Ebenen aus dem Menü wählen.

3	Klicken Sie auf Neu. In der Liste Vorhandene Ebenen wird eine neue Ebene mit der Bezeichnung layerx angezeigt, wobei x eine Instanznummer ist, die jedesmal um eins erhöht wird, wenn eine neue Ebene erstellt wird. Diese Ebene wird außerdem zur aktiven Ebene.

4	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Layouteinstellungen zu schließen.

Wenn das Layout in mehrere Ansichten aufgeteilt ist, wird die neue Ebene in allen Ansichten hinzugefügt. Sie wird jedoch nur in der aktiven Ansicht zur aktiven Ebene.


Über grafische Anwendungen

Eine mit Graphics Builder erstellte Anwendung wird als grafische Anwendung bezeichnet. Eine grafische Anwendung kann mehrere Komponenten enthalten, einschließlich Daten, die von einer Datenquelle abgefragt werden, grafische Elemente und ein Verhalten, wie z.B. Aufgliederung oder kontinuierliche Aktualisierung.

Grafische Anwendungen von Graphics Builder (wie im Builder angezeigt) verfügen über die folgenden Komponenten:

Diagramme

Grafikobjekte

Importierte Grafikobjekte

Klänge

Ebenen

Seitenumbrüche

Copyright-Informationen


Diagramme

Diagramme sind grafische Diagramme, die Sie in einer grafischen Anwendung zur visuellen Darstellung von Daten erstellen können.


Grafikobjekte

Grafikobjekte sind die visuellen Elemente in Ihrem Layout. Grafikobjekte sind visuelle Elemente, die Sie mit den Zeichenwerkzeugen von Graphics Builder erstellen oder in Ihre grafischen Anwendungen importieren.


Importierte Grafikobjekte

Sie können Grafikobjekte nicht nur innerhalb von Graphics Builder erstellen, sondern können auch Zeichnungs- und Bilddateien aus Anwendungen von Drittherstellern importieren.


Klänge

Wenn Ihr System Klänge unterstützt, können Sie Audio-Aufzeichnungen zur Benutzung in Ihren grafischen Anwendungen vornehmen.


Ebenen

Das Layout jeder grafischen Anwendung besteht aus einer oder mehreren eindeutigen Oberflächen, die als Ebenen bezeichnet werden. Ebenen werden benutzt, um Objekte zu verbergen, die nur unter bestimmten Bedingungen angezeigt werden sollen. So können Sie z.B. eine Schaltfläche auf eine Ebene setzen, die ein Benutzer auswählen kann, um ein Objekt auf einer anderen Ebene anzuzeigen. Möglicherweise möchten Sie auch eine Ebene verbergen, um die Objekte dieser Ebene in einem anderen Fenster als dem Fenster Hauptlayout anzuzeigen.


Seitenumbrüche

Seitenumbrüche sind durchgezogene dunkle Linien in dem Layout, wobei jede Linie die Grenze einer gedruckten Seite darstellt. Die Seitengröße wird mit den Einstellungen im Dialogfeld Seite einrichten bestimmt.

Seitenumbrüche werden nur im Builder angezeigt. Sie sind nicht sichtbar, wenn die grafische Anwendung ausgeführt oder ausgedruckt wird.


Copyright-Informationen

Sie können Copyright-Informationen, wie z.B. Ihren Namen und das letzte Aktualisierungsdatum, zu einer von Ihnen erstellten grafischen Anwendung hinzufügen. Diese Informationen sind für andere Benutzer hilfreich, die möglicherweise nur die Laufzeitversion der grafischen Anwendung erhalten, jedoch mehr über die grafische Anwendung wissen möchten, z.B. wer sie wann erstellt hat.


Über das Erstellen von grafischen Anwendungen

Bei jedem Aufruf von Graphics Builder wird automatisch eine neue grafische Anwendung angezeigt, die anfänglich den Namen Anw1 hat. Diese neue Anwendung wird erstellt, um Ihnen die Arbeit zu erleichtern.

Wenn Sie angeben möchten, daß beim Starten von Graphics Builder keine anfängliche grafische Anwendung erstellt werden soll, wählen Sie Werkzeuge [image] Werkzeugoptionen, um das Dialogfeld Werkzeugoptionen anzuzeigen. Wählen Sie das Registertab Voreinstellungen. In dem Block Aufruf wählen Sie Keine grafische Anwendung aus der Dropdown-Liste Öffnen. Klicken Sie auf Speichern, um diese Einstellung in Ihrer Voreinstellungsdatei zu speichern.


Neue grafische Anwendungen erstellen

So erstellen Sie eine neue grafische Anwendung:

  Wählen Sie im Objektnavigator den Knoten Grafische Anwendungen. Danach klicken Sie auf die Schaltfläche Erstellen in der Symbolleiste.

Daraufhin wird eine neue grafische Anwendung in ihrem eigenen Layouteditor angezeigt. Der Standardname ist Anwx, wobei x eine Instanznummer ist, die jedesmal um eins erhöht wird, wenn während der laufenden Sitzung eine neue grafische Anwendung erstellt wird.

Wenn momentan keine grafischen Anwendungen geöffnet sind, doppelklicken Sie auf den Knoten Grafische Anwendungen im Navigator, um eine neue grafische Anwendung zu erstellen.


Über Diagramme

Ein Diagramm wird in dem Layout als einzelnes Objekt angezeigt, besteht jedoch in Wirklichkeit aus drei Hauptkomponenten:

•	Abfrage

•	Diagrammbereich

•	Diagrammvorlage

Sie können Diagrammkomponenten im Layouteditor erstellen, indem Sie eine Abfrage und eine Diagrammvorlage zur Benutzung angeben und den Diagrammbereich im Layout definieren. Alternativ können Sie Diagrammkomponenten programmgesteuert mit PL/SQL erstellen.

So können Sie z.B. eine Abfrage programmgesteuert definieren, eine Diagrammvorlage auswählen, ein Feld zu einer Schaltfläche machen oder ein Feld von dem restlichen Diagramm "absetzen". Außerdem können Sie PL/SQL benutzen, um die Grafikattribute von Feldern zu definieren, indem Sie Muster, Farbe oder Linienstil festlegen. Danach können Sie eine Bedingung einrichten, wie z.B. einen bestimmten Schwellwert für eine Datenkategorie, unter dem ein Attribut angewendet werden soll. Zur Laufzeit wendet Graphics Builder die Attribute für die angegebenen Felder je nach den Datenkategorien oder den vorhandenen Bedingungen an.


Über Abfragen

Eine Abfrage ist eine SQL SELECT-Anweisung oder eine Datei, die Graphics Builder benötigt, um Daten für ein Diagramm abzurufen. Ein Diagramm kann immer nur mit einer Abfrage verknüpft sein. Wenn Sie das Diagramm zeichnen, benutzt Graphics Builder die Daten aus der aktuellen Abfrage, es sei denn, Sie geben eine andere Abfrage an.


Über Diagrammvorlagen

Eine Diagrammvorlage definiert das Format eines Diagramms und dessen Attribute. Ein Diagramm kann immer nur mit einer Diagrammvorlage gleichzeitig verknüpft sein. Sie können jedoch die folgenden Aktionen mit einer individuellen Diagrammvorlage durchführen und diese Vorlage dann benutzen, um die Attribute für mehrere Diagramme anzuwenden.

•	Angabe der Attribute für Achsenrahmen

•	Angabe von Attributen für Kategorienachsen, Werteachsen und Datumsachsen

•	Verschieben der Legende

•	Definieren von Referenzlinien

•	Angabe von Zahlen- und Datumsformaten

•	Angabe von Text- und Linienattributen

•	Angabe von Farben und Mustern

Jede Diagrammvorlage kann mit einer oder mehreren Feldvorlagen verknüpft sein, die die Attribute der einzelnen Felder definieren, wie z.B. Balken, Spalten, Kreissegmente oder Linien.


Über Diagrammtypen

In der folgenden Liste werden die verschiedenen Diagrammtypen, die Sie erstellen können, und deren empfohlene Benutzung aufgeführt:

Säulen	Benutzen Sie diesen Diagrammtyp, um Gruppen mit Datenbereichen vertikal zu vergleichen. Benutzen Sie z.B. ein Säulendiagramm, um die vierteljährlichen Umsatzerträge darzustellen, die von jedem Verkäufer erzielt werden.
Kreis	Benutzen Sie diesen Diagrammtyp, um das Verhältnis bzw. den Prozentsatz von Teilen eines Ganzen zu vergleichen. Benutzen Sie z.B. ein Kreisdiagramm, um den Jahresertrag pro Abteilung oder Quartal zu vergleichen.
Balken	Benutzen Sie diesen Diagrammtyp, um Gruppen mit Datenbereichen horizontal zu vergleichen. Benutzen Sie z.B. ein Balkendiagramm, um monatliche Erträge zu vergleichen.
Tabelle	Benutzen Sie diesen Diagrammtyp, um Daten in einem Tabellenformat darzustellen. Benutzen Sie z.B. ein Tabellendiagramm, um eine Organigramm darzustellen.
Linie	Benutzen Sie diesen Diagrammtyp, um vertikale Änderungen für eine bestimmte Datengruppe darzustellen. Benutzen Sie z.B. ein Liniendiagramm, um tägliche oder stündliche Änderungen einer Aktie darzustellen.
Punkt	Benutzen Sie diesen Diagrammtyp, um Daten auf zwei Werteachsen darzustellen. Punktdiagramme eignen sich besonders für die Darstellung von Standardabweichungen. Benutzen Sie z.B. ein Punktdiagramm, um Alter und Gehälter Ihrer Mitarbeiter darzustellen. Wenn zwischen den beiden Datengruppen eine Korrelation besteht, stehen die Punkte relativ eng beieinander. Ein oder mehrere Punkte außerhalb der Gruppe könnten Ungleichheiten bei den Gehältern darstellen.
Gemischt	Kombiniert mehrere Darstellungstypen, wie z.B. Säulen und Linien. Benutzen Sie ein gemischtes Diagramm, z.B. um Tagesumsätze darzustellen, wobei die zusammenfassende Übersicht der Daten mit einer Linie dargestellt wird.
Hoch-Tief	Benutzen Sie diesen Diagrammtyp, um Wertefelder darzustellen, die einem Hoch-, Tief- und Schlußwert entsprechen (d.h. Aktienkurse). Für jede Zeile in Ihrer Abfrage wird ein Hoch-Tief-Bereich in dem Diagramm dargestellt.
2. Y-Achsen	Dieser Diagrammtyp enthält zwei unabhängige Y-Achsen, auf denen Daten dargestellt werden. Auf jeder Y-Achse kann ein anderer Wertebereich dargestellt werden. So könnten Sie z.B. auf einer Achse den Ertrag und auf der zweiten Achse das Einkommen darstellen oder beide Werte im Laufe einer bestimmten Zeit darstellen.
Gantt	Benutzen Sie diesen Diagrammtyp, um Gruppen von Projektdaten im Laufe einer bestimmten Zeit darzustellen. Gantt-Diagramme werden im allgemeinen benutzt, um Projektmeilensteine darzustellen.


Über Achsendiagramme

  Beispiel

Die meisten Diagramme, die Sie in Graphics Builder erstellen können, sind Achsendiagramme. Ein Achsendiagramm ist ein Diagramm, bei dem die Daten entsprechend ihrer Position auf den Diagrammachsen, d.h. den Diagrammrändern dargestellt werden. Säulen-, Balken- und Liniendiagramme sind alles Achsendiagramme. Ein Achsendiagramm kann zwei oder drei Achsen enthalten, wobei jede einen der folgenden Typen aufweisen kann:

•	Kategorienachse

•	Werteachse

•	Datumsachse

Verwendungshinweise: Wenn Sie Achsendiagramme erstellen, werden die Beschriftungen der X- und Y-Achse von den Spaltennamen abgeleitet, die der Tabelle in Ihrer Abfrage zugewiesen sind. Sie können diese Achsenbeschriftungen mit dem Register Achsen individuell ändern oder können einen Alias für einen Spaltennamen in Ihrer Abfrage angeben. Wenn Sie Diagrammvorlagen benutzen möchten, wird empfohlen, benutzerdefinierte Achsenbeschriftungen in der Abfrage zuzuweisen.


Beispiel:  Benutzerdefinierte Achsenbeschriftungen in Abfragen zuweisen

/*The following example demonstrates how you can
**customize axis labels by specifying a column
**name alias in your query.
*/

select warehouse_id "Warehouse ID",
amount_in_stock "Inventory Levels"
from s_inventory


Über Kategorienachsen

Eine Kategorienachse ist eine Achse, auf der eindeutige Werte in festen Intervallen dargestellt werden. Diese Werte sind nicht mathematisch miteinander verbunden. Kategoriendaten (unabhängige Daten) werden im allgemeinen auf dieser Achse dargestellt.

So können z.B. Mitarbeiternamen auf einer Kategorienachse dargestellt werden, deren Gehälter jedoch nicht (weil finanzielle Werte insofern miteinander verbunden sind, als ein Wert mathematisch größer als ein anderer ist).


Über Werteachsen

Auf einer Werteachse werden Werte dargestellt, die mathematisch miteinander verbunden sind. Die Achse beginnt bei einem Wert und wird fortgesetzt, bis ein anderer Wert erreicht ist. Das Darstellungsintervall hängt davon ab, an welche Stelle die Datenwerte innerhalb der unteren und oberen Grenze der Achse fallen. Wertedaten (abhängige Daten) werden im allgemeinen auf dieser Achse dargestellt.

So können z.B. Mitarbeitergehälter auf einer Werteachse dargestellt werden. Mitarbeiternamen hingegen nicht.


Über Datumsachsen

Eine Datumsachse ist eine Achse, auf der Datumswerte dargestellt werden. Die Achse beginnt bei einem Datum und wird fortgesetzt, bis ein anderes Datum erreicht ist. (In dieser Beziehung entspricht eine Datumsachse einer Werteachse. Graphics Builder behandelt die beiden Achsen jedoch unterschiedlich.) Das Darstellungsintervall hängt davon ab, an welche Stelle die Datumswerte innerhalb der unteren und oberen Grenze der Achse fallen.

So kann z.B. das Einstellungsdatum von Mitarbeitern auf einer Datumsachse dargestellt werden.


Diagramme mit einer neuen Abfrage im Layouteditor erstellen

So erstellen Sie ein Diagramm:

1	Wählen Sie Datei [image] Anmelden, um sich gegebenenfalls bei einer Datenbank anzumelden.

2	Wählen Sie das Diagramm-Werkzeug in der Werkzeugpalette, und klicken Sie entweder in das Layout, oder ziehen Sie einen Bereich für das Diagramm.

Alternativ können Sie auch Diagramm [image] Diagramm erstellen aus dem Menü auswählen.

Wenn Sie keinen Bereich für das Diagramm ziehen, benutzt Graphics Builder eine Standardgröße.

Wenn in Ihrer grafischen Anwendung bestehende Abfragen vorhanden sind, wird das Dialogfeld Diagramm-Assistent angezeigt. Wenn keine Abfragen vorhanden sind, wird das Dialogfeld Neue Abfrage angezeigt.

So erstellen Sie eine Abfrage:

3	Klicken Sie im Dialogfeld Diagramm-Assistent auf die Optionsschaltfläche Neue Abfrage. Danach klicken Sie auf OK, um das Dialogfeld Neue Abfrage anzuzeigen.

4	Geben Sie eine SQL SELECT-Anweisung in das Feld SQL-Befehl ein, oder wählen Sie einen alternativen Abfragetyp.

5	Klicken Sie auf Ausführen, um die Abfrage auszuführen.

Sie können die zurückgegebenen Daten im Register Daten anzeigen.

So geben Sie Diagrammattribute an:

6	Klicken Sie auf OK, um das Dialogfeld Neue Abfrage zu schließen und das Dialogfeld Diagrammattribute anzuzeigen.

7	(Optional)  Geben Sie einen Namen und einen Titel für das Diagramm ein.

8	Wählen Sie einen Diagrammtyp und einen Untertyp.

9	Klicken Sie auf OK, um das Diagramm zu erstellen.

Das Diagramm wird im Layouteditor gezeichnet. Das Diagrammobjekt wird im Objektnavigator angezeigt. Der Diagrammbereich ist der von dem Diagramm belegte Bereich. Die Teilungsbeschriftungen und die Legende können über diesen Bereich hinausgehen.

Jetzt können Sie das Diagrammobjekt genau wie jedes andere Objekt im Layout bearbeiten (auswählen, verschieben, skalieren, löschen usw.) oder dessen Attribute ändern.


Diagramme mit einer bestehenden Abfrage erstellen

So erstellen Sie ein Diagramm mit einer bestehenden Abfrage:

1	Wählen Sie im Layouteditor das Diagramm-Werkzeug in der Werkzeugpalette, und klicken Sie entweder im Layout, oder ziehen Sie einen Bereich für das Diagramm.

Alternativ können Sie auch Diagramm [image] Diagramm erstellen aus dem Menü wählen.

Wenn Sie keinen Bereich für das Diagramm ziehen, benutzt Graphics Builder eine Standardgröße.

Daraufhin wird das Dialogfeld Diagramm-Assistent angezeigt.

2	Wählen Sie eine vorhandene Abfrage aus der Dropdown-Liste Vorhandene Abfrage.

3	Klicken Sie auf OK, um das Dialogfeld zu akzeptieren und das Dialogfeld Diagrammattribute anzuzeigen.

4	(Optional)  Geben Sie einen Namen und einen Titel für das Diagramm ein.

5	Wählen Sie einen Diagrammtyp und einen Untertyp.

6	Klicken Sie auf OK, um das Diagramm zu erstellen.

Das Diagramm wird im Layouteditor gezeichnet. Das Diagrammobjekt wird im Objektnavigator angezeigt. Der Diagrammbereich entspricht dem vom Diagramm belegten Bereich. Die Teilungsbeschriftungen und die Legende können über diesen Bereich hinausgehen.

Jetzt können Sie das Diagrammobjekt genau wie jedes andere Objekt in dem Layout bearbeiten (auswählen, verschieben, skalieren, löschen usw.) oder dessen Attribute ändern.


Diagramme programmgesteuert erstellen

So erstellen Sie ein Diagramm programmgesteuert:

1	Gegebenenfalls definieren Sie die gewünschte Vorlage.

2	Erstellen Sie die gewünschte Abfrage.

3	Erstellen Sie den PL/SQL-Programmblock.  Beispiel


Beispiel:  Diagramme programmgesteuert erstellen

/* The following example assumes that the template
**and query have already been defined. It executes
**the specified query and stores the results
**internally.
*/

PROCEDURE create_chart IS
/* Declare the variables */
   the_chart      OG_OBJECT;
   ch_pos         OG_POINT;
   ch_hy          NUMBER;
   ch_wi          NUMBER;
   the_query      OG_QUERY;
   the_template   OG_TEMPLATE;
   indep_field    OG_FIELD;
   dep_field      OG_FIELD;
BEGIN
/* Get the template and query that have already been
      defined in the Builder */                               the_template:=OG_GET_TEMPLATE('template0');
   the_query:=OG_GET_QUERY('query0');
/*Set the position of the chart in X/Y coordinates*/
  ch_pos.x:=0*OG_INCH;
  ch_pos.y:=0*OG_INCH;
/*Set the height and width of the chart */
  ch_ht:=3*OG_INCH;
  ch_wi:=3*OG_INCH;
/* Make the chart */
  the_chart:=OG_MAKE_CHART(chpos, ch_ht, ch_wi,
the_template, the_query);
/* Define a field for ENAME */
  indep_field.field_type:=OG_INDEPENDENT;
  indep_field.colname:='ENAME';
/* Insert it into the chart in the 0th position */
  OG_INSERT_FIELD(the_chart, indep_field, 0);
/* Define a field for SAL */
  dep_field.field_type:=OG_DEPENDENT;
  dep_field.colname:='SAL';
  dep_field.ftname:='column';
/* Insert it into the chart in the second position */
  OG_INSERT_FIELD(the_chart, dep_field, 1);
/* Define as field for COMM */
  dep_field.field_type:=OG_DEPENDENT;
  dep_field.colname:='COMM';
  dep_field.ftname:='column';
/* Insert it into the chart in the last position */
  OG_INSERT_FIELD(the_chart, dep_field, OG_LAST);
/* Execute the query for the first time*/
  OG_EXECUTE_QUERY(the_query);
/* Update the chart so the new field and query
      information takes effect */
  OG_UPDATE_CHART(the_chart, OG_ALL_CHUPDA);
END;


Abfragen beim Erzeugen von Diagrammen erstellen

  Verwandte Themen

So erstellen Sie eine Abfrage beim Erzeugen von Diagrammen:

1	Wählen Sie Diagramm [image] Diagramm erstellen.

Alternativ können Sie auch das Diagramm-Werkzeug in der Werkzeugpalette des Layouteditors auswählen und in den Bereich der grafischen Anwendung klicken oder einen Bereich für das Diagramm ziehen.

Wenn keine Abfragen vorhanden sind, wird das Dialogfeld Neue Abfrage angezeigt. Wenn Abfragen vorhanden sind, wird der Diagramm-Assistent angezeigt.

2	Wenn das Dialogfeld Diagramm-Assistent angezeigt wird, wählen Sie die Optionsschaltfläche Neue Abfrage aus, und klicken Sie auf OK, um das Dialogfeld Neue Abfrage anzuzeigen.

3	Geben Sie eine SQL SELECT-Anweisung in das Feld SQL-Befehl ein, oder wählen Sie einen alternativen Abfragetyp.

4	Klicken Sie auf Ausführen, um die Abfrage auszuführen.

Sie können die zurückgegebenen Daten im Register Daten anzeigen.

5	Klicken Sie auf OK, um das Dialogfeld Neue Abfrage zu schließen und das Dialogfeld Diagrammattribute anzuzeigen.

Wählen Sie die Diagrammoptionen, und klicken Sie dann auf OK, um das Diagramm zu erstellen.

Wenn Abfragen beim Erzeugen von Diagrammen erstellt werden, werden zwei Aktionen in einem Prozeß kombiniert, so daß Sie schnell ein Diagramm erstellen können, ohne die Abfrage separat definieren zu müssen. Nachdem Sie die neue Abfrage mit dem Diagramm erstellt haben, werden beide Objekte im Objektnavigator aufgeführt.


Über die Angabe von Diagrammdaten

Jede Spalte in der Abfrage enthält Kategorie- oder Wertdaten. Sie müssen diese Daten Elementen in Ihrem Diagramm zuordnen, um eine aussagefähige Darstellung der Daten zu erhalten. Hierzu berücksichtigen Sie folgendes:

•	Datenklassifizierung

•	Feldzuordnung

•	Datenfilterung


Über die Datenklassifizierung

Daten aus den Abfragespalten können auf zwei Arten klassifiziert werden:

•	Kategorie

•	Wert

Der Datentyp bestimmt, wie die Daten in einem Diagramm angezeigt werden können.


Über Kategorien

Eine Kategorie entspricht Daten, denen ein Wert zugewiesen ist. Wenn Sie z.B. die Gehälter verschiedener Mitarbeiter ermitteln möchten, wäre der Mitarbeitername die Kategorie. Danach könnten Sie das Gehalt für jeden Mitarbeiter (d.h. den Wert für jede Kategorie) in Form eines Diagramms darstellen.

Spalten in einer Abfrage, die Kategorien enthalten, werden häufig als unabhängig bezeichnet, weil die Kategorie nicht von anderen Daten abhängig ist. Bei dem obigen Beispiel hängt der Mitarbeitername nicht von anderen Daten ab.

Kategorien werden im allgemeinen auf einer Kategorien- oder Datumsachse dargestellt.


Über Werte

Ein Wert entspricht Daten, die mit einer Kategorie verknüpft sind. So muß z.B. eine Menge von 5000 mit einem bestimmten Produkt verknüpft sein (das Produkt ist die Kategorie).

Spalten in einer Abfrage, die Werte enthalten, werden häufig als abhängig bezeichnet, weil der Wert von anderen Daten abhängt. Bei dem obigen Beispiel ist die Kenntnis der Menge von 5000 bedeutungslos, wenn Sie nicht auch das Produkt kennen, auf das sich die Menge bezieht. Der Mengenwert hängt von einem bestimmten Produkt ab.

Werte werden im allgemeinen auf einer Werteachse dargestellt.


Über die Feldzuordnung

Mit Feldzuordnung wird der Prozeß bezeichnet, mit dem Sie angeben, welche Spalten in der Abfrage in dem Diagramm aufgenommen werden sollen, wie die Spalten in Form von Diagrammfeldern dargestellt werden sollen, sowie die Reihenfolge, in der die Felder dargestellt werden. Die Feldzuordnung umfaßt auch die Verknüpfung von Wert-Datenfeldern (abhängigen Feldern) mit Feldvorlagen, wie z.B. Säule oder Balken.

Wenn Sie das erste Mal ein Diagramm erstellen, nimmt Graphics Builder die Feldzuordnung automatisch vor, basierend auf der Art und Reihenfolge, in der Spalten in dem Register Daten der Abfrage angezeigt werden, und basierend auf der aktuellen Feldvorlage. Sie können die Standardwerte ändern, indem Sie das Diagramm auswählen, das Dialogfeld Diagrammattribute öffnen und die Einstellungen in den Registern Werte und Kategorien ändern.

Wenn Sie das erste Mal ein Diagramm erstellen, ordnet Graphics Builder die Abfragespalten den in dem Diagramm dargestellten Kategorien und Werten zu. Sie müssen jedoch die Kategorien- und Wertespalten ändern, wenn Sie die Informationen ändern, auf denen das Diagramm beruht - insbesondere, wenn Sie einen der folgenden Vorgänge ausführen:

•	Hinzufügen oder Entfernen eines Datenfeldes aus dem Diagramm

•	Ändern der Reihenfolge, in der Datenfelder dargestellt werden

•	Ändern der Spaltennamen durch Hinzufügen von Aliasen in der Abfrage

•	Löschen einer Spalte aus der Abfrage

•	Hinzufügen einer Unterkategorie zu dem Diagramm

•	Umbenennen oder Löschen einer Feldvorlage

•	Hinzufügen einer zu benutzenden Feldvorlage


Kategorien- und Wertespalten zuweisen

So weisen Sie Kategorien- und Wertespalten zu:

1	Doppelklicken Sie auf das Diagramm, um das Dialogfeld Diagrammattribute anzuzeigen.

2	Klicken Sie auf das Registertab Kategorien, um das Register Kategorien anzuzeigen, oder wählen Sie das Registertab Werte, um das Register Werte anzuzeigen.

3	Ändern Sie die Optionen wie folgt:

•	Um etwas zu der Liste mit Diagrammkategorien oder Werten hinzuzufügen, wählen Sie eine Spalte aus der Liste Spalten der Abfrage, und klicken Sie dann auf Einfügen.

•	Um die Reihenfolge zu ändern, in der Diagrammkategorien und -werte dargestellt werden, wählen Sie die Kategorien- oder Wertespalte, und klicken Sie auf Oben (an den Anfang der Liste), Unten (an das Ende der Liste), Nach oben (ein Element nach oben) oder Nach unten (ein Element nach unten).

•	Um eine Kategorien- oder Wertespalte aus der entsprechenden Liste zu löschen, wählen Sie die Spalte, und klicken Sie auf Löschen. Wenn Sie eine Kategorien- oder Wertespalte aus der Liste löschen, wird die Spalte nicht aus der Abfrage gelöscht.

•	Um eine Wertespalte mit einer Feldvorlage zu verknüpfen, wählen Sie die Wertespalte aus der Liste aus, und wählen Sie dann eine Feldvorlage aus der Dropdown-Liste Feldvorlage.

4	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Register zu schließen.


Gruppenwechseldiagramme erstellen

So erstellen Sie ein Gruppenwechseldiagramm:

1	Erstellen Sie ein Säulen- oder Balkendiagramm, oder öffnen Sie das Dialogfeld Diagrammattribute für ein bestehendes Säulen- oder Balkendiagramm.

2	Wählen Sie das Registertab Kategorien, um das Register Kategorien anzuzeigen.

3	Stellen Sie sicher, daß nur eine Kategorie in der Liste Diagrammkategorie aufgeführt wird.

4	Wählen Sie eine Unterkategorie aus der Dropdown-Liste Unterkategorie.

5	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Diagrammattribute zu schließen, oder klicken Sie auf Anwenden, um die Änderungen anzuwenden, ohne das Dialogfeld Diagrammattribute zu schließen.


Über Aufgliederungsbeziehungen

Mit Graphics Builder können Sie Aufgliederungsbeziehungen zwischen "Master"- und "Detail"-Diagrammen in einer grafischen Anwendung erstellen. So erstellen Sie eine Aufgliederungsbeziehung zwischen Diagrammen:

Zur Laufzeit können Benutzer auf ein Element innerhalb des Master-Diagramms klicken, um detaillierte Informationen über dieses Element "aufzugliedern". In einem Kreisdiagramm, in dem die Kosten jeder Abteilung aufgeführt werden, könnten Sie z.B. ein Kreissegment wählen, um detaillierte Informationen über diese Abteilung anzuzeigen.

Aufgliederungsbeziehungen basieren auf Parametern. Das Master-Diagramm bestimmt den Parameterwert, während das Detail-Diagramm diesen Wert in der Abfrage benutzt. Wenn der Benutzer auf ein Diagrammelement in dem Master-Diagramm klickt, führt Graphics Builder die folgenden Schritte aus:

•	Bestimmt den Datenwert, der von dem Diagrammelement dargestellt wird

•	Weist den Wert einem Parameter zu

•	Führt die Detail-Abfrage aus, die den Parameter referenziert

•	Aktualisiert das Detail-Diagramm

Sie können Aufgliederungsbeziehungen ändern. So möchten Sie möglicherweise angeben, daß eine andere Abfrage ausgeführt wird, oder den Parameterwert auf eine andere Spalte einstellen. Genau wie es beim Erstellen einer Aufgliederungsbeziehung zwischen zwei Diagrammen keine direkte Programmierung gibt, gibt es auch bei der Änderung einer Aufgliederungsbeziehung keine Programmierung.


Aufgliederungsbeziehungen zwischen zwei Diagrammen erstellen

So erstellen Sie eine Aufgliederungsbeziehung zwischen zwei Diagrammen:

1	Wählen Sie das Master-Diagramm aus. Dies ist das Diagramm, das die Aufgliederung "steuert".

2	Wählen Sie das Diagrammelement, mit dem der Wert des Parameters bestimmt werden soll. Hier kann es sich um eine Teilungsbeschriftung, ein Kreissegment usw. handeln.

Bedenken Sie, daß der von dem Diagrammelement dargestellte Parameter in der Abfrage für das Detail-Diagramm benutzt wird. Der Parameter stellt die Master-Detail-Beziehung her.

3	Öffnen Sie das Attributblatt des ausgewählten Diagrammelements. (Doppelklicken Sie auf ein ausgewähltes Diagrammelement, wählen Sie Attribute aus dem Popup-Menü, oder wählen Sie Werkzeuge [image] Attribute).

4	Wählen Sie das Registertab Aufgliedern, um das Register Aufgliedern anzuzeigen.

5	Klicken Sie auf Neu, um einen neuen Parameter zu erstellen.

Daraufhin wird das Dialogfeld Parameter angezeigt.

6	Akzeptieren Sie den standardmäßigen Parameternamen, PARAMn, oder geben Sie einen neuen Namen in das Feld Name ein.

7	Wählen Sie einen Datentyp (CHAR, NUMBER oder DATE) aus der Dropdown-Liste Typ.

Der Datentyp, den Sie für den Parameter auswählen, sollte mit dem Datentyp der Spalte übereinstimmen, die der Parameter darstellt.

8	(Optional)  Geben Sie einen Ausgangswert für den Parameter in das Feld Ausgangswert ein.

9	Klicken Sie auf OK, um den neuen Parameter zu akzeptieren.

Das Dialogfeld Parameter wird geschlossen, und Sie kehren in das Dialogfeld Objektattribute zurück.

10 Wählen Sie in der Dropdown-Liste Zu Wert von den Spaltennamen, der das Diagrammelement darstellt, das Sie als Wertquelle für den Parameter ausgewählt haben.

11 Wählen Sie die Abfrage, die das aufgegliederte Detail-Diagramm aktualisiert, aus der Dropdown-Liste Abfrage ausführen.

12 Klicken Sie auf Bearbeiten, damit Sie den Parameter zu der Abfrage hinzufügen können.

Daraufhin wird das Dialogfeld AttributeAbfrage angezeigt.

13 Bearbeiten Sie die Abfrage so, daß sie den erstellten Parameter enthält. Beispiel

14 Klicken Sie auf OK, um die Änderungen an der Abfrage zu akzeptieren und zu dem Dialogfeld Objektattribute zurückzukehren.

15 Klicken Sie auf OK, um die Aufgliederungsprozedur zu akzeptieren.

16 Speichern und führen Sie die grafische Anwendung aus, um die Prozedur zu testen. Versuchen Sie, auf das Diagrammelement in dem Master-Diagramm zu klicken, und beobachten Sie das Ergebnis, während das Detail-Diagramm mit den Ergebnis-Abfragedaten aktualisiert wird.

Beachten Sie, daß bei der obigen Prozedur kein PL/SQL-Code benutzt wurde. Sie können das Dialogfeld Objektattribute benutzen, um ein Aufgliederungsereignis für jedes Objekt in der grafischen Anwendung zu erstellen.


Beispiel:  Parameter zu einer Abfrage hinzufügen

/*To edit a query to include a parameter you have created, you might add a
**WHERE clause to the existing query as follows:
*/

WHERE column1 := :PARAM0


Aufgliederungsbeziehungen ändern

So ändern Sie eine Aufgliederungsbeziehung:

1	Öffnen Sie das Dialogfeld Objektattribute für das Diagrammelement, das die Aufgliederungsprozedur steuert.

2	Wählen Sie das Registertab Aufgliedern, um das Register Aufgliedern anzuzeigen.

3	Wählen Sie die neuen Optionen aus.

4	Klicken Sie auf OK, um die neue Aufgliederungsbeziehung zu akzeptieren, und schließen Sie das Dialogfeld Objektattribute.

Wenn Sie den Parameter selbst ändern möchten, können Sie diesen über das Register Objekt aufrufen, indem Sie auf Bearbeiten klicken, um das Dialogfeld Parameter anzuzeigen. Sie können auch über den Objektnavigator auf den Parameter zugreifen.


Über den Interpreter

  Verwandte Themen

Graphics Builder benutzt Funktionen und Funktionalität von Procedure Builder - insbesondere den Interpreter -, damit Sie die in den grafischen Anwendungen benutzten PL/SQL-Programmblöcke debuggen können.

Sie können Procedure Builder-Vorgänge mit Menüs, Editoren und Befehls-Dialogfeldern oder durch Eingabe von Befehlen über die Interpreter-Befehlszeile ausführen.

Der Interpreter ist der zentrale Debugging-Arbeitsbereich von Procedure Builder. Hier handelt es sich um ein in Bereiche unterteiltes Fenster, mit dem Sie die PL/SQL-Programmblöcke mit einer Befehlszeile definieren, anzeigen und debuggen können.

Je nach Kontext, in dem Procedure Builder aufgerufen wird, kann der Interpreter auf zwei verschiedene Arten angezeigt werden:

•	Modal

•	Nicht modal

Während Sie Befehle über die Befehlszeile eingeben, können Sie den Befehl Neuer Prompt aus dem Popup-Menü benutzen, um den Befehl abzubrechen und einen neuen PL/SQL-Prompt im Interpreter-Fensterbereich anzuzeigen.

Sie können die gesamte Ein- und Ausgabe von Interpreter in einer Protokolldatei aufzeichnen, wenn Sie eine Aufzeichnung der Debugging-Sitzung benötigen.


Über die Interpreter-Komponenten

Der Interpreter verfügt über fünf Hauptkomponenten:

Menüleiste (nur nicht-modaler Interpreter )

Steuerleiste

Quellausschnitt

Navigator-Ausschnitt

Interpreter-Ausschnitt

Beide Typen von Interpretern haben identische Funktionen. Da jedoch in modalen Fenstern nicht auf Menüs zugegriffen werden kann, enthält der modale Interpreter zusätzliche Schaltflächen für den Aufruf von Funktionen, die über Menüs im nicht-modalen Interpreter verfügbar sind.

Popup-Menüs mit vielen allgemeinen Befehlen sind in den verschiedenen Ausschnitten verfügbar.

Eine genaue Beschreibung des Interpreters finden Sie im Procedure Builder Developer's Guide.


Menüleiste (nur nicht-modaler Interpreter)

Zeigt die Menübefehle zur Ausführung der meisten Funktionen an.


Steuerleiste

Enthält Schaltflächen, die Sie als Schnelltasten für die gebräuchlichsten Aufgaben benutzen können.


Quellausschnitt

Mit dem Quellausschnitt können Sie die Quelle eines Programmblocks anzeigen und Debug-Aktionen definieren.


Navigator-Ausschnitt

Zeigt die Objekthierarchie für die aktuelle Sitzung an (nur Debugging-Knoten im modalen Interpreter).

Im nicht-modalen Interpreter kann der Navigator verborgen werden.


Interpreter-Ausschnitt

Der Interpreter-Ausschnitt enthält eine Befehlszeile, in die Sie PL/SQL-Konstrukte und Procedure Builder-Befehle eingeben können.


Modalen Interpreter anzeigen

So zeigen Sie den modalen Interpreter an:

  Der modale Interpreter wird automatisch von Graphics Builder angezeigt, während eine Anwendung ausgeführt wird (z.B. während der Laufzeitsimulation einer grafischen Anwendung stößt Graphics Builder auf einen Programmstop, den Sie in einem Programmblock eingerichtet haben. Wenn der modale Interpreter geöffnet wird, wird die Ausführung der Anwendung und des zugehörigen PL/SQL-Codes unterbrochen, bis Sie das modale Interpreter-Fenster schließen.


Nicht-modalen Interpreter anzeigen

So zeigen Sie den nicht-modalen Interpreter an:

  Wählen Sie Werkzeuge [image] PL/SQL-Interpreter.

Daraufhin wird der nicht-modale Interpreter angezeigt. Standardmäßig enthält der nicht-modale Interpreter keinen Navigator-Ausschnitt. Debugging-Aktionen, die Sie im nicht-modalen Interpreter ausführen, können über Objekte im Objektnavigator von Graphics Builder aufgerufen werden.

Alternativ können Sie den Navigator-Ausschnitt jederzeit einfügen, indem Sie Ansicht [image] Navigator-Ausschnitt aus dem Menü auswählen.

Sie können den nicht-modalen Interpreter jederzeit entweder im Graphics Builder oder während der Laufzeitsimulation aufrufen.


Über das Debuggen von grafischen Anwendungen

  Verwandte Themen

Je nach Fehler und Bedingungen, unter denen der Fehler aufgetreten ist, können Sie die Fehlerquelle im allgemeinen eingrenzen. Wenn verschachtelte Programmblöcke vorhanden sind, benutzen Sie den ersten Programmblock in der Folge, um den Fehler bis zur Fehlerquelle zu verfolgen.

So ist z.B. eine Schaltflächenprozedur A vorhanden, die Programmblock B aufruft, der wiederum Programmblock C aufruft. Während der Ausführung eines dieser Programmblöcke ist ein Fehler aufgetreten, und eine PL/SQL-Exception wurde ausgelöst. In diesem Fall würden Sie Programmblock A auswählen, um die Fehlerquelle einzugrenzen.

Wenn nicht sofort deutlich wird, wie ein Fehler behoben werden kann, können Sie eine Debug-Aktion einrichten, mit der Sie die Fehlerquelle suchen können. Möglicherweise enthält der das Problem verursachende Programmblock Aufrufe von Unterprogrammen, Schleifen oder andere Steuerausdrücke, aufgrund derer die genaue Fehlerquelle nur schwierig eingegrenzt werden kann.

Mit Debug-Aktionen können Sie die Ausführung der PL/SQL-Programmblöcke überwachen und/oder unterbrechen. Es gibt zwei Arten von Debug-Aktionen:

•	Programmstops

•	Debug-Trigger

Außerdem können Sie die vordefinierte Prozedur DEBUG verwenden, um Debugging-Aufgaben anzugeben, wie z.B. das Festlegen von Programmstops, die Unterbrechung der Ausführung des Programmblocks und die Rückgabe der Kontrolle an den Interpreter, das Abrufen und Einstellen von Variablen- und Parameterwerten oder die Interpretation von PL/SQL-Befehlen.

Sie können Debug-Aktionen im Graphics Builder oder im Debugger festlegen. Wo Sie die Debug-Aktion festlegen, hängt von der Komplexität Ihrer Programmblöcke und der grafischen Anwendung selbst ab.


Über das Testen der grafischen Anwendung in der Laufzeitsimulation

  Verwandte Themen

Am einfachsten können Sie Ihre grafische Anwendung mit dem Laufzeitsimulationsmodus von Graphics Builder (wird auch als Debugger bezeichnet) testen. Sie können die grafische Anwendung aus dem Graphics Builder ausführen und sie in einem separaten Debugging-Fenster testen. Auf diese Weise können Sie die grafische Anwendung schnell testen und debuggen und zum Builder zurückkehren, um die erforderlichen fehlerbehebenden Maßnahmen durchzuführen.

Wenn Sie eine grafische Anwendung in der Laufzeitsimulation testen, minimiert Graphics Builder alle gerade geöffneten Fenster, mit Ausnahme des Objektnavigators.


Über das Festlegen von Debug-Aktionen in Graphics Builder

Wenn Sie Debug-Aktionen im Graphics Builder festlegen und die grafische Anwendung dann ausführen, wird automatisch der modale Interpreter angezeigt, wenn eine Debug-Aktion, wie z.B. ein Debug-Trigger, angetroffen wird. Wenn der modale Interpreter angezeigt wird, wird die Ausführung der grafischen Anwendung und des zugehörigen PL/SQL-Codes unterbrochen, bis Sie den Interpreter schließen.

Beim Festlegen von Debug-Aktionen im Graphics Builder sollte folgendes berücksichtigt werden:

•	Sie sollten eine Debug-Aktion für einen Open Display-Trigger festlegen, der ausgelöst wird, sobald die grafische Anwendung ausgeführt wird.

•	Sie sollten die Debug-Aktion für den späteren Gebrauch beibehalten.

Wenn Sie eine Debug-Aktion im Graphics Builder festlegen und dann Änderungen an dem Programmblock vornehmen und diesen neu kompilieren, müssen Sie die Debug-Aktion möglicherweise ändern, um den Quellort zu ändern. Debug-Aktionen sind mit Zeilen-Nummern in der Programmblockquelle verknüpft.


Über das Festlegen von Debug-Aktionen im Debugger

Durch das Festlegen von Debug-Aktionen im Debugger können Sie im nicht-modalen Interpreter unmittelbar debuggen.

Nachdem Sie die grafische Anwendung im Debugger schließen, sind alle Debug-Aktionen, die Sie in Programmblöcken festgelegt haben, verloren. Wenn die Debug-Aktionen nur aus Programmstops und einfachen Debug-Triggern bestehen, ist dies möglicherweise für Sie nicht von Bedeutung.

Wenn Sie Ihre Programmblöcke direkt im Debugger debuggen, werden die Änderungen im Graphics Builder nicht berücksichtigt.


Über die Benutzung von Programmstops

Der gebräuchlichste Typ von Debug-Aktionen ist der Programmstop. Programmstops eignen sich besonders für die inkrementelle Überwachung der Ausführung von Programmblöcken.

Graphics Builder unterbricht die Ausführung des Programmblocks direkt, bevor die Zeile erreicht wird, auf der der Programmstop steht. An dieser Stelle können Sie den Programmstatus (d.h. Variablenwerte) mit den Funktionen von Procedure Builder überprüfen und/oder ändern. Nachdem Sie die Änderungen erfolgreich ausgeführt haben, können Sie die Ausführung mit den Befehlen GO oder STEP wieder aufnehmen oder können die Ausführung mit dem Befehl RESET abbrechen.

Angenommen, Sie verfügen über eine Prozedur, die eine Zählerschleife enthält. Die Schleife ruft eine Funktion auf und inkrementiert den Wert einer lokalen Variablen. Um sicherzustellen, daß der Variablen der richtige Wert für jeden Zyklus der Schleife zugewiesen wird, könnten Sie in die Zeile direkt hinter der Variablenzuweisung einen Programmstop setzen. Wenn der Programmstop erreicht und die Prozedur unterbrochen wird, können Sie den Aufrufstapel im Navigator überprüfen, um den Variablenwert zu testen. Danach verwenden Sie den Befehl STEP, um zum nächsten Programmstop zu gehen.


Über die Benutzung von Debug-Triggern

  Verwandte Themen

Debug-Trigger sind eine allgemeinere Form von Debug-Aktion. Ein Debug-Trigger verknüpft einen Block mit PL/SQL-Code mit einer bestimmten Quellzeile innerhalb eines Programmblocks.

Graphics Builder führt einen Debug-Trigger aus, direkt bevor die Zeile erreicht wird, auf der der Debug-Trigger angegeben ist. Sie können einen Debug-Trigger zuweisen, der an einer der folgenden Positionen ausgelöst wird:

•	Bei Erreichen einer einzelnen Zeile in einem Programmblock (z.B. der aktuellen Quellposition, Zeile 5, Zeile 23 usw.)

•	Bei jeder Übernahme der Kontrolle durch den Interpreter (d.h. jedesmal, wenn die Programmausführung wegen eines Programmstops, eines Programmschritts usw. unterbrochen wird)

•	In jeder PL/SQL-Quellzeile, die ausgeführt wird

Debug-Trigger eignen sich besonders für das Setzen bedingter Programmstops. Sie können die Exception DEBUG.BREAK aus dem Trigger-Rumpf auslösen. Der unten dargestellte Debug-Trigger setzt z.B. einen bedingten Programmstop in Zeile 10 von my_proc, der nur erreicht wird, wenn die lokale NUMBER-Variable my_sal den Wert 5000 überschreitet:

PL/SQL> .trigger proc my_proc line 10 is
     +> IF DEBUG.GETN('my_sal') > 5000 THEN
     +>   RAISE DEBUG.BREAK;
     +> END IF;


Über die Benutzung von Debug-Ebenen

  Verwandte Themen

Wenn eine Debug-Aktion die Programmausführung unterbricht, übernimmt der Interpreter die Kontrolle und legt eine sogenannte Debug-Ebene fest. Auf einer Debug-Ebene können Sie Befehle und PL/SQL-Anweisungen eingeben, um den Status des unterbrochenen Programmblocks zu überprüfen und zu ändern und die Ausführung wiederaufzunehmen.

Da jeder PL/SQL-Code, der interaktiv auf einer Debug-Ebene eingegeben wird, selbst unterbrochen werden kann (z.B. durch Antreffen eines anderen Programmstops), können Debug-Ebenen verschachtelt werden. Damit Debug-Ebenen einfacher voneinander unterschieden werden können, sind die Ebenen numeriert. Der am tiefsten verschachtelten Ebene wird die höchste Nummer zugewiesen. Die Numerierung beginnt bei null mit der äußersten Ebene.

Die Ebene Null bzw. die äußerste Ebene wird im allgemeinen als oberste Ebene bezeichnet. Mit der obersten Ebene ist kein Programmstatus verknüpft, da es sich um die äußerste Ebene handelt, auf der Programmblöcke anfänglich aufgerufen werden. Wenn ein Code, der von der obersten Ebene aufgerufen wird, unterbrochen wird, wird Debug-Ebene 1 erzeugt. Wenn ein Code, der von Debug-Ebene 2 aufgerufen wird, unterbrochen wird, wird Debug-Ebene 2 erstellt usw.

Der Interpreter-Befehlsprompt gibt die aktuelle Debug-Ebene an. Wenn der Interpreter Ebenen unter der obersten Ebene eingibt, umfaßt der Prompt ein Präfix mit der Nummer der aktuellen Debug-Ebene. So wird z.B. der Interpreter-Befehlsprompt auf Debug-Ebene 1 wie folgt angezeigt:

(debug 1)PL/SQL>

Mit dem RESET-Befehl können Sie die Kontrolle wieder an eine äußere Debug-Ebene zurückgeben, ohne die Ausführung in der aktuellen Debug-Ebene fortzusetzen.


Über die Kontrolle der Ausführung der Programmblöcke

Nachdem Sie den Programmstatus im Anschluß an eine Debug-Aktion überprüft und/oder geändert haben, können Sie die Ausführung des Programmblocks wie folgt steuern:

Schritt für Schritt durch den Programmblock gehen

Ausführung wiederaufnehmen

Ausführung des Programmblocks abbrechen


Über das Protokollieren der Interpreter-Eingabe und -Ausgabe

Mit Procedure Builder können Sie die Interpreter-Eingabe und -Ausgabe aufzeichnen, wenn Sie Programmblöcke debuggen. Nachdem Sie die Protokollierung aktiviert haben, werden in den Interpreter eingegebene Befehle - und eventuelle Interpreter-Ausgabemeldungen - an eine Protokolldatei angehängt bzw. in eine Protokolldatei geschrieben, bis Sie die Protokollierung deaktivieren oder beenden.


Über Befehlszeilenoptionen für das Protokollieren

Sie können das Protokollieren steuern, indem Sie einen der folgenden Befehle in den Interpreter eingeben:

•	LOG

•	DISABLE (Logging)

•	ENABLE (Logging)

Weitere Informationen über diese und andere Procedure Builder-Befehle erhalten Sie, indem Sie Interpreter-Befehlsreferenz aus den Hilfethemen auswählen.


Über die Fehlerbehebung

  Verwandte Themen

Sie können Fehler im Debugger oder im Procedure Builder beheben. Wenn Sie Programmblöcke im Debugger korrigieren und neu kompilieren, werden die Änderungen nicht automatisch im Graphics Builder berücksichtigt. Wenn Sie mehrere Änderungen an Programmblöcken im Debugger vornehmen, sollten Sie die Programmblöcke im Debugger mit den Programmblöcken im Graphics Builder synchronisieren. Wenn Sie die Änderungen im Graphics Builder vornehmen, denken Sie daran, daß Sie die grafische Anwendung speichern und erneut ausführen müssen, um sicherzustellen, daß der Fehler durch die Änderungen behoben wurde.


Über das Synchronisieren von Programmblöcken

Wenn Sie die PL/SQL-Fehler im Debugger behoben haben, sollten Sie den Inhalt der korrigierten Programmblöcke im Debugger mit dem Inhalt der Programmblöcke im Graphics Builder synchronisieren. Durch den Synchronisationsvorgang werden die Programmblöcke im Graphics Builder durch die Programmblöcke aus dem Debugger ersetzt.


Über den Umgang mit unbehandelten Exceptions

Wenn Graphics Builder während der Laufzeitsimulation auf Fehler trifft, wird ein Warnfenster mit einer Fehlermeldungsnummer angezeigt. Sie müssen unbedingt die Fehlermeldungsnummer und die Bedingungen aufschreiben, unter denen der Fehler aufgetreten ist. War dies beim Öffnen der grafischen Anwendung? Nachdem Sie versucht haben, ein Diagramm aufzugliedern, oder nachdem Sie auf eine Schaltfläche geklickt haben?

In dem Abschnitt Fehlerbehebung finden Sie weitere Informationen über die Fehlermeldungen von Graphics Builder.

Eine Fehlermeldung OG-00637 gibt an, daß eine nicht behandelte PL/SQL-Exception angetroffen wurde. Schreiben Sie die in der Fehlermeldung aufgeführte Exception-Nummer auf, da aus ihr hervorgeht, wie Sie den Fehlermeldungstext finden können, mit dem die mögliche Fehlerursache beschrieben wird.

Graphics Builder verfügt über eine Reihe von vordefinierten PL/SQL-Exceptions für Fehler, die in vordefinierten Graphics Builder-Prozeduren, Funktionen oder Datentypen angetroffen werden. Vordefinierte Graphics Builder-Exceptions werden im Graphics Builder Reference Manual sowohl mit Nummer als auch mit Name dokumentiert.


Grafische Anwendung in der Laufzeitsimulation testen

  Verwandte Themen

So testen Sie Ihre grafische Anwendung in der Laufzeitsimulation:

1	Wählen Sie das Werkzeug Ausführen im Objektnavigator oder dem Layouteditor, oder wählen Sie Datei [image] Ausführen, um die aktive grafische Anwendung auszuführen.

Wenn mehrere grafische Anwendungen geöffnet sind, wählen Sie das Objekt für die auszuführende grafische Anwendung im Objektnavigator, und wählen Sie dann das Werkzeug Ausführen.

Wenn die grafische Anwendung vorher nicht gespeichert wurde, erstellt Graphics Builder eine temporäre Datei des aktuellen Status der grafischen Anwendung und führt diese Datei aus. Wenn die grafische Anwendung überhaupt noch nicht gespeichert wurde, werden Sie zur Speicherung aufgefordert, bevor Graphics Builder die Anwendung ausführt.

Wenn im Graphics Builder momentan keine grafischen Anwendungen geöffnet sind, werden Sie aufgefordert, eine grafische Anwendung auszuwählen.

Die Laufzeitversion der ausgewählten grafischen Anwendung wird in einem separaten Debugger-Fenster von Graphics Builder geöffnet.

2	Testen Sie eventuelle Aufgliederungsbeziehungen und Schaltflächenprozeduren, um sicherzustellen, daß diese korrekt ausgeführt werden. Wenn aktive Timer vorhanden sind, prüfen Sie, ob diese funktionsfähig sind und die richtigen Ergebnisse erbringen.

Wenn die grafische Anwendung in der Laufzeitsimulation einwandfrei ausgeführt wird, können Sie die grafische Anwendung sicher generieren. Wenn Sie jedoch Änderungen an der grafischen Anwendung vornehmen, bevor Sie diese generieren, wird empfohlen, die grafische Anwendung erneut auszuführen, um die Änderungen zu testen.


Fehler verfolgen

  Verwandte Themen

So verfolgen Sie Fehler:

1	Blenden Sie den Knoten mit dem Namen der grafischen Anwendung<debug> im Objektnavigator ein.

2	Doppelklicken Sie auf den Programmblock, um diesen im Programmblockeditor anzuzeigen.

Wenn Sie in einer Folge von verschachtelten Programmblöcken nach einem Fehler suchen, öffnen Sie den ersten Programmblock in der Folge. Wenn der Fehler z.B. nach dem Klicken auf eine Schaltfläche aufgetreten ist, öffnen Sie die entsprechende Schaltflächenprozedur.

Die mit diesem Programmblock verknüpften Kompilierungsfehler werden in dem Ausschnitt unter der Programmblockquelle angezeigt. Wenn verschachtelte Programmblöcke vorhanden sind, wird der letzte Programmblock, der vor Auftreten des Fehlers aufgerufen werden muß, am Anfang des Fehlerstapels angezeigt.


Programmstops setzen

So setzen Sie einen Programmstop:

1	Wählen Sie Werkzeuge [image] PL/SQL-Interpreter, um den PL/SQL-Interpreter anzuzeigen.

2	Wählen Sie den zu debuggenden Programmblock im Navigator.

Der Programmblock wird im Quellausschnitt des Interpreters angezeigt. Jede Zeile ist numeriert.

3	Doppelklicken Sie auf die Zeile, auf der Sie den Programmstop setzen möchten. Der Programmstop wird eingefügt.

Sie können auch einen "Break-Trigger" für einen Programmstop definieren. Ein Break-Trigger ist ein PL/SQL-Block, der bei jedem Erreichen des Programmstops ausgeführt wird. Dieser Block könnte einen Procedure Builder-Befehl enthalten, der jedesmal ausgeführt wird, wenn der Programmstop erreicht wird.

Sie können den BREAK-Befehl im Interpreter-Ausschnitt benutzen, um einen Programmstop bei einer bestimmten Quellzeile einzufügen.


Debug-Trigger festlegen

So legen Sie einen Debug-Trigger fest:

1	Wählen Sie Werkzeuge [image] PL/SQL-Interpreter, um den PL/SQL-Interpreter anzuzeigen.

2	Wählen Sie den zu debuggenden Programmblock im Navigator.

Der Programmblock wird im Quellausschnitt des Interpreters angezeigt. Jede Zeile ist numeriert.

3	Wählen Sie die Zeile, in die Sie den Debug-Trigger setzen möchten.

4	Wählen Sie Trigger aus dem Popup-Menü, oder wählen Sie Debuggen [image] Trigger, um das Dialogfeld PL/SQL-Trigger anzuzeigen.

5	Geben Sie den Rumpf des Triggers in das Feld Triggerrumpf ein.

6	Klicken Sie auf OK, um den Trigger zu akzeptieren und das Dialogfeld zu schließen.

Weitere Informationen über das Erstellen von Debug-Triggern finden Sie in der Online-Hilfe zu Procedure Builder.


Schritt für Schritt durch den Programmblock gehen

So gehen Sie Schritt für Schritt durch den Programmblock:

  Benutzen Sie den STEP-Befehl, um Schritt für Schritt durch den unterbrochenen Programmblock zu gehen. Die Kontrolle wird an den Interpreter zurückgegeben, nachdem die angegebene Gruppe von Anweisungen ausgeführt wurde. Es gibt vier Varianten des STEP-Befehls, mit denen die Ausführung eines unterbrochenen Programmblocks temporär wieder aufgenommen werden kann.

Sie können den STEP-Befehl durch Auswahl einer der Schaltflächen aus der Steuerleiste oder durch Eingabe des Befehls über die Interpreter-Befehlszeile aufrufen.


Ausführung des Programmblocks wiederaufnehmen

So nehmen Sie die Ausführung eines Programmblocks wieder auf:

  Benutzen Sie den Befehl GO, um die Ausführung eines Programms unbestimmt wiederaufzunehmen - d.h. entweder, bis die gerade ausgeführte Ausführungsfolge abgeschlossen ist oder erneut aufgrund einer Debug-Aktion unterbrochen wird. Sie können den Befehl GO aufrufen, indem Sie die Schaltfläche Go in der Steuerleiste auswählen oder indem Sie den Befehl über die Interpreter-Befehlszeile eingeben.


Ausführung des Programmblocks abbrechen

So brechen Sie die Ausführung des Programmblocks ab:

  Benutzen Sie den Befehl RESET, um die Kontrolle an eine äußere Debug-Ebene zurückzugeben, ohne die Ausführung auf der aktuellen Debug-Ebene fortzusetzen. Somit bricht RESET die Ausführung auf der aktuellen (und möglicherweise höheren) Debug-Ebene effektiv ab.

Sie können den Befehl RESET durch Auswahl der Schaltfläche Zurücksetzen in der Steuerleiste oder durch Eingabe des Befehls über die Befehlszeile im Interpreter aufrufen.


Protokolldateien aktivieren

So aktivieren Sie eine Protokolldatei:

1	Wählen Sie Debuggen [image] Protokoll, um das Dialogfeld Interpreter-Protokoll aufzurufen.

2	Geben Sie einen Pfad und den Namen der Protokolldatei in das Feld Datei ein, oder klicken Sie auf Durchsuchen, um das Datei-Dialogfeld Ihres Betriebssystems zu öffnen, in dem Sie eine bestehende Protokolldatei auswählen können.

3	Wenn das aktuelle Protokoll an einer bestehenden Protokolldatei angehängt werden soll, wählen Sie das Kontrollkästchen Anhängen aus.

4	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld zu schließen.


Protokolldateien deaktivieren

So deaktivieren Sie eine Protokolldatei:

1	Wählen Sie Debuggen [image] Protokoll, um das Dialogfeld Interpreter-Protokoll aufzurufen.

2	Wählen Sie das Kontrollkästchen Deaktiviert aus.

3	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld zu schließen.


Protokolldateien anzeigen

So zeigen Sie den Inhalt einer bestehenden Protokolldatei an:

  Wählen Sie Debuggen [image] Interpreter-Protokoll, um den Browser Interpreter-Protokoll anzuzeigen.

Oder

1	Wählen Sie Debuggen [image] Protokoll, um das Dialogfeld Interpreter-Protokoll anzuzeigen.

2	Wählen Sie das Kontrollkästchen Protokoll anzeigen aus.

3	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld zu schließen.

Daraufhin wird der Browser Interpreter-Protokoll angezeigt.


Programmblöcke synchronisieren

So synchronisieren Sie Programmblöcke:

  Wählen Sie Bearbeiten [image] Programmblöcke synchronisieren aus dem Menü.


Vordefinierte Procedure Builder-Prozeduren

  Verwandte Themen

Neben den vordefinierten PL/SQL-Datentypen, Funktionen und Prozeduren von Graphics Builder stellt Procedure Builder die folgenden vordefinierten PL/SQL-Prozeduren bereit, die viele PL/SQL-Konstrukte enthalten, die Sie beim Debuggen Ihrer Programmblöcke referenzieren können:

DDE	ORA_PROF
DEBUG	TEXT_IO
LIST	TOOL_ENV
OLE2	TOOL_ERR
ORA_FFI	TOOL_RES
ORA_NLS


DDE

Stellt die Unterstützung des dynamischen Datenaustauschs (Dynamic Data Exchange) bereit.


DEBUG

Stellt Prozeduren, Funktionen und Exceptions für das Debuggen von PL/SQL-Programmblöcken bereit.


LIST

Stellt Prozeduren, Funktionen und Exceptions bereit, mit denen Sie Listen mit Zeichenfolgen (VARCHAR2) erstellen und verwalten können. Diese Prozedur bietet Ihnen die Möglichkeit, Arrays in PL/SQL Version 1 zu erstellen.


OLE2

Stellt eine PL/SQL API bereit, mit der Attribute von OLE2-Automationsobjekten erstellt, bearbeitet und aufgerufen werden können.


ORA-FFI

Stellt eine öffentliche Schnittstelle für den Aufruf fremder (C)-Funktionen aus PL/SQL bereit.


ORA-NLS

Mit dieser Prozedur können Sie Informationen auf hoher Ebene über die aktuelle Sprachumgebung extrahieren.


ORA-PROF

Stellt Prozeduren, Funktionen und Exceptions bereit, mit denen Sie Ihre PL/SQL-Programmblöcke optimieren können (d.h. prüfen, wieviel Zeit ein bestimmtes Codesegment zur Ausführung benötigt).


TEXT-IO

Stellt Konstrukte bereit, mit denen Sie Informationen aus Dateien lesen bzw. in Dateien schreiben können.


TOOL-ENV

Mit dieser Prozedur können Sie mit Umgebungsvariablen kommunizieren.


TOOL-ERR

Mit dieser Prozedur können Sie den Fehlerstapel aufrufen und bearbeiten, der von anderen vordefinierten Prozeduren erstellt wird, wie z.B. DEBUG.


TOOL-RES

Ermöglicht das Extrahieren von Zeichenfolgenressourcen aus einer Resource-Datei mit dem Ziel, den PL/SQL-Code portierbarer zu gestalten, indem alle Textdaten in der Resource-Datei isoliert werden.


Über die Komponenten des Layouteditors

Der Layouteditor ist der Hauptarbeitsbereich in Graphics Builder. In ihm wird das Layout der grafischen Anwendung definiert, indem grafische Objekte (Linien, Polygone, Rechtecke, Text usw.) erstellt und geändert werden.

Jede grafische Anwendung enthält genau ein Layout, und jedes Layout gehört zu genau einer grafischen Anwendung.

Der Layouteditor verfügt über die folgenden Komponenten:

Layout

Symbolleiste

Objekte

Formatzeilen

Raster

Ansichten

Werkzeugpalette

Statuszeile


Über das Layout

Im Layout erstellen, ändern oder löschen Sie Objekte. Das Erscheinungsbild von Objekten im Layout stellt die Objekte genau so dar, wie sie bei der Ausführung der grafischen Anwendung angezeigt werden. Im Layouteditor können Sie Größe, Form, Farbe und andere grafische Attribute von Objekten ändern und die Ergebnisse sofort sehen.


Über die Symbolleiste

Die Symbolleiste verläuft horizontal am oberen Rand des Layouteditors und enthält Schaltflächen, die allgemeine Menübefehle ausführen, wie Speichern, Ausführen, Ausschneiden, Kopieren und Einfügen.

Um den Namen eines Werkzeugs in der Symbolleiste anzuzeigen, setzen Sie den Mauszeiger über eine Schaltfläche. Der Name des Werkzeugs wird in Form einer Popup-Meldung angezeigt. Eine kurze Beschreibung des Werkzeugs wird in der Statuszeile ausgegeben.


Über Grafikobjekte

Die Grafikobjekte, die Sie im Layout erstellen und ändern können, umfassen Bogen, Diagramme, Bilder, Linien, Polygone, Rechtecke, abgerundete Rechtecke, Symbole und Textobjekte.


Über Formatzeilen

Formatzeilen verlaufen am linken und oberen Rand des Layouts. Sie können als Referenz beim Skalieren oder Positionieren von Objekten benutzt werden. Um die Formatzeilen anzuzeigen oder zu verbergen, wählen Sie Ansicht [image] Formatzeilen. Formatzeilen werden standardmäßig angezeigt.

Formatzeilenmarkierungen sind Linien, die in beiden Formatzeilen angezeigt werden und die sich entsprechend der horizontalen und vertikalen Position des Cursors bewegen. Wenn Sie die Formatzeilenmarkierungen als Referenz benutzen, kann der Cursor präziser positioniert werden.

Eine Hilfslinie ist eine gestrichelte Linie im Layout, die parallel zu einer Formatzeile verläuft und beim Skalieren oder Positionieren von Objekten als Referenz benutzt werden kann. Hilfslinien werden nur im Layout im Graphics Builder angezeigt. Sie sind nicht sichtbar, wenn die grafische Anwendung ausgeführt oder ausgedruckt wird.

Um Hilfslinien anzuzeigen oder zu verbergen, wählen Sie Ansicht [image] Hilfslinien. Hilfslinien werden standardmäßig angezeigt.


Über das Layoutraster

Das Layoutraster besteht aus einer Reihe von horizontalen und vertikalen gestrichelten Linien in gleichem Abstand, die Sie beim Skalieren oder Positionieren von Objekten als Referenz benutzen können. Sie können das Intervall festlegen, in dem Rasterlinien angezeigt werden, basierend auf der Maßeinheit der Formatzeile. Rasterlinien werden nur im Layout im Graphics Builder angezeigt. Sie sind nicht sichtbar, wenn die grafische Anwendung ausgeführt oder ausgedruckt wird.

Um das Raster anzuzeigen oder zu verbergen, wählen Sie Ansicht [image] Raster. Das Raster wird standardmäßig angezeigt.

An Raster ausrichten ist eine Funktion, bei der sich der Cursor selbst an dem Raster ausrichtet, wenn Sie den Cursor in die Nähe einer Rasterlinie bewegen. Dies ermöglicht größere Genauigkeit und Kontrolle beim Skalieren oder Positionieren von Objekten. Sie können die Anzahl von Rasterpunkten zwischen jedem Rasterlinienpaar festlegen, zu dem der Cursor springt.

Um die Funktion An Raster ausrichten zu aktivieren oder zu deaktivieren, wählen Sie Ansicht [image] An Raster ausrichten. Diese Funktion ist standardmäßig deaktiviert.


Über Ansichten

Eine Ansicht ist ein Bestandteil des Layouts, der auf einen kleinen Abschnitt der grafischen Anwendung fokussiert ist. Jedes Layout wird anfänglich mit einer großen Ansicht dargestellt, Sie können jedoch bis zu vier Ansichten erstellen, von denen eine jede auf ein anderes Objekt, einen Teil eines Objekts oder eine Ebene fokussiert ist. Außerdem kann jede Ansicht ihre eigenen Ebenen-, Formatzeilen-, Raster- und Vergrößerungseinstellungen haben.

Jede Ansicht ist unabhängig und hat eigene Einstellungen, wie z.B. Formatzeileneinheiten, Rastersichtbarkeit, Vergrößerung usw. Außerdem kann in jeder Ansicht ein unabhängiger Bildlauf durch das Layout vorgenommen werden.

Die Ansicht, in der Sie gerade arbeiten, wird als die "aktive" Ansicht bezeichnet. Sie können die aktive Ansicht daran erkennen, daß die Bildlaufleisten aktiviert sind. Die Bildlaufleisten der inaktiven Ansicht(en) sind deaktiviert.

Änderungen, die Sie an Formatzeilen-, Raster- und anderen Einstellungen vornehmen, werden nur für die aktive Ansicht angewendet. Änderungen, die Sie an Objekten in dem Layout vornehmen, werden in allen Ansichten berücksichtigt, die auf diesen Teil des Layouts fokussiert sind.


Über die Werkzeugpalette

Die Werkzeuge, mit denen Sie Objekte im Layout zeichnen und ändern, werden als separate Symbole in der Werkzeugpalette angezeigt. Um ein Werkzeug zu benutzen, müssen Sie es mit einer der folgenden Methoden aktivieren:

•	Für einen einfachen Vorgang klicken Sie auf das entsprechende Symbol. Nachdem Sie den Vorgang ausgeführt haben, wird das Standardwerkzeug wieder aktiv.

•	Für mehrere Vorgänge doppelklicken Sie auf das entsprechende Symbol. Das ganze Symbol wird hervorgehoben, und das Werkzeug bleibt aktiv, bis Sie ein anderes Werkzeug aktivieren.

Es kann immer nur ein Werkzeug gleichzeitig aktiv sein. Das Werkzeug Auswählen ist das Standardwerkzeug.

Um den Namen eines Werkzeugs in der Werkzeugpalette anzuzeigen, setzen Sie den Mauszeiger über eine Schaltfläche. Der Name des Werkzeugs wird in Form einer Popup-Meldung angezeigt. In der Statuszeile wird eine kurze Beschreibung des Werkzeugs ausgegeben.


Über die Statuszeile

Die Statuszeile enthält folgende Informationen:

•	Absolute Mausposition (in der gerade ausgewählten Formatzeileneinheit)

•	Distanz für das Ziehen der Maus (in der gerade ausgewählten Formatzeileneinheit)

•	Drehwinkel

•	Vergrößerungsebene

Die Informationen in der Statuszeile variieren je nach benutztem Werkzeug und ausgeführter Aktion. In der folgenden Tabelle wird aufgeführt, welche Informationen unter verschiedenen Umständen in der Statuszeile angezeigt werden:

Werkzeug	Aktion	Statusinformationen

Jedes Werkzeug	Bewegen der Maus	x-, y-Koordinaten des Cursors; Vergrößerungsebene
Bogen, Ellipse, Rechteck, Abgerundetes Rechteck	Erstellen von Objekten	x-, y-Koordinaten der Cursor-Ausgangsposition; Objektbreite und -höhe; Vergrößerungsebene
Freihand	Erstellen von Objekten	x-, y-Koordinaten des Cursors; Vergrößerungsebene
Linie	Erstellen von Objekten	x-, y-Koordinaten des Cursors; Linienlänge; Drehwinkel (von horizontal); Vergrößerungsebene
Vergrößern	Klicken mit der Maus	Vergrößerungsebene
Polygon, Polygonzug	Erstellen von Objekten	x-, y-Koordinaten des Cursors; Drehwinkel (von horizontal); Vergrößerungsebene
Drehen	Verschieben von Objekten	Horizontale und vertikale Distanz von Originalposition; Vergrößerungsebene
Drehen	Drehen von Objekten	Drehwinkel von Originalposition; Vergrößerungsebene
Auswählen	Verschieben von Objekten	Horizontale und vertikale Distanz von Originalposition; Vergrößerungsebene


Voreinstellungen festlegen

So legen Sie Voreinstellungen fest:

1	Wählen Sie Werkzeuge [image] Werkzeugoptionen, um das Dialogfeld Werkzeugoptionen anzuzeigen.

2	Geben Sie die gewünschten Voreinstellungen an, wie z.B. Klangausgabegerät, Algorithmus zur Bildkomprimierung, Seitengröße usw.

3	Sie können die Optionen entweder für die aktuelle Sitzung oder für die aktuelle und alle nachfolgenden Sitzungen anwenden:

•	Wenn Sie die Voreinstellungen nur für die aktuelle Sitzung anwenden möchten, klicken Sie auf OK. Die Einstellungen bleiben wirksam, bis Sie die laufende Sitzung beenden. Einige Einstellungen werden sofort wirksam, während andere erst wirksam werden, wenn Sie das nächste Mal eine grafische Anwendung erstellen oder öffnen.

•	Wenn die Einstellungen für die aktuelle und alle nachfolgenden Sitzungen festgelegt werden sollen, klicken Sie auf Speichern. Die Einstellungen werden in der Voreinstellungsdatei von Graphics Builder gespeichert und bleiben für nachfolgende Sitzungen wirksam.

Sie können das Layout individuell ändern, damit Objekte einfacher erstellt und bearbeitet werden können. Die festgelegten Einstellungen werden in einer lokalen Voreinstellungsdatei im Dateisystem gespeichert.


Layoutgröße angeben

So geben Sie eine Layoutgröße an:

1	Wählen Sie Ansicht [image] Optionen [image] Layout, um das Dialogfeld Layouteinstellungen anzuzeigen.

2	Geben Sie die gewünschten Einstellungen für Layoutgröße und Seitenformat an.

3	Klicken Sie auf OK, um die Einstellungen zu bestätigen und das Dialogfeld Layouteinstellungen zu schließen.

Die Einstellungen bleiben nur während der laufenden Builder-Sitzung wirksam.


Ganzes Layout anzeigen

So zeigen Sie das ganze Layout an:

  Wählen Sie Ansicht [image] An Fenster anpassen.

Die Vergrößerung wird reduziert, so daß das ganze Layout sichtbar ist.


Vergrößern

So vergrößern Sie das Layout:

1	Wählen Sie das Werkzeug Vergrößern aus der Werkzeugpalette aus.

2	Klicken Sie an der Stelle in dem Layout, an der Sie das Layout vergrößern möchten.

Die Vergrößerung erfolgt mit einem Faktor von zwei (die Objekte werden doppelt so groß angezeigt). Um die Vergrößerung erneut zu verdoppeln, wiederholen Sie die obigen Schritte. Sie können maximal 16mal vergrößern.

Während die Objekte scheinbar größer werden, ändert sich die tatsächliche Größe nicht.


Verkleinern

So verkleinern Sie das Layout:

1	Wählen Sie das Werkzeug Vergrößern aus der Werkzeugpalette.

2	Halten Sie die Umschalttaste gedrückt, und klicken Sie in dem Layout an der Stelle, an der verkleinert werden soll.

Die Verkleinerung erfolgt mit einem Faktor von 0,5 (Objekte werden halb so groß angezeigt). Um die Vergrößerung erneut um die Hälfte zu verringern, wiederholen Sie die obigen Schritte. Wenn das ganze Layout sichtbar ist, haben Sie die maximal mögliche Reduzierung erreicht.

Während die Objekte scheinbar kleiner sind, ändert sich ihre tatsächliche Größe nicht.


Von der Mitte des Layouts vergrößern

So vergrößern Sie von der Mitte des Layouts:

  Wählen Sie Ansicht [image] Vergrößern.

Dadurch wird die Ansicht um einen Faktor von zwei vergrößert.


Von der Mitte des Layouts verkleinern

So verkleinern Sie von der Mitte des Layouts:

  Wählen Sie Ansicht [image] Verkleinern.

Dadurch wird die Ansicht um einen Faktor von zwei verkleinert.


Normale Größe wiederherstellen

So stellen Sie die normale Größe wieder her:

  Wählen Sie Ansicht [image] Normale Größe.

In diesem Fall wird die normale Größe wiederhergestellt, und die Objekte werden in ihrer tatsächlichen Größe angezeigt.


Formatzeilen- und Rastereinstellungen angeben

So geben Sie Formatzeilen- und Rastereinstellungen an:

1	Wählen Sie Ansicht [image] Optionen [image] Formatzeile, um das Dialogfeld Formatzeileneinstellungen anzuzeigen.

2	Geben Sie die gewünschten Formatzeilen- und Rastereinstellungen an, z.B. die gewünschte Maßeinheit, Rasterabstand usw.

3	Klicken Sie auf OK, um die Einstellungen zu bestätigen und das Dialogfeld Formatzeileneinstellungen zu schließen.

Die Einstellungen bleiben nur während der laufenden Builder-Sitzung wirksam. Zur Laufzeit sind Formatzeilen und Raster nicht sichtbar.

Wenn Sie die Maßeinheit der Formatzeilen ändern, werden diese entsprechend der Änderung aktualisiert. Wenn Sie einen neuen Bereich des Layouts vergrößern bzw. einen Bildlauf zu einem neuen Bereich des Layouts vornehmen, werden die Formatzeilen ebenfalls entsprechend aktualisiert.


Hilfslinien benutzen

So benutzen Sie Hilfslinien:

  Klicken Sie auf die horizontale oder vertikale Formatzeile, und ziehen Sie die Hilfslinie an die gewünschte Position. Lassen Sie die Maustaste los, wenn die Hilfslinie an der gewünschten Stelle steht.


Hilfslinien verschieben

So verschieben Sie die Hilfslinie:

  Klicken Sie, und ziehen Sie die Hilfslinie wieder in die Originalformatzeile zurück.

Nachdem die Hilfslinie positioniert wurde, können Sie sie verschieben, indem Sie sie an eine neue Stelle ziehen. Sie können beliebig viele Hilfslinien in das Layout setzen.


An Raster ausrichten

So verwenden Sie die Funktion An Raster ausrichten:

  Wählen Sie Ansicht [image] An Raster ausrichten.

Die Funktion An Raster ausrichten wird je nach der vorherigen Einstellung ein- oder ausgeschaltet. Die Einstellungen bleiben nur während der laufenden Graphics Builder-Sitzung wirksam. Wenn Sie die Funktion An Raster ausrichten einschalten, werden neue Objekte, die Sie erstellen, verschieben oder skalieren, an den Rasterpunkten ausgerichtet, die im Dialogfeld Formatzeileneinstellungen definiert werden.


Ansichten erstellen

So erstellen Sie Ansichten:

  Benutzen Sie die Bildschirmteiler, die sich anfänglich rechts neben der horizontalen Bildlaufleiste und unter der vertikalen Bildlaufleiste befinden.

Um einen Bildschirmteiler anzuzeigen, klicken Sie hier.

Ansichten werden nur in dem Layout im Graphics Builder angezeigt. Sie sind nicht sichtbar, wenn Sie die grafische Anwendung ausführen oder ausdrucken.

So teilen Sie das Layout in mehrere Ansichten:

  Benutzen Sie die horizontalen oder vertikalen Bildschirmteiler in der Bildlaufleiste, um zwei, drei oder vier Ansichten zu erstellen:

  Um zwei Ansichten zu erstellen, ziehen Sie den horizontalen oder vertikalen Bildschirmteiler an die gewünschte Stelle. Dadurch werden zwei Ansichten auf einer Achse erstellt, wobei jede Ansicht über einen eigenen Bildschirmteiler auf einer alternativen Achse verfügt.

  Um drei Ansichten zu erstellen, erstellen Sie zuerst zwei Ansichten, und teilen Sie dann eine der Ansichten mit deren Bildschirmteiler auf der alternativen Achse.

  Um vier Ansichten zu erstellen, erstellen Sie zwei Ansichten, und teilen Sie dann beide Ansichten mit deren Bildschirmteilern auf der alternativen Achse.

Ansichten sind nur während der laufenden Builder-Sitzung wirksam. Sie sind zur Laufzeit nicht sichtbar.


Ansichten aktivieren

So aktivieren Sie eine Ansicht:

  Wählen Sie die Ansicht. Die Ansicht wird markiert.

Um mit einer Ansicht zu arbeiten, müssen Sie sie aktivieren. Es kann immer nur eine Ansicht gleichzeitig aktiv sein.


Ansichten skalieren

So skalieren Sie eine Ansicht:

  Ziehen Sie den horizontalen oder vertikalen Bildschirmteiler an eine neue Stelle.


Ansichten entfernen

So entfernen Sie eine Ansicht:

  Ziehen Sie die Bildschirmteiler wieder an die Originalposition in den Bildlaufleisten zurück.


Zeichnenoptionen angeben

So geben Sie Zeichnenoptionen an:

1	Wählen Sie Format [image] Zeichnenoptionen. Danach wählen Sie eine der folgenden Optionen:  Allgemein, Bogen, Text, Abgerundetes Rechteck oder Bild.

Daraufhin wird für die ausgewählte Option ein Dialogfeld angezeigt.

2	Geben Sie die gewünschten Optionen an.

Die Auswahlen bleiben während der laufenden grafischen Anwendung wirksam, bis Sie sie erneut ändern.

Sie können Standardoptionen für bestimmte Objekte angeben, die automatisch beim Zeichnen der Objekte in dem Layout angewendet werden. Optionen für Text umfassen z.B. Ausrichtung, skalierbare Umrandung, skalierbare Schriftarten und Umbruch.


Über die Komponenten des Objektnavigators

Der Objektnavigator enthält eine hierarchische Ansicht aller geöffneten grafischen Anwendungen und aller Objekte in diesen Anwendungen sowie aller Objekte, die von den Anwendungen referenziert werden.

Der Objektnavigator verfügt über die folgenden Komponenten:

Knoten Grafische Anwendungen

Symbolleiste

Objektanzeige

Suchen-Feld


Über den Knoten Grafische Anwendungen

Der Knoten Grafische Anwendungen ist die Hauptkomponente des Objektnavigators. In diesem Bereich werden alle Objekte, die Ihnen momentan zugänglich sind, hierarchisch angeordnet.


Über die Symbolleiste

Die Symbolleiste enthält allgemeine Befehle, die auch aus dem Menü Navigator oder Datei aufgerufen werden können, wie z.B. Speichern, Ausführen, Erstellen, Löschen, Einblenden und Ausblenden.


Über die Objektanzeige

In der Objektanzeige wird der Name des gerade ausgewählten Objekts in dem Knoten Grafische Anwendungen angezeigt.


Über das Suchen-Feld

Im Suchen-Feld können Sie nach einem Objekt im Navigator suchen, indem Sie den Namen des Objekts teilweise oder ganz eingeben.


Über die Objekthierarchie

Den meisten Objekten in der Navigator-Hierarchie werden automatisch ein oder mehrere Standard-Unterobjekte je nach Objekttyp zugewiesen. Es gibt zwei Grundtypen von Standard-Unterobjekten:

•	Zuweisung

•	Referenz

Jedes Grafikobjekt enthält z.B. Zuweisungs-Unterobjekte für eine Schaltflächenprozedur, einen Abfrage-ausführen-Trigger und eine Parameter-setzen-Funktion. Jeder Programmblock enthält Referenz-Unterobjekte für Referenzen in dem Programmblock und Referenzen zu dem Programmblock selbst.

In der folgenden Tabelle werden die Standard-Unterobjekte für die erste Objektebene im Knoten Grafische Anwendungen dargestellt:

Knoten	Objekt	Standard-Unterobjekte

Layout	Ebenex	Schaltflächenprozedur: Keine (oder Name) Abfrage ausführen: Keine (oder Name) Parameter setzen: Keine (oder Name)
Vorlagen	Vorlagex	Referenziert von
Abfragen	Abfragex	Trigger Benutzerdefinierte Ausführung: Keine (oder Name) Post-Exec-Trigger: Keine (oder Name) Timer: Keine (oder Name) Referenziert von
Parameter	PARAMx	Referenziert von
Timer	Timerx	Timer-Prozedur: Keine (oder Name) Referenziert von
Programm-blöcke	Name	Spezifikation Referenzen Referenziert von
Diese Standard-Unterobjekte sollen Ihnen dabei helfen, die Querverweise zwischen Objekten in Ihrer grafischen Anwendung zu verfolgen, speziell zwischen Objekten und Programmblöcken, Diagrammen und Vorlagen, Parametern und den Objekten, die ihre Werte zuweisen usw.

Wenn Sie z.B. eine Aufgliederungsprozedur für ein Grafikobjekt definieren, um den Wert von PARAM0 zu setzen, wird der Knoten Parameter setzen für das Grafikobjekt ebenfalls auf PARAM0 gesetzt. Gleichermaßen würde der Knoten Referenziert von von PARAM0 auf Objekt_Name gesetzt.


Knoten einblenden

So blenden Sie einen Knoten ein und zeigen die erste Ebene von Unterobjekten an:

1	Wählen Sie einen Knoten, der Unterobjekte enthält.

2	Klicken Sie auf Einblenden, oder wählen Sie Navigator [image] Einblenden, um die erste Ebene von Unterobjekten für den Knoten anzuzeigen.

Alternativ können Sie auch einfach das markierte Pluszeichen des Knotens auswählen, um die erste Ebene von Unterobjekten einzublenden.

So blenden Sie einen Knoten ein und zeigen alle Unterobjekte an:

1	Wählen Sie einen ausgeblendeten Knoten aus.

2	Klicken Sie auf Alles einblenden, oder wählen Sie Navigator [image] Alles einblenden, um alle Unterobjekte des Knotens anzuzeigen.


Knoten ausblenden

So blenden Sie einen Knoten aus:

1	Wählen Sie den eingeblendeten Knoten aus.

2	Klicken Sie auf Ausblenden, oder wählen Sie Navigator [image] Ausblenden. Die Unterobjekte des Knotens werden verborgen.

Vor dem ausgeblendeten Knoten wird ein markiertes Pluszeichen angezeigt.

Alternativ können Sie auch einfach das markierte Minuszeichen des Knotens auswählen, um die erste Ebene mit Unterobjekten auszublenden.

So blenden Sie einen Knoten aus und verbergen alle seine Unterobjekte:

1	Wählen Sie einen eingeblendeten Knoten aus.

2	Klicken Sie auf Alles ausblenden, oder wählen Sie Navigator [image] Alles ausblenden, um alle Unterobjekte zu verbergen.


Nach Objekten suchen

So suchen Sie nach Objekten:

1	Geben Sie den vollständigen oder teilweisen Namen des gewünschten Objekts in das Feld Suchen ein.

Sobald Sie mit der Eingabe beginnen, startet Graphics Builder eine inkrementelle Vorwärtssuche vom Anfang des Objektnavigators aus. Die inkrementelle Suche wird fortgesetzt, bis Sie die Eingabe beendet haben.

Graphics Builder blendet Knoten gegebenenfalls ein, um die aktuelle Position während der Suche anzugeben.

2	Klicken Sie auf Suchen Abwärts oder Suchen Aufwärts, um nach dem nächsten oder vorherigen Vorkommen der Suchkriterien im Objektnavigator zu suchen.

Momentan werden keine Stellvertreterzeichen im Suchen-Feld unterstützt.


Über das Vorbereiten einer grafischen Anwendung für das Einbetten

Bevor Sie Ihre Graphics Builder-Anwendung in eine Anwendung einbetten können, die mit einem anderen Werkzeug erstellt wurde, sollten Sie die Umgebung und die grafische Anwendung so vorbereiten, daß die beiden Werkzeuge optimal zusammenarbeiten können. Als nächstes werden einige Punkte aufgeführt, die berücksichtigt werden sollten:

•	Suchen nach Modulen

•	Auffüllen von Abfragespalten mit einer externen Quelle

•	Skalieren der grafischen Anwendung

•	Ausführen der grafischen Anwendung

•	Abrufen von Textparametern

•	Abrufen von Daten

•	Generieren des Layouts


Über das Auffüllen von Abfragespalten mit einer externen Quelle

Wenn Sie ein Graphics Builder-Diagramm in einem anderen Oracle-Produkt aufnehmen, wie z.B. Form Builder oder Report Builder (die in Reports Developer enthalten sind), benutzt das Diagramm die Daten aus der Abfrage des aufrufenden Produktes, solange die Abfragespalten, die für das Erstellen des Diagramms benutzt werden, und die in der Abfrage des aufrufenden Produkts benutzten Spalten übereinstimmen.

Wenn das generierte Diagramm nur von einem anderen Oracle-Produkt aufgerufen wird, können Sie eine benutzerdefinierte Abfrage verwenden, um ein "leeres" Diagramm zu erstellen. Dieses Diagramm wird mit Daten aufgefüllt, wenn es von dem aufrufenden Produkt aufgerufen wird. Benutzen Sie das benutzerdefinierte Dialogfeld Schemaattribute, um Spalten mit denselben Namen wie die Abfrage zu erstellen, die von dem aufrufenden Produkt benutzt wird. Danach definieren Sie die Diagrammattribute wie normal, indem Sie Kategorie- und Wertdaten zuweisen usw.

Das Diagramm wird in dem Layout ohne Daten angezeigt.

Wenn die Graphics Builder-Anwendung von dem anderen Produkt aufgerufen wird, wird die Abfrage des aufrufenden Produkts anstelle der benutzerdefinierten Abfrage benutzt. Weil die Spaltennamen dieselben sind, wird das Diagramm entsprechend Ihren Angaben gezeichnet.


Über das Suchen nach Modulen

Wenn Graphics Builder eine eingebettete grafische Anwendung ausführen soll, muß es in der Lage sein, die grafische Anwendung zu finden. Graphics Builder sucht in der folgenden Reihenfolge nach Dateien:

1	Gegebenenfalls im Verzeichnispfad, der vor dem Dateinamen steht.

2	Im "aktuellen" oder "Arbeits"-Ordner, wie von Ihrem Betriebssystem festgelegt.

3	Dem Pfad, der mit der Umgebungsvariablen GRAPHICS30_PATH angegeben wird.

4	Dem Pfad, der mit der Umgebungsvariablen ORACLE_PATH angegeben wird.

Stellen Sie sicher, daß Sie den Speicherort der grafischen Anwendung entweder explizit angeben oder daß die Pfadvariablen richtig eingestellt sind und eine der Variablen auf den Speicherort der grafischen Anwendung verweist.


Über das Skalieren der grafischen Anwendung

Die Größe einer grafischen Anwendung, so wie sie in einer Anwendung angezeigt wird, entspricht nicht unbedingt der Größe der grafischen Anwendung in Graphics Builder. Wenn Sie eine grafische Anwendung einbetten, müssen Sie festlegen, ob Sie sie abschneiden, skalieren oder genau mit den Abmessungen erstellen möchten, die erforderlich sind, damit die Anwendung in das Layout der einbettenden Anwendung paßt.

Da die Komponenten von Oracle dasselbe grafische Definitionssystem verwenden, können Sie Form Builder anweisen, die grafische Anwendung zu skalieren oder abzuschneiden, damit sie in den angegebenen Anzeigebereich paßt. Report Builder (in Reports Developer enthalten) skaliert die grafische Anwendung automatisch so, daß sie in den Anzeigebereich paßt.

Beim Skalieren und Abschneiden müssen bestimmte Punkte berücksichtigt werden. Skalierte grafische Anwendungen können gelegentlich verzerrt aussehen. Bei abgeschnittenen grafischen Anwendungen werden die Größen beginnend in der oberen linken Ecke des Anzeigebereichs (Koordinaten 0,0) berechnet. Dies bedeutet, daß, wenn die Anzeigeobjekte vom oberen und linken Rand des Layouteditors von Graphics Builder verschoben werden, dieser "leere" Platz in der abgeschnittenen Version der grafischen Anwendung enthalten ist.

Um verzerrte grafische Anwendungen oder überflüssigen leeren Platz zu vermeiden, können Sie folgende Vorsichtsmaßnahmen treffen:

•	Verschieben Sie den Inhalt der grafischen Anwendung in die obere linke Ecke des Layouteditors.

•	Benutzen Sie Ansicht [image] Optionen [image] Layout, um das Dialogfeld Layouteinstellungen anzuzeigen, in dem Sie die Größe der grafischen Anwendung angeben können.


Über das Ausführen der grafischen Anwendung

Andere Oracle-Produkte können die ausführbaren Dateien von Graphics Builder Runtime oder Batch aufrufen.


Über das Abrufen von Textparametern

  Verwandte Themen

Ein Produkt, das eine Graphics Builder-Anwendung aufruft, kann Anfangswerte an Parameter übergeben, die in der grafischen Anwendung definiert sind. Diese Parameterwerte werden immer als Datentyp CHAR übergeben.

Wenn Sie einen Parameter in Graphics Builder erstellen, geben Sie einen Datentyp für den Parameter im Dialogfeld Parameter an. Graphics Builder konvertiert den ankommenden CHAR-Parameterwert implizit in den Datentyp, der für den Parameter angegeben wurde.

Wenn Sie ein Datum von dem aufrufenden Produkt an Graphics Builder übergeben möchten, müssen Sie das ankommende Datumsformat im Attributblatt Grafische Anwendung angeben. Wenn Sie z.B. einen Wert 04-JUL-92 an Graphics Builder senden möchten, müssen Sie sicherstellen, daß das Datumsformat TT-MON-JJ im Feld Parameter Datumsformat angegeben wird.


Über das Abrufen von Daten

  Verwandte Themen

Wenn Sie eine Graphics Builder-Anwendung in einem anderen Oracle-Produkt einbetten, kann Graphics Builder Daten aus diesem Produkt anstelle der eigenen Daten verwenden.

Wenn Sie das Diagramm in Graphics Builder erstellen, kreuzen Sie Diagramm nach Ausführen der Abfrage aktualisieren im Register Daten des Dialogfeldes Diagrammattribute an. Das Diagramm wird mit den neuen Daten aktualisiert, wenn die Abfrage für das aufrufende Produkt ausgeführt wird.

Stellen Sie sicher, daß die von dem aufrufenden Produkt benutzte Abfrage dieselben Spaltennamen wie die Abfrage enthält, mit der das Diagramm erstellt wird, damit Graphics Builder weiß, was mit den Daten geschehen soll, die gesendet werden. Angenommen, die grafische Anwendung enthält ein Diagramm, in dem ENAME als Kategorie und SAL als Wert aufgeführt wird.

Wenn Form Builder Daten ersetzt, die über Spalten mit der Bezeichnung EMPLOYEE und SALARY verfügen, kann das Diagramm die erwarteten Spalten nicht finden.

Wenn Sie in der Graphics Builder-Abfrage Aliase zugewiesen haben, können Sie diese im Hinblick auf Übersichtlichkeit entfernen. Weisen Sie benutzerdefinierte Achsenbeschriftungen mit dem Attributblatt Achsen zu.


Über das Generieren des Layouts

Nach dem Aufruf von Graphics Builder empfängt Report Builder (in Reports Developer enthalten) immer den Inhalt des Layouts nach der Ausführung der grafischen Anwendung. Nach dem Aufrufen von Graphics Builder empfängt Form Builder den Inhalt des Layouts, wie in der Prozedur OG.OPEN angegeben.


Über das Einbetten von grafischen Anwendungen in Forms

  Verwandte Themen

Es gibt zwei Methoden für das Einbetten von grafischen Anwendungen in Forms:

•	Über den Diagramm-Assistenten des Form Builder

•	Über vordefinierte PL/SQL-Prozeduren

Um ein neues Diagramm in einer Form einzubetten, benutzen Sie den Diagramm-Assistenten von Form Builder. Der Diagramm-Assistent führt Sie Schritt für Schritt durch das Erstellen eines einfachen Diagramms.

Um eine bestehende oder komplexe grafische Anwendung einzubetten, generieren Sie das Diagrammobjekt manuell, und ordnen Sie die Bibliothek OG.PLL dem Objekt zu. Die Bibliothek OG.PLL besteht aus einer Sammlung von vordefinierten PL/SQL-Routinen, die speziell für die Übergabe von Daten zwischen Forms und grafischen Anwendungen ausgelegt sind. Sie enthält Prozeduren und Funktionen für die Übergabe von Daten, Mausereignisse und PL/SQL-Befehle sowie für das Anstoßen und die Unterbrechung der Verbindung eingebetteter grafischer Anwendungen zur Laufzeit. Sie können die vordefinierten OG.PLL-Prozeduren in Forms-Triggern aufnehmen, die Informationen und Befehle an die eingebettete grafische Anwendung senden, wenn sie durch Ereignisse aktiviert werden, die in der Form erfolgen.


Diagramme mit dem Diagramm-Assistenten in Forms erstellen

  Verwandte Themen

So benutzen Sie den Diagramm-Assistenten, um Diagramme in Forms zu erstellen:

1	Wählen Sie im Form Builder-Layout Werkzeuge [image] Diagramm-Assistent, oder klicken Sie auf die Schaltfläche Diagramm-Assistent in der Symbolleiste.

2	Klicken Sie, und ziehen Sie ein Rechteck in dem Layout. Die Größe des erstellten Rechtecks bestimmt die Größe des erstellten Diagrammobjekts.

3	Klicken Sie im Dialogfeld Neues Diagrammobjekt auf Diagramm-Assistent verwenden.

4	Auf der Willkommenseite des Diagramm-Assistenten klicken Sie auf Weiter. Danach befolgen Sie die Angaben in dem Assistenten, um das Diagramm zu erstellen.


 Diagrammobjekte manuell in Form Builder generieren

  Verwandte Themen

So generieren Sie ein Diagramm manuell in einer Form:

1	Wählen Sie im Form Builder-Layout das Werkzeug Diagrammobjekt in der Werkzeugpalette.

2	Klicken Sie, und ziehen Sie ein Rechteck in dem Layout. Die Größe des erstellten Rechtecks bestimmt die Größe des erstellten Diagrammobjekts.

3	Klicken Sie im Dialogfeld Neues Diagrammobjekt auf Neues Diagramm manuell erstellen.


 Bestehende grafische Anwendungen in Forms einbetten

  Verwandte Themen

So betten Sie eine bestehende grafische Anwendung in eine Form ein:

1	Generieren Sie ein Diagrammobjekt manuell.

2	Ordnen Sie dem Formmodul die Bibliothek OG.PLL zu.

3	Erstellen Sie einen oder mehrere Form-Trigger, die die Prozedur OG.OPEN aus der Bibliothek OG.PLL verwenden, um die bestehende grafische Anwendung zu laden.

4	(Optional)  Benutzen Sie die Bibliothek OG.PLL mit vordefinierten Prozeduren, um die grafische Anwendung nach Bedarf zu automatisieren.


Über die Benutzung von PL/SQL zur Integration einer grafischen Anwendung in einer Form

  Verwandte Themen

Um eine grafische Anwendung in einer Form zu integrieren, benutzen Sie die vordefinierte Prozedur OG.OPEN in der Bibliothek OG.PLL.

Sie können die Prozedur OG.OPEN in einer Reihe verschiedener Trigger aufnehmen; so lädt z.B. der Trigger When-New-Form-Instance die grafische Anwendung, nachdem die Form erfolgreich erstellt wurde, während der Trigger When-Button-Pressed die grafische Anwendung lädt, wenn der Benutzer die entsprechende Schaltfläche auswählt. Wenn die grafische Anwendung in einem Block enthalten ist, der nicht aktiv ist, wenn der Trigger, der OG.OPEN enthält, ausgelöst wird, wird die grafische Anwendung geladen, dieser Block erhält jedoch den Fokus nicht, und die grafische Anwendung wird sofort angezeigt.

Nachdem Form Builder die entsprechende ausführbare Graphics Builder-Datei aufgerufen und die grafische Anwendung geladen hat, bleibt diese im Speicher, bis sie explizit geschlossen wird. Graphics Builder lädt eine geöffnete grafische Anwendung nicht erneut. Wenn Sie das Diagrammobjekt ändern und die Änderungen testen möchten, müssen Sie die grafische Anwendung zuerst schließen, indem Sie die vordefinierte Prozedur OG.CLOSE in einem Trigger aufrufen. (OG.CLOSE ist in der Bibliothek OG.PLL enthalten.)

Um Graphics Builder zu beenden, benutzen Sie die vordefinierte Prozedur OG_QUIT in einem anderen Trigger, wie z.B. einem Post-Block- oder Post-Form-Trigger. OG_QUIT unterscheidet sich von OG.OPEN und OG.CLOSE insofern, als diese Prozedur nicht Bestandteil der Bibliothek OG.PLL ist, die in Form Builder enthalten ist, sondern statt dessen ein vordefiniertes Graphics Builder-Unterprogramm ist und als solches zur Interpretation an Graphics Builder übergeben werden muß. OG.PLL umfaßt OG.INTERPRET für diesen Zweck. Verwenden Sie OG.INTERPRET, um eine gültige PL/SQL-Zeichenfolge zur Ausführung an Graphics Builder zu übergeben.


Über die Bibliothek OG.PLL

Die Integrationsebene zwischen einer Form und einem Diagramm hängt von dem Kommunikationsgrad ab, den Sie zwischen Graphics Builder und Form Builder festlegen. Damit Form Builder mit Graphics Builder "spricht", benutzen Sie die Bibliothek OG.PLL.

Form Builder enthält diese Bibliothek, d.h. ein Paket mit mehreren Prozeduren und Funktionen, die Sie zur Kommunikation mit einer grafischen Anwendung benutzen können.

Um zwischen Form Builder und Graphics Builder zu kommunizieren, nehmen Sie generell eine oder mehrere der Prozeduren und Funktionen von OG.PLL in einem oder mehreren Form-Triggern auf, so daß in der Form stattfindende Aktionen Informationen und Befehle an die eingebettete grafische Anwendung senden.


Über das Aktivieren der grafischen Anwendung

Sie können festlegen, daß Ihre grafische Anwendung auf Benutzeraktionen reagiert. Die einfachste Methode besteht darin, die vordefinierten Unterprogramme OG.MOUSEDOWN und OG.MOUSEUP aus der Bibliothek OG.PLL zu verwenden, um die grafische Anwendung über ein Mausereignis zu unterrichten.

Wenn der Benutzer die Aktion ausführt, für die Sie einen Trigger erstellt haben, übergibt der Trigger die Informationen direkt an Graphics Builder, das so reagiert, wie es reagieren würde, wenn das Mausereignis zur Laufzeit in Graphics Builder eingetreten wäre.

Dieser Trigger muß keinem Mausereignis zugeordnet sein. Wenn Benutzer durch Drücken einer Schaltfläche eine Aufgliederungsanzeige erreichen wollen, erstellen Sie die Schaltfläche im Form Builder-Layout und ordnen Sie einen When-Button-Pressed-Trigger zu, der die entsprechende Prozedur umfaßt.

Mit OG.MOUSEUP und OG.MOUSEDOWN erhalten Sie vollständige Kontrolle über die Informationen, die von der Form an die grafische Anwendung gesendet werden. Wenn der Benutzer z.B. eine Schaltfläche in der Form drücken soll, anstatt die Maus zu benutzen, können Sie dennoch alle erforderlichen Informationen an die grafische Anwendung übergeben - einschließlich Koordinaten, einfacher oder doppelter Mausklick, Schaltfläche eins oder Schaltfläche zwei -, und Graphics Builder behandelt diese wie ein eigentliches Mausereignis.

Standardmäßig entsprechen alle Argumente, die Mausaktionen angeben, den konkret von der Maus gesendeten Informationen.


Über das Senden von PL/SQL-Code an die grafische Anwendung

Wenn Sie eine Graphics Builder-Anwendung in einer Form Builder-Anwendung aufnehmen, können Sie die grafische Anwendung mit der Prozedur OG.INTERPRET anweisen, einen bestimmten Teil des PL/SQL-Codes auszuführen. Dieser PL/SQL-Code kann von einer vordefinierten Graphics Builder-Prozedur über eine benutzerdefinierte Funktion oder Prozedur bis zu einem einfachen einzeiligen Befehl reichen, muß jedoch in Form einer Zeichenfolge gesendet werden. Setzen Sie all diese Zeichenfolgen in Anführungszeichen, und nehmen Sie nach Bedarf abschließende Semikolons auf.

Mit OG.INTERPRET können Sie Programmblöcke von Graphics Builder aus der Form ausführen. Über die einfache Änderung der Daten hinaus, auf denen das Diagramm beruht, können Sie mit dieser Prozedur PL/SQL-Programmblöcke in der grafischen Anwendung benutzen, um dynamische Vorgänge durchzuführen, wie z.B. die Farbe eines Diagrammbalkens zu ändern oder ein Objekt zu verschieben.


Über das Austauschen von Daten zwischen der Form und der grafischen Anwendung

  Verwandte Themen

Sie können nicht nur Mausaktionen oder PL/SQL-Code an eine eingebettete grafische Anwendung senden, sondern können auch Informationen aus der Form an die grafische Anwendung oder aus der grafischen Anwendung an die Form übergeben. Benutzen Sie hierzu OG.GETCHARPARAM, eine Funktion in der Bibliothek OG.PLL, die auch OG.GETNUMPARAM für Parameter bereitstellt, bei deren Werten es sich um Zahlen handelt.

Es gibt zwei Arten von Parametern, mit denen Sie Daten übergeben können:

•	Textparameter

•	Datenparameter

Die grafische Anwendung kann die Informationen dann während Updates benutzen.


Über Textparameter

Textparameter enthalten Werte, die aus Variablen oder Konstanten stammen. Sie beziehen sich auf vordefinierte Systemparameter, benutzerdefinierte Parameter, Bindevariablen oder lexikalische Variablen. Jeder Textparameter verfügt über einen Schlüssel oder Namen und einen Wert.

Vordefinierte Systemparameter haben feste Namen bzw. Schlüssel und werden im allgemeinen in der Befehlszeile angegeben, die das Werkzeug aufruft. So ist z.B. PRINT ein Parameterschlüssel und 'yes' ein möglicher Wert; USERID ist ein Schlüssel und 'scott/tiger@t:london:payroll' ein gültiger Wert.

Benutzerdefinierte Parameter werden im allgemeinen während der Entwurfsphase einer Anwendung definiert und geben den Benutzern mehr Kontrolle über die Aktionen der Module, für die sie angewendet werden. Weitere Informationen über das Erstellen von Parametern in einer Form finden Sie in der Form Builder-Dokumentation.

Zwischen Produkten übergebene benutzerdefinierte Parameter werden zuerst in den Datentyp CHAR konvertiert. Das aufgerufene Produkt kann entweder die Werte implizit in den gewünschten Datentyp konvertieren oder kann Ihnen ermöglichen, diese als Werte eines anderen Typs zu behandeln (z.B. durch Benutzung der PL/SQL-Konvertierungsfunktionen, wie TO_DATE, TO_NUMBER, usw.).

Weitere Informationen über das Konvertieren von Datentypen mit einer Konvertierungsfunktion finden Sie in PL/SQL User's Guide and Reference.


Über Datenparameter

Datenparameter sind Datensatzgruppen, die Sie in einem tabellarischen Format von Form Builder an Graphics Builder übergeben können. Hierzu kann es folgende Gründe geben:

•	Wenn die grafische Anwendung eine Abfrage basierend auf einer Benutzeraktion in der Form dynamisch generiert und ausführt, können Sie das Ergebnis dieser Benutzeraktion an Graphics Builder übergeben.

•	Wenn die grafische Anwendung Daten benutzt, die Form Builder schon abgerufen hat, können Sie verhindern, daß dieses Produkt die Daten erneut abrufen muß.

•	Wenn die Form eine nicht festgeschriebene Datensatzgruppe erstellt hat, die Sie anzeigen möchten.

Wie bei Textparametern hat jeder Datenparameter einen Schlüssel und einen Wert. Der Wert eines Datenparameters gibt den Namen der Form Builder-Abfrage an, die an die grafische Anwendung übergeben wird. Der Schlüssel eines Datenparameters gibt den Abfragenamen an, mit dem er in dem aufgerufenen Produkt gleichgesetzt wird.

Wenn Sie Daten von Form Builder an Graphics Builder übergeben, müssen Sie zuerst die Abfrage in Form Builder ausführen.


Über das Erstellen und Auffüllen von Parameterlisten

  Verwandte Themen

Form Builder übergibt Informationen mit einer Parameterliste an eine grafische Anwendung. Eine Parameterliste besteht aus einer Reihe von Parameterschlüssel- und Wertepaaren. (Selbst ein einzelner Parameter muß einer Parameterliste zugewiesen werden.) Alle Informationen, die Sie übergeben möchten, müssen als Parameter definiert und dann zu einer Parameterliste hinzugefügt werden. Der erstellte Parametertyp hängt von den zu übergebenden Informationen ab. Parameterlisten werden immer als Zeichenfolgenliterale übergeben.

Damit Sie Parameterlisten und die in ihnen enthaltenen Parameter erstellen und bearbeiten können, verfügt Form Builder über verschiedene vordefinierte Funktionen und Prozeduren mit sich selbst erläuternden Namen:

•	CREATE_PARAMETER_LIST (Funktion)

•	GET_PARAMETER_LIST (Funktion)

•	DESTROY_PARAMETER_LIST (Funktion)

•	ADD_PARAMETER (Prozedur)

•	SET_PARAMETER_ATTR (Prozedur)

•	GET_PARAMETER_ATTR (Prozedur)

•	DELETE_PARAMETER (Prozedur)

Bei Graphics Builder sind diese Funktionen und Prozeduren Bestandteil des Pakets TOOL_INT. Wenn Sie diese benutzen, setzen Sie TOOL_INT vor den Namen; z.B. TOOL_INT.GET_PARAMETER_LIST.


Über das Aufrufen von Graphics Builder aus einer Form

Nachdem Sie die Parameterliste erstellt und aufgefüllt haben, rufen Sie Graphics Builder auf und senden die Parameterliste mit einer der folgenden Prozeduren in OG.PLL an Graphics Builder:

•	OG.OPEN

•	OG.INTERPRET

•	OG.MOUSEDOWN

•	OG.MOUSEUP

•	OG.REFRESH


Graphics Builder für das Erstellen von grafischen Anwendungen zur Benutzung in Forms verwenden

  Verwandte Themen

So erstellen Sie eine Graphics Builder-Anwendung zur Benutzung in Forms:

  Erstellen Sie eine Graphics Builder-Anwendung wie normal.

So erstellen Sie eine Graphics Builder-Aufgliederungsanwendung zur Benutzung in Forms:

  Erstellen Sie eine Aufgliederungsanwendung wie normal.


Diagrammbereich zeichnen

So zeichnen Sie einen Diagrammbereich:

  Wählen Sie das Werkzeug Diagrammobjekt aus der Werkzeugpalette von Form Builder, und zeichnen Sie einen Bereich im Formlayout. Benennen Sie den Diagrammbereich im Fenster Attribute um, oder behalten Sie den Standardnamen bei.


Trigger für das Öffnen und Schließen von grafischen Anwendungen erstellen

  Beispiele

So erstellen Sie Trigger für das Öffnen und Schließen der grafischen Anwendung:

1	Ordnen Sie die Bibliothek OG.PLL der Form zu. Diese Bibliothek enthält das Paket OG, das aus den Unterpaketen besteht, die Sie zur Kommunikation zwischen Form Builder und Graphics Builder verwenden.

Weitere Informationen über die Zuordnung von Bibliotheken in Form Builder finden Sie in der Form Builder-Dokumentation.

2	Erstellen Sie einen Trigger, der die Prozedur OG.OPEN benutzt, um die Graphics Builder-Anwendung zu laden.

3	Gegebenenfalls erstellen Sie einen Trigger, der die Prozedur OG.CLOSE benutzt, um die grafische Anwendung zu schließen. Alternativ benutzen Sie OG.INTERPRET, um einen Beenden-Befehl an Graphics Builder zu senden.

Weitere Informationen über das Erstellen von Triggern in Form Builder finden Sie in der Form Builder-Dokumentation.


Beispiele: Grafische Anwendungen öffnen und schließen

Beispiel: OG.OPEN

Der folgende When-New-Form-Instance-Trigger öffnet die grafische Anwendung inv_disp.ogd im Diagrammbereich 'CHART_AREA1', skaliert die grafische Anwendung so, daß sie in den Platz paßt, der ihr im Form Builder-Layout zugewiesen ist, und frischt die grafische Anwendung automatisch auf (REFRESH=TRUE ist der Standardwert). Eine Parameterliste wird nicht übergeben.

OG.OPEN('inv_disp.ogd', 'CHART_AREA1', clip=FALSE);

Beispiel: OG.CLOSE

Der folgende Post-Form-Trigger schließt die grafische Anwendung inv_disp.ogd im Diagrammbereich 'CHART_AREA1'. Er verwendet nur zwei Parameter: display_name und chart_item_name.

OG.CLOSE('inv_disp.ogd', 'CHART_AREA1');

Auch hier müssen Sie den Post-Form-Trigger nicht benutzen. Wählen Sie den Trigger aus, mit dem die grafische Anwendung zu dem von Ihnen gewünschten Zeitpunkt und an dem von Ihnen gewünschten Ort am besten geeignet ist.

Beispiel: OG.INTERPRET

Der folgende Post-Form-Trigger benutzt die vordefinierte Graphics Builder-Prozedur OG_QUIT, um Graphics Builder zu beenden:

OG.INTERPRET('inv_disp.ogd', 'CHART_AREA1', 'og_quit;');

Beachten Sie das Semikolon unmittelbar im Anschluß an "og_quit". Wenn PL/SQL über OG.INTERPRET übergeben wird, müssen Sie das abschließende Semikolon aufnehmen. Auch hier müssen Sie den Post-Form-Trigger nicht benutzen. Benutzen Sie den Trigger, der für das Beenden von Graphics Builder zu dem gewünschten Zeitpunkt am besten geeignet ist.


Trigger zur Übergabe von Mausereignissen erstellen

  Beispiele

So erstellen Sie Trigger zur Übergabe von Mausereignissen:

  Erstellen Sie einen Trigger in Form Builder, der das vordefinierte Unterprogramm OG.MOUSEDOWN oder OG.MOUSEUP aus der Bibliothek OG.PLL enthält.


Beispiel: Trigger zur Übergabe von Mausereignissen erstellen

Beispiel:  OG.MOUSEDOWN

Der folgende When-Mouse-Click-Trigger aktiviert die grafische Anwendung inv_disp.ogd:

OG.MOUSEDOWN('inv_disp.ogd', 'CHART_AREA1');

Die Prozedur in dem obigen Beispiel hat nur zwei Argumente benutzt: display_name und chart_area_name. Beide Prozeduren verfügen über mehrere andere Argumente, einschließlich der angenommenen x- und y-Koordinaten des Mausklicks, der Angabe, welche Maustaste geklickt wurde, wie oft sie geklickt wurde, einer Parameterliste usw.


Trigger zur Übergabe von PL/SQL erstellen

  Beispiele

So erstellen Sie Trigger zur Übergabe von PL/SQL:

  Wenn Sie das vordefinierte Unterprogramm OG.INTERPRET verwenden, um einen Graphics Builder-Programmblock aus Form Builder aufzurufen, müssen Sie den Programmblock und eventuell erforderliche Argumente als Zeichenfolgenwert übergeben. Anders ausgedrückt, der ausgeführte Programmblock muß in einfachen Anführungszeichen stehen.


Beispiele:  Trigger zur Übergabe von PL/SQL erstellen

Beispiel:  Benutzung von OG.INTERPRET für das Aufrufen einer Prozedur

Der folgende Befehl, der in einem When-Button-Pressed-Trigger enthalten ist, ruft die Prozedur 'set_timers' auf:

OG.INTERPRET('inv_disp.ogd', 'CHART_AREA1',
'set_timers;');

Beachten Sie das abschließende Semikolon.

Beispiel 2:  Benutzung von OG.INTERPRET für das Erstellen einer Zeichenfolge

Wenn der in Graphics Builder aufgerufene Programmblock fordert, daß Argumente von Form Builder übergeben werden, benutzen Sie den Verkettungsoperator, um den erforderlichen Zeichenfolgenwert zu erstellen. Das folgende einfache Beispiel weist Graphics Builder an, den Programmblock "set_param" mit einem Argument aus einem der Textfelder in der Form auszuführen:

OG.INTERPRET ('inv_disp.ogd', 'CHART_AREA1', 'set_param('|| TO_CHAR(:BLOCK1.category_cbox) || ');');

Beispiel 3:  Benutzung von OG.INTERPRET, um eine Zeichenfolge zu generieren - komplexe Verwendung

Ein etwas komplizierteres Beispiel für das Generieren einer Zeichenfolge mit dem Verkettungsoperator:

OG.INTERPRET('inv_disp.ogd', 'CHART_AREA1',
'set_timer(' ||
 TO_NUM(:BLOCK2.values_plist) ||
 ','  ||
 TO_NUM(:BLOCK3.more_cbox) ||
 ');');

Wenn Sie den obigen Unterprogrammaufruf in separate Teile aufteilen (die jeweils durch einen Verkettungsoperator getrennt werden), ergibt sich folgendes:

'set_timer('	Contains the procedure name and opening parentheses, enclosed 	in single quotes.

TO_NUM(:BLOCK2.	Contains the parameter from Form Builder, converted to the NUMBER

values_plist)	datatype.  This is an argument required by the set_timer 	procedure.

','	Contains the comma that separates the two supplied arguments.

TO_NUM(:BLOCK3.	Contains the parameter from Form Builder, converted to the NUMBER

more_cbox)	datatype.  This is the second argument to the set_timer 	procedure.

');'	Contains the procedure's closing parentheses and semicolon, 	enclosed in single quotes.

Graphics Builder sieht die Ergebniszeichenfolge:

set_timer(x,y);

wobei die Argumente x und y die Zahlen sind, die von der Form gesendet und in den Datentyp NUMBER konvertiert werden.


Trigger zur Übergabe von Daten erstellen

  Beispiele

So erstellen Sie Trigger zur Übergabe von Daten:

  Wenn Daten zwischen einer Form und einer grafischen Anwendung übergeben werden, denken Sie daran, daß die Form sowohl Parameterwerte aus der grafischen Anwendung extrahieren als auch Text- und Datenparameter an die grafische Anwendung übergeben kann. Die Form kann jedoch nur einen einzelnen Parameterwert pro Abfrage extrahieren, während nur Parameterlisten übergeben werden können.


Beispiele:  Trigger zur Übergabe von Daten erstellen

Beispiel 1:  Einlesen eines Parameterwertes

Die folgende Funktion in einem When-Button-Pressed-Trigger ruft den Wert des Parameters param1 der Graphics Builder-Anwendung ab und weist diesen dem Textfeld 'TEXT_ITEM1' in der Form zu:

:BLOCK1.TEXT_ITEM1 := OG.GETCHARPARAM

('inv_disp.ogd', 'CHART_AREA1', 'param1');

Beispiel 2:  Übergabe eines Parameters

Als nächstes sehen Sie den Text eines Post-Query-Triggers auf Blockebene, der zur Übergabe einer Abteilungsnummer an Graphics Builder zur Benutzung beim Erstellen der grafischen Anwendung sal_chart verwendet werden kann.

PROCEDURE pass_param IS
pl   ParamList  /*Parameter list datatype*/
BEGIN

/*Create the parameter list, named "my param list".*/
pl := Create_Parameter_List('my_param_list');

/*Add a text parameter to the list to supply a value for

**the 'dept_num' parameter that Graphics Builder is expecting*/
Add_Parameter(pl, 'dept_num', TEXT_PARAMETER,
TO_CHAR(:dept.deptno));

/*Call Graphics Builder to populate the chart item*/
OG.REFRESH('sal_chart', 'dept.chart_item', pl);

/*Destroy the parameter list */
Destroy_Parameter_List(pl);

END

Beispiel 3:  Übergabe von Datensatzgruppen

Als nächstes sehen Sie den Text eines Post-Query-Triggers auf Blockebene, der zur Übergabe von Daten an Graphics Builder benutzt wird. In diesem Beispiel gibt Form Builder eine Abfrage aus und speichert die Ergebnisdaten in einer Datensatzgruppe. Ein Datenparameter wird benutzt, um die Datensatzgruppe an Graphics Builder zu übergeben, das die Daten für das Erstellen der grafischen Anwendung sal_chart verwendet.

Procedure pass_data is
pl_id  PARAMLIST;
rg_id  RECORDGROUP := Find_Group('chart_data');
qry    VARCHAR(2000);
stat   NUMBER;

BEGIN
/*Prepare a query in a string based on the last
**WHERE clause issued.*/
qry := 'SELECT ename, sal FROM emp '||
   substr(:system.last_query,instr(:system.last_query,
'WHERE'))||' order by empno';

/*Check to see if the record group already exists;
**if not, create it.*/
IF Id_Null(rg_id) THEN
rg_id := CREATE_GROUP_FROM_QUERY('chart_data', qry);
END IF;

/*As the record group may have already existed with old
**data, clear it out and repopulate it based on the new
**query*/
DELETE_GROUP_ROW(rg_id, all_rows);
stat := POPULATE_GROUP_WITH_QUERY(rg_id, qry);

/*Now create a parameter list*/
pl_id := CREATE_PARAMETER_LIST('pl_chart_data');

/*Add a data parameter with the same name asthe query in **the display*/
Add_Parameter(pl_id,'query0',DATA_PARAMETER,'chart_data');

/*Refresh an already-opened display with the new data*/
OG.REFRESH('sal_chart','dept.chart_item',pl_id);

*/Destroy the parameter list*/
DESTROY_PARAMETER_LIST

END


Parameterlisten erstellen und auffüllen

  Verwandte Themen

So erstellen Sie eine Parameterliste:

1	Entscheiden Sie, welche Informationen übergeben werden sollen.

2	Erstellen Sie die Parameterliste mit der für Ihr Werkzeug zutreffenden vordefinierten Prozedur.

3	Fügen Sie Objekte zu der Liste hinzu. Diese Prozedur erfordert folgende Argumente:

  Name Ihrer Parameterliste

  Name des hinzuzufügenden Parameters

  Typ des hinzuzufügenden Parameters (Text oder Daten)

  Wert des hinzuzufügenden Parameters

Wenn Sie Befehlszeilenoptionen oder Optionen für ausführbare Dateien übergeben, müssen Sie das Schlüsselwort für die Befehlszeilenoption als Parameternamen angeben. In der Dokumentation für das aufzurufende Produkt werden alle gültigen Optionen für ausführbare Dateien beschrieben.


Forms ausführen

So führen Sie die Form aus:

  Stellen Sie sicher, daß alle erstellten Trigger korrekt kompiliert werden, und wählen Sie Datei [image] Ausführen.


 Über das Einbetten von grafischen Anwendungen in Berichten

  Verwandte Themen

Es gibt zwei Methoden für das Einbetten von grafischen Anwendungen in Berichten. Sie können die grafische Anwendung wie folgt generieren:

•	Über den Diagramm-Assistenten von Report Builder (In Reports Developer enthalten)

•	Manuell

Um ein neues Diagramm in einem Bericht zu erstellen, benutzen Sie den Diagramm-Assistenten von Report Builder (in Reports Developer enthalten). Der Diagramm-Assistent führt Sie Schritt für Schritt durch das Erstellen eines einfachen Diagramms.

Um eine bestehende oder komplexe grafische Anwendung in einem Bericht einzubetten, erstellen Sie ein Diagrammobjekt in dem Berichtlayout, und verwenden Sie die Attributpalette des Diagrammobjekts, um die Attribute für die grafische Anwendung festzulegen.

Sie können eine grafische Anwendung festlegen, die Daten direkt aus dem Bericht empfängt, in dem sie eingebettet ist, und nicht aus einer Form einer Datenbank. Mit dieser Funktion können Sie grafische Anwendungen einbetten, die gefilterte oder Summendaten aus Berichten berücksichtigen.


Geben Sie hier den Tifel für tifel das neue thema ein
Eine komplexe grafische Anwendung ist eine grafische Anwendung, die interaktiv ist, mehrere Abfragen enthält oder sowohl Objekte als auch Diagramme umfaßt.


 Neue Diagramme mit dem Diagramm-Assistenten in einem Bericht erstellen

  Verwandte Themen

So erstellen Sie ein Diagramm mit dem Diagramm-Assistenten aus einem Bericht:

1	Wählen Sie in der Live-Vorschau von Report Builder (in Reports Developer enthalten) oder in der Ansicht Layoutmodell den Befehl Werkzeuge [image] Diagramm-Assistent, oder klicken Sie auf die Schaltfläche Diagramm-Assistent in der Symbolleiste.

2	Erstellen Sie das Diagramm anhand der Angaben des Assistenten.


 Bestehende grafische Anwendungen in einen Bericht einbetten

  Verwandte Themen

So betten Sie eine bestehende grafische Anwendung in einen Bericht ein:

1	Wählen Sie in der Ansicht Layoutmodell von Report Builder (in Reports Developer enthalten) das Werkzeug Diagramm in der Werkzeugpalette.

2	Klicken Sie, und ziehen Sie ein Rechteck, um ein Diagrammobjekt zu erstellen. Die Größe des erstellten Rechtecks bestimmt die Größe des erstellten Diagrammobjekts.

3	Doppelklicken Sie auf das neue Diagrammobjekt, um die Attributpalette anzuzeigen.

4	Geben Sie unter dem Knoten Diagramm für das Attribut Diagramm-Dateiname den Namen der Datei an, die die grafische Anwendung enthält.

5	Wenn Sie Parameter von dem Bericht an die grafische Anwendung übergeben möchten, ordnen Sie Berichtspalten oder Parameter den Parametern des Diagrammobjekts zu.

6	Wenn die grafische Anwendung mehrere Abfragen benutzt, oder wenn Sie Datenwerte direkt von dem Bericht an die grafische Anwendung übergeben möchten, ordnen Sie die Spaltenattribute des Diagrammobjekts dem Bericht zu.


 Parameter von einem Bericht an eine eingebettete grafische Anwendung übergeben

  Verwandte Themen

So übergeben Sie Parameter von einem Bericht an eine grafische Anwendung:

1	Doppelklicken Sie auf das eingebettete Diagrammobjekt, um dessen Attributpalette anzuzeigen.

2	Klicken Sie in der Attributpalette unter dem Knoten Diagramm auf das Feld Parameter und Spalten, um die Register Parameter und Spalten anzuzeigen.

3	Klicken Sie auf das Registertab Parameter.

4	Wählen Sie in der Liste Berichtspalte die Berichtspalten oder Parameter, die den Parametern in der grafischen Anwendung entsprechen. Wenn Sie eine Berichtspalte oder einen Parameter auswählen, bedeutet dies, daß ein entsprechender Parameter in der grafischen Anwendung vorhanden ist und daß der Parameter seinen Wert aus der korrekten Instanz der ausgewählten Berichtspalte übernimmt.

5	Geben Sie im Feld Diagrammparameter den Namen des Diagrammparameters ein, dem die Berichtspalte bzw. der Parameter zugeordnet ist.

6	Klicken Sie auf OK.


Datenwerte von einem Bericht an eine eingebettete grafische Anwendung übergeben

  Verwandte Themen

So übergeben Sie Datenwerte von einem Bericht an eine grafische Anwendung:

1	Doppelklicken Sie auf das eingebettete Diagrammobjekt, um dessen Attributpalette anzuzeigen.

2	Klicken Sie in der Attributpalette unter dem Knoten Diagramm auf das Feld Parameter und Spalten, um Parameter- und Spaltenattribute anzuzeigen.

3	Klicken Sie auf das Registertab Spalte.

4	Geben Sie in das Feld Diagrammabfrage den Namen der Abfrage für die grafische Anwendung ein. Wenn die grafische Anwendung gefilterte Berichtdaten oder Summen berücksichtigen soll, müssen Sie eine Abfrage auswählen, die über eine Datenquelle (SQL oder Datei) verfügt, die Datenspalten zurückgibt, die den Spalten oder Parametern entsprechen, die von dem Bericht übergeben werden sollen.

5	Wählen Sie aus der Dropdown-Liste im Feld Berichtgruppe die Berichtgruppe aus, die die Daten und Parameter enthält, die von der Abfrage benutzt werden, die Sie im Feld Diagrammabfrage angegeben haben.

6	Wählen Sie in der Liste Berichtspalte die Berichtspalten, die Spalten in der grafischen Anwendung zugeordnet werden. Die ausgewählten Berichtspalten stellen Werte für die entsprechenden Spalten der grafischen Anwendung bereit. Geben Sie die Namen der entsprechenden Spalten der grafischen Anwendung in das Feld Diagrammspalte ein.

7	Klicken Sie auf OK.


 Hyperlink-Ziele für eine in einem Bericht eingebettete grafische Anwendung erstellen

So fügen Sie ein Hyperlink-Ziel zu einer grafischen Anwendung hinzu, die in einem Bericht eingebettet ist:

1	Doppelklicken Sie in der Live-Vorschau oder der Ansicht Layoutmodell im Report Builder (in Reports Developer enthalten) auf das Diagrammobjekt, um die Attributpalette anzuzeigen.

2	Stellen Sie unter dem Knoten Diagramm-Link das Ziel Diagramm-Hyperlink auf einen Bezeichner für das Diagrammobjekt ein.


Grafische Anwendungen für OLE-Containeranwendungen skalieren

So skalieren Sie eine grafische Anwendung für eine OLE-Containeranwendung:

1	Verschieben Sie die Objekte in Ihrer grafischen Anwendung in die obere linke Ecke des Layouteditors, wobei Sie genügend freien Platz vorsehen müssen, damit die grafische Anwendung lesbar ist.

2	Wählen Sie Ansicht [image] Optionen [image] Layout, um das Dialogfeld Layouteinstellungen anzuzeigen.

3	Geben Sie eine horizontale und vertikale Größe für das Layout ein.

4	Klicken Sie auf OK, um die Layoutgröße zu akzeptieren und das Dialogfeld zu schließen.

Die Layoutgröße ist auf die definierten Abmessungen beschränkt. Stellen Sie sicher, daß der in der OLE-Containeranwendung angegebene Bereich groß genug zur Aufnahme der grafischen Anwendung ist.

Wenn Sie eine Graphics Builder-Anwendung in einer OLE-Containeranwendung einbetten, nehmen Sie in Wirklichkeit ein Bild der grafischen Anwendung auf. Da OLE-Serveranwendungen nicht dasselbe Grafikdefinitionssystem benutzen wie Graphics Builder, können diese das Bild einer Graphics Builder-Anwendung nicht so skalieren, daß sie in einen definierten Bereich paßt.


Grafische Anwendungen in einem OLE-Container einbetten

So betten Sie eine grafische Anwendung in einer OLE-Containeranwendung ein:

1	Erstellen Sie die grafische Anwendung in Graphics Builder.

2	Zeichnen Sie einen Diagrammbereich in der OLE-Containeranwendung.

3	Stellen Sie die entsprechenden Attribute für die grafische Anwendung ein.

In der Dokumentation für die OLE-Containeranwendung wird beschrieben, wie Sie ein OLE-Serverobjekt aufnehmen.


Grafische Anwendungen als Bilder exportieren

Sie können Graphics Builder-Objekte (einzelne oder eine Gruppe) in eine Vielzahl von Bildformaten exportieren, einschließlich GIF, JPEG, BMP, TIFF und PICT. Es gibt drei Möglichkeiten, Objekte als Bilder zu exportieren:

•	Über den Menüpunkt Exportieren Bild von Graphics Builder, wenn Sie statische Bilder von grafischen Anwendungen zur Benutzung in Web-Seiten, Word-Dokumenten, Präsentationen usw. exportieren.

•	Über die vordefinierte Prozedur OG_EXPORT_IMAGE PL/SQL, wenn Sie interaktive grafische Anwendungen zur Benutzung in Web-Anwendungen exportieren.

•	Über die Graphics Builder-Befehlszeile, wenn Sie grafische Anwendungen im Stapelverfahren anhand von Shell-Skripts generieren.


Bilder über den Menüpunkt Exportieren Bild exportieren

So exportieren Sie ein Bild über den Menüpunkt Exportieren Bild:

1	Wählen Sie das zu exportierende Objekt bzw. Gruppenobjekt, indem Sie im Layouteditor auf das Objekt klicken oder indem Sie es aus dem Objektnavigator auswählen.

2	Wählen Sie Datei [image] Exportieren [image] Bild, um das Dialogfeld Bild exportieren anzuzeigen.

3	Klicken Sie auf die Optionsschaltfläche Datenbank oder Datei, um anzugeben, ob Sie das Bild in eine Datei oder eine Datenbank exportieren möchten. Wenn Sie in eine Datei exportieren, geben Sie den Pfadnamen für die Datei an, in die Sie exportieren möchten, oder klicken Sie auf Durchsuchen, um eine Datei auszuwählen.

4	Wählen Sie das Bildformat für die Exportdatei aus der Dropdown-Liste Format.

5	Wählen Sie den Datentyp für das Bild aus der Dropdown-Liste Datentyp.

6	In der Dropdown-Liste Komprimierung gibt Graphics Builder die zulässigen Komprimierungstypen für das Bildformat an, das Sie in der Dropdown-Liste Format ausgewählt haben. Akzeptieren Sie den standardmäßigen Komprimierungstyp, den Graphics Builder angibt, oder wählen Sie einen anderen Typ aus der Dropdown-Liste. Obwohl der standardmäßige Komprimierungstyp für einige Bildformate "Kein" ist, müssen Sie einen Formattyp in der Dropdown-Liste angeben, wenn Sie ein anderes Objekt als ein Bildobjekt oder eine Gruppe von Objekten exportieren. Weitere Informationen über die Angabe der Komprimierung für jeden Formattyp finden Sie in PL/SQL Built-in Reference.

7	Wenn Sie in ein JPEG-Format exportieren, wählen Sie eine Qualität aus der Dropdown-Liste Qualität.

8	Klicken Sie auf OK.


Bilder über PL/SQL exportieren

  Beispiel

So exportieren Sie ein Bild über PL/SQL:

  Benutzen Sie die vordefinierte Prozedur OG_EXPORT_IMAGE.


Beispiel:  og_export_image

 /* Suppose you want to export a complex display as a GIF
**for publication on a World Wide Web page. The following
**procedure exports the currently open display as the image,
**"test.gif."
*/

PROCEDURE
BEGIN
   og_export_image('c:\test.gif', OG_FILESYSTEM,
OG_GIF_IFORMAT,og_root_object,
OG_LZWHDIFF_ICOMPRESSION);
END


Bilder über die Graphics Builder-Befehlszeile exportieren

  Beispiel

So exportieren Sie ein Bild über die Graphics Builder-Befehlszeile:

  Führen Sie die zu exportierende grafische Anwendung als Bild mit G30Run aus, und geben Sie den Bildnamen als Argument für den Parameter exportimage an.


Beispiel:  Bilder über die Graphics Builder-Befehlszeile exportieren

 /*This example provides a sample export-to-image command
*line argument.  It runs the display test.ogd and exports it
*to the image "test.gif."
*/

G30run openfile=C:\test.ogd userid=scott/tiger exportimage=C:\test.gif
Quit=yes


Über die vordefinierte Prozedur TOOL_INT

  Verwandte Themen

Die Vorbereitung des Aufrufs anderer Oracle-Produkte aus einer Graphics Builder-Anwendung entspricht in etwa der Vorbereitung des Aufrufs einer grafischen Anwendung aus einem anderen Produkt. Anstatt jedoch z.B. die vordefinierten Prozeduren zu benutzen, die Form Builder in der Bibliothek OG.PLL bereitstellt, benutzen Sie die vordefinierte Prozedur TOOL_INT.

Mit dieser vordefinierten Prozedur können Sie Informationen an ein anderes Produkt übergeben und das andere Produkt aus Ihrer grafischen Anwendung aufrufen.


Über die synchrone Kommunikation

Wenn Graphics Builder ein anderes Produkt synchron aufruft, wird die Ausführung der Graphics Builder-Anwendung unterbrochen, bis das aufgerufene Produkt vollständig ausgeführt wurde.

Um Daten an ein anderes Produkt zu übergeben, müssen Sie dieses Produkt synchron aufrufen.

Sie können andere Produkte aus folgenden Gründen ebenfalls auf diese Weise aufrufen:

•	Damit der Benutzer Werte in Form Builder eingeben muß, bevor fortgefahren werden kann.

•	Um Abfragedaten an Report Builder (in Reports Developer enthalten) zu übergeben und einen Bericht aufgrund dieser Abfragedaten auszuführen.


Über die asynchrone Kommunikation

Wenn Graphics Builder ein anderes Produkt asynchron aufruft, wird die Ausführung der Graphics Builder-Anwendung normal im Anschluß an den PL/SQL-Prozeduraufruf fortgesetzt, der das andere Produkt aufruft. Somit können Graphics Builder und das aufgerufene Produkt gleichzeitig ausgeführt werden.

Sie können keine Daten an ein anderes Produkt übergeben, wenn Sie es asynchron aufrufen.

Ein anderes Produkt kann aus folgenden Gründen auf diese Weise aufgerufen werden:

•	Zur Generierung eines Report Builder-Berichts auf einem anderen Gerät, wie z.B. einem Drucker.

•	Damit der Benutzer ein Oracle Book-Dokument während der Ausführung der grafischen Anwendung anzeigen kann.

Wenn Sie einen Datenparameter von Graphics Builder an ein anderes Produkt übergeben möchten, müssen Sie dieses Produkt im synchronen Kommunikationsmodus aufrufen.


Über Ausführungsmodi

Es gibt zwei Ausführungsmodi, in denen Graphics Builder ein anderes Oracle-Produkt aufrufen kann:

•	Laufzeit

•	Stapel

Das Verhalten in jedem dieser Ausführungsmodi unterscheidet sich bei jedem von Graphics Builder aufgerufenen Produkt. Außerdem unterstützen einige Oracle-Produkte einen bestimmten Ausführungsmodus möglicherweise nicht. Weitere Informationen finden Sie in der Dokumentation für das aufzurufende Produkt.


Informationen an andere Produkte übergeben

  Beispiele

So übergeben Sie Informationen an andere Produkte:

  Benutzen Sie Text- und Datenparameter, wie im Hilfethema Über das Austauschen von Daten zwischen der Form und der grafischen Anwendung beschrieben.


Beispiel:  Informationen aus Graphics Builder an andere Produkte übergeben

Angenommen, eine Graphics Builder-Anwendung soll Report Builder (In Reports Developer enthalten) mit folgenden Parametern aufrufen:

Name	Wert

USERID	scott/tiger
DESTYPE	printer
COPIES	2
my_param	67
Außerdem soll Report Builder seinen Bericht auf Daten aufbauen, die von Graphics Builder geliefert werden. Angenommen, die in Ihrem Bericht definierte Abfrage hat den Namen 'Q_1', und die in der Graphics Builder-Anwendung definierte Abfrage hat den Namen 'query0'.

Die folgende Prozedur erstellt eine Parameterliste mit der Bezeichnung 'my_plist' und fügt die obigen Parameter zu dieser Liste hinzu:

PROCEDURE create_plist IS
   the_list   tool_int.paramlist;

BEGIN
   the_list:=TOOL_INT.CREATE_PARAMETER_LIST('my_plist');
   TOOL_INT.ADD_PARAMETER(the_list, 'userid',
         TOOL_INT.TEXT_PARAMETER, 'scott/tiger');
   TOOL_INT.ADD_PARAMETER(the_list, 'destype',
         TOOL_INT.TEXT_PARAMETER, 'printer');
   TOOL_INT.ADD_PARAMETER(the_list, 'copies',
         TOOL_INT.TEXT_PARAMETER, '2');
   TOOL_INT.ADD_PARAMETER(the_list, 'my_param',
         TOOL_INT.TEXT_PARAMETER, '67');
   TOOL_INT.ADD_PARAMETER(the_list, 'Q_1',
         TOOL_INT.DATA_PARAMETER, 'query0');
END;


 Dieselbe Anmeldesitzung verwenden

  Beispiele

So benutzen Sie dieselbe Anmeldesitzung:

  Übergeben Sie die mit Graphics Builder angegebenen Anmeldeinformationen in Form eines Parameters an das andere Produkt. Wenn Sie dann ein anderes Produkt aus Graphics Builder aufrufen, können Sie die Anmeldesitzung mit dem aufgerufenen Produkt teilen. Mit dieser Methode kann auch das Dialogfeld Anmeldung umgangen werden.

Form Builder, Report Builder (in Reports Developer enthalten) und Oracle Book benutzen alle die Option USERID, um eine Datenbankverbindung herzustellen. Graphics Builder speichert die Anmeldeinformationen in Form von Attributen für die Anwendung. Sie können die vordefinierte Funktion OG_GET_ATTR verwenden, um diese Informationen abzurufen und sie dann in Form eines Textparameters in einer Parameterliste aufnehmen.


Beispiel:  Dieselbe Anmeldesitzung verwenden

In der folgenden Beispielprozedur wird dargestellt, wie eine DB-Adresse für eine entfernte Datenbank von Graphics Builder an Report Builder (in Reports Developer enthalten) übergeben wird:

PROCEDURE run_form IS
  rept_list  tool_int.paramlist;
  uname      VARCHAR2;
  pword      VARCHAR2;
  cnxn       VARCHAR2;
BEGIN
/*create the parameter list*/
  rept_list:=TOOL_INT.CREATE_PARAMETER_LIST('list1');

/*find OG login information*/
  uname:=OG_GET_AP_USERNAME;
  pword:=OG_GET_AP_PASSWORD;
  cnxn:=OG_GET_AP_CONNECTION;

/*add OG login info to parameter list*/
  TOOL_INT.ADD_PARAMETER (form_list, 'userid',
TOOL_INT.TEXT_PARAMETER, uname || '/' ||
pword || '@' || cnxn);
/*pass Report Builder the parameter list with login info*/
  TOOL_INT.RUN_PRODUCT(TOOL_INT.REPORTS, 'inventory.rpt',
TOOL_INT.ASYNCHRONOUS, TOOL_INT.RUNTIME, rept_list)
END;


Andere Produkte aus Graphics Builder aufrufen

So rufen Sie ein Produkt auf:

  Verwenden Sie die Prozedur TOOL_INT.RUN_PRODUCT. Diese Prozedur erfordert die folgenden Argumente:

•	Name des aufzurufenden Produkts

•	Form/Bericht/Dokument des Produkts

•	Kommunikationsmodus, in dem das Produkt aufgerufen werden soll

•	Zu benutzender Ausführungsmodus

•	Name der an das Produkt zu übergebenden Parameterliste


Form Builder aus Graphics Builder aufrufen

  Beispiele

So rufen Sie Form Builder aus Graphics Builder auf:

  Sie können Form Builder aus Graphics Builder aufrufen, um eine Form mit Abfragedaten aus der grafischen Anwendung anzuzeigen. Denken Sie daran, wenn Sie Daten von einem Produkt zu einem anderen übergeben, müssen Sie das Produkt im synchronen Modus aufrufen.


Beispiel:  Form Builder aus Graphics Builder aufrufen

Die folgende Prozedur ruft eine Form Builder Runtime-Anwendung auf und übergibt dieser Abfragedaten aus der grafischen Anwendung.

PROCEDURE open_form (the_form IN VARCHAR2) IS
  form_list  tool_int.paramlist;
  uname      VARCHAR2;
  pword      VARCHAR2;
  cnxn       VARCHAR2;
BEGIN
/*create the parameter list*/
  form_list:=TOOL_INT.CREATE_PARAMETER_LIST('list2');
  uname:=OG_GET_AP_USERNAME;
  pword:=OG_GET_AP_PASSWORD;
  cnxn:=OG_GET_AP_CONNECTION;

/*Add a parameter to the parameter list*/
  TOOL_INT.ADD_PARAMETER (form_list, 'userid',
TOOL_INT.TEXT_PARAMETER, uname || '/' ||
pword || '@' || cnxn);

/*pass Form Builder the parameter list*/
  TOOL_INT.RUN_PRODUCT(TOOL_INT.FORMS, 'the_form',
TOOL_INT.ASYNCHRONOUS, TOOL_INT.RUNTIME, form_list);
END;


Report Builder aus Graphics Builder aufrufen

  Beispiele

So rufen Sie Report Builder (in Reports Developer enthalten) aus Graphics Builder auf:

  Definieren Sie einen Trigger, der Report Builder im Stapelmodus aufruft und einen vordefinierten Bericht ausdruckt. Alternativ könnten Sie Report Builder Runtime zur Anzeige eines Berichts aufrufen.


Beispiel:  Report Builder aus Graphics Builder aufrufen

Im folgenden Beispiel wird eine Prozedur dargestellt, die eine Parameterliste zur Übergabe an Report Builder (in Reports Developer enthalten) erstellt und dann Report Builder aufruft, um den Bericht inventory.rep auszuführen. Außerdem umfaßt die Prozedur das Argument USERID in Form eines Textparameters, um das Anmelden-Dialogfeld von Report Builder zu unterdrücken.

PROCEDURE print_inv_rep IS
  rep_list  tool_int.paramlist;
BEGIN
/*create a parameter list*/
  rep_list:=TOOL_INT.CREATE_PARAMETER_LIST('list2');

/*add the USERID executable option to the list*/
  TOOL_INT.ADD_PARAMETER (rep_list, 'userid',
TOOL_INT.TEXT_PARAMETER, 'scott/tiger');

/*add the query data parameter to the list*/
  TOOL_INT.ADD_PARAMETER (rep_list, 'Q_inv',
TOOL_INT.DATA_PARAMETER, 'query_inv');

/*call Report Builder batch mode to print the report*/
  TOOL_INT.RUN_PRODUCT(TOOL_INT.REPORTS, 'inventory.rep',
TOOL_INT.SYNCHRONOUS, TOOL_INT.BATCH,
TOOL_INT.FILESYSTEM, rep_list);
END;

Die Ausführung der Graphics Builder-Anwendung wird unterbrochen, bis Report Builder das Ausdrucken des Berichts abgeschlossen hat.

Weitere Informationen über die Optionen der ausführbaren Report Builder-Dateien finden Sie in der Report Builder-Dokumentation.


Oracle Book aus Graphics Builder aufrufen

  Beispiele

So rufen Sie Oracle Book aus Graphics Builder auf:

  Sie können eine Prozedur verknüpfen, um eine Instanz von Oracle Book Runtime mit einer Schaltfläche in Ihrer grafischen Anwendung aufzurufen. Wenn das Oracle Book-Dokument über Hypertext-Ziele verfügt, können Sie mit dem Argument TARGET angeben, daß das Dokument bei einem bestimmten Zielort geöffnet wird.


Beispiel:  Oracle Book aus Graphics Builder aufrufen

Die folgende Schaltflächenprozedur öffnet ein Oracle Book-Dokument mit der Bezeichnung help.obd bei dem Zielnamen "start":

PROCEDURE OGBUTTONPROC0(buttonobj IN og_object, hitobj
 IN og_object, win IN og_window, eventinfo IN og_event)IS
  book_list  tool_int.paramlist;
BEGIN
/*create a parameter list*/
  book_list:=TOOL_INT.CREATE_PARAMETER_LIST('list1');

/*add the target executable option to the list*/
  TOOL_INT.ADD_PARAMETER (book_list, 'target',
TOOL_INT.TEXT_PARAMETER, 'start');

/*open Oracle Book at the target name specified above*/
  TOOL_INT.RUN_PRODUCT(TOOL_INT.BOOK, 'help.obd',
TOOL_INT.ASYNCHRONOUS, TOOL_INT.RUNTIME,
TOOL_INT.FILESYSTEM, book_list);
END;

In der Dokumentation zu Oracle Book finden Sie weitere ausführbare Argumente, die Sie beim Aufrufen von Oracle Book Runtime übergeben können.


Grafische Anwendungen im Dateisystem speichern

So speichern Sie eine grafische Anwendung im Dateisystem:

1	Wählen Sie Datei [image] Speichern unter [image] Datei, um das Datei-Dialogfeld Ihres Betriebssystems anzuzeigen.

2	Geben Sie einen eindeutigen Dateinamen für die grafische Anwendung an.

Sie können den Standarddateinamen von Graphics Builder behalten oder ihn durch einen eindeutigen Namen ersetzen.

3	Akzeptieren Sie das Dialogfeld, um die grafische Anwendung zu speichern.

Der Inhalt des Layouteditors und anderer Fenster innerhalb der grafischen Anwendung wird so gespeichert, wie Sie diese verlassen haben.


Grafische Anwendungen in der Datenbank speichern

So speichern Sie eine grafische Anwendung in der Datenbank:

1	Wählen Sie Datei [image] Speichern unter [image] Datenbank, um das Dialogfeld In Datenbank speichern anzuzeigen.

2	Geben Sie einen eindeutigen Namen für die grafische Anwendung in das Feld Name ein.

3	Klicken Sie auf Speichern, um die grafische Anwendung zu speichern.

Der Inhalt des Layouteditors und anderer Fenster innerhalb der grafischen Anwendung werden so gespeichert, wie Sie sie verlassen haben.

Sie müssen bei der Datenbank angemeldet sein und die entsprechende Zugriffsberechtigung haben, um grafische Anwendungen in der Datenbank zu speichern. Außerdem müssen die Graphics Builder-Tabellen in Ihrer Datenbank eingerichtet sein. Bitten Sie Ihren Datenbankadministrator um weitere Informationen.


Änderungen an grafischen Anwendungen verwerfen

So verwerfen Sie Änderungen an einer grafischen Anwendung:

  Wählen Sie Datei [image] Wiederherstellen, um die letzten Änderungen zu verwerfen.

Die grafische Anwendung wird in Form der zuletzt gespeicherten Version wiederhergestellt.


Grafische Anwendungen im Dateisystem umbenennen

So benennen Sie eine grafische Anwendung im Dateisystem um:

  Benennen Sie eine grafische Anwendung, die als Datei gespeichert ist, mit Ihrem Betriebssystem um. Sie müssen über die entsprechende Dateiberechtigung verfügen, um die Datei umbenennen zu können.

In Ihrer Betriebssystemdokumentation wird beschrieben, wie Sie Dateien richtig umbenennen.


Grafische Anwendungen in der Datenbank umbenennen

So benennen Sie eine grafische Anwendung um, die in der Datenbank gespeichert ist:

1	Wählen Sie Datei [image] Verwaltung [image] Umbenennen [image] Grafische Anwendung, um das Dialogfeld Umbenennen anzuzeigen.

2	Geben Sie den alten Namen und einen neuen Namen für die grafische Anwendung an.

3	Klicken Sie auf Umbenennen, um den neuen Namen anzuwenden.

Sie können eine grafische Anwendung umbenennen, die in der Datenbank gespeichert ist, wenn Sie sie erstellt haben oder Ihnen die Zugriffsberechtigung zu der Anwendung erteilt wurde.


Über das Umbenennen, Löschen und Erteilen von Zugriffsberechtigungen für exportierte Diagrammvorlagen

So benennen Sie exportierte Diagrammvorlagen um, löschen Sie diese bzw. erteilen Sie Zugriffsberechtigungen für diese:

  Die Prozeduren für das Umbenennen, Löschen und Erteilen von Zugriffsberechtigungen für exportierte Diagrammvorlagen sind dieselben wie bei grafischen Anwendungen.


Grafischen Anwendungen im Dateisystem Zugriffsberechtigungen erteilen und entziehen

So erteilen Sie einer grafischen Anwendung im Dateisystem eine Zugriffsberechtigung bzw. entziehen Sie diese:

  Bei einigen Betriebssystemen können Benutzer Lese-, Schreib- und Ausführungsberechtigungen für einzelne Dateien erteilen. Weitere Informationen über die Festlegung von Berechtigungen in Ihrem Betriebssystem finden Sie in der Betriebssystemdokumentation, oder fragen Sie Ihren Systemadministrator.


Grafischen Anwendungen in der Datenbank Zugriffsberechtigungen erteilen und entziehen

So erteilen Sie einer grafischen Anwendung, die in der Datenbank gespeichert ist, Zugriffsberechtigungen bzw. entziehen Sie diese:

1	Wählen Sie Datei [image] Verwaltung [image] Modulzugriff [image] Grafische Anwendung, um das Dialogfeld Modulzugriff in Datenbank anzuzeigen.

Dieses Dialogfeld enthält eine Liste aller grafischen Anwendungen, die in der Datenbank gespeichert sind und zu denen Sie eine Zugriffsberechtigung haben.

2	Wählen Sie eine grafische Anwendung aus der Liste.

3	Klicken Sie auf OK, um das Dialogfeld Modulzugriff anzuzeigen.

Dieses Dialogfeld enthält eine Liste der Benutzer, die eine Zugriffsberechtigung zu der grafischen Anwendung haben.

4	Geben Sie die Datenbank-User-ID der Person, der Sie eine Zugriffsberechtigung erteilen möchten, in das Feld Benutzer ein.

5	Klicken Sie auf Hinzufügen, um den Namen zu der Liste mit Zugriffsberechtigten hinzuzufügen.

6	Wählen Sie den Benutzernamen der Person, der Sie die Zugriffsberechtigung entziehen möchten, aus der Liste mit Zugriffsberechtigten.

7	Klicken Sie auf Entfernen, um den Benutzernamen aus der Liste mit Zugriffsberechtigten zu entfernen.

8	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld Modulzugriff zu schließen.

Die Zugriffsberechtigungen für die grafische Anwendung werden aktualisiert.

Sie können einem anderen Benutzer die Zugriffsberechtigung (Lesen/Schreiben/Ausführen) zu einer grafischen Anwendung erteilen, die Sie erstellt und in der Datenbank gespeichert haben. Der Benutzer muß jedoch auch eine Zugriffsberechtigung für die Graphics Builder-Datenbanktabellen haben. Weitere Informationen erhalten Sie vom Datenbankadministrator.


Externe Klänge verwalten

So verwalten Sie externe Klänge:

  Die Prozeduren für das Erteilen und Entziehen von Zugriffsberechtigungen, das Umbenennen und Löschen von Klängen im Dateisystem oder einer Datenbank sind dieselben wie bei grafischen Anwendungen.

Klänge, die Sie in Graphics Builder erstellt oder in die grafische Anwendung importiert haben, werden als in der grafischen Anwendung intern betrachtet. Der Speicherort des Klangs bestimmt, mit welchen Methoden Zugriffsberechtigungen erteilt und entzogen, Klänge umbenannt oder gelöscht werden können.


Grafische Objekte verwalten

So verwalten Sie grafische Objekte:

  Die Prozeduren für das Erteilen und Entziehen von Zugriffsberechtigungen, das Umbenennen und Löschen von grafischen Objekten sind dieselben wie bei grafischen Anwendungen.


Grafische Objekte exportieren

So exportieren Sie grafische Objekte:

1	Wenn Sie ein Bild exportieren, wählen Sie das Bild aus. Wenn Sie eine ganze grafische Anwendung als Zeichnung exportieren, nimmt Graphics Builder automatisch die gesamten grafischen Objekte auf den sichtbaren Ebenen der grafischen Anwendung auf.

2	Wählen Sie Datei [image] Exportieren, und wählen Sie dann den Typ des zu exportierenden grafischen Objekts.

Um z.B. Objekte zu exportieren, die Sie in Graphics Builder gezeichnet haben, wählen Sie Zeichnung. Daraufhin wird das Dialogfeld Exportieren angezeigt.

3	Geben Sie die gewünschten Optionen an, wie z.B. Dateiformat, in dem das grafische Objekt exportiert werden soll, Dateiname und Speicherort usw.

4	Klicken Sie auf OK, um die Informationen zu bestätigen und das Dialogfeld Exportieren zu schließen.

Die grafischen Objekte werden zu dem angegebenen Speicherort exportiert.

Sie können ein Bild aus einer grafischen Anwendung exportieren oder können alle sichtbaren Ebenen in der grafischen Anwendung als Zeichnung exportieren. Sie können grafische Objekte in das Dateisystem oder in eine Datenbank exportieren. Wenn Sie Objekte in der grafischen Anwendung gruppiert haben, behalten diese Objekte die gruppierten Attribute nicht bei, wenn sie in eine CGM-Datei exportiert werden.


Grafische Objekte mit PL/SQL exportieren

  Verwandte Themen

So exportieren Sie grafische Objekte mit PL/SQL:

  Benutzen Sie die vordefinierte Prozedur OG_EXPORT_DRAWING.

In dem folgenden Beispiel wird der Inhalt einer Ebene in eine CGM-Datei exportiert:

PROCEDURE export_the_drawing IS
   the_layer   OG_OBJECT;
BEGIN
   the_layer:=OG_GET_LAYER('layer0');
   OG_EXPORT_DRAWING('my_draw', OG_FILESYSTEM,
     OG_CGM16_DFORMAT, the_layer);
END;


Farbpaletten verwalten

So verwalten Sie Farbpaletten:

  Die Prozeduren für das Umbenennen, Löschen und das Erteilen von Zugriffsberechtigungen zu Farbpaletten sind dieselben wie bei grafischen Anwendungen. Gleichermaßen sind die Prozeduren für das Importieren und Exportieren von Farbpaletten dieselben wie bei grafischen Objekten.


Grafische Anwendungen im Objektnavigator löschen

So löschen Sie eine grafische Anwendung im Objektnavigator:

1	Wählen Sie das Objekt für die grafische Anwendung im Objektnavigator.

2	Klicken Sie auf Löschen, oder wählen Sie Navigator [image] Löschen.

Daraufhin wird ein Warnfenster angezeigt, in dem Sie den Löschenvorgang bestätigen müssen.

3	Klicken Sie auf Ja, um den Vorgang zu bestätigen.

Daraufhin wird die grafische Anwendung gelöscht.

Sie können eine geöffnete grafische Anwendung im Objektnavigator unabhängig davon löschen, wo sie gespeichert ist. Sie benötigen die entsprechende Zugriffsberechtigung zu der grafischen Anwendung, um sie zu löschen. Wenn Sie keine Schreibberechtigung für die Datei bzw. keine Zugriffsberechtigung zu der Datenbank haben, können Sie die grafische Anwendung nicht löschen.


Grafische Anwendungen aus dem Dateisystem löschen

So löschen Sie grafische Anwendungen aus dem Dateisystem:

  Sie können eine grafische Anwendung, die als Datei gespeichert ist, mit Ihrem Betriebssystem löschen. Sie benötigen die entsprechende Zugriffsberechtigung zu der Datei, um die grafische Anwendung löschen zu können.

In der Betriebssystemdokumentation wird beschrieben, wie Dateien richtig gelöscht werden.


Grafische Anwendungen aus der Datenbank löschen

So löschen Sie eine in der Datenbank gespeicherte grafische Anwendung:

1	Wählen Sie Datei [image] Verwaltung [image] Löschen [image] Grafische Anwendung, um das Dialogfeld Aus Datenbank löschen anzuzeigen.

2	Geben Sie den Namen der grafischen Anwendung an.

3	Klicken Sie auf Löschen, um die grafische Anwendung aus der Datenbank zu löschen.

Sie können eine in der Datenbank gespeicherte grafische Anwendung löschen, wenn Sie diese erstellt haben oder Ihnen die Zugriffsberechtigung zu dieser erteilt wurde.


Über Diagrammattribute

Mit Diagrammattributen werden Optionen für das Diagramm als Ganzes definiert, einschließlich der zugehörigen Diagrammvorlage und der Abfrage. Diagrammattribute können über das Dialogfeld Diagrammattribute aufgerufen werden und sind wie folgt eingeordnet:

Diagramm

Daten

Kategorien

Werte

PL/SQL

Im allgemeinen definieren Sie Diagrammattribute, indem Sie das Diagramm auswählen, das Attributblatt öffnen und die zu definierenden Optionen auswählen. Sie können auch viele dieser Optionen programmgesteuert mit PL/SQL definieren.


Umfaßt Namen und Titel des Diagramms, Diagrammtyp und Diagrammvorlage.


Umfaßt abfragebezogene Attribute wie eine Abfragefilterfunktion und den darzustellenden Datenbereich.


Umfaßt die Diagrammkategorien und eventuelle Unterkategorien, die in dem Diagramm dargestellt werden sollen. Kategoriendaten (unabhängige Daten) werden in festen Abständen dargestellt. Kategorien stehen in keiner mathematischen Beziehung zueinander und werden im allgemeinen auf der Kategorienachse dargestellt.


Umfaßt die Diagrammwerte und zugehörige Feldvorlagen. Wertdaten (abhängige Daten) beginnen im allgemeinen bei einem Wert und gehen bis zu einem anderen Wert. Wertdaten stehen in einer mathematischen Beziehung zueinander und werden im allgemeinen auf einer Werteachse dargestellt.


Umfaßt Mausereignisse und zugehörige Prozeduren für das Diagramm.


Diagrammattribute über den Layouteditor aufrufen und ändern

So rufen Sie Diagrammattribute über den Layouteditor auf:

  Doppelklicken Sie auf das Diagramm im Layouteditor, oder

  Wählen Sie das Diagramm im Layouteditor aus, und wählen Sie dann den Befehl Attribute aus dem Popup-Menü.

Sie können eine andere Abfrage und Diagrammvorlage zur Verknüpfung mit einem Diagramm sowie andere Optionen für das Diagramm als Ganzes angeben. Möglicherweise möchten Sie ein Diagramm benennen, um es programmgesteuert zu referenzieren. Sie können ein Diagramm auch mit einer Schaltflächenprozedur verknüpfen.

So ändern Sie Diagrammattribute über den Layouteditor:

1	Doppelklicken Sie auf das Diagramm, um das Dialogfeld Diagrammattribute anzuzeigen.

2	Geben Sie die gewünschten Optionen an.

3	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Diagrammattribute zu schließen, oder klicken Sie auf Anwenden, um die Änderungen an dem Diagramm anzuwenden, ohne das Dialogfeld Diagrammattribute zu schließen.


Diagrammattribute über den Objektnavigator aufrufen und ändern

So rufen Sie Diagrammattribute über den Objektnavigator auf:

  Doppelklicken Sie auf das Diagrammobjekt im Objektnavigator, oder

  Wählen Sie das Diagrammobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü, oder

  Wählen Sie das Diagrammobjekt im Objektnavigator aus, und wählen Sie Werkzeuge [image] Attribute.

Sie können eine andere Abfrage und eine andere Diagrammvorlage zur Verknüpfung mit einem Diagramm angeben sowie andere Optionen für das Diagramm als Ganzes. Unter Umständen möchten Sie das Diagramm benennen, um es programmgesteuert zu referenzieren. Sie können ein Diagramm auch mit einer Schaltflächenprozedur verknüpfen.

So ändern Sie die Diagrammattribute über den Objektnavigator:

1	Doppelklicken Sie auf das Diagramm, um das Dialogfeld Diagrammattribute anzuzeigen.

2	Geben Sie die gewünschten Optionen an.

3	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Diagrammattribute zu schließen, oder klicken Sie auf Anwenden, um die Änderungen in dem Diagramm anzuwenden, ohne das Dialogfeld Diagrammattribute zu schließen.


Basislinienwerte festlegen

So geben Sie einen Basislinienwert an:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt, wie z.B. den Diagrammtitel.

2	Wählen Sie den Befehl Rahmen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Rahmen, um das Dialogfeld Rahmenattribute anzuzeigen.

3	Klicken Sie auf das Registertab Achsenrahmen, um das Register Achsenrahmen anzuzeigen.

4	Geben Sie den gewünschten Wert der Basislinie an.

5	Klicken Sie auf OK, um die Änderungen in dem Diagramm anzuwenden.


Balken- und Säulenattribute angeben

So geben Sie Balken- und Säulenattribute an:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt.

2	Wählen Sie den Befehl Rahmen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Rahmen, um das Dialogfeld Rahmenattribute anzuzeigen.

3	Gegebenenfalls klicken Sie auf das Registertab Rahmen, um das Register Rahmen anzuzeigen.

4	Wählen Sie eine der Optionen für die Tiefe, die Schattentiefe oder die Schattenrichtung.

5	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Rahmenattribute zu schließen.

Ob diese Änderung im Diagrammrahmen oder der Feldvorlage sichtbar ist, hängt vom ausgewählten Diagrammtyp ab.


Legendenattribute angeben

So geben Sie Legendenattribute an:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt, wie z.B. den Diagrammtitel aus.

2	Wählen Sie den Befehl Rahmen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Rahmen, um das Dialogfeld Rahmenattribute anzuzeigen.

3	Geben Sie die gewünschten Einstellungen an.

4	Klicken Sie auf OK, um die Änderungen an dem Rahmen anzuwenden und das Dialogfeld Rahmenattribute zu schließen.


Legende verschieben

So verschieben Sie die Legende:

1	Klicken Sie, und ziehen Sie den Legendenrahmen an die gewünschte Stelle.

2	Gegebenenfalls wählen Sie Aktualisieren aus dem Popup-Menü, oder wählen Sie Diagramm [image] Diagramm aktualisieren, um das Erscheinungsbild des Diagramms zu aktualisieren.


Über das Hinzufügen, Bearbeiten und Löschen von Referenzlinien

Sie können eine Referenzlinie, die einen signifikanten Wert darstellt, in dem Diagrammrahmen hinzufügen. Nachdem Sie eine Referenzlinie zu einem Diagramm hinzugefügt haben, können Sie die Attribute der Referenzlinie bearbeiten oder die Referenzlinie aus dem Diagramm löschen. Sie können eine Referenzlinie verschieben, indem Sie den Wert im Dialogfeld Referenzlinienattribute bearbeiten.


Referenzlinien hinzufügen

So fügen Sie eine Referenzlinie hinzu:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt.

2	Wählen Sie den Befehl Referenzlinien aus dem Popup-Menü, oder wählen Sie Diagramm [image] Referenzlinien, um das Dialogfeld Referenzlinienattribute anzuzeigen.

Wenn momentan keine Referenzlinien vorhanden sind, werden Sie in einem Warnfenster gefragt, ob eine neue Referenzlinie erstellt werden soll. Wenn Sie auf Ja klicken, wird automatisch in dem Dialogfeld Referenzlinienattribute eine neue Referenzlinie erstellt.

3	Klicken Sie in dem Dialogfeld auf Neu, um eine neue Referenzlinie zu erstellen.

4	Akzeptieren Sie die Standardbeschriftung der Legende und den Standardwert, oder ändern Sie die Einstellungen.

5	Klicken Sie auf OK, um in dem Diagrammrahmen eine neue Referenzlinie zu zeichnen und das Register Referenzlinienattribute zu schließen.


Referenzlinienattribute bearbeiten

So bearbeiten Sie Referenzlinienattribute:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt aus.

2	Wählen Sie den Befehl Referenzlinien aus dem Popup-Menü, oder wählen Sie Diagramm [image] Referenzlinien, um das Dialogfeld Referenzlinienattribute anzuzeigen.

3	Wählen Sie die Referenzlinie, deren Attribute geändert werden sollen, aus der Dropdown-Liste Referenzlinie.

4	Geben Sie die gewünschten Optionen an.

5	Klicken Sie auf OK, um die Änderungen an der Referenzlinie anzuwenden und das Dialogfeld Referenzlinienattribute zu schließen.


Referenzlinien löschen

So löschen Sie eine Referenzlinie:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt aus.

2	Wählen Sie den Befehl Referenzlinien aus dem Popup-Menü, oder wählen Sie Diagramm [image] Referenzlinien, um das Dialogfeld Referenzlinienattribute anzuzeigen.

3	Wählen Sie die zu löschende Referenzlinie aus der Dropdown-Liste Referenzlinie.

4	Klicken Sie auf Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

5	Klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.

6	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Referenzlinienattribute zu schließen.


Über die Angabe von Achsenrahmenattributen

Sie können das Erscheinungsbild von Achsendiagrammen mit dem Dialogfeld Rahmenattribute ändern. Rahmenattribute umfassen Werte der Basislinie, Kategorienbreite, Tiefe, Schattentiefe und Schattenrichtung. Sie können Tiefe, Schattentiefe und Schattenrichtung angeben. Außerdem können Sie mit dem Dialogfeld Rahmenattribute die Legende verbergen bzw. anzeigen. Sie können auch angeben, daß die Legende verborgen bzw. in mehrere Spalten aufgeteilt werden soll.


Über die Angabe von Achsenattributen

Bei Achsendiagrammen umfassen die Achsenattribute Optionen, die für den ausgewählten Achsentyp spezifisch sind: Kategorien-, Werte- oder Datumsachse.

Außerdem können Sie benutzerdefinierte Beschriftungen für eine Achse angeben und Attribute für Teilungen und Teilungsbeschriftungen in dem Diagramm festlegen bzw. Rastereinstellungen angeben.


Attribute von Kategorien-, Werte- und Datumsachsen angeben

So geben Sie Attribute von Kategorien-, Werte- und Datumsachsen an:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt aus, wie z.B. eine der Achsen.

2	Wählen Sie den Befehl Achsen aus dem Popup-Menü aus, oder wählen Sie Diagramm [image] Achsen, um das Dialogfeld Achsenattribute anzuzeigen.

3	Wählen Sie eine Achse (z.B. X, Y1), deren Attribute geändert werden sollen, aus der Dropdown-Liste Achse aus.

4	Geben Sie die gewünschten Optionen an, wie z.B. Datentyp, Achsenrichtung, Teilung und Teilungsbeschriftung usw.

Klicken Sie auf die Registertabs am oberen Rand des Dialogfelds, um zwischen den einzelnen Registerseiten zu wechseln.

5	Klicken Sie auf OK, um die Änderungen für die ausgewählte Achse anzuwenden.


Über das Aktualisieren von Diagrammen

Wenn sich die Daten im Dialogfeld Attribute Abfrage ändern oder Sie die Elemente eines Diagramms bzw. eine Funktion auf irgendeine Weise geändert haben, müssen Sie das Diagramm aktualisieren, damit diese Änderungen berücksichtigt werden. Es gibt drei Möglichkeiten, ein Diagramm zu aktualisieren:

•	Automatisch

•	Manuell

•	Mit PL/SQL

Sie können PL/SQL für das Aktualisieren von Diagrammen benutzen, indem Sie Timer-Trigger zu bestimmten Intervallen ausführen.


Über dynamische und statische Diagramme

  Verwandte Themen

Ein dynamisches Diagramm ist ein Diagramm, das mit einer Datenquelle verknüpft ist. Anfänglich ist jedes Diagramm dynamisch, weil Graphics Builder Daten benötigt, mit denen das Diagramm gezeichnet wird. Wenn ein Diagramm dynamisch bleibt, können Sie es jedesmal aktualisieren, wenn Sie die zugehörige Abfrage erneut ausführen oder die Diagrammvorlage ändern. Wenn Sie ein Diagramm aktualisieren, überprüft Graphics Builder den Inhalt des Daten-Registers und den Diagrammvorlagen-Editor und zeichnet das Diagramm aufgrund der neuen Informationen neu.

Sie haben auch die Möglichkeit, das Diagramm in ein statisches Objekt zu ändern.


Über das Umbenennen von Diagrammen

  Verwandte Themen

Es gibt zwei Stellen in Graphics Builder, an denen der Name eines Diagramms geändert werden kann:

•	Im Objektnavigator

•	Im Dialogfeld Diagrammattribute

Wenn Sie ein Diagramm umbenennen, das in einem PL/SQL-Programmblock referenziert wird, müssen Sie diese Referenzen so ändern, daß der neue Diagrammname berücksichtigt wird.


Über das Löschen von Diagrammen

  Verwandte Themen

Wenn Sie ein erstelltes Diagramm vollständig entfernen und nicht ausschneiden und in die Systemzwischenablage kopieren möchten, benutzen Sie:

•	den Objektnavigator

•	das Menü

Wenn Sie ein Diagramm löschen, das in einem der PL/SQL-Programmblöcke referenziert wird, müssen Sie diese Referenzen ändern, um den Löschenvorgang zu berücksichtigen.

Beachten Sie auch, daß durch das Löschen eines Diagramms die Abfrage nicht gelöscht wird, mit der dieses Diagramm erstellt wurde. Außerdem werden keine Diagrammvorlagen gelöscht, die für dieses Diagramm benutzt wurden. Sie können diese separat löschen oder erneut benutzen.


Diagramme automatisch aktualisieren

So aktualisieren Sie Ihre Diagramme automatisch:

  Im Register Daten des Dialogfeldes Diagrammattribute aktivieren Sie die Option Diagramm nach Ausführen der Abfrage aktualisieren, indem Sie das entsprechende Kontrollkästchen auswählen.

Das Diagramm wird bei jeder Ausführung der Abfrage aktualisiert.


Diagramme manuell aktualisieren

So aktualisieren Sie Ihre Diagramme manuell:

1	Wählen Sie das zu aktualisierende Diagramm aus.

2	Wählen Sie Aktualisieren aus dem Popup-Menü, oder Diagramm [image] Diagramm aktualisieren aus.

Graphics Builder zeichnet das Diagramm aufgrund der neuesten Informationen neu.


Diagramme mit PL/SQL aktualisieren

So aktualisieren Sie Diagramme mit PL/SQL:

  Benutzen Sie einen Timer-Trigger.

In der folgenden Prozedur wird die Benutzung eines Timer-Triggers dargestellt.

/*You could assign the following procedure to a
**timer trigger to be executed at a specified
**interval.  This example updates the specified
**chart to reflect new query results or new
**properties that have been applied to chart
**elements.
*/

PROCEDURE my_timer IS
   my_query   og_query;
   my_chart   og_object;
BEGIN
   my_query:=og_get_query('emp_query');
   my_chart:=og_get_object('emp_chart');
   og_execute_query(my_query);
   og_update_chart(my_chart, OG_ALL_CHUPDA);
END;


Diagramme in grafische Objekte konvertieren

So konvertieren Sie ein dynamisches Diagramm in ein statisches Grafikobjekt:

1	Wählen Sie das Diagramm, das in ein grafisches Objekt konvertiert werden soll.

2	Wählen Sie Diagramm [image] In Grafikobjekt konvertieren.

Graphics Builder konvertiert das Diagramm in ein Gruppenobjekt, das aus Formen besteht, die Sie individuell bearbeiten können. Als Grafikobjekt kann das Diagramm nicht mehr aktualisiert werden.


Diagramme im Objektnavigator umbenennen

So benennen Sie ein Diagramm im Objektnavigator um:

1	Wählen Sie das umzubenennende Diagrammobjekt aus.

2	Setzen Sie den Mauszeiger zu dem Diagrammnamen.

Der Cursor ändert seine Form von einem Zeiger in einen Texteditor.

3	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitungsmodus zu gehen.

Wenn Sie den ganzen Namen ersetzen möchten, klicken Sie auf den Namen, um ihn hervorzuheben, und geben Sie dann den neuen Namen ein.


Diagramme im Dialogfeld Diagrammattribute umbenennen

So benennen Sie Ihr Diagramm im Dialogfeld Diagrammattribute um:

1	Öffnen Sie das Register für das Diagramm.

2	Ändern Sie den Diagrammnamen im Feld Name.

3	Klicken Sie auf OK, um den neuen Namen anzuwenden und das Dialogfeld Diagrammattribute zu schließen.


Diagramme im Objektnavigator löschen

So löschen Sie ein Diagramm im Objektnavigator:

1	Wählen Sie das Diagrammobjekt im Navigator aus.

2	Klicken Sie auf Löschen, oder wählen Sie Navigator [image] Löschen aus dem Menü.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

3	Klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.


Diagramme mit dem Menü löschen

So löschen Sie ein Diagramm mit dem Menü:

1. 	Wählen Sie das zu löschende Diagramm im Layouteditor aus.

2. 	Wählen Sie Bearbeiten [image] Löschen.


Über das Ändern von Objekten

  Verwandte Themen

Die meisten Objekte werden über die zugehörigen Attributblätter geändert. Sie können das Attributblatt bzw. das Dialogfeld für ein bestimmtes Objekt auf drei verschiedene Arten aufrufen:

•	Doppelklicken Sie im Objektnavigator auf das Symbol des zu bearbeitenden Objekts, oder

•	Wählen Sie das Objekt aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü, oder

•	Wählen Sie das Objekt, und wählen Sie Werkzeuge [image] Attribute.

Der zu bearbeitende Objekttyp bestimmt, welche Ereignisse eintreten und wie vorgegangen wird.


Über die Auswahl von Objekten im Objektnavigator

Je nachdem, welche Aktion mit den ausgewählten Objekten durchgeführt werden soll, können Sie auch einzelne oder mehrere Objekte nach dem Knotennamen im Objektnavigator auswählen. Wenn Sie einen Knoten für einen Objektnamen im Objektnavigator auswählen, wird das Objekt auch im Layouteditor ausgewählt.

Objekte werden besonders dann im Objektnavigator ausgewählt, wenn sie sehr klein sind oder sehr eng nebeneinander stehen und im Layouteditor schwierig auszuwählen sind.

Wenn Sie ein Objekt auswählen, das zu einer Gruppe gehört, wird die Objektgruppe am Anfang der zugehörigen Gruppenstruktur ausgewählt. Sie können mehrere Objekte auswählen, indem Sie bei gedrückter Umschalttaste auf jedes Objekt klicken. Wenn das Werkzeug Auswählen aktiv ist, können Sie Objekte verschieben, indem Sie auf sie klicken und sie ziehen. Sie können Objekte skalieren, indem Sie deren Steuerungspunkte ziehen.


Über Regeln für Geltungsbereiche

Graphics Builder setzt bestimmte Regeln für Geltungsbereiche bei der Auswahl von Objekten durch. Diese Regeln werden wirksam, während ein beliebiges Objekt ausgewählt ist. Hier handelt es sich um folgende Regeln:

1	Mit dem Werkzeug Auswählen können Sie nur Objekte auswählen, die zu derselben Gruppe gehören, wie das bzw. die momentan ausgewählten Objekte. Um ein Objekt in einer anderen Gruppe auszuwählen - oder ein Objekt, das in keiner Gruppe vorhanden ist -, gehen Sie folgendermaßen vor:

Heben Sie zuerst die Auswahl aller Objekte auf, indem Sie auf einen nicht belegten Bereich des Layouts klicken und dann das andere Objekt wie normal auswählen.

Wählen Sie eines der Objekte im Untermenü Anordnen [image] Gruppenvorgänge, um ein Objekt zu einer bestehenden Gruppe hinzuzufügen.

2	Sie können nur dann mehrere Objekte auswählen, wenn diese zu derselben Gruppe gehören (d.h. gleichrangige Objekte sind).


Einzelne oder Gruppenobjekte auswählen

So wählen Sie ein einzelnes oder Gruppenobjekt aus:

1	Klicken Sie auf das Werkzeug Auswählen in der Werkzeugpalette.

2	Klicken Sie auf das Objekt, um es auszuwählen.

Sie können auch einen Bereich um das Objekt ziehen, um es auszuwählen.

So wählen Sie ein einzelnes oder Gruppenobjekt aus, während andere Objekte ausgewählt sind:

1	Klicken Sie auf das Werkzeug Auswählen in der Werkzeugpalette.

2	Klicken Sie bei gedrückter Umschalttaste auf das Objekt, um es auszuwählen.

Sie können auch die Umschalttaste gedrückt halten, während Sie einen Bereich um das Objekt ziehen, um es auszuwählen.

3	Wiederholen Sie diesen Vorgang für jedes auszuwählende Objekt.


Mehrere Objekte auswählen

So wählen Sie mehrere Objekte aus:

1	Wählen Sie das Werkzeug Auswählen aus der Werkzeugpalette aus.

2	Ziehen Sie einen Bereich um die Objekte, um sie auszuwählen, oder wählen Sie die Objekte nacheinander, wobei Sie mit gedrückter Umschalttaste klicken, nachdem Sie das erste Objekt ausgewählt haben.


Einzelne Objekte innerhalb von Gruppenobjekten auswählen

So wählen Sie nur ein einzelnes Objekt innerhalb eines Gruppenobjekts aus:

1	Klicken Sie auf das Werkzeug Auswählen in der Werkzeugpalette.

2	Klicken Sie auf das Gruppenobjekt, um es auszuwählen.

Sie können auch einen Bereich um das Gruppenobjekt ziehen, um es auszuwählen.

3	Klicken Sie auf das untergeordnete Objekt, um es auszuwählen.

Wenn Sie das Werkzeug Auswählen benutzen, um auf ein einzelnes Objekt zu klicken, das Bestandteil einer Gruppe ist, wählen Sie die Gruppe der höchsten Ebene, zu der dieses Objekt gehört.

So wählen Sie ein einzelnes Objekt innerhalb einer Gruppe, während andere Objekte innerhalb derselben Gruppe ausgewählt sind:

1	Klicken Sie auf das Werkzeug Auswählen in der Werkzeugpalette.

2	Klicken Sie auf das Gruppenobjekt, um es auszuwählen.

Sie können auch die Umschalttaste gedrückt halten, während Sie einen Bereich um das Gruppenobjekt ziehen, um es auszuwählen.

3	Klicken Sie auf ein untergeordnetes Objekt, um es auszuwählen.

4	Klicken Sie mit gedrückter Umschalttaste auf ein zweites untergeordnetes Objekt in der Gruppe, um es auszuwählen.

5	Wiederholen Sie Schritt 4 für jedes untergeordnete Objekt, das Sie auswählen möchten.

Sie können mehrere Objekte gleichzeitig auswählen, wenn diese dasselbe übergeordnete Objekt haben.


Alle Objekte auswählen

So wählen Sie alle Objekte in dem Layout aus:

  Wählen Sie Bearbeiten [image] Alles auswählen.

Alle Objekte in der aktiven Ebene werden ausgewählt.


Objekte im Objektnavigator auswählen

Jedes im Navigator aufgeführte Objekt verfügt von links nach rechts über drei Grundbestandteile:

Unterobjektanzeige

Typsymbol

Name

So wählen Sie ein Objekt im Objektnavigator aus:

  Klicken Sie auf das Symbol für den Objekttyp oder auf den Namen im Objektnavigator.

Beachten Sie, daß bei der Auswahl eines bestehenden Objekts (z.B. SAL_bars) im Objektnavigator die entsprechenden Objekte im Layouteditor ausgewählt werden.

Beachten Sie auch, daß der Name des ausgewählten Objekts in der Titelleiste des Objektnavigator-Fensters angezeigt wird, so daß Sie wissen, welches Objekt gerade ausgewählt ist.

Sie können mehrere Objekte im Navigator auswählen, indem Sie die Umschalttaste gedrückt halten, während Sie auf ein Symbol für den Objekttyp klicken.


Unterobjektanzeige

Das hervorgehobene Pluszeichen gibt an, daß Sie dieses Objekt mit den zugehörigen Unterobjekten einblenden können. Mit einem inaktiven Pluszeichen wird angegeben, daß das Objekt keine Unterobjekte hat und nicht eingeblendet werden kann. Das Minuszeichen gibt an, daß das Objekt schon eingeblendet ist.


Typsymbol

Gibt den Objekttyp an, wie z.B. Ebene, Diagramm, Diagrammelement, Form usw.


Name

Entweder der Standardname, der von Graphics Builder zugewiesen wird, oder der von Ihnen angegebene Name.


Auswahl von Objekten aufheben

So heben Sie die Auswahl von Objekten auf:

  Um die Auswahl aller Objekte aufzuheben, klicken Sie auf einen leeren Bereich des Layouts.

  Um die Auswahl von einem unter mehreren ausgewählten Objekten aufzuheben, klicken Sie mit gedrückter Umschalttaste auf das bzw. die Objekte.


Einzelne oder Gruppenobjekte verschieben

So verschieben Sie ein einzelnes oder Gruppenobjekt:

1	Wählen Sie das zu verschiebende Objekt aus.

2	Klicken Sie innerhalb der Umrandung des Objektes, und ziehen Sie das Objekt an die gewünschte Stelle.

Um die Position des Objekts bezogen auf die horizontale oder vertikale Achse beizubehalten, halten Sie beim horizontalen oder vertikalen Ziehen die Umschalttaste gedrückt.

Sie können ein Objekt auch Pixel für Pixel mit den Pfeiltasten in eine beliebige Richtung verschieben.


Mehrere Objekte verschieben

So verschieben Sie mehrere Objekte:

1	Wählen Sie die zu verschiebenden Objekte aus.

2	Klicken Sie innerhalb der Umrandung eines einzelnen ausgewählten Objekts, und ziehen Sie es an die gewünschte Stelle. Alle anderen ausgewählten Objekte werden mit dem Objekt verschoben.


Objekte im Objektnavigator neu anordnen

So ordnen Sie ein Objekt im Objektnavigator neu an:

  Klicken und ziehen Sie das Objekt an die gewünschte Stelle in der Objekthierarchie.

Mit dieser Aktion wird nur die "Reihenfolge" von Objekten in der Navigatorhierarchie geändert. Um die physische Position des Objekts im Layout zu ändern, müssen Sie das Objekt im Layouteditor verschieben.

Die Objekte werden im Navigator in der Reihenfolge aufgeführt, in der sie erstellt werden.


Objekte ausrichten

So richten Sie Objekte aus:

1	Wählen Sie die auszurichtenden Objekte aus.

2	Wählen Sie Anordnen [image] Objekte ausrichten, um das Dialogfeld Objekte ausrichten anzuzeigen.

3	Geben Sie die gewünschten Ausrichtungseinstellungen an, z.B. ob die Objekte am oberen oder unteren Rand, am linken oder rechten Rand oder zentriert ausgerichtet werden sollen. Sie können auch angeben, daß Objekte aneinander oder am Raster ausgerichtet werden sollen.

4	Klicken Sie auf OK, um die Ausrichtungseinstellungen zu bestätigen und die Objekte auszurichten.

So richten Sie Objekte mit den aktuellen Ausrichtungseinstellungen aus:

1	Wählen Sie die auszurichtenden Objekte aus.

2	Wählen Sie Anordnen [image] Ausrichtung wiederholen.

Die Objekte werden mit den aktuellen Einstellungen ausgerichtet, wie im Dialogfeld Objekte ausrichten festgelegt.

Nachdem Sie Ausrichtungseinstellungen angegeben haben, bleiben diese Einstellungen aktiv, bis Sie sie ändern. Sie können die Ausrichtungseinstellungen einmal definieren und dann nach Bedarf wiederholen.


Stapelreihenfolge ändern

So ändern Sie die Stapelreihenfolge:

1	Wählen Sie die zu verschiebenden Objekte aus.

2	Wählen Sie das Menü Anordnen, und gehen Sie dann folgendermaßen vor:

•	Um das bzw. die Objekte vor das direkt davor stehende Objekt zu verschieben, wählen Sie Eins vor.

•	Um das bzw. die Objekte hinter das direkt dahinter stehende Objekt zu verschieben, wählen Sie Eins zurück.

•	Um das bzw. die Objekte vor alle anderen Objekte zu verschieben, wählen Sie In den Vordergrund.

•	Um das bzw. die Objekte hinter alle anderen Objekte zu verschieben, wählen Sie In den Hintergrund.


Objekte programmgesteuert verschieben

  Verwandte Themen

So verschieben Sie Objekte programmgesteuert:

  Benutzen Sie die vordefinierte Prozedur OG_MOVE.

In dem folgenden Beispiel wird das angegebene Objekt an eine andere Stelle in dem Layout verschoben:

PROCEDURE move_inventory(invent_obj IN og_object) IS

   distance   OG_POINT;
BEGIN
   distance.x:=(3*OG_INCH);
   distance.y:=(3*OG_INCH);
   OG_MOVE(invent_obj, distance);
END;


Objekte kopieren

So kopieren Sie Objekte:

1	Wählen Sie das bzw. die zu kopierenden Objekte aus.

2	Klicken Sie auf Kopieren, wählen Sie Bearbeiten [image] Kopieren aus, oder wählen Sie Kopieren aus dem Popup-Menü.

Graphics Builder speichert das bzw. die Objekte in der Zwischenablage.


Objekte ausschneiden

So schneiden Sie Objekte aus:

1	Wählen Sie das bzw. die auszuschneidenden Objekte aus.

2	Wählen Sie den Befehl Ausschneiden aus dem Popup-Menü, oder klicken Sie auf Ausschneiden, bzw. wählen Sie Bearbeiten [image] Ausschneiden.

Graphics Builder löscht das bzw. die Objekte aus dem Layout und speichert sie in der Zwischenablage.


Objekte löschen

So löschen Sie Objekte:

1	Wählen Sie das bzw. die zu löschenden Objekte.

2	Wählen Sie den Befehl Löschen aus dem Popup-Menü, oder wählen Sie Bearbeiten [image] Löschen.

Graphics Builder löscht das bzw. die Objekte aus dem Layout, ohne daß sich dies auf den Inhalt der Zwischenablage auswirkt.

Gelöschte Objekte können nicht wiederhergestellt werden.


Objekte programmgesteuert löschen

  Verwandte Themen

So löschen Sie Objekte programmgesteuert:

  Benutzen Sie das vordefinierte PL/SQL-Unterprogramm OG_DESTROY.

Das folgende Beispiel löscht ("zerstört") das angegebene Fenster aus der Laufzeitanzeige:

PROCEDURE destroy_USA IS
   the_window   OG_WINDOW;
BEGIN
   the_window:=OG_GET_WINDOW('USA_window');
   OG_DESTROY(the_window);
END;


Objekte einfügen

So fügen Sie Objekte ein:

  Klicken Sie auf Einfügen, oder wählen Sie Bearbeiten [image] Einfügen.

Graphics Builder fügt das bzw. die Objekte aus der Zwischenablage an derselben Stelle in das Layout ein, wie das bzw. die Originale. Das Objekt ist ausgewählt, und Sie können es verschieben.

Wenn Sie direkt über dem Originalobjekt einfügen, sehen Sie das Original erst, wenn Sie die Kopie verschieben.


Objekte duplizieren

So duplizieren Sie Objekte in dem Layout:

1	Wählen Sie das bzw. die zu duplizierenden Objekte.

2	Wählen Sie Bearbeiten [image] Duplizieren.

Graphics Builder dupliziert das bzw. die Objekte in dem Layout leicht versetzt von der Position des Originals.

Sie können das anfänglich ausgewählte Objekt mehrmals duplizieren, indem Sie immer wieder
Bearbeiten [image] Duplizieren auswählen.


Objekte programmgesteuert duplizieren

  Verwandte Themen

So duplizieren Sie Objekte programmgesteuert:

  Benutzen Sie das vordefinierte Unterprogramm OG_CLONE.

Das folgende Beispiel erstellt ein neues Objekt, das mit dem angegebenen Objekt identisch ist:

PROCEDURE dup_object(my_old_object IN og_object) IS
   my_new_object   OG_OBJECT;
BEGIN
   my_new_object:=OG_CLONE(my_old_object);
END;


Objekte löschen

So löschen Sie Objekte:

  Schneiden Sie die Objekte aus dem Layout aus bzw. löschen Sie sie. Beim Ausschneiden werden Objekte gelöscht und in der Zwischenablage gespeichert, damit Sie sie an einer anderen Stelle einfügen können. Beim Löschen werden die Objekte gelöscht, ohne daß sich dies auf den Inhalt der Zwischenablage auswirkt.

Außerdem können Sie Objekte aus dem Objektnavigator löschen.


Objekte aus dem Objektnavigator löschen

  Verwandte Themen

So löchen Sie ein Objekt aus dem Objektnavigator:

1	Wählen Sie das zu entfernende Objekt.

2	Klicken Sie auf Löschen, oder wählen Sie Navigator [image] Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

3	Klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.

Wenn Sie ein Objekt löschen, das in einem Programmblock referenziert wird, müssen Sie den Programmblock entsprechend bearbeiten.


Symbolgröße festlegen

So legen Sie die Größe von Symbolobjekten fest:

1	Wählen Sie das Symbolobjekt aus.

2	Wählen Sie Format [image] Symbol, um ein Untermenü mit Optionen anzuzeigen.

3	Wählen Sie Groß, Mittel oder Klein.

Die ausgewählte Größe wird für das momentan ausgewählte Symbolobjekt angewendet. Die Einstellung bleibt während der momentanen grafischen Anwendung wirksam, bis Sie sie erneut ändern.


Objekte skalieren

So skalieren Sie Objekte:

  Ziehen Sie einen der vier Steuerungspunkte an eine neue Position. Die Skalierung des Objekts wird dadurch bestimmt, wie Sie den Steuerungspunkt ziehen.

Um das Höhen-/Breitenverhältnis des Objekts beizubehalten, halten Sie die Umschalttaste gedrückt, während Sie den Steuerungspunkt an eine neue Position ziehen.


Einzelne oder Gruppenobjekte skalieren

So skalieren Sie ein einzelnes oder Gruppenobjekt:

1	Wählen Sie das zu skalierende Objekt aus.

2	Klicken Sie auf einen Steuerungspunkt, und ziehen Sie diesen an eine neue Position.


Mehrere Objekte skalieren

So skalieren Sie mehrere Objekte:

1	Wählen Sie die zu skalierenden Objekte aus.

2	Klicken Sie auf den Steuerungspunkt eines einzelnen ausgewählten Objekts, und ziehen Sie es an eine neue Position.

Die Größe aller anderen ausgewählten Objekte ändert sich relativ zu diesem Objekt.


Mehreren Objekten dieselbe Größe zuweisen

So weisen Sie mehreren Objekten dieselbe Größe zu:

1	Wählen Sie die zu skalierenden Objekte aus.

2	Wählen Sie Anordnen [image] Skalierung, um das Dialogfeld Skalierung anzuzeigen.

3	Geben Sie die gewünschten Optionen an, z.B. ob für Höhe und Breite nach dem größeren oder kleineren Objekt skaliert oder ein Mittelwert benutzt werden soll, und welche Maßeinheit verwendet werden soll.

4	Klicken Sie auf OK, um die Objekte entsprechend den Einstellungen zu skalieren, und schließen Sie das Dialogfeld Skalierung.


Objekte programmgesteuert skalieren

  Verwandte Themen

So skalieren Sie Objekte programmgesteuert:

  Benutzen Sie das vordefinierte PL/SQL-Unterprogramm OG_SCALE.

In dem folgenden Beispiel einer Schaltflächenprozedur wird die Größe des angegebenen Objekts verdoppelt:

PROCEDURE double(buttonobj IN og_object, hitobj IN
 og_object, win IN og_window, eventinfo IN og_event) IS
   anchor OG_POINT;
   newpt  OG_POINT;
   oldpt  OG_POINT;
BEGIN
   anchor.x:=OG_INCH;
   anchor.y:=OG_INCH;
   oldpt.x:=OG_INCH+1;
   oldpt.y:=OG_INCH+1;
   newpt.x:=OG_INCH+2;
   newpt.y:=OG_INCH+2;
   OG_SCALE(hitobj, anchor, oldpt, newpt);
END;


Objekte umformen

Um Objekte umzuformen, ziehen Sie deren Scheitelpunkte an eine neue Position. Beachten Sie, daß die Steuerungspunkte, die Sie beim Umformen eines Objektes sehen, sich von den Steuerungspunkten bei der Auswahl eines Objekts unterscheiden. Das Werkzeug Umformen führt bei verschiedenen Objekten zu unterschiedlichen Ergebnisse:

Objekt	Umformen

Bogen	Ändert den Bogenwinkel in einen anderen Wert als 90 Grad (Standardwert).
Polygone und Polygonzüge	Verschiebt einen Scheitelpunkt an eine neue Position.
Linien	Verschiebt den Anfangs- oder Endpunkt an eine neue Position.
Ellipsen, Rechtecke, abgerundete Rechtecke	Verschiebt einen Scheitelpunkt an eine neue Position.
Freihandobjekte	Verschiebt einen Punkt an eine neue Position.
Bilder	Schneidet das Bild ab.
Das Umformen von Ellipsen, Rechtecken und abgerundeten Rechtecken unterscheidet sich nur dann von der Benutzung des Werkzeugs Auswählen, wenn das Objekt so gedreht wurde, daß die Auswählen-Steuerungspunkte nicht mehr mit den Umformen-Steuerungspunkten zusammenfallen.

So formen Sie ein Objekt um:

1	Wählen Sie das umzuformende Objekt aus.

2	Wählen Sie das Werkzeug Umformen aus der Werkzeugpalette aus.

Je nach Objekttyp werden die Steuerungspunkte zu den Scheitelpunkten des Objekts bewegt.

3	Klicken Sie auf einen der Scheitelpunkte, und ziehen Sie ihn an eine neue Position.

Das Werkzeug Umformen führt bei verschiedenen Objekttypen zu unterschiedlichen Ergebnissen.


Über das Drehen von Objekten

Sie können einzelne oder mehrere Objekte mit dem Werkzeug Drehen in eine beliebige Richtung drehen. Objekte werden um ihren Mittelpunkt gedreht.

Bei einigen Systemen kann Text nicht gedreht werden. Weitere Informationen finden Sie in der Betriebssystemdokumentation.


Einzelne oder mehrere Objekte drehen

So drehen Sie ein einzelnes oder mehrere Objekte:

1	Klicken Sie auf das Werkzeug Drehen in der Werkzeugpalette.

2	Klicken Sie auf einen Steuerungspunkt der Objekte, und ziehen Sie ihn in der Richtung, in der das bzw. die Objekte gedreht werden sollen.


Objekte innerhalb von Gruppen drehen

So drehen Sie Objekte innerhalb einer Gruppe:

1	Klicken Sie auf das Werkzeug Auswählen in der Werkzeugpalette.

2	Wählen Sie das Gruppenobjekt aus.

Sie können auch einen Bereich um das Gruppenobjekt ziehen, um dieses auszuwählen.

3	Klicken Sie auf das untergeordnete Objekt, um es auszuwählen.

Klicken Sie mit gedrückter Umschalttaste, um mehrere untergeordnete Objekte in der Gruppe auszuwählen.

4	Wählen Sie das Werkzeug Drehen aus der Werkzeugpalette aus.

5	Klicken Sie auf einen Steuerungspunkt der Objekte, und ziehen Sie ihn in der Richtung, in der das bzw. die Objekte gedreht werden sollen.


Objekte programmgesteuert drehen

  Verwandte Themen

So drehen Sie Objekte programmgesteuert:

  Benutzen Sie das vordefinierte PL/SQL-Unterprogramm OG_ROTATE.

Im folgenden Beispiel wird das angegebene Objekt um die angegebene Anzahl von Grad entgegen dem Uhrzeigersinn gedreht.

PROCEDURE rotate_needle (degrees IN NUMBER,
 center_pt IN og_point) IS
   the_needle     OG_OBJECT;
BEGIN   the_needle:=og_get_object('Needle 1');
   OG_ROTATE(the_needle, center_pt, degrees);
END;


Über Gruppenvorgänge

Sie können mehrere Objekte gruppieren, damit Sie diese als ein Objekt bearbeiten können. Die Objekte, die zu einer Gruppe gehören, sind untergeordnete Objekte, während die Gruppe das übergeordnete Objekt ist. Sie können außerdem mehr als ein Gruppenobjekt gruppieren. Die Ergebnisgruppe besteht dann aus Untergruppen.


Objekte gruppieren

So gruppieren Sie Objekte:

1	Wählen Sie die zu gruppierenden Objekte aus.

2	Wählen Sie Anordnen [image] Gruppieren.

Die Objekte werden gruppiert.


Übergeordnete Gruppe auswählen

So wählen Sie die übergeordnete Gruppe aus:

  Wählen Sie Anordnen [image] Gruppenvorgänge [image] Übergeordnetes Objekt auswählen.

Das übergeordnete Objekt wird ausgewählt.


Untergeordnete Objekte auswählen

So wählen Sie untergeordnete Objekte aus:

  Wählen Sie Anordnen [image] Gruppenvorgänge [image] Untergeordnete Objekte auswählen.

Die untergeordneten Objekte des Gruppenobjekts werden ausgewählt.


Untergeordnete Objekte hinzufügen und entfernen

So fügen Sie untergeordnete Objekte hinzu bzw. entfernen diese:

1	Wählen Sie sowohl das Gruppenobjekt als auch das hinzuzufügende Objekt bzw. das untergeordnete Objekt, das entfernt werden soll.

2	Wählen Sie Anordnen [image] Gruppenvorgänge, und gehen Sie dann folgendermaßen vor:

•	Um ein Objekt zu dem Gruppenobjekt hinzuzufügen, wählen Sie Zu Gruppe hinzufügen.

•	Um ein untergeordnetes Objekt aus dem Gruppenobjekt zu entfernen, wählen Sie Aus Gruppe entfernen.


Untergeordnete Objekte programmgesteuert hinzufügen und entfernen

  Verwandte Themen

So fügen Sie untergeordnete Objekte programmgesteuert hinzu bzw. entfernen diese:

  Benutzen Sie die vordefinierten PL/SQL-Unterprogramme OG_DELETE_CHILD und OG_INSERT_CHILD.

In dem folgenden Beispiel wird ein untergeordnetes Objekt aus einem Gruppenobjekt entfernt und in ein anderes Objekt eingefügt.

PROCEDURE move_prod(warehouse1 IN og_object, warehouse2 IN
 og_object, prod_index IN NUMBER) IS
   oldpt.x:=OG_INCH+1;
   oldpt.y:=OG_INCH+1;
   newpt.x:=OG_INCH+2;
   newpt.y:=OG_INCH+2;
   OG_SCALE(hitobj, anchor, oldpt, newpt);
   the_prod  og_object;
BEGIN
   the_prod:=OG_GET_CHILD(warehouse1, prod_index);
   OG_DELETE_CHILD(warehouse1, prod_index, 1);
   OG_INSERT_CHILD(warehouse2, the_prod, OG_LAST);
END;


Gruppierung von Objekten auflösen

So lösen Sie die Gruppierung von Objekten auf:

1	Wählen Sie das Gruppenobjekt aus.

2	Wählen Sie Anordnen [image] Gruppe auflösen.

Die gruppierten Objekte werden aufgelöst.


Objekte umbenennen

  Verwandte Themen

So benennen Sie Objekte um:

1	Doppelklicken Sie auf das Objekt bzw. die Objektgruppe, um das Dialogfeld Objektattribute anzuzeigen.

Alternativ können Sie das Objekt bzw. die Objektgruppe auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch das Objekt auswählen und Werkzeuge [image] Attribute wählen.

2	Geben Sie einen Namen in das Feld Name ein.

3	Klicken Sie auf OK, um den neuen Namen zu akzeptieren und das Dialogfeld Objektattribute zu schließen.

Nachdem Sie ein Objekt erstellt haben, können Sie es mit dem Dialogfeld Objektattribute benennen. Alternativ können Sie ein Objekt auch direkt im Objektnavigator benennen, indem Sie den Objektnamen auswählen und entsprechend bearbeiten.

Wenn Sie die Objekte in PL/SQL-Programmblöcken verwenden möchten, sollten Sie jedem Objekt einen eindeutigen Namen zuweisen, damit Sie ihn einfacher referenzieren können.

Wenn Sie die Namen von Objekten ändern, die in PL/SQL-Programmblöcken referenziert werden, müssen Sie diese Referenzen ändern, um den neuen Namen zu berücksichtigen.


Objekte im Objektnavigator umbenennen

  Verwandte Themen

So benennen Sie Objekte im Objektnavigator um:

1	Wählen Sie das umzubenennende Objekt aus.

2	Setzen Sie den Mauszeiger zu dem Objektnamen.

Der Cursor ändert seine Form von einem Zeiger in einen Texteditor.

3	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitungsmodus zu gehen.

Sie können jedes erstellte Objekt im Layout einer grafischen Anwendung erstellen. Dies umfaßt Ebenen, Abfragen, Grafikobjekte, Parameter, Timer, Klänge, Diagramme und Diagrammvorlagen. Wenn der ganze Name ersetzt werden soll, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein. Wenn Sie ein Objekt umbenennen, das in einem Programmblock referenziert wird, müssen Sie diese Referenzen ebenfalls ändern, um den neuen Namen zu berücksichtigen.

Wenn ein PL/SQL-Programmblock umbenannt werden soll, muß dies im Programmblockeditor geschehen.


Objekte innerhalb von grafischen Anwendungen gemeinsam benutzen

So benutzen Sie ein Objekt innerhalb von grafischen Anwendungen gemeinsam:

1	Wählen Sie im Objektnavigator Abfragen, Parameter, Timer, Klänge oder Programmblöcke, die verschoben werden sollen.

2	Halten Sie die Schaltfläche Auswählen auf dem Objekt gedrückt, und ziehen Sie dieses vertikal an die gewünschte Stelle. Der Cursor nimmt die Form eines Fadenkreuzes an, und eine gestrichelte horizontale Linie gibt die aktuelle Knotenposition des Objekts im Navigator an.

3	Lassen Sie die Maustaste los, um das Objekt "abzulegen". Sie müssen das Objekt in dem richtigen Knoten in der Objekthierarchie "ablegen" (d.h. Abfragen müssen unter dem Knoten Abfragen abgelegt werden usw.).

Sie können nicht nur Objekte innerhalb einer grafischen Anwendung neu anordnen, sondern können auch Abfragen, Programmblöcke, Parameter, Timer und Klänge von einer geöffneten grafischen Anwendung zu einer anderen geöffneten grafischen Anwendung verschieben. Außerdem können Sie Programmblöcke zu und von zugeordneten oder geöffneten Bibliotheken verschieben.

Wenn Sie einen Programmblock von einer grafischen Anwendung zu einer anderen verschieben, geht der kompilierte Status verloren, und der Programmblock muß im neuen Kontext neu kompiliert werden.


Objektreferenzen in Programmblöcken ändern

So ändern Sie Objektreferenzen in Programmblöcken:

1	Doppelklicken Sie auf den Programmblock, der das Objekt referenziert, um den Programmblock im Programmblockeditor anzuzeigen.

2	Wählen Sie Bearbeiten [image] Suchen/Ersetzen, um das Dialogfeld Suchen/Ersetzen anzuzeigen.

3	Geben Sie den alten Objektnamen in das Feld Suchen ein.

Sie können angeben, daß die Groß-/Kleinschreibung bei der Suche berücksichtigt werden soll, oder können einen regulären Ausdruck für die Suche verwenden.

4	Geben Sie den neuen Objektnamen in das Feld Ersetzen durch ein.

5	Klicken Sie auf Alles ersetzen, um jedes Auftreten des alten Objektnamens durch den neuen Objektnamen im aktuellen Programmblock zu ersetzen.

Um in allen Programmblöcken im aktuellen Geltungsbereich nach einem Namen zu suchen und diesen zu ersetzen (d.h. im Knoten Programmblöcke oder einem geöffneten Bibliotheksknoten), wählen Sie Bearbeiten [image] Suchen/Alles ersetzen.


Über die Anwendung von Farben und Mustern

  Verwandte Themen

Die Prozeduren für die Anwendung von Farben und Mustern für Komponenten des Diagrammrahmens sind dieselben wie bei Objekten.


In den Feldern Linien-/Füll-/Textfarbe werden das Rand-, Füll- und Textmuster und die Rand-, Füll- und Textfarben angezeigt, die gerade ausgewählt sind. Jedes erstellte Objekt benutzt diese Einstellungen, es sei denn, Sie geben andere Einstellungen an.


Farben für Objekte festlegen

So legen Sie Farben für Objekte fest:

1	Wählen Sie bestehende Objekte oder Diagrammelemente aus, für die Sie Farben anwenden möchten.

2	Wählen Sie die Palette Füllfarbe, um eine Hintergrundfarbe für das Objekt auszuwählen, bzw. wählen Sie die Palette Linienfarbe, um eine Vordergrundfarbe für den Rand des Objekts auszuwähen.

Daraufhin wird die entsprechende Farbpalette angezeigt.

Sie können die Farbpalette "abtrennen" und im Layouteditor an eine andere Stelle verschieben, indem Sie die Option Palette abtrennen auswählen und dann die Titelleiste der Palette ziehen, um diese zu verschieben.

3	Wählen Sie eine Farbe aus der Palette.

Die Palette wird geschlossen, und die Farbe wird gegebenenfalls für die ausgewählten Objekte und neue Objekte, die Sie im Layout zeichnen, angewendet. Die Farbe wird auch in dem entsprechenden Teil des Feldes Linien-/Füll-/Textfarbe angezeigt und bleibt für die aktuelle grafische Anwendung wirksam, bis Sie die Farbe erneut ändern.

Wenn Ihr System Farben unterstützt, können Sie Farben sowohl für die Fläche (Füllfarbe) als auch den Rand (Linienfarbe) eines Objekts anwenden.


Füllmuster festlegen

So legen Sie das Füllmuster fest:

1	Wählen Sie bestehende Objekte, für die das Muster angewendet werden soll.

2	Wählen Sie die Palette Füllfarbe.

3	Wählen Sie Muster... aus der Palette Füllfarbe, um die Musterpalette anzuzeigen.

4	Klicken Sie auf das Muster, das Sie für das Objekt anwenden möchten.

Das Muster wird für ausgewählte Objekte und neue Objekte angewendet, die Sie in dem Layout zeichnen. Das Muster wird auch im Füllen-Teil des Feldes Linien-/Füll-/Textfarbe angezeigt und bleibt für die aktuelle grafische Anwendung wirksam, bis Sie das Muster erneut ändern.

5	Schließen Sie die Musterpalette.

Für das Füllen von Objekten können verschiedene Muster angewendet werden. Bei Textobjekten können Sie Muster nur für das Auffüllen der Umrandung anwenden, jedoch nicht für die Zeichen selbst. Bei Diagrammen können Sie Muster in der Diagrammvorlage anwenden.


Musterfarben festlegen

So legen Sie Musterfarben fest:

1	Wählen Sie bestehende Objekte oder Diagrammelemente, für die Sie Vordergrund- und Hintergrund-Musterfarben anwenden möchten.

Wenn Sie kein Objekt auswählen, werden die Einstellungen nicht für bestehende Objekte angewendet, bleiben jedoch für neue Objekte wirksam, die Sie erstellen, bis Sie die Musterfarbe wieder ändern.

2	Wählen Sie die Palette Füllfarbe.

3	Wählen Sie Muster... aus der Palette Füllfarbe.

Daraufhin wird die Palette mit den Füllmustern mit den aktuellen Einstellungen für die Vordergrund- und Hintergrundfarbe angezeigt. Sie können diese Palette im Layout verschieben, damit sie besser sichtbar ist.

4	Wählen Sie die Dropdown-Farbpalette für die Vordergrundfarbe (linke Seite) oder Hintergrundfarbe (rechte Seite).

Daraufhin wird die entsprechende Palette mit den in Ihrem System verfügbaren Farben angezeigt.

5	Wählen Sie die Farbe, die Sie für den Vordergrund oder Hintergrund des Musters anwenden möchten.

Die Farbpalette für den Mustervordergrund/-hintergrund wird geschlossen, und die Änderungen werden in der Musterpalette berücksichtigt. Außerdem wird die Farbe für ausgewählte Objekte angewendet sowie im Füllteil des Feldes Linien-/Füll-/Textfarbe.

6	Schließen Sie die Musterpalette, oder wählen Sie eine andere Farbe.

Die Auswahl bleibt für die aktuelle grafische Anwendung bestehen, bis Sie sie erneut ändern.

Der dunkle Teil eines Musters wird als das Vordergrundelement bezeichnet, während der helle Teil eines Musters als Hintergrundelement bezeichnet wird. Wenn das System Farben unterstützt, können Sie unterschiedliche Farben für die Vordergrund- und Hintergrundelemente des aktuellen Füllmusters anwenden.


Textfarben festlegen

  Verwandte Themen

So legen Sie eine Textfarbe fest:

1	Wählen Sie das Textobjekt bzw. Diagrammelement, für das Sie eine Farbe anwenden möchten.

2	Wählen Sie das Symbol für die Textfarben-Palette im Layouteditor, um die Palette Textfarbe anzuzeigen.

Sie können die Farbpalette "abtrennen" und im Layouteditor an eine andere Stelle verschieben, indem Sie die Option Palette abtrennen auswählen und dann die Titelleiste der Palette ziehen, um sie zu verschieben.

3	Wählen Sie eine Farbe für den Text.

Die Palette wird geschlossen, und die Farbe wird gegebenenfalls für ausgewählte Textobjekte und neue Textobjekte angewendet, die Sie in dem Layout erstellen. Außerdem wird die Farbe in dem entsprechenden Teil des Feldes Linien-/Füll-/Textfarbe angezeigt und bleibt während der aktuellen grafischen Anwendung bestehen, bis Sie sie erneut ändern.

Neben dem Festlegen von Farben und Mustern für die Umrandung eines Textobjektes können Sie Farben für den Text selbst auswählen. Für Text innerhalb von Diagrammen können Sie Farben in der Diagrammvorlage anwenden, Sie können aber auch das Diagrammelement direkt im Layouteditor auswählen.

Wenn Sie die Farbe eines Diagrammelements mit der Datenquelle verknüpfen möchten, können Sie eine Farbe mit einem Format-Trigger für Diagrammelemente anwenden.


Füllmuster und Farben bei Objekten entfernen

So entfernen Sie Füllmuster und Farben bei Objekten:

1	Wählen Sie bestehende Objekte oder Diagrammelemente aus, deren Farbe oder Muster zurückgesetzt oder entfernt werden soll.

2	Wählen Sie die Palette Füllfarbe.

Sie können die Farbpalette "abtrennen" und innerhalb des Layouteditors an eine andere Stelle verschieben, indem Sie die Option Palette abtrennen auswählen und dann die Titelleiste der Palette ziehen, um diese zu verschieben.

3	Wählen Sie die Option Kein Füllmuster, um die aktuelle Farb- oder Musterauswahl zu entfernen.

Die Palette wird geschlossen, und die Füllfarbe wird für ausgewählte Objekte und neue Objekte zurückgesetzt, die Sie in dem Layout zeichnen. Die Farbe wird auch in dem entsprechenden Teil des Feldes Linien-/Füll-/Textfarbe angezeigt und bleibt während der aktuellen grafischen Anwendung wirksam, bis Sie sie erneut ändern.

Das Muster und die Farben, die Sie für ein Objekt auswählen, bleiben wirksam, bis Sie sie zurücksetzen.


Objektfarben programmgesteuert ändern

  Verwandte Themen

So ändern Sie Objektfarben programmgesteuert:

  Benutzen Sie eines der vordefinierten PL/SQL-Unterprogramme, mit denen Farben geändert werden, wie z.B. OG_SET_FFCOLOR.

Im folgenden Beispiel wird die vordefinierte Prozedur OG_SET_FFCOLOR für Grafikattribute benutzt, um die Vordergrund-Füllfarbe für das angegebene Objekt festzulegen:

PROCEDURE color_country(country_name) IS
   my_object    OG_OBJECT;
BEGIN
   my_object:=OG_GET_OBJECT(country_name);
   OG_SET_FFCOLOR(country_name, 'color 72');
END;


Farbpaletten bearbeiten

So bearbeiten Sie eine Farbpalette:

1	Wählen Sie Format [image] Farbpalette, um das Dialogfeld Farbpalette aufzurufen.

Wenn dieser Menüpunkt nicht ausgewählt werden kann, prüfen Sie, ob für Farbpalette Modus im Register Werkzeugoptionen Standardwerte Editierbar ausgewählt wurde. Wenn nicht, müssen Sie die grafische Anwendung schließen und erneut öffnen, damit die neue Einstellung für den Farbmodus wirksam wird.

2	Wählen Sie eine zu bearbeitende Farbe aus.

3	Klicken Sie auf Bearbeiten.

Daraufhin wird das Dialogfeld für das Bearbeiten von Farben Ihres Betriebssystems angezeigt.

4	Ändern Sie die Farbe mit der bei Ihrem System zutreffenden Prozedur.

5	Akzeptieren Sie das Dialogfeld, um zu dem Dialogfeld Farbpalette zurückzukehren.

6	Um die Farbe umzubenennen, geben Sie einen anderen Namen in das Feld Aktuelle Farbe ein, und klicken Sie auf Umbenennen.

7	Klicken Sie auf OK, um das Dialogfeld Farbpalette zu schließen.

Wenn Ihr System Farben unterstützt, können Sie die aktuelle Farbpalette für Ihre grafische Anwendung bearbeiten. Außerdem können Sie Farbpaletten importieren und exportieren.


Objektränder verbergen

So verbergen Sie Objektränder:

1	Wählen Sie bestehende Objekte oder Diagrammelemente aus, deren Rand entfernt werden soll.

2	Wählen Sie die Palette Linienfarbe aus.

Sie können die Farbpalette "abtrennen" und an eine andere Stelle im Layouteditor verschieben, indem Sie die Option Palette abtrennen auswählen und die Titelleiste der Palette ziehen, um diese zu verschieben.

3	Wählen Sie die Option Keine Linie um den Rand zu verbergen.

Die Palette wird geschlossen, und die Linienfarbe wird für ausgewählte Objekte und neue Objekte zurückgesetzt, die Sie in dem Layout zeichnen. Die Farbe bzw. das Nichtvorhandensein der Farbe wird auch in dem entsprechenden Teil des Feldes Linien-/Füll-/Textfarbe angezeigt und bleibt für die aktuelle grafische Anwendung wirksam, bis Sie diese erneut ändern.


Linienattribute festlegen

So legen Sie Linienattribute fest:

1	Wählen Sie die Linie(n).

2	Wählen Sie einen der folgenden Befehle aus dem Menü Format:

•	Linie	Zeigt ein Untermenü mit verschiedenen Linienbreiten an.

•	Strichart	Zeigt ein Untermenü mit verschiedenen Stricharten an.

•	Pfeile	Zeigt ein Untermenü mit Pfeilstilen an.

3	Geben Sie die gewünschten Optionen an.

Die ausgewählten Attribute werden für das Linienobjekt angewendet. Die Einstellungen bleiben für die aktuelle grafische Anwendung bestehen, bis Sie sie erneut ändern.


Randattribute festlegen

  Verwandte Themen

So legen Sie Randattribute fest:

1	Wählen Sie das bzw. die Objekte aus.

2	Wählen Sie Format [image] Linie, um die Randbreite festzulegen, bzw. Format [image] Umriß, um eine Liste mit Umrißoptionen anzuzeigen.

Wenn Sie eine Umrißoption für den Objektrand festlegen möchten, sollten Sie eine Linienbreite von mindestens 2 Punkt festlegen.

3	Geben Sie die gewünschten Optionen an.

Die ausgewählten Attribute werden für die Ränder der ausgewählten Objekte angewandt. Die Einstellungen bleiben für die aktuelle grafische Anwendung wirksam, bis Sie sie erneut ändern.


Über die Angabe von Zahlen- und Datumsformaten

Sie können Zahlen- und Datumsformate an einer der folgenden Stellen je nach Bedarf angeben:

•	Layouteditor

•	Diagrammvorlage

•	Voreinstellungsdatei

Legen Sie Zahlen- und Datumsformat im Layouteditor fest, wenn Sie die Zahlen- und Datumsformate direkt in einem bestimmten Diagramm bestimmen möchten.

Legen Sie Zahlen- und Datumsformat in der Diagrammvorlage fest, wenn Sie Zahlen- und Datumsformate für eine bestimmte Diagrammvorlage bestimmen möchten.

Legen Sie Zahlen- und Datumsformate in der Voreinstellungsdatei fest, wenn Sie die Formate für alle Diagramme und alle Builder-Einstellungen anwenden möchten, oder wenn Sie Datumsangaben aus einer externen Datei verwenden, wie z.B. einer PRN-Datei. Dadurch wird gewährleistet, daß in diesen externen Dateien referenzierte Datumsangaben in korrekten Datumsangaben in dem Diagramm dargestellt werden. Wenn in der Voreinstellungsdatei kein entsprechendes Datumsformat angegeben wird, behandelt Graphics Builder das externe Datum als Zeichendaten.


Attribute für das ganze Textobjekt oder Textfeld festlegen

  Verwandte Themen

So legen Sie Attribute für das ganze Textobjekt oder Textfeld fest:

1	Wählen Sie das Textobjekt oder Textfeld aus.

2	Wählen Sie Format [image] Schriftart, Zeilenabstand oder Ausrichtung, um ein Untermenü oder Dialogfeld (Schriftart) mit Optionen anzuzeigen.

3	Geben Sie die gewünschten Optionen an.

Die ausgewählten Attribute werden für das Textobjekt oder Textfeld angewendet.

4	Sobald Sie fertig sind, klicken Sie an einer Stelle außerhalb des Textobjektes im Layout, um die Auswahl des Textobjektes oder Textfeldes aufzuheben.


Attribute für ein teilweises Textobjekt oder für Text eines Standardtextfeldes festlegen

So legen Sie Attribute für ein teilweises Textobjekt oder für Text eines Standardtextfeldes fest:

1	Wählen Sie das Werkzeug Text aus der Werkzeugpalette.

2	Klicken Sie auf das Textobjekt oder Textfeld an der Stelle, an der Sie die Attribute ändern möchten.

Der Textcursor wird an der Stelle angezeigt, an der Sie geklickt haben.

3	Ziehen Sie über den zu ändernden Text.

4	Wählen Sie Format [image] Schriftart, Zeilenabstand oder Ausrichtung, um ein Untermenü mit Optionen anzuzeigen.

5	Geben Sie die gewünschten Optionen an.

Die ausgewählten Attribute werden für den Text angewendet.

6	Wenn Sie fertig sind, klicken Sie an einer Stelle außerhalb des Textobjektes oder Textfeldes in dem Layout, um den Textmodus zu beenden und die Auswahl des Textes aufzuheben.


Zahlen- und Datumsformate in der Voreinstellungsdatei festlegen

So legen Sie Zahlen- und Datumsformate in Ihrer Voreinstellungsdatei fest:

1	Wählen Sie Werkzeuge [image] Werkzeugoptionen, um das Register Werkzeugoptionen anzuzeigen.

2	Klicken Sie auf Zahl oder Datum, um das Dialogfeld Zahlenformat oder Datumsformat anzuzeigen.

3	Geben Sie das gewünschte Datums- oder Zahlenformat in das Feld Format ein.

Weitere Informationen über gültige Formate finden Sie in Oracle7 Server SQL Language Reference Manual.

4	Klicken Sie auf Hinzufügen, um das Format zu der Liste hinzuzufügen.

5	Klicken Sie auf OK, um die Änderungen an der Formatliste zu akzeptieren und das Dialogfeld zu schließen.

6	Klicken Sie auf Speichern, um die Einstellungen in Ihrer Voreinstellungsdatei zu speichern, oder klicken Sie auf OK, um die Einstellungen nur für die aktuelle Sitzung zu speichern.

Beim Erstellen eines Diagramms wird das als letztes zu der Formatliste hinzugefügte Format verwendet.


Zahlen- und Datumsformate im Layouteditor festlegen

So legen Sie Zahlen- und Datumsformate direkt in dem Diagramm im Layouteditor fest:

1	Wählen Sie das Diagrammelement, dessen Zahlen- oder Datumsformat geändert werden soll.

Alle Elemente dieser Gruppe werden ausgewählt.

2	Wählen Sie Zahlenformat oder Datumsformat aus dem Popup-Menü, oder wählen Sie Format [image] Zahl bzw. Format [image] Datum, um das Dialogfeld Zahlenformat oder Datumsformat anzuzeigen.

3	Klicken Sie auf Datum oder Zahl, um das Dialogfeld Datumsformat oder Zahlenformat anzuzeigen.

Das aktuelle Zahlen- oder Datumsformat wird in dem Feld Format angezeigt.

4	Sie können das aktuelle Format bearbeiten, ein alternatives Format aus der Liste auswählen oder ein neues Format eingeben und zu der Liste hinzufügen. Wenn Sie ein Format endgültig zu der Liste hinzufügen möchten, wird auf den Abschnitt über das Festlegen von Zahlen- und Datumsformaten in der Voreinstellungsdatei verwiesen.

5	Klicken Sie auf OK, um die Änderungen an der Formatliste zu akzeptieren und das Dialogfeld zu schließen.

Ihre Änderungen werden in allen Diagrammen berücksichtigt, die Sie bearbeitet haben.

Weitere Informationen über gültige Formate finden Sie in Oracle7 Server SQL Language Reference Manual.


Zahlen- und Datumsformate in der Diagrammvorlage festlegen

So legen Sie das Zahlen- und Datumsformat in der Diagrammvorlage fest:

1	Wählen Sie Werkzeuge [image] Vorlagen, um den Diagrammvorlagen-Editor anzuzeigen.

2	Wählen Sie die Vorlage, für die Sie ein Zahlen- oder Datumsformat festlegen möchten, in der Dropdown-Liste Vorlage.

Daraufhin wird die Vorlage im Layout des Editors angezeigt.

3	Wählen Sie das Diagrammvorlagenelement, das das festzulegende Zahlen- oder Datumsformat darstellt.

4	Wählen Sie Format [image] Zahl oder Format [image] Datum, um das Dialogfeld Zahlenformat oder Datumsformat anzuzeigen.

Im Feld Format wird das aktuelle Zahlen- oder Datumsformat angezeigt.

5	Sie können das aktuelle Format bearbeiten, ein anderes Format aus der Liste auswählen oder ein neues Format eingeben und zu der Liste hinzufügen.

Wenn Sie ein Format endgültig zu der Liste hinzufügen möchten, wird auf den Abschnitt über das Festlegen von Zahlen- und Datumsformaten in der Voreinstellungsdatei verwiesen.

6	Klicken Sie auf OK, um die Änderungen an der Formatliste zu akzeptieren und das Dialogfeld zu schließen.

7	Schließen Sie den Diagrammvorlagen-Editor.

Die Änderungen werden in allen Diagrammen berücksichtigt, die die bearbeitete Vorlage verwenden.

Weitere Informationen über gültige Formate finden Sie in Oracle7 Server SQL Language Reference Manual.


Textobjekte bearbeiten

So bearbeiten Sie Textobjekte:

1	Klicken Sie auf das Werkzeug Text in der Werkzeugpalette.

2	Klicken Sie auf das Textobjekt, bei dem Sie mit der Eingabe oder dem Bearbeiten beginnen möchten.

Der Textcursor wird an der Stelle angezeigt, an der Sie geklickt haben.

3	Geben Sie den Text ein, bzw. bearbeiten Sie den Text.

Sie können einen Textblock auswählen, indem Sie über ihn ziehen.

4	Wenn Sie fertig sind, klicken Sie an einer beliebigen Stelle außerhalb des Textobjekts in dem Layout, um den Textmodus zu beenden.


Klänge wiedergeben und bearbeiten

So geben Sie einen Klang wieder bzw. bearbeiten Sie einen Klang:

1	Doppelklicken Sie auf einen bestehenden Klang, um das Dialogfeld Klangwiedergabe anzuzeigen.

2	Geben Sie den bestehenden Klang wieder, bzw. zeichnen Sie eine neuen Klang über dem bestehenden Klang auf, indem Sie die Schaltflächen Wiedergabe bzw. Aufzeichnen auswählen.

Sie können auch die Schaltflächen Vorspulen und Zurückspulen oder den Schieberegler benutzen, um eine Position in der Klangdatei zu finden.

3	Klicken Sie auf OK, um das Dialogfeld Klangwiedergabe zu schließen.


Klänge programmgesteuert wiedergeben

  Verwandte Themen

So geben Sie Klänge programmgesteuert wieder:

  Benutzen Sie die vordefinierte PL/SQL-Prozedur OG_PLAY SOUND und die Funktion OG_GET_SOUND.

In dem folgenden Beispiel wird der angegebene Klang über das Klangausgabegerät wiedergegeben, das in der Voreinstellungsdatei angegeben wird:

PROCEDURE warning IS
   the_sound   OG_SOUND;
BEGIN
   the_sound:=OG_GET_SOUND('warning_snd');
   OG_PLAY_SOUND(the_sound);
END;


Klänge exportieren

So exportieren Sie Klänge:

1	Wählen Sie das Klangobjekt im Navigator aus.

2	Wählen Sie Bearbeiten [image] Exportieren [image] Klang, um das Dialogfeld Klang exportieren anzuzeigen.

3	Geben Sie die gewünschten Optionen an, wie z.B. Dateiname und Speicherort, Dateiformat und Komprimierung für die Datei, in die der Klang exportiert werden soll.

4	Klicken Sie auf OK, um die Informationen zu bestätigen und das Dialogfeld Exportieren zu schließen.

Der Klang wird in den angegebenen Speicherort exportiert.


Interne Klänge umbenennten
Interne Klänge umbenennen

  Verwandte Themen

So benennen Sie einen internen Klang um:

1	Wählen Sie das umzubenennende Klangobjekt aus.

2	Setzen Sie den Mauszeiger über den Klangnamen.

Der Cursor ändert seine Form von einem Zeiger in einen Texteditor.

3	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitenmodus zu gehen.

Wenn Sie den ganzen Namen ersetzen möchten, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein.

Klänge, die Sie im Builder erstellt oder in die grafische Anwendung importiert haben, werden als in der grafischen Anwendung intern betrachtet. Klänge, die im Dateisystem oder der Datenbank gespeichert sind, werden als externe Klänge bezeichnet. Der Speicherort des Klangs bestimmt die Methoden, mit denen Sie die Zugriffsberechtigung zu dem Klang erteilen und entziehen, den Klang umbenennen oder löschen.

Wenn Sie einen Klang umbenennen, den Sie in einem PL/SQL-Programmblock referenziert haben, müssen Sie alle Referenzen ändern, um den neuen Namen zu berücksichtigen.


Interne Klänge löschen

So löschen Sie einen internen Klang:

1	Wählen Sie das zu löschende Klangobjekt aus.

2	Klicken Sie auf Löschen, oder wählen Sie Navigator [image] Löschen.

3	Wählen Sie Ja, um den Löschenvorgang in dem Warnfenster zu bestätigen.

Der Klang wird aus der grafischen Anwendung entfernt.

Klänge, die Sie im Builder erstellt oder in die grafische Anwendung importiert haben, werden als interne Klänge bezeichnet. Klänge, die im Dateisystem oder der Datenbank gespeichert sind, werden als extern betrachtet. Der Speicherort des Klangs bestimmt die Methoden, mit denen Sie die Zugriffsberechtigung zu dem Klang erteilen und entziehen, den Klang umbenennen oder löschen.


Über Parameter

Parameter werden am häufigsten in Aufgliederungsbeziehungen benutzt, wo sie den Wert eines Diagrammelements oder den Namen eines Grafikobjekts in Ihrer grafischen Anwendung darstellen. Der Parameter wird dann in einer Abfrage oder einem PL/SQL-Programmblock benutzt, um eine bestimmte Aktion zu steuern.

Parameter können auch in mehreren PL/SQL-Programmblöcken als globale Variablen benutzt werden.

Parameter können für folgende Zwecke benutzt werden:

•	Darstellung des Wertes eines Diagrammelements in einer Aufgliederungsbeziehung

•	Darstellung des Namens eines Grafikobjekts in einer Aufgliederungsbeziehung oder Schaltflächenprozedur

•	Speichern eines Wertes in einem PL/SQL-Programmblock

•	Speichern eines Zeichenfolgenwertes z.B. als Where-Klausel zur Benutzung in einer Abfrage


Über Parameterkomponenten

Jeder Parameter, den Sie erstellen, hat folgende Komponenten:

Name

Typ

Ausgangswert


Name

Der Name, den Sie für das Referenzieren des Parameters in den SQL- oder PL/SQL-Anweisungen benutzen.


Typ

Der Datentyp des Wertes, den der Parameter darstellt. Die gültigen Einträge in der Popup-Liste sind Number, Char und Date.


Ausgangswert

(Optional)  Der Wert, der dem Parameter zugewiesen wird, wenn Sie die grafische Anwendung das erste Mal ausführen. Der hier eingegebene Wert kann von einem Wert außer Kraft gesetzt werden, der manuell oder programmgesteuert zugewiesen wird.


Über das Erstellen von Parametern

Erstellen Sie Parameter mit dem Dialogfeld Parameter. Sie können Parameter erstellen, bevor Sie sie benutzen, oder können sie mit anderen Aufgaben erstellen, wie z.B. dem Festlegen von Aufgliederungsbeziehungen.

Wenn Sie eine globale Variable mit einem anderen Datentyp als NUMBER, CHAR oder DATE erstellen möchten - z.B. einem der Datentypen der vordefinierten PL/SQL-Prozeduren von Graphics Builder -, können Sie ein Paket zur Definition dieser Variablen erstellen. Weitere Informationen über PL/SQL-Pakete finden Sie in PL/SQL User's Guide and Reference.

Nachdem Sie einen Parameter erstellt haben, können Sie diesen in Programmblöcken, SQL-Abfragen oder Aufgliederungsprozeduren referenzieren.


Eigenständige Parameter mit dem Objektnavigator erstellen

So erstellen Sie einen eigenständigen Parameter mit dem Objektnavigator:

1	Wählen Sie den Knoten Parameter im Objektnavigator aus.

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen aus dem Menü, um das Dialogfeld Parameter anzuzeigen.

Wenn momentan keine Parameter vorhanden sind, doppelklicken Sie auf den Knoten Parameter, um das Dialogfeld Parameter anzuzeigen.

Der neue Parameter hat anfänglich den Namen paramx und den Typ Char.

3	Definieren Sie den Namen, Typ und Ausgangswert für den neuen Parameter.

4	Klicken Sie auf OK, um die neuen Parametereinstellungen zu akzeptieren und das Dialogfeld zu schließen.


Eigenständige Parameter mit dem Menü erstellen

So erstellen Sie einen eigenständigen Parameter mit dem Menü:

1	Wählen Sie Werkzeuge [image] Parameter, um das Dialogfeld Parameter anzuzeigen.

2	Klicken Sie auf die Schaltfläche Neu, um einen neuen Parameter zu erstellen.

Der neue Parameter hat anfänglich den Namen paramx und den Typ Char.

3	Definieren Sie Namen, Typ und Ausgangswert des Parameters.

4	Klicken Sie auf OK, um die neuen Parametereinstellungen zu akzeptieren und das Dialogfeld zu schließen.


Neue Parameter im Register Aufgliedern erstellen

  Verwandte Themen

So erstellen Sie einen neuen Parameter im Register Aufgliedern:

1	Doppelklicken Sie auf ein Objekt in Ihrer grafischen Anwendung, dem Sie Parameterwerte zuweisen möchten (Diagrammelement usw.), um das Dialogfeld Objektattribute anzuzeigen.

Alternativ können Sie auch das Objekt auswählen und den Befehl Attribute aus dem Popup-Menü wählen, oder können Sie Werkzeuge [image] Attribute wählen, um das Dialogfeld Objektattribute anzuzeigen.

2	Wählen Sie das Registertab Aufgliedern, um das Register Aufgliedern anzuzeigen.

3	Klicken Sie auf Neu rechts neben dem Feld Parameter setzen, um das Dialogfeld Parameter anzuzeigen.

4	Definieren Sie den Parametertyp und den Ausgangswert.

5	Klicken Sie auf OK, um die neuen Parametereinstellungen zu akzeptieren und das Dialogfeld zu schließen.

6	Machen Sie die entsprechenden Angaben in den Feldern Zu Wert von und Abfrage ausführen im Register Aufgliedern.

7	Klicken Sie auf OK, um die Aufgliederungsbeziehung zu akzeptieren.


Neue Parameter nach Referenz erstellen

So erstellen Sie einen neuen Parameter nach Referenz:

1	Geben Sie innerhalb einer SQL-Abfrage oder eines PL/SQL-Programmblocks eine Referenz auf einen eindeutigen Parameternamen ein. Zum Beispiel:

:object := OG_GET_OBJECT (circle1);

2	Klicken Sie auf OK, um die Abfrage auszuführen, oder klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

3	Daraufhin wird in einem Warnfenster angegeben, daß der referenzierte Parameter nicht vorhanden ist, und werden Sie gefragt, ob Sie ihn erstellen möchten.

4	Klicken Sie auf Ja, um dies zu bestätigen und das Dialogfeld Parameter anzuzeigen.

5	Definieren Sie Typ und Ausgangswert des Parameters.

6	Klicken Sie auf OK, um die neuen Parametereinstellungen zu akzeptieren und das Dialogfeld zu schließen.

7	Klicken Sie auf OK, um die Abfrage erneut auszuführen, oder klicken Sie auf Kompilieren, um den Programmblock erneut zu kompilieren.

Wenn Sie eine SQL SELECT-Anweisung oder einen PL/SQL-Programmblock erstellen und feststellen, daß Sie einen Parameter benutzen müssen, referenzieren Sie einfach einen neuen und eindeutigen Parameternamen genau so, als wäre der Parameter vorhanden. Wenn Sie versuchen, die Abfrage auszuführen oder den Programmblock zu kompilieren, fordert Graphics Builder Sie auf, den neuen Parameter zu erstellen, und zeigt das Dialogfeld Parameter an.


Parameter im Objektnavigator umbenennen

So benennen Sie einen Parameter im Objektnavigator um:

1	Wählen Sie das umzubenennende Parameterobjekt aus.

2	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitenmodus zu gehen.

Wenn Sie den ganzen Namen ersetzen möchten, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein.

3	Wenn Sie den Parameter in SQL SELECT-Anweisungen, PL/SQL-Programmblöcken oder Aufgliederungsbeziehungen referenziert haben, ändern Sie diese Referenzen, um den neuen Parameternamen zu berücksichtigen.


Parameter im Dialogfeld Parameter umbenennen

So benennen Sie einen Parameter im Dialogfeld Parameter um:

1	Öffnen Sie das Dialogfeld Parameter.

2	Wählen Sie den umzubenennenden Parameter aus der Dropdown-Liste Name aus.

3	Bearbeiten Sie den Namen.

4	Klicken Sie auf OK, um den neuen Namen zu akzeptieren und das Dialogfeld Parameter zu schließen.

5	Wenn Sie den Parameter in SQL SELECT-Anweisungen, PL/SQL-Programmblöcken oder Aufgliederungsbeziehungen referenziert haben, ändern Sie diese Referenzen, um den neuen Parameternamen zu berücksichtigen.


Parameter mit dem Objektnavigator bearbeiten

So bearbeiten Sie einen Parameter mit dem Objektnavigator:

1	Doppelklicken Sie auf das Parameterobjekt, um das Dialogfeld Parameter anzuzeigen.

Alternativ können Sie das Parameterobjekt auswählen und den Befehl Attribute aus dem Popup-Menü wählen, oder können Sie Werkzeuge [image] Attribute wählen.

2	Nehmen Sie die gewünschten Änderungen an den Einstellungen vor.

3	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld zu schließen.


Parameter mit dem Menü bearbeiten

So bearbeiten Sie einen Parameter mit dem Menü:

1	Wählen Sie Werkzeuge [image] Parameter, um das Dialogfeld Parameter anzuzeigen.

2	Wählen Sie den Namen des zu ändernden Parameters aus der Dropdown-Liste Parameter.

3	Nehmen Sie die gewünschten Änderungen vor.

4	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld zu schließen.


Über das Referenzieren von Parametern

Es gibt zwei Arten von Parameterreferenzen in Graphics Builder:

•	Bindereferenzen

•	Lexikalische Referenzen

Beachten Sie, daß Parameternamen im Dialogfeld Parameter zwar in Großbuchstaben aufgeführt werden, daß bei der Benutzung in den SQL- oder PL/SQL-Anweisungen die Schreibweise jedoch nicht berücksichtigt werden muß.

Wenn Sie einen Parameter referenzieren, der nicht vorhanden ist, werden Sie in einem Warnfenster gefragt, ob Sie den Parameter jetzt erstellen möchten. Wenn Sie mit Ja antworten, wird das Dialogfeld Parameter angezeigt.


Über das Zuweisen von Werten an Parameter

Sie können Parametern auf vier verschiedene Arten Werte zuweisen:

•	Anfänglich im Dialogfeld Parameter

•	Innerhalb von PL/SQL-Programmblöcken

•	Basierend auf Benutzeraktionen

•	Als Argumente in den ausführbaren Laufzeit- oder Stapeldateien

Zur Laufzeit werden die Referenzen in den SQL SELECT-Anweisungen oder PL/SQL-Programmblöcken durch die Werte der Parameter ersetzt.


Über das Zuweisen von Parameterwerten basierend auf Benutzeraktionen

  Verwandte Themen

Sie können einen Parameterwert einem beliebigen Objekt in Ihrer grafischen Anwendung - z.B. einem Diagrammelement - zuweisen und festlegen, daß der Benutzer den Parameterwert bestimmt, indem ein Anwendungsobjekt in der Laufzeitanzeige ausgewählt wird. Zwei mögliche Anwendungen sind:

•	Erstellen einer Aufgliederungsbeziehung

•	Benutzung von Objekt-Schaltflächenprozeduren


Bindereferenzen erstellen

So erstellen Sie eine Bindereferenz:

  Geben Sie einen Doppelpunkt (:) unmittelbar vor dem Parameternamen ein. Weil Sie Parameter sofort erstellen können, müssen Sie den Parameter nicht definieren, bevor Sie ihn referenzieren.

In der folgenden SQL SELECT-Anweisung stellt my_param z.B. einen einzelnen Wert für die Spalte ENAME in der Tabelle EMP dar:

select ename, sal
from emp
where ename = :my_param

Benutzen Sie eine Bindereferenz, um einen einzelnen Wert, wie z.B. eine Zeichenfolge, eine Zahl oder ein Datum, in SQL SELECT-Anweisungen oder PL/SQL-Programmblöcken zu ersetzen.


Lexikalische Referenzen erstellen

So erstellen Sie eine lexikalische Referenz:

  Erstellen Sie eine lexikalische Referenz auf einen Parameter oder eine Spalte, indem Sie ein Et-Zeichen (&) unmittelbar vor dem Parameter- oder Spaltennamen eingeben. Außerdem geben Sie einen Ausgangswert für jede lexikalische Referenz an, da keine Standarddefinition vorhanden ist.

Um z.B. einen Parameter zur Darstellung einer WHERE-Klausel in einer SELECT-Anweisung zu benutzen, definieren Sie zuerst den Parameter, und geben Sie die WHERE-Klausel in das Feld für den Ausgangswert ein.

Danach erstellen Sie die SELECT-Anweisung:

select ename, sal
from emp
&my_param

Alternativ könnten Sie den Wert programmgesteuert zuweisen und die Abfrage dann basierend auf dem neuen Wert ausführen und das zugehörige Diagramm aktualisieren:

PROCEDURE set_param (name IN VARCHAR2, qry IN OG_QUERY) IS
  the_chart  OG_OBJECT;
BEGIN
  :my_param:='WHERE ENAME = '||name;
  OG_EXECUTE_QUERY(qry);
  the_chart:=OG_GET_CHART('chart0');
  OG_UPDATE_CHART(the_chart, OG_ALL_CHUPDA);
END;

Wenn lexikalische Referenzen benutzt werden sollen, um Spaltennamen in einer SELECT-Anweisung zu ersetzen, erstellen Sie eine separate lexikalische Referenz für jede zu ersetzende Spalte. Geben Sie jeder Spalte einen Aliasnamen, damit Graphics Builder die Felder entsprechend zuordnen kann. Außerdem geben Sie dieselbe Anzahl von Objekten zur Laufzeit an, wie in der Anweisung angegeben wurden.

Zum Beispiel:

select &param1 ONE, &param2 TWO
from &tablename
&where_clause

Benutzen Sie eine lexikalische Referenz als Platzhalter für eine zusammengesetzte Textfolge in einer SQL SELECT-Anweisung. Sie können lexikalische Referenzen benutzen, um die Klauseln zu ersetzen, die im Anschluß an SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING, CONNECT BY und START WITH angezeigt werden.

Nur ein Parameter vom Typ Char kann als lexikalischer Parameter benutzt werden. Außerdem können Sie keine lexikalischen Referenzen in einer PL/SQL-Anweisung vornehmen.


Ausgangswerte einem Parameter zuweisen

  Verwandte Themen

So weisen Sie einem Parameter einen Ausgangswert zu:

  Geben Sie einen Wert in das Feld Ausgangswert ein.


Werte einem Parameter mit PL/SQL zuweisen

  Verwandte Themen

So weisen Sie einem Parameter mit PL/SQL einen Wert zu:

  Referenzieren Sie den Parameter, und weisen Sie ihm einen Wert zu wie bei jeder anderen Variablen.

Um z.B. dem Paramater DNO einen Wert von 10 zuzuweisen, könnten Sie folgende Anweisung in einer Prozedur aufnehmen:

:DNO := 10;

Sie können Parametern einen absoluten Wert, wie z.B. eine Zahl oder eine Textfolge zuweisen oder können Parametern relative Werte mit anderen Variablen, Parametern und Operatoren zuweisen.

Angenommen, Sie haben einen Parameter mit der Bezeichnung my_num vom Typ Number definiert. In einer PL/SQL-Anweisung gilt folgendes:

PROCEDURE double IS
BEGIN
  :my_num := :my_num*2;
END;

Dadurch würde der vorherige Wert von my_num verdoppelt.


Parametern Werte über die Befehlszeile zuweisen

  Verwandte Themen

So weisen Sie Parametern über die Befehlszeile Werte zu:

  Nehmen Sie die Parameterzuweisung als abschließende Argumente in der Befehlsfolge auf. Der für den Parameter angegebene Wert ersetzt den Ausgangswert des Parameters, wie im Dialogfeld Parameter angegeben.

Im folgenden Beispiel wird dargestellt, wie Sie den Parametern hisparam (Datentyp NUMBER) und herparam (Datentyp DATE) Werte zuweisen würden:

g30des openfile=chart1 hisparam=29 herparam='02-OCT-94'

Parameter sind global, während Variablen nur innerhalb des Programmblocks benutzt werden können, in dem sie definiert werden. Wenn Sie die Variable außerhalb des Programmblocks benutzen möchten, benutzen Sie statt dessen einen Parameter.


Objekt-Schaltflächenprozeduren für die Festlegung von Parameterwerten benutzen

So benutzen Sie eine Objekt-Schaltflächenprozedur:

1	Doppelklicken Sie auf das Grafikobjekt, auf das der Parameterwert eingestellt werden soll.

Alternativ können Sie das Objekt auch auswählen und dann Attribute aus dem Popup-Menü wählen, oder können Sie Werkzeuge [image] Attribute wählen.

2	Wählen Sie das Registertab Aufgliedern, um das Register Aufgliedern anzuzeigen.

3	Wählen Sie einen Parameter aus der Popup-Liste Parameter setzen, oder klicken Sie auf Neu, um einen neuen Parameter zu erstellen.

4	Geben Sie den Parameternamen in das Feld Name ein.

Genau wie ein Aufgliederungsdiagramm wird eine Schaltflächenprozedur vom Benutzer in der Laufzeit-Anwendung aktiviert. Anstatt jedoch ein Diagrammelement zur Steuerung der Aktion auszuwählen, wählt der Benutzer ein Grafikobjekt aus.

Der Wert Objektname ist als Datentyp CHAR definiert. Wenn Sie den Parameter mit einem anderen Datentyp als CHAR definiert haben, müssen Sie die Konvertierungsfunktion TO_CHAR verwenden, wenn Sie den Parameter in einer Abfrage oder einem PL/SQL-Programmblock referenzieren. Weitere Informationen über TO_CHAR finden Sie im PL/SQL User's Guide and Reference.

Jetzt können Sie den Parameter in jedem Programmblock innerhalb der grafischen Anwendung benutzen.


Parameter im Objektnavigator löschen

So löschen Sie einen Parameter im Objektnavigator:

1	Wählen Sie das Parameterobjekt im Navigator aus.

2	Klicken Sie auf die Schaltfläche Löschen, oder wählen Sie Navigator [image] Löschen aus dem Menü.

3	Klicken Sie in dem Warnfenster zur Bestätigung auf Ja.

4	Wenn Sie den Parameter in SQL SELECT-Anweisungen, PL/SQL-Programmblöcken oder Aufgliederungsbeziehungen referenziert haben, ändern Sie diese Referenzen entsprechend dem Löschenvorgang.


Parameter aus dem Dialogfeld Parameter löschen

So löschen Sie einen Parameter aus dem Dialogfeld Parameter:

1	Wählen Sie Werkzeuge [image] Parameter, um das Dialogfeld Parameter anzuzeigen.

2	Wählen Sie den Namen des zu löschenden Parameters aus der Dropdown-Liste Parameter.

3	Klicken Sie auf Löschen.

4	Klicken Sie in dem Warnfenster zur Bestätigung auf Ja.

5	Klicken Sie auf OK, um das Dialogfeld Parameter zu schließen.

6	Wenn Sie den Parameter in SQL SELECT-Anweisungen, PL/SQL-Programmblöcken oder Aufgliederungsbeziehugnen referenziert haben, ändern Sie diese Referenzen entsprechend dem Löschenvorgang.


Grafische Anwendungen öffnen

So öffnen Sie eine grafische Anwendung:

1	Wählen Sie Datei [image] Öffnen, um das Dialogfeld Filter anzuzeigen.

2	Wählen Sie die entsprechende Optionsschaltfläche:

•	Datei, wenn die grafische Anwendung in einer Datei gespeichert ist

•	Datenbank, wenn die grafische Anwendung in der Datenbank gespeichert ist

3	Klicken Sie auf das Kontrollkästchen Grafische Anwendungen oder Alle Dateien, und klicken Sie dann auf OK.

4	Wählen Sie eine zu öffnende grafische Anwendung, und klicken Sie auf OK.


Grafische Anwendungen auf die Laufzeit vorbereiten

  Verwandte Themen

So bereiten Sie eine grafische Anwendung auf die Laufzeit vor:

Skalieren Sie das Layout:

1	Wählen Sie Ansicht [image] Optionen [image] Layout aus dem Menü aus.

2	Ändern Sie die standardmäßige Horizontale und Vertikale Größe im Feld Layoutgröße.

3	Wählen Sie die Optionsschaltflächen Zoll oder Zentimeter.

4	Klicken Sie auf OK, um die Einstellungen für die Layoutgröße zu akzeptieren und das Dialogfeld zu schließen.

Das Layout der grafischen Anwendung wird auf die angegebene Größe geändert. Mit diesen Größeneinstellungen können Sie die Größe des Fensters festlegen, in dem die grafische Anwendung angezeigt wird.

Legen Sie die Fensterattribute für das Standardfenster fest:

Standardmäßig öffnet Graphics Builder jede grafische Anwendung in einem Fenster mit der Bezeichnung Haupt-Layout. Sie können die folgenden Attribute des Standardfensters ändern:

•	Position im Laufzeit-Layout

•	Horizontale und vertikale Größe des Fensters

•	Fenstername

Wenn Sie Attribute für das Standardfenster festlegen möchten, tun Sie dies in einem Open-Display-Trigger wie dem folgenden:

PROCEDURE OGTRIGGERPROC0 IS
  the_win    OG_WINDOW;
  win_pos    OG_POINT;
  win_wid    NUMBER;
  win_ht     NUMBER;
BEGIN
  the_win:=OG_GET_WINDOW('Main Layout');

/*Define the position for the window*/
  win_pos.x:=1*OG_INCH;
  win_pos.y:=.5*OG_INCH;

/*Set the position property for the window*/
  OG_SET_POSITION(the_win, win_pos);

/*Define the size of the window */
  win_wid:=4*OG_APP.HSCREEN_RES;
  win_ht:=5*OG_APP.VSCREEN_RES;

/*Set the size property of the window*/
  OG_SET_WINDOW_SIZE(the_win, win_wid, win_ht);

/*Assign a name to the window */
  OG_SET_WINDOW_NAME(the_win, 'Start Here');
END;

Wenn die grafische Anwendung in Graphics Builder Runtime geöffnet wird, wird sie in einem 4x5-Fenster bei der Koordinatenposition (1, 0,5) geöffnet.

Geben Sie die Layouteinheiten an:

Definieren Sie eine bestimmte horizontale und vertikale Größe für das Fenster der grafischen Anwendung mit den OG_APP-Konstanten HSCREEN_RES und VSCREEN_RES. Diese entsprechen OG_INCH, werden jedoch ausschließlich für Fensterabmessungen benutzt.

Die horizontale und vertikale Layoutauflösung sind immer identisch. Die Konstanten OG_APP.HSCREEN_RES und OG_APP.VSCREEN_RES stellen die Anzahl von Layouteinheiten (Pixel) in jeweils einem horizontalen Zoll bzw. einem vertikalen Zoll dar. Diese Maßeinheit gewährleistet, daß das Fenster der grafischen Anwendung immer gleich aussieht, unabhängig von der benutzten Bildschirmauflösung.

Benutzen Sie den vordefinierten PL/SQL-Datentyp OG_POINT, um die Koordinaten (x,y) im Layout darzustellen. Der Wert (0,0) stellt die obere linke Ecke der grafischen Anwendung dar. Diese Koordinaten werden in Layouteinheiten ausgedrückt.


Über das Generieren von grafischen Anwendungen

Wenn Sie eine Laufzeitversion einer grafischen Anwendung generieren, enthält diese nur die Elemente, die zur Ausführung der grafischen Elemente mit den ausführbaren Dateien von Graphics Builder Runtime oder den ausführbaren Stapeldateien benötigt werden. Eine generierte grafische Anwendung enthält z.B. keinen PL/SQL-Quellcode.


Grafische Anwendungen generieren

So generieren Sie eine grafische Anwendung:

1	Wählen Sie Datei [image] Verwaltung [image] Generieren [image] Datei oder Datenbank, je nachdem, wo die grafische Anwendung gespeichert werden soll.

2	Geben Sie den Namen der Datei für die Laufzeitanwendung ein, oder akzeptieren Sie den Standardnamen.

Grafische Laufzeitanwendungen von Graphics Builder verwenden standardmäßig die Dateinamenerweiterung .ogr.

3	Klicken Sie auf OK, um eine Laufzeitversion der grafischen Anwendung zu generieren.


Über das Testen von grafischen Anwendungen

  Verwandte Themen

Im Builder können Sie die Ausführung der grafischen Anwendung testen, indem Sie den Graphics Builder Debugger aufrufen. Wenn Sie eine grafische Anwendung zur Ausführung im Debugger auswählen, führt Graphics Builder die gespeicherte Version der grafischen Anwendung aus. Wenn die grafische Anwendung im Builder geöffnet ist, müssen Sie alle zuletzt vorgenommenen Änderungen speichern, bevor Sie die grafische Anwendung ausführen.


Geöffnete grafische Anwendungen ausführen

So führen Sie eine geöffnete grafische Anwendung aus:

1	Wählen Sie das Anwendungsobjekt im Navigator aus.

2	Klicken Sie auf die Schaltfläche Ausführen in der Symbolleiste, um die grafische Anwendung im Fenster Haupt-Layout von Graphics Builder Debugger zu öffnen, in dem die Laufzeitausführung der grafischen Anwendung simuliert wird.

3	Wählen Sie Datei [image] Schließen, um den Debugger zu schließen, wenn Sie fertig sind.

Wenn Sie eine grafische Anwendung im Builder öffnen, während diese im Debugger geöffnet ist, sind die Änderungen im Debugger erst sichtbar, wenn Sie die grafische Anwendung speichern und erneut ausführen. Wenn Sie PL/SQL-Programmblöcke im Debugger bearbeiten, können Sie die Änderungen im Builder aufnehmen, indem Sie Bearbeiten [image] Programmblöcke synchronisieren verwenden.


Geschlossene grafische Anwendungen ausführen

So führen Sie eine geschlossene grafische Anwendung aus:

1	Wählen Sie Datei [image] Ausführen, um das Dialogfeld Filter anzuzeigen.

2	Wählen Sie die entsprechenden Einstellungen im Dialogfeld Filter, und klicken Sie dann auf OK, um das Dialogfeld Aus Datenbank öffnen oder das Datei-Dialogfeld Ihres Betriebssystems zu öffnen.

3	Wählen Sie eine grafische Anwendung aus der daraufhin angezeigten Liste.

4	Akzeptieren Sie das Dialogfeld, um es zu schließen und die ausgewählte grafische Anwendung auszuführen.

5	Die grafische Anwendung wird im Fenster Haupt-Layout des Graphics Builder Debuggers geöffnet, in dem die Laufzeitausführung der grafischen Anwendung simuliert wird.

6	Wählen Sie Datei [image] Schließen, um den Debugger zu schließen, wenn Sie fertig sind.


Grafische Anwendungen ausdrucken

So drucken Sie eine grafische Anwendung aus:

1	Wählen Sie Datei [image] Drucken, um das Drucken-Dialogfeld Ihres Betriebssystems anzuzeigen.

2	Geben Sie die entsprechenden Druckoptionen für Ihr System an.

3	Akzeptieren Sie das Dialogfeld, um mit dem Drucken zu beginnen.

Wenn die grafische Anwendung mehrere Ebenen enthält, werden nur die angezeigten Ebenen ausgedruckt.


Seiten für das Drucken einrichten

So richten Sie Seiten für das Drucken ein:

1	Wählen Sie Datei [image] Seite einrichten, um das Dialogfeld Seite einrichten Ihres Betriebssystems anzuzeigen.

2	Geben Sie die Druckeinstellungen für Ihr System an.

3	Akzeptieren Sie das Dialogfeld.

Die Einstellungen bleiben während der laufenden Builder-Sitzung bestehen.


Über das Verketten von grafischen Anwendungen

Sie können eine grafische Anwendung aus einer anderen grafischen Anwendung mit der vordefinierten PL/SQL-Prozedur OG_OPEN_DISPLAY öffnen. Sie können entweder eine zweite grafische Anwendung öffnen und die ursprüngliche grafische Anwendung geöffnet lassen oder die Originalanwendung schließen.

Wenn Sie beschließen, eine neue grafische Anwendung zu öffnen und die Originalanwendung zu schließen, müssen Sie sicher sein, daß das Unterprogramm OG_CLOSE_DISPLAY das letzte in dem Stapel ist. Auf diese Weise wird gewährleistet, daß alle anderen Unterprogramme ausgeführt wurden, bevor das Unterprogramm für das Schließen der grafischen Anwendung aufgerufen wird. Unterprogramme, die im Anschluß an das Unterprogramm OG_CLOSE_DISPLAY aufgeführt werden, werden nicht aufgerufen. Nach Aufruf des Unterprogramms OG_CLOSE_DISPLAY wird gegebenenfalls der Close-Display-Trigger ausgeführt.

Zum Beispiel:

PROCEDURE next_display IS
  next_disp  OG_DISPLAY;
  old_disp   OG_DISPLAY;
BEGIN
  next_display:=OG_OPEN_DISPLAY('more.ogd', OG_FILESYSTEM);
  old_disp:=OG_GET_DISPLAY('plan.ogd');
  OG_CLOSE_DISPLAY(old_disp);
END;


Über das Erstellen von Paketen

  Verwandte Themen

Ein Paket besteht aus einer Sammlung von zusammengehörigen PL/SQL-Prozeduren, Funktionen, Datentypen, Variablen und anderen Konstrukten, die als Datenbankobjekt gespeichert sind. Grafische Anwendungen können globale Variablen gemeinsam benutzen, die in einem Paket gespeichert sind, vorausgesetzt, alle betroffenen grafischen Anwendungen haben dieselbe Datenbankverbindung. Nachdem die Verbindung einer grafischen Anwendung mit der Datenbank unterbrochen ist, wird der Paketstatus zurückgesetzt.

Um sicherzustellen, daß alle grafischen Anwendungen dieselbe Datenbankverbindung verwenden, benutzen Sie die vordefinierte PL/SQL-Prozedur OPEN_DISPLAY, um eine grafische Anwendung aus einer anderen zu öffnen.

Das Paket, das Sie erstellen, sollte sowohl die Variablendefinitionen als auch Unterprogramme zur Bearbeitung der Variablen enthalten (d.h. Prozeduren für das Zurücksetzen des Variablenwertes und Funktionen für das Abrufen des Variablenwertes). Sie können die Variable und die zugehörigen Unterprogramme in jeder grafischen Anwendung referenzieren, die dieselbe Datenbankverbindung verwendet.

Im folgenden Beispiel werden eine Paketspezifikation und ein Rumpf dargestellt, der eine globale Variablen-Leiste und zwei Unterprogramme enthält:

PACKAGE foo IS
  bar  VARCHAR2;
  PROCEDURE set_bar (txt VARCHAR2);
  FUNCTION get_bar return VARCHAR2;
 END;

PACKAGE BODY foo IS
  PROCEDURE set_bar (txt VARCHAR2) IS
    BEGIN
      foo.bar:=txt;
    END;

  FUNCTION get_bar RETURN VARCHAR2 IS
    BEGIN
      return foo.bar;
    END;
END;

Nachdem Sie das Paket erstellt haben, können Sie die globale Variable referenzieren und deren Wert anwendungsübergreifend bearbeiten, indem Sie die gespeicherten Unterprogramme benutzen. Zum Beispiel:

PROCEDURE set_param IS
BEGIN
/*assign the local parameter 'param' to the value of the
global variable bar*/

  :param:=foo.get_bar;

/*change the value of bar for the next time it is
referenced*/

  foo.set_bar('object1');
END;

Weitere Informationen über das Erstellen von PL/SQL-Paketen finden Sie im PL/SQL User's Guide and Reference.


Über Fenster

In Graphics Builder können Fenster auf zwei verschiedene Arten benutzt werden: als Arbeitsbereiche und als Anzeigebereiche.

Im Builder sind Fenster rechteckige Arbeitsbereiche, die Oberflächenelemente von Graphics Builder enthalten, wie z.B. Editoren, Tabellen und Browser. Sie können mehrere Fenster öffnen, es kann jedoch immer nur ein Fenster gleichzeitig aktiv sein.

Die standardmäßige Fensterkonfiguration definiert Position und Anzahl der Fenster, die beim Öffnen einer grafischen Anwendung angezeigt werden. Standardmäßig ist das Fenster des Layouteditors als einziges Fenster geöffnet. Sie können jedoch eine andere Fensterkonfiguration festlegen und diese im Dialogfeld Voreinstellungen als neue Standardkonfiguration speichern.

Sie können außerdem Fenster programmgesteuert erstellen, um Objekte in verschiedenen Bereichen des Layouts zur Laufzeit darzustellen. Standardmäßig werden die Objekte der grafischen Anwendung im Fenster Haupt-Layout angezeigt. Mit PL/SQL können Sie zusätzliche Fenster erstellen, in denen Sie Objekte darstellen können. Sie können auch Größe und Position eines Fensters definieren und angeben, wann dieses geöffnet oder geschlossen werden soll.


Über das Steuern der Fenstersichtbarkeit

Sie können die in Ihrer Laufzeitanwendung benutzten Fenster außerdem wie folgt verwalten:

Verbergen	Benutzen Sie diese Option, um ein Fenster zu verbergen, das möglicherweise später angezeigt werden soll.
Anzeigen	Benutzen Sie diese Option, um ein vorher verborgenes Fenster wieder anzuzeigen.
Zerstören	Benutzen Sie diese Option, um ein nicht mehr benötigtes Fenster zu schließen. Dies kann ein Fenster sein, das aus einer bestehenden grafischen Anwendung aufgerufen wurde.
Hinweis: Sie können das Standardfenster 'Haupt-Layout' nicht zerstören. Wenn Sie ein Standardfenster Haupt-Layout zerstören möchten, benutzen Sie OG_CLOSE_DISPLAY. Sonst benutzen Sie OG_HIDE_WINDOW.


Über die Benutzung von Ebenen mit Fenstern

Wenn Ihre grafische Anwendung mehrere Ebenen enthält, können Sie eine bestehende Ebene unter separaten Fenstern aktivieren, verbergen und anzeigen. Dies hat dieselbe Auswirkung wie das Öffnen einer anderen grafischen Anwendung. Jede Ebene kann in einem separaten Fenster dargestellt werden, so daß der Benutzer mehrere Ebenen einer einzelnen grafischen Anwendung sehen kann.

Sie können Ebenen unter mehreren Fenstern mit den vordefinierten PL/SQL-Prozeduren OG_ACTIVATE_LAYER, OG_HIDE_LAYER und OG_SHOW_LAYER bearbeiten. Jede dieser Prozeduren verfügt über ein optionales Argument zur Bearbeitung von Fenstern. Wenn Sie kein spezielles Fenster-Handle für die Prozedur angeben, führt Graphics Builder die angegebene Aktion mit jedem Fenster aus, in dem die Ebene enthalten ist.

Benutzer können nur mit dem Fenster mit der aktiven Ebene kommunizieren. Denken Sie daran, daß Sie die aktive Ebene nicht verbergen können. Sie müssen zuerst eine neue Ebene aktivieren und dann die alte verbergen.

In dem folgenden Beispiel wird ein Programmblock dargestellt, der eine zweite Ebene der grafischen Anwendung in einem neuen Fenster aktiviert:

PROCEDURE activate_layer IS
  new_layer   OG_LAYER;
  old_layer   OG_LAYER;
  new_window  OG_WINDOW;
BEGIN
  new_layer:=OG_GET_LAYER('layer1');
  old_layer:=OG_GET_LAYER('layer0');
  new_window:=OG_GET_WINDOW('Details');
  OG_ACTIVATE_LAYER(new_layer, new_window);
END;


Datenbank-Pipes benutzen

So benutzen Sie Datenbank-Pipes:

1	Verwenden Sie die Prozedur PACK_MESSAGE, um Informationen zu dem lokalen Meldungspuffer hinzuzufügen.

2	Benutzen Sie die Prozedur SEND_MESSAGE, um eine Pipe anzugeben, über den Informationen in den Meldungspuffer gesendet werden sollen.

3	Benutzen Sie die Prozedur RECEIVE_MESSAGE, um die Meldung in der benannten Pipe zu empfangen.

4	Benutzen Sie die Prozedur UNPACK _MESSAGE, um auf Informationen in dem Puffer zuzugreifen.

Die folgende Prozedur packt einen Variablenwert in einen Meldungspuffer und sendet den Puffer dann mit einer Pipe mit der Bezeichnung 'the_pipe' an den Server.

PROCEDURE pass_var (my_var NUMBER) IS
 stat  NUMBER;
BEGIN
  DBMS_PIPE.PACK_MESSAGE(my_var);
  stat:=DBMS_PIPE.SEND_MESSAGE('the_pipe', 30, 8192);
END;

Hinweis: Graphics Builder erkennt momentan keine Standardwerte für Argumente in den Spezifikationen von gespeicherten Unterprogrammen. Während also DBMS_PIPE.SEND_MESSAGE Standardwerte für die Argumente TIMEOUT und MAXPIPESIZE angegeben hat, müssen Sie explizite Werte bereitstellen.

Die folgende Prozedur kann aus einer zweiten grafischen Anwendung ausgeführt werden, die dieselbe Datenbankverbindung benutzt.

PROCEDURE get_var IS
  my_var  NUMBER;
  stat    NUMBER;
BEGIN
/*Receive the pipe from the server */
  stat:=DBMS_PIPE.RECEIVE_MESSAGE('the_pipe', 30);
/*Unpack the information in the pipe and store in my_var*/
  DBMS_PIPE.UNPACK_MESSAGE(my_var);
/*Use the variable value to perform some action*/
  use_variable(my_var);
END;

Weitere Informationen über das Paket DBMS_PIPE finden Sie in Oracle7 Server Application Developer's Guide.


Neue Fenster erstellen

So erstellen Sie ein neues Fenster:

  Benutzen Sie die vordefinierte PL/SQL-Funktion OG_MAKE_WINDOW, um ein neues Fenster zu erstellen. Mit dieser Funktion können Sie mehrere Fenster für eine Laufzeitanzeige erstellen. Auf diese Weise können Sie verschiedene Ebenen einer grafischen Anwendung in verschiedenen Fenstern anzeigen oder grafische Anwendungen miteinander verketten, indem Sie eine grafische Anwendung aus einer anderen öffnen.

Zum Beispiel:

PROCEDURE make_win IS
  nu_win   OG_WINDOW;
  win_pos  OG_INCH;
  win_wid  NUMBER;
  win_ht   NUMBER;
BEGIN
  win_pos.x:=0*OG_INCH;
  win_pos.y:=0*OG_INCH;
  win_wid:=7*OG_APP.VSCREEN_RES;
  win_ht:=6*OG_APP.HSCREEN_RES;

  nu_win:=OG_MAKE_WINDOW(win_pos, win_wid, win_ht);
  OG_SET_NAME(nu_win, 'Detail Chart');
END;


Bildlaufleisten von Fenstern verbergen

So verbergen Sie Bildlaufleisten von Fenstern:

  Benutzen Sie den Attributsatz OG_SCROLLBARS_WINDOWA der vordefinierten PL/SQL-Prozedur.

Zum Beispiel:

PROCEDURE make_window IS
  the_window  OG_WINDOW;
  windo_attr  OG_WINDOW_ATTR;
BEGIN
  windo_attr.name:='Inventory';
  windo_attr.scrollbars:=FALSE;
  windo_attr.width:=4*OG_APP.HSCREEN_RES;
  windo_attr.height:=5*OG_APP.VSCREEN.RES;
  windo_attr.mask:=OG_NAME_WINDOWA+
OG_SCROLLBARS_WINDOWA+
OG_SIZE_WINDOWA;
  the_window:=OG_MAKE(windo_attr);
END;

Sie können die Attributsätze für ein bestehendes Fenster nicht ändern. Wenn Sie die Bildlaufleisten für ein bestehendes Fenster verbergen möchten, müssen Sie dieses Fenster verbergen oder zerstören und ein neues Fenster erstellen. Beachten Sie, daß Sie das standardmäßige Originalfenster mit der Bezeichnung 'Haupt-Layout' nicht zerstören können.

Wenn Sie Bildlaufleisten im Ausgangsfenster der Laufzeitanwendung verbergen möchten, müssen Sie einen Open-Display-Trigger erstellen, der ein neues Fenster ohne Bildlaufleisten erstellt und das Fenster 'Haupt-Layout' verbirgt.


Fenster verbergen

So verbergen Sie ein Fenster:

  Benutzen Sie die vordefinierte PL/SQL-Prozedur OG_HIDE_WINDOW. Mit dieser Prozedur können Sie ein Fenster vorübergehend vor Benutzern verbergen und es später wieder anzeigen.

Im folgenden Beispiel wird eine Schaltflächenprozedur dargestellt, die aktiviert wird, wenn ein Benutzer ein Diagrammelement auswählt.

PROCEDURE OGBUTTONPROC0 (buttonobj IN og_object, hitobj IN og_object, win IN og_window, eveninfo IN og_event) IS
  curr_window  OG_WINDOW;
BEGIN
  curr_window:=OG_GET_WINDOW('Main Layout');
  OG_HIDE_WINDOW('Main Layout');
END;


Fenster anzeigen

So zeigen Sie ein Fenster an:

  Benutzen Sie die vordefinierte PL/SQL-Prozedur OG_SHOW_WINDOW.

Zum Beispiel:

PROCEDURE show_window IS
  back_window  OG_WINDOW;
BEGIN
  back_window:=OG_GET_WINDOW('Details');
  OG_SHOW_WINDOW(back_window);
END;


Fenster zerstören

So zerstören Sie Fenster:

  Benutzen Sie die vordefinierte PL/SQL-Prozedur OG_DESTROY. Mit dieser Prozedur können Sie jedes Fenster schließen, das Sie mit OG_MAKE_WINDOW oder OG_MAKE(Window) erstellt haben. OG_DESTROY schließt das Fenster, ohne daß sich dies auf den Inhalt auswirkt.

Um alle mit einer grafischen Anwendung verknüpften Fenster zu schließen, benutzen Sie die vordefinierte PL/SQL-Prozedur OG_CLOSE_DISPLAY.

Hinweis: Sie können ein Standardfenster 'Haupt-Layout' nicht zerstören.

Die folgende Prozedur zerstört ein Fenster.

PROCEDURE close_window (the_window IN og_window) IS
BEGIN
  OG_DESTROY(the_window);
END;


Über Diagrammvorlagen

Mit einer Diagrammvorlage werden das Format eines Diagramms und dessen verschiedene Attribute definiert. Ein Diagramm kann immer nur mit einer Diagrammvorlage gleichzeitig verknüpft werden. Sie können jedoch die folgenden Aktionen mit einer individuellen Diagrammvorlage durchführen und diese Vorlage dann benutzen, um die Attribute für mehrere Diagramme anzuwenden.

•	Angabe der Attribute für Achsenrahmen

•	Angabe der Attribute für Werte-, Kategorien- und Datumsachsen

•	Verschieben der Legende

•	Definieren von Referenzlinien

•	Angabe von Zahlen- und Datumsformaten

•	Angabe von Text- und Linienattributen

•	Angabe von Farben und Mustern

Jede Diagrammvorlage kann mit einer oder mehreren Feldvorlagen verknüpft werden, die die Attribute der einzelnen Felder definieren, wie z.B. Balken, Säulen, Kreissegmente oder Linien.

Graphics Builder umfaßt 56 Standarddiagrammvorlagen, die in 10 Kategorien unterteilt sind, einschließlich Balken, Linien und Kreis. Wenn Sie ein Diagramm eines bestimmten Typs und Subtyps erstellen, fertigt Graphics Builder eine Kopie der Standarddiagrammvorlage an, die mit diesem Typ verknüpft ist. Sie können diese Kopie individuell ändern, können die Standarddiagrammvorlagen selbst jedoch nicht ändern.

Wenn Graphics Builder die Vorlage für Ihre Benutzung kopiert, erhält diese den Namen Vorlagex, wobei x eine Zahl ist, die jedesmal erhöht wird, wenn Sie eine neue Diagrammvorlage für die aktuelle grafische Anwendung erstellen. Nachdem Sie eine Diagrammvorlage individuell geändert haben, können Sie diese mehreren Diagrammen zuweisen, indem Sie sie aus der Dropdown-Liste Vorlage im Dialogfeld Diagrammattribute beim Erstellen des Diagramms auswählen.

Diagrammvorlagen werden mit dem Diagrammvorlagen-Editor bearbeitet.


Über Komponenten von Diagrammvorlagen

Die Komponenten von Diagrammvorlagen werden in zwei Hauptkategorien unterteilt:

•	Diagrammrahmen

•	Feldvorlagen


Über Diagrammrahmen

Diagrammrahmen umfassen Komponenten, die die Grundstruktur des Diagramms darstellen, wie z.B. Achsenbeschriftung, Schriftarten und Legendenposition. Eine Diagrammvorlage kann nur einen Diagrammrahmen haben.

Wenn Sie eine Diagrammvorlage das erste Mal auswählen, entspricht der Diagrammrahmen standardmäßig der Anzeige im Diagrammvorlagen-Editor.


Über Feldvorlagen

Feldvorlagen umfassen Komponenten, mit denen festgelegt wird, wie Wertdaten (abhängige Daten) als Diagrammfelder dargestellt werden, wie z.B. Balken oder Linien. Eine Diagrammvorlage verfügt über mindestens eine Feldvorlage. Sie können jedoch zusätzliche Feldvorlagen erstellen, die Sie mit verschiedenen Diagrammwerten (Abfragespalten) verknüpfen.

Sie können eine Feldvorlage anzeigen, wenn der Diagrammrahmen im Diagrammvorlagen-Editor angezeigt wird, indem Sie die Optionsschaltfläche Feldvorlage am oberen Rand des Editors auswählen.


Über Attribute von Diagrammvorlagen

Mit Attributen von Diagrammvorlagen werden das Erscheinungsbild und Verhalten der Diagrammrahmen- und Feldvorlagenkomponenten definiert. Die anzuwendenden Attribute und deren Definition variieren je nach Typ der Diagrammvorlage. Im allgemeinen definieren Sie die Attribute der Diagrammvorlage im Diagrammvorlagen-Editor, indem Sie eine Komponente auswählen, deren Attributblatt oder das Menü Format öffnen und die entsprechenden Optionen auswählen.


Über den Diagrammvorlagen-Editor

Jede grafische Anwendung enthält nur einen Diagrammvorlagen-Editor. Auch wenn Sie viele Diagrammvorlagen in einer einzigen grafischen Anwendung definieren können, können Sie immer nur eine grafische Anwendung gleichzeitig im Diagrammvorlagen-Editor anzeigen oder ändern.

Beachten Sie, daß Sie mit dem Diagrammvorlagen-Editor genau wie mit dem Layouteditor mehrere Ansichten festlegen können, indem Sie in der unteren rechten Ecke Bildschirmteiler ziehen. Auf diese Weise können Sie eine Diagrammvorlage in einer Ansicht anzeigen und die Feldvorlagen in einer anderen.

Der Diagrammvorlagen-Editor besteht aus folgenden Komponenten:

Rahmeneditor

Feldvorlagen-Editor

Werkzeugpalette


Über den Rahmeneditor

Im Rahmeneditor wählen Sie Elemente des Diagrammrahmens aus, und ändern Sie diese. Der Rahmen bestimmt die Grundstruktur des Diagramms und hat wenig mit den Daten zu tun, die dargestellt werden. Mit dem Erscheinungsbild des Rahmens im Editor wird dargestellt, wie das Diagramm beim Erstellen angezeigt wird. Sie können Schriftart, Farbe und andere grafische Attribute der Rahmenelemente ändern und die Ergebnisse sofort sehen. Außerdem können Sie (gegebenenfalls) die Legende verschieben, indem Sie das Legendenfeld (nicht den Text) an eine andere Stelle ziehen.


Über den Feldvorlagen-Editor

Im Feldvorlagen-Editor wählen Sie die Elemente der Feldvorlagen des Diagramms aus, und ändern Sie diese. Mit einer Feldvorlage wird bestimmt, wie eine Datengruppe in dem Diagramm angezeigt wird. Wenn Sie ein Diagramm erstellen, müssen Sie Spalten aus der Abfrage mit bestimmten Feldvorlagen verknüpfen. Die grafischen Attribute der Feldvorlage bestimmen, wie die Daten in dem Diagramm dargestellt werden.


Über die Werkzeugpalette der Diagrammvorlage

Die Werkzeugpalette im Diagrammvorlagen-Editor enthält ein Auswählen-Werkzeug sowie die Linien-/Füll-/Textfarben-Anzeige, die Palette für die Linienfarbe, die Palette für die Füllfarbe (und die Musterpalette), die Palette für die Textfarbe und die Symbolpalette.


Über die Auswahl einer Diagrammvorlage

Wenn Sie Werkzeuge [image] Vorlagen aus dem Menü auswählen, ohne zuerst ein Diagramm auszuwählen, wird der Diagrammvorlagen-Editor mit der aktuellen Diagrammvorlage angezeigt. Die aktuelle Diagrammvorlage ist die Vorlage, die als letztes im Diagrammvorlagen-Editor ausgewählt wurde. Sie können eine andere standardmäßige oder benutzerdefinierte Diagrammvorlage als "aktuelle" Diagrammvorlage auswählen.


Über die Anpassung von Diagrammvorlagen

  Verwandte Themen

Bevor Sie den Diagrammrahmen der aktuellen Diagrammvorlage bearbeiten, stellen Sie sicher, daß der Rahmen im Diagrammvorlagen-Editor angezeigt wird, damit Sie die vorgenommenen Änderungen überprüfen können.

  Wählen Sie im Diagrammvorlagen-Editor die Optionsschaltfläche Rahmen, um den Diagrammrahmen anzuzeigen.

Der Rahmen und die Achsenattribute einer Diagrammvorlage werden genau so angepaßt, wie der Rahmen und die Achsenattribute eines Diagramms.

Wenn im folgenden Menüoptionen und Werkzeuge referenziert werden, benutzen Sie die Menüoptionen und Werkzeuge im Diagrammvorlagen-Editor.

Sie können nicht nur Rahmen- und Achsenattribute der Vorlage anpassen, sondern auch eine oder mehrere Feldvorlagen zur Benutzung mit der Diagrammvorlage.


Über die Verwaltung exportierter Diagrammvorlagen

Nachdem Sie eine Diagrammvorlage erstellt und individuell angepaßt haben, können Sie diese mit dem Objektnavigator oder dem Diagrammvorlagen-Editor in das Dateisystem oder die Datenbank zur Benutzung in grafischen Anwendungen exportieren.

Sie können eine vorher exportierte Diagrammvorlage aus dem Objektnavigator oder dem Diagrammvorlagen-Editor importieren.


Diagrammvorlagen erstellen

So erstellen Sie eine Diagrammvorlage:

1	Klicken Sie im Objektnavigator auf den Knoten Vorlagen, und klicken Sie dann auf die Schaltfläche Erstellen in der Symbolleiste.

2	Akzeptieren Sie den Standarddiagrammtyp (Säule), oder wählen Sie einen anderen Diagrammtyp und Subtyp aus dem Menü Typ aus.

3	Akzeptieren Sie den Standardnamen für die Diagrammvorlage (Vorlagex), oder ändern Sie den Namen, indem Sie Vorlage [image] Umbenennen wählen, um das Dialogfeld Vorlage umbenennen anzuzeigen.

4	Ändern Sie die Rahmen- und Achsenattribute des Diagramms nach Bedarf.

5	Wählen Sie Datei [image] Schließen, um den Diagrammvorlagen-Editor zu schließen, wenn Sie fertig sind.

Sie können eine benutzerdefinierte Diagrammvorlage erstellen, bevor Sie Diagramme erstellen. Nachdem Sie eine Diagrammvorlage erstellt (und angepaßt) haben, können Sie diese Diagrammen im Dialogfeld Diagrammattribute zuweisen, indem Sie den Vorlagennamen aus der Dropdown-Liste Vorlage auswählen.

Außerdem können Sie eine Diagrammvorlage in das Dateisystem oder die Datenbank exportieren, damit Sie sie in anderen grafischen Anwendungen benutzen können.


Standard-Diagrammvorlagen auswählen

So wählen Sie eine Standard-Diagrammvorlage aus:

1	Wählen Sie Werkzeuge [image] Vorlagen, um den Diagrammvorlagen-Editor anzuzeigen.

2	Wählen Sie den gewünschten Diagrammtyp (z.B. Kreis) aus dem Menü Typ aus.

3	Wählen Sie eine der Diagrammvorlagen in dem Untermenü für diesen Diagrammtyp.

Der Diagrammrahmen für die ausgewählte Standard-Diagrammvorlage wird im Diagrammvorlagen-Editor angezeigt. Diese Vorlage bleibt die aktuelle Diagrammvorlage, bis Sie eine andere Vorlage erstellen oder bearbeiten.

4	Schließen Sie den Diagrammvorlagen-Editor, indem Sie Datei [image] Schließen wählen.

Dieser Diagrammtyp ist jetzt die aktuelle Diagrammvorlage. Wenn Sie Werkzeuge [image] Vorlagen aus dem Menü auswählen, wird diese Diagrammvorlage im Diagrammvorlagen-Editor angezeigt.


Benutzerdefinierte Diagrammvorlagen auswählen

So wählen Sie eine benutzerdefinierte Diagrammvorlage aus:

1	Wählen Sie Werkzeuge [image] Vorlagen, um den Diagrammvorlagen-Editor anzuzeigen.

2	Wählen Sie im Diagrammvorlagen-Editor die Popup-Liste Vorlage, um eine Liste der benutzerdefinierten Vorlagen anzuzeigen.

3	Wählen Sie eine der aufgeführten Diagrammvorlagen, um diese im Diagrammvorlagen-Editor anzuzeigen.

Sie bleibt die aktuelle Diagrammvorlage, bis Sie eine andere Vorlage erstellen oder bearbeiten.

4	Schließen Sie den Diagrammvorlagen-Editor, indem Sie Datei [image] Schließen wählen.

Dieser Diagrammtyp ist jetzt die aktuelle Diagrammvorlage. Wenn Sie Werkzeuge [image] Vorlagen aus dem Menü auswählen, wird diese Diagrammvorlage im Diagrammvorlagen-Editor angezeigt.


Diagrammvorlagen importieren

So importieren Sie eine Diagrammvorlage:

1	Wählen Sie den Knoten Vorlagen im Objektnavigator aus, oder wählen Sie Werkzeuge [image] Vorlagen, um den Diagrammvorlagen-Editor anzuzeigen.

2	Wählen Sie Datei [image] Importieren [image] Vorlage, um das Dialogfeld Importieren anzuzeigen.

3	Wählen Sie den Datei-/Modulnamen und den Speicherort aus.

4	Klicken Sie auf OK, um die angegebene Diagrammvorlage in die aktuelle grafische Anwendung zu importieren.


Diagrammvorlagen exportieren

So exportieren Sie eine Diagrammvorlage:

1	Wählen Sie das Vorlagenobjekt im Navigator aus, oder wählen Sie die zu exportierende Diagrammvorlage aus der Dropdown-Liste Vorlage im Diagrammvorlagen-Editor aus.

2	Wählen Sie Datei [image] Exportieren [image] Vorlage, um das Dialogfeld Exportieren anzuzeigen.

3	Wählen Sie die Exportoptionen, wie Speicherort und Datei-/Modulname.

4	Klicken Sie auf OK, um die Vorlage zu exportieren und das Dialogfeld Exportieren zu schließen.


Diagrammvorlagen umbenennen

So benennen Sie eine Diagrammvorlage im Objektnavigator um:

1	Wählen Sie das umzubenennende Diagrammvorlagen-Objekt aus.

2	Setzen Sie den Mauszeiger über den Namen der Diagrammvorlage.

Der Cursor nimmt die Form eines Texteditors an.

3	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitenmodus zu gehen.

Wenn der ganze Name ersetzt werden soll, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein.

So benennen Sie eine Diagrammvorlage im Diagrammvorlagen-Editor um:

1	Wählen Sie die umzubenennende Diagrammvorlage aus der Dropdown-Liste Vorlage aus.

Daraufhin wird die Diagrammvorlage im Editorlayout angezeigt.

2	Wählen Sie Vorlage [image] Umbenennen, um das Dialogfeld Vorlage umbenennen anzuzeigen.

3	Geben Sie den neuen Vorlagennamen in das Feld Name der Vorlage ein.

4	Klicken Sie auf OK, um den neuen Namen anzuwenden und das Dialogfeld zu schließen.

Hinweis:  Wenn Sie eine Diagrammvorlage umbenennen, die Sie in PL/SQL-Programmblöcken referenziert haben, müssen Sie diese Referenzen entsprechend dem neuen Namen ändern.


Diagrammvorlagen löschen

So löschen Sie eine Diagrammvorlage aus dem Objektnavigator:

1	Wählen Sie das Diagrammvorlagen-Objekt im Navigator aus.

2	Klicken Sie auf die Schaltfläche Löschen, oder wählen Sie Navigator [image] Löschen aus dem Menü.

3	In dem daraufhin angezeigten Warnfenster klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.

So löschen Sie eine Diagrammvorlage aus dem Diagrammvorlagen-Editor:

1	Wählen Sie die zu löschende Diagrammvorlage aus der Dropdown-Liste Vorlage aus.

2	Wählen Sie Vorlage [image] Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

3	Klicken Sie auf Ja, um den Vorgang zu bestätigen.

Hinweis:  Wenn Sie eine Diagrammvorlage löschen, die Sie in PL/SQL-Programmblöcken referenziert haben, müssen Sie diese Referenzen ändern, um den Löschenvorgang zu berücksichtigen.


Über das Erstellen, Ändern und Zuweisen von Feldvorlagen

Sie können mehrere Feldvorlagen für eine Diagrammvorlage erstellen, wenn Sie Wertespaltenfeldern verschiedene Attribute zuweisen möchten. Jede Feldvorlage kann einem anderen Wertespaltenfeld zugewiesen werden, mehreren Wertespaltenfeldern zugewiesen werden oder unbenutzt bleiben, bis Sie diese Feldvorlage benötigen. Feldattribute umfassen Optionen wie Darstellungstyp, Linienstil und Drehung der Beschriftung, je nach Diagrammtyp.

Nachdem Sie eine Feldvorlage erstellt und angepaßt haben, können Sie sie einer Wertespalte in dem Diagramm zuweisen.


Über das Anwenden von Farben und Mustern für Feldvorlagen

Die Prozeduren für das Anwenden von Farben und Mustern für Feldvorlagen sind identisch mit den Prozeduren bei Objekten. Allerdings benutzen Sie die Farbpaletten im Diagrammvorlagen-Editor und nicht die Farbpaletten im Layouteditor. Die Farbpaletten verhalten sich jedoch identisch.


Feldvorlagen hinzufügen

So fügen Sie Feldvorlagen hinzu:

1	Wählen Sie Feldvorlagen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Feldvorlagen, um das Dialogfeld Feldvorlagenattribute anzuzeigen.

2	Klicken Sie auf Neu, um eine neue Feldvorlage zu erstellen, die anfänglich den Namen ftempx hat.

Sie können die neue Feldvorlage umbenennen oder den Standardnamen behalten.

3	Wählen Sie das Register Achsenfeld aus, um Attribute für Feldvorlagen für Achsendiagramme festzulegen.

4	Klicken Sie auf OK, um die neue Feldvorlage anzuwenden und das Dialogfeld Feldvorlagenattribute zu schließen.

Damit eine Feldvorlage in Ihrem Diagramm angezeigt wird, müssen Sie sie mit einer Wertespalte verknüpfen.


Feldvorlagen bearbeiten

So bearbeiten Sie Feldvorlagen:

1	Bevor Sie eine Feldvorlage für die aktuelle Diagrammvorlage bearbeiten, stellen Sie sicher, daß diese im Diagrammvorlagen-Editor angezeigt wird, damit Sie die vorgenommenen Änderungen überprüfen können.

2	Wählen Sie im Diagrammvorlage-Editor die Optionsschaltfläche Feldvorlage aus, um die aktuelle Feldvorlage anzuzeigen

3	Wählen Sie die zu bearbeitende Feldvorlage aus der Dropdown-Liste aus.


Attribute für eine Feldvorlage angeben

So geben Sie Attribute für eine Feldvorlage an:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt aus.

2	Wählen Sie den Befehl Feldvorlagen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Feldvorlagen, um das Dialogfeld Feldvorlagenattribute anzuzeigen.

3	Wählen Sie das Registertab Achsenfeld, um das Register Achsenfeld anzuzeigen.

4	Geben Sie die gewünschten Optionen an.

5	Klicken Sie auf OK, um die Änderungen an der Feldvorlage anzuwenden und das Dialogfeld Feldvorlagenattribute zu schließen.


Feldvorlagen zuweisen

So weisen Sie eine Feldvorlage zu:

1	Wählen Sie das Diagramm im Layouteditor oder Objektnavigator aus.

2	Wählen Sie Attribute aus dem Popup-Menü aus, oder wählen Sie Werkzeuge [image] Attribute, um das Dialogfeld Diagrammattribute anzuzeigen.

3	Wählen Sie das Registertab Werte, um das Register Werte für das Diagramm anzuzeigen.

4	Wählen Sie aus der Liste Diagrammwerte die Wertespalte aus, der Sie eine Feldvorlage zuweisen möchten.

5	Wählen Sie die Feldvorlage aus der Dropdown-Liste Feldvorlage aus.

6	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Diagrammattribute zu schließen.


Feldvorlagen löschen

So löschen Sie eine Feldvorlage:

1	Wählen Sie das Diagramm oder ein einzelnes Diagrammobjekt aus.

2	Wählen Sie den Befehl Feldvorlagen aus dem Popup-Menü, oder wählen Sie Diagramm [image] Feldvorlagen, um das Dialogfeld Feldvorlagenattribute anzuzeigen.

3	Wählen Sie die zu löschende Feldvorlage aus der Dropdown-Liste Feldvorlage aus.

4	Klicken Sie auf Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

5	Klicken Sie auf Ja.

6	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld Feldvorlagenattribute zu schließen.

Wenn Sie ein Diagramm erstellt haben, das eine Wertespalte enthält, die mit der gelöschten Feldvorlage verknüpft ist, müssen Sie die Wertespalte mit einer anderen Feldvorlage verknüpfen, bevor Sie diese löschen.


Über PL/SQL

PL/SQL ist eine prozedurale Erweiterung von SQL, die Programmierkonstrukte enthält, wie Schleifen, Bedingungen und Prozeduren. Wenn Sie PL/SQL in Graphics Builder benutzen, erhalten Sie eine größere Kontrolle über die Funktionsweise der grafischen Anwendungen, indem diese sensibler auf die aktuellen Daten, Endbenutzeraktionen und andere Konditionen zur Laufzeit reagieren. Sie können PL/SQL in Ihren grafischen Anwendungen für folgende Zwecke benutzen:

•	Erstellen und Bearbeiten von Objekten. Zum Beispiel animieren Sie ein Objekt, so daß es scheinbar über das Layout bewegt wird.

•	Kontrollieren der Reihenfolge, in der Vorgänge ablaufen. So können Sie z.B. veranlassen, daß eine bestimmte Ebene angezeigt wird, wenn ein Benutzer auf ein Objekt klickt.

•	Kontrolle des zeitlichen Ablaufs von Vorgängen. So können Sie z.B. veranlassen, daß eine Aktion in bestimmten Abständen ausgelöst wird.

•	Bedingte Ausführung von Vorgängen. So können Sie z.B. aktuelle Datenwerte berechnen und verschiedene Objekte je nach Ergebnis anzeigen.

•	Definieren und Interpretieren von Endbenutzeraktionen. So können Sie z.B. eine Fehlermeldung anzeigen, wenn ein Benutzer eine ungültige Anweisung eingibt.


Über die Auflösung identischer Namen

Wenn Sie PL/SQL-Konstrukte mit doppelten Namen referenzieren, sucht Graphics Builder in der folgenden Reihenfolge nach diesen Namen:

1	Unter folgenden Namen gibt es keine vordefinierte Reihenfolge:

•	Lokale Programmblöcke, die mit einer grafischen Anwendung gespeichert sind

•	Vordefinierte PL/SQL-STANDARDPROZEDUREN

•	Vordefinierte Graphics Builder-Prozeduren

2	Zugeordnete Bibliotheken

3	Gespeicherte Unterprogramme


Über die Angabe von Koordinaten- und Größeninformationen

Viele der vorhandenen vordefinierten Konstrukte referenzieren numerische Werte bzw. erfordern, daß Sie numerische Werte angeben, mit denen eine Position im Layout oder Abmessungen eines Objekts angegeben werden. Die Maßeinheit, die Sie für diese Werte benutzen müssen, wird als Layouteinheit bezeichnet.

Mit Layouteinheiten wird ein konsistentes Maßsystem für Graphics Builder-Anwendungen gewährleistet, die auf verschiedenen Ausgabegeräten ausgeführt werden können, wobei ein jedes eine andere Bildschirmauflösung hat. So ist z.B. 1 Zoll auf einem Gerät mit einer Bildschirmauflösung von 72 Zeilen pro Zoll anders als bei einem Gerät mit einer Bildschirmauflösung von 90 Zeilen pro Zoll. Dagegen ist die Layout-Auflösung von Graphics Builder bei allen Systemen identisch. Indem Sie alle Maße in Layouteinheiten angeben, können Sie sichergehen, daß diese geräteübergreifend konsistent bleiben.

Vordefinierte globale Variable OG_INCH

Graphics Builder verfügt über eine globale Variable mit der Bezeichnung OG_INCH, die der Anzahl von Layouteinheiten in einem Zoll entspricht.

Um z.B. einen rechteckigen Bereich zu definieren, der eine Höhe von drei Zoll und eine Breite von zwei Zoll hat, könnten Sie eine lokale Variable deklarieren:

   my_rect   OG_RECTANGLE;

Danach könnten Sie die globale Variable OG_INCH wie in den folgenden Anweisungen benutzen:

   my_rect.height := 3 * OG_INCH;
   my_rect.width := 2 * OG_INCH;

Es wird empfohlen, daß Sie den literalen Wert dieser globalen Variablen nicht selbst bestimmen und in Ihren Anwendungen benutzen. Um sicherzustellen, daß die grafische Anwendung in der aktuellen und künftigen Versionen von Graphics Builder einwandfrei funktioniert, wird empfohlen, daß Sie die unterstützte vordefinierte globale Variable verwenden.


Über das Referenzieren von Graphics Builder-Objekten mit Objekt-Handles

Mit vielen vordefinierten Unterprogrammen können Sie Vorgänge mit Graphics Builder-Objekten durchführen. So können Sie z.B. mit der Prozedur OG_EXECUTE_QUERY eine Abfrage ausführen. Diese Unterprogramme erfordern, daß Sie das zu bearbeitende Objekt angeben.

Anstatt ein Objekt mit seinem Namen zu referenzieren, erfordern viele vordefinierte Prozeduren, Funktionen und Datentypen, daß ein Handle (d.h. Zeiger) zu dem Objekt benutzt wird. Um z.B. eine Abfrage auszuführen, müssen Sie das Handle der Abfrage an OG_EXECUTE_QUERY übergeben:

PROCEDURE getdata IS
  query_handle  OG_QUERY;
BEGIN
  query_handle := OG_GET_QUERY('query0');
  OG_EXECUTE_QUERY(query_handle);
END;

Objekt-Handles einlesen

Graphics Builder verfügt über eine Reihe von vordefinierten Funktionen, mit denen Sie das Handle eines Objekts einlesen. Jede dieser Funktionen gibt einen Wert eines bestimmten Datentyps zurück, je nach Typ des Objekts, dessen Handle abgerufen wird.

In der folgenden Tabelle werden die Graphics Builder-Objekte aufgeführt, deren Handles eingelesen werden können, die für das Einlesen benutzten Funktionen und der Datentyp des Rückgabewertes:

Objekttyp	Funktion	Rückgabedatentyp

Achse	OG_GET_AXIS	OG_AXIS
Schaltfläche Prozedur	OG_GET_BUTTONPROC	OG_BUTTONPROC
Diagrammvorlage	OG_GET_TEMPLATE	OG_TEMPLATE
Grafische Anwendung	OG_GET_DISPLAY	OG_DISPLAY
Feldvorlage	OG_GET_FTEMP	OG_FTEMP
Grafikobjekt	OG_GET_OBJECT	OG_OBJECT
Ebene	OG_GET_LAYER	OG_LAYER
Abfrage	OG_GET_QUERY	OG_QUERY
Referenzlinie	OG_GET_REFLINE	OG_REFLINE
Klang	OG_GET_SOUND	OG_SOUND
Timer	OG_GET_TIMER	OG_TIMER
Fenster	OG_GET_WINDOW	OG_WINDOW
Warum werden Handles benutzt?

Handles werden anstelle von Namen benutzt, um die Leistungsfähigkeit zu verbessern. Jedesmal, wenn Sie ein Objekt nach Name referenzieren, muß Graphics Builder alle bestehenden Objekte dieses Typs durchsuchen, um das Objekt zu finden, dessen Name dem angegebenen Namen entspricht. Diese Lösung ist recht zeitaufwendig und wird von den oben aufgeführten Funktionen benutzt, um ein benanntes Objekt zu suchen. Nachdem das Objekt gefunden wurde, wird jedoch ein Handle erstellt, das direkt auf dieses Objekt zeigt. Durch Benutzung des Handles vermeidet Graphics Builder, daß bei jedem Referenzieren nach dem Namen eines Objekts gesucht werden muß.

Handles werden am besten über die Benutzung von Variablen "gespeichert". Sie deklarieren Variablen, die Sie benutzen, am Anfang des Programmblocks, indem Sie ihnen einen Namen und einen Datentyp geben.

Sie können die Variable dem Wert zuweisen, den die Funktion zurückgibt. In dem obigen Beispiel wird die Variable "query_handle" so deklariert, daß sie den vordefinierten Datentyp OG_QUERY hat. Dies ist der Datentyp, der von der Funktion OG_GET_QUERY zurückgegeben wird.

Die erste Zeile der Prozedur weist die Variable query_handle dem Wert zu, der von der Funktion OG_GET_QUERY zurückgegeben wird. Sie können die Variable query_handle jetzt an einer beliebigen Stelle innerhalb des Programmblocks verwenden, die erfordert, daß das Objekt-Handle für die Abfrage momentan in der Variablen gespeichert ist.


Über Programmblöcke

Programmblöcke sind Codestrukturen, die Sie mit PL/SQL erstellen können. Sie können Graphics Builder benutzen, um PL/SQL-Programmblöcke zu schreiben, oder können einen eigenen Editor verwenden und Programmblöcke importieren oder exportieren.

In Graphics Builder können zwei Arten von PL/SQL-Programmblöcken benutzt werden:

•	Unterprogramme

•	Pakete

Nachdem Sie einen Programmblock mit dem Objektnavigator erstellt oder aufgerufen haben, können Sie ihn mit dem PL/SQL-Programmblock-Editor bearbeiten. Sie benutzen den Editor, um Code zu schreiben und zu debuggen.

Weitere Informationen über die Benutzung des Programmblock-Editors finden Sie in dem Kapitel über das Arbeiten mit PL/SQL-Konstrukten in Procedure Builder Developer's Guide.


Über Unterprogramme

Unterprogramme sind PL/SQL-Prozeduren und -Funktionen, die Sie in Graphics Builder erstellen können.

Eine Prozedur wird ausgeführt, um eine bestimmte Folge von Aktionen durchzuführen. So könnte eine Prozedur z.B. ein Diagramm basierend auf neuen Daten aktualisieren. Die beiden folgenden Prozeduren sind zwei Spezialtypen von Graphics Builder-Prozeduren, die Sie erstellen können:

Schaltflächen-prozedur	Eine mit einem Objekt oder einer Ebene verknüpfte Prozedur, die ausgeführt wird, wenn ein bestimmtes Mausereignis zur Laufzeit eintritt: Drücken bzw. Loslassen der Maustaste oder Bewegen der Maus mit Drücken/Loslassen der Maustaste.
Trigger-Prozedur	Eine Prozedur, die beim Auslösen eines Triggers ausgeführt wird. Mögliche Trigger sind: Die grafische Anwendung wird geöffnet, die grafische Anwendung wird geschlossen, ein Zeitabstand ist abgelaufen, eine Abfrage wird ausgeführt.
Eine Funktion wird ausgeführt, um eine bestimmte Folge von Aktionen durchzuführen und dann einen Wert zurückzugeben. So könnte eine Funktion z.B. die Umsatzsteuer für ein bestimmtes Produkt berechnen und zurückgeben. Eine Graphics Builder-Spezialfunktion, die Sie erstellen können, ist eine Abfragefilterfunktion, die Daten filtert, die von einer Abfrage zurückgegeben wurden und nur die Werte darstellt, die einer bestimmten Bedingung gerecht werden.


Über Pakete

Ein Paket gruppiert logisch zusammenhängende PL/SQL-Prozeduren, Funktionen, Datentypen, Variablen, Konstanten, Exceptions, Cursor und andere Konstrukte. In einem Paket definierte Konstrukte werden im allgemeinen als "vordefiniert" bezeichnet, wie z.B. vordefinierte Funktionen und vordefinierte Prozeduren. Wenn Sie ein vordefiniertes PL/SQL-Konstrukt referenzieren, muß vor jedem Auftreten des Konstruktnamens der Paketname gefolgt von einem Punkt (.) stehen.


Über das Laden von Programmblöcken in grafische Anwendungen

Möglicherweise möchten Sie individuelle Programmblöcke in eine grafische Anwendung laden, anstatt die PL/SQL-Bibliothek zuzuordnen, in der ein Programmblock gespeichert ist. Das Laden individueller Programmblöcke im Vergleich zum Zuordnen von Bibliotheken bietet keine Leistungsvorteile.

Bestimmen Sie anhand der folgenden Kriterien, ob Sie individuelle Programmblöcke laden, anstatt Bibliotheken zuordnen sollten:

•	Ihre Bibliotheken sind sehr groß, und möglicherweise kommt es zu Größenbeschränkungen.

•	Durch das Verschieben der grafischen Anwendung müßten alle Pfadnamen geändert werden, die auf die Bibliothek zeigen.

•	Die grafische Anwendung benötigt nur einige wenige Programmblöcke, und sie kann einfacher ohne die zugeordnete Bibliothek verwaltet werden.


Über vordefinierte PL/SQL-Prozeduren

  Verwandte Themen

Graphics Builder enthält Erweiterungen der PL/SQL-Sprache, die speziell für die benutzerdefinierte Anpassung des Verhaltens von Graphics Builder-Anwendungen benutzt werden. Diese Konstrukte, die als vordefinierte Prozeduren bezeichnet werden, werden als Erweiterung des PL/SQL-STANDARDPAKETS implementiert.

Graphics Builder enthält die folgenden Typen vordefinierter Konstrukte:

•	Datentypen

•	Globale Variablen

•	Unterprogramme

•	Exceptions

Weil vordefinierte Graphics Builder-Prozeduren so ausgelegt wurden, daß Sie die programmgesteuerte Kontrolle über bestimmte Funktionen und Funktionalitäten erhalten, können diese nur bei der Definition von Graphics Builder-Anwendungen benutzt werden.

Sie können beliebige vordefinierte PL/SQL-Prozeduren innerhalb Ihrer eigenen Programmblöcke verwenden, können die vordefinierten Prozeduren selbst jedoch nicht bearbeiten.


Über Exceptions

Mit Exceptions können Sie den Erfolg oder Mißerfolg von PL/SQL-Programmblöcken abfangen oder eingrenzen. Möglicherweise möchten Sie eine Fehlermeldung anzeigen, wenn ein Benutzer zur Laufzeit eine ungültige Aktion ausführt. Es gibt zwei Arten von Exceptions:

Benutzerdefinierte Exceptions	Sie können in Graphics Builder eigene Exceptions deklarieren, auslösen und bearbeiten. Weitere Informationen über Exceptions finden Sie im PL/SQL User's Guide and Reference.
Vordefinierte Exceptions	Viele Exceptions wurden zur Benutzung in Graphics Builder vordefiniert. Um eine Maßnahme bei einer vordefinierten Exception zu ergreifen, müssen Sie eine Exception-Verarbeitungsroutine für die Exception schreiben. Exception-Verarbeitungsroutinen definieren Anweisungen, die ausgeführt werden, wenn bestimmte Bedingungen oder Exceptions in einem PL/SQL-Programmblock ausgelöst werden. Wenn eine Exception ausgelöst wird, wird die normale Ausführung gestoppt und die Kontrolle an die entsprechende Exception-Verarbeitungsroutine übergeben.


Über das Erstellen von Programmblöcken

So erstellen Sie Programmblöcke:

1	Legen Sie fest, welche vordefinierten Graphics Builder-Prozeduren zur Ausführung einer Aktion erforderlich sind.

2	Überprüfen Sie die Prozeduren, um festzustellen, welche Argumente erforderlich sind.

Sie können Argumente für Prozeduren in Form von Handles angeben, die von Funktionen zurückgegeben werden, Argumente, die an den zu definierenden Programmblock übergeben werden, oder absolute Werte, je nach Prozedurdefinition.

3	Legen Sie fest, welche vordefinierten Graphics Builder-Funktionen (gegebenenfalls) erforderlich sind, um die benötigten Argumente abzurufen.

4	Legen Sie fest, welche Variablen zur Speicherung der Werte definiert werden müssen, die von den Funktionen zurückgegeben werden.


Programmblöcke erstellen

  Beispiel

So erstellen Sie Programmblöcke:

1	Wählen Sie den Knoten Programmblöcke im Objektnavigator aus.

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Neuer Programmblock anzuzeigen.

Wenn momentan keine Programmblöcke vorhanden sind, doppelklicken Sie auf den Knoten Programmblöcke, um einen neuen Programmblock zu erstellen.

3	Wählen Sie den zu erstellenden Typ des Programmblocks, geben Sie einen Namen für den Programmblock ein, und klicken Sie auf OK.

Der PL/SQL-Programmblock-Editor wird angezeigt, wobei der Name des Programmblocks im Feld Name steht.

4	Definieren Sie den Programmblock.

5	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

6	Beheben Sie eventuell angetroffene Fehler.

Der Programmblock muß fehlerfrei sein, bevor er erfolgreich kompiliert und in Ihrer grafischen Anwendung benutzt werden kann.

7	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen, wenn Sie fertig sind.


Beispiel: Programmblöcke erstellen

Da Sie einen Programmblock erstellen möchten, der eine Ebene in der grafischen Anwendung aktiviert, benutzen Sie die vordefinierte PL/SQL-Prozedur von Graphics Builder mit der Bezeichnung OG_ACTIVATE_LAYER. Diese Prozedur benötigt ein Argument des vordefinierten Datentyps OG_LAYER von Graphics Builder. Um diesen Datentypwert einzulesen, benutzen Sie die Funktion OG_GET_LAYER und deklarieren eine Variable vom Datentyp OG_LAYER, um den von OG_GET_LAYER zurückgegebenen Wert zu speichern.

Durch Ausführung der obigen Schritte in umgekehrter Richtung erstellen Sie die folgende Prozedur:

PROCEDURE act_layer IS
/*Declare the variable to store the function return */
  the_layer  OG_LAYER;
BEGIN
/*Use the function to assign the variable's value */
  the_layer:=OG_GET_LAYER('layer1');
/*Use the variable value as an argument to the procedure */
  OG_ACTIVATE_LAYER(the_layer);
END;


Programmblöcke bearbeiten

So bearbeiten Sie einen PL/SQL-Programmblock:

  Doppelklicken Sie auf das zu bearbeitende Programmblockobjekt, oder wählen Sie den Programmblock aus, und wählen Sie Attribute aus dem Popup-Menü. Daraufhin wird der Programmblock-Editor angezeigt, in dem die Quelle des Programmblocks angegeben wird.

Sie können den Programmblock nach Bedarf bearbeiten. Wenn Sie einen kompilierten Programmblock bearbeiten, müssen Sie ihn nach Durchführung der Änderungen neu kompilieren.


Individuelle Programmblöcke kompilieren

So kompilieren Sie individuelle Programmblöcke:

1	Doppelklicken Sie auf den Programmblock im Objektnavigator, um den Programmblock-Editor zu öffnen.

Alternativ können Sie auch Werkzeuge [image] Programmblöcke wählen, um den Programmblock-Editor anzuzeigen, und den Programmblock dann aus der Dropdown-Liste Name wählen.

In der Statusleiste des Programmblock-Editors wird angegeben, ob der Programmblock erfolgreich kompiliert wurde.

2	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler angetroffen wurden, werden diese im Programmblock-Editor unter dem Rumpf des Programmblocks angegeben. Sie können auf einen Fehler doppelklicken, um zu dessen Quelle im Programmblockrumpf zu navigieren.

Weitere Informationen über das Kompilieren von Programmblöcken finden Sie in dem Kapitel "Mit PL/SQL-Konstrukten arbeiten" im Oracle Procedure Builder Developer's Guide.


Stapelkompilierung von Programmblöcken

So kompilieren Sie Programmblöcke im Stapel:

1	Wählen Sie Datei [image] Kompilieren, um nicht kompilierte Programmblöcke in der grafischen Anwendung im Stapel zu kompilieren, oder wählen Sie Datei [image] Alles kompilieren, um jeden Programmblock in der grafischen Anwendung (neu) zu kompilieren. Der Befehl Alles kompilieren erzwingt die Neukompilierung von schon kompilierten Programmblöcken.

Nach Auswahl dieser Befehle wird das Dialogfeld Kompilieren angezeigt, das einen Fortschrittsindikator und ein Auswahlfeld enthält, in dem eventuell angetroffene Kompilierungsfehler aufgezeichnet werden.

2	Sie können folgende Schaltflächen wählen, um in die Kompilierung einzugreifen:

• Unterbrechen	Stoppt die Kompilierung vorübergehend.
• Fortsetzen	Nimmt die Stapelkompilierung nach einem Unterbrechen-Vorgang wieder auf.
• OK	Akzeptiert und schließt das Dialogfeld Kompilieren.
• Abbrechen	Bricht die Stapelkompilierung ab.
• Sucht den ausgewählten	Kompilierungsfehler und öffnet den entsprechenden Programmblock bei der Fehlerposition.
3	Sobald Sie fertig sind, klicken Sie auf OK, um das Dialogfeld Kompilieren zu schließen.


Programmblöcke neu kompilieren

Ein kompilierter PL/SQL-Code kann nicht zwischen verschiedenen Systemen portiert werden. Um eine grafische Anwendung zur Benutzung auf einem anderen System vorzubereiten, müssen Sie den Quellcode in diesem System neu kompilieren.

  Wählen Sie Datei [image] Alles kompilieren, um jeden Programmblock in der grafischen Anwendung (neu) zu kompilieren.


Programmblöcke umbenennen

  Verwandte Themen

So benennen Sie einen Programmblock um:

1	Doppelklicken Sie auf das Programmblockobjekt, um den Programmblock-Editor anzuzeigen.

2	Ändern Sie den Namen des Programmblocks.

3	Kompilieren Sie den Programmblock neu.

Wenn Sie den Namen eines Programmblocks ändern, der in anderen Programmblöcken referenziert wird, müssen Sie diese Referenzen entsprechend dem neuen Namen bearbeiten. Nachdem Sie den umbenannten Programmblock neu kompiliert haben, geht der kompilierte Status von anderen Programmblöcken, die den umbenannten Programmblock referenzieren, verloren. Sie werden im Objektnavigator mit einem Stern (*) angezeigt.


Programmblöcke in grafische Anwendungen laden

So laden Sie einen Programmblock in eine grafische Anwendung:

  Klicken und ziehen Sie den Bibliotheks-Programmblock unter dem Knoten Programmblöcke der grafischen Anwendung.

Wenn Sie die Maustaste loslassen, wird der Programmblock automatisch in die grafische Anwendung kopiert. Wenn in der grafischen Anwendung schon ein Programmblock mit demselben Namen und demselben Typ vorhanden ist, müssen Sie in einem Warnfenster bestätigen, daß der Programmblock überschrieben wird.


PL/SQL-Programmblöcke löschen

  Verwandte Themen

So löschen Sie einen Programmblock aus dem Objektnavigator:

  Wählen Sie das Programmblockobjekt, und klicken Sie auf die Schaltfläche Löschen, oder wählen Sie Navigator [image] Löschen. Klicken Sie zur Bestätigung auf Ja.

So löschen Sie einen Programmblock aus dem Programmblock-Editor:

1	Doppelklicken Sie auf das Programmblockobjekt, wählen Sie Programmblöcke aus dem Popup-Menü, oder wählen Sie Werkzeuge [image] Programmblöcke, um den Programmblock-Editor anzuzeigen.

2	Gegebenenfalls wählen Sie den zu löschenden Programmblock aus der Dropdown-Liste Name.

3	Klicken Sie auf Löschen, um den Programmblock zu löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

4	Klicken Sie zur Bestätigung auf Ja.

5	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.

Wenn Sie einen Programmblock löschen, der von anderen Programmblöcken referenziert wird, müssen Sie diese Referenzen entfernen und die Programmblöcke neu kompilieren, um die Änderung zu berücksichtigen.


Konsistenz prüfen

So prüfen Sie die Konsistenz:

1	Wählen Sie Datei-->Konsistenz prüfen, um das Dialogfeld Konsistenzprüfung anzuzeigen.

Graphics Builder sucht nach Inkonsistenzen und gibt diese in dem Meldungsfeld an.

2	Wenn Sie fertig sind, klicken Sie auf OK, um das Dialogfeld Konsistenzprüfung zu schließen.

Wenn Sie PL/SQL in Ihrer grafischen Anwendung benutzt haben, sollten Sie prüfen, ob zwischen Programmblöcken und Referenzen auf diese Programmblöcke keine Inkonsistenzen bestehen. Ein Beispiel für eine Inkonsistenz wäre, wenn Sie eine Triggerprozedur referenziert, diese jedoch nicht erstellt haben.


Über Bibliotheken

PL/SQL-Bibliotheken werden insbesondere zur Speicherung häufig benutzter PL/SQL-Programmblöcke im Hinblick auf die spätere Benutzung verwendet.

Sie bestehen aus Sammlungen von PL/SQL-Programmblöcken, die Sie in Graphics Builder erstellen können. Im Gegensatz zu individuellen Programmblöcken, die Sie mit grafischen Anwendungen speichern können, werden PL/SQL-Bibliotheken in der Datenbank oder dem Dateisystem gespeichert und können von mehreren Benutzern in mehreren grafischen Anwendungen verwendet werden. Um PL/SQL-Bibliotheken in Graphics Builder zu referenzieren, müssen Sie diese mit dem Objektnavigator Ihren grafischen Anwendungen zuordnen. Außerdem können Sie Zugriffsberechtigungen zu von Ihnen erstellten Bibliotheken erteilen, damit andere Benutzer diese verwenden können.

Sie können PL/SQL-Bibliotheken mehrmals innerhalb einer einzigen grafischen Anwendung referenzieren oder diese mit anderen Modulen in einer Anwendung gemeinsam benutzen.

Weitere Informationen über das Arbeiten mit PL/SQL-Bibliotheken finden Sie in dem Abschnitt "PL/SQL-Bibliotheken benutzen" im Kapitel "Mit PL/SQL-Konstrukten arbeiten" im Procedure Builder Developer's Guide.


Über das Erteilen und Entziehen von Zugriffsberechtigungen zu Bibliotheken

Sie können Zugriffsberechtigungen zu PL/SQL-Bibliotheken erteilen und entziehen, wenn Sie die Bibliothek erstellt oder die Zugriffsberechtigung zu der Bibliothek erhalten haben. Wenn Sie die Zugriffsberechtigung an andere Benutzer erteilen, können diese wiederum die Zugriffsberechtigung zu der PL/SQL-Bibliothek an andere Benutzer erteilen, die PL/SQL-Bibliothek umbenennen und ändern.


Bibliotheken erstellen

So erstellen Sie eine PL/SQL-Bibliothek:

1	Wählen Sie den Knoten Bibliotheken im Objektnavigator aus.

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen.

Daraufhin wird eine neue geöffnete Bibliothek erstellt, die anfänglich den Namen BIBL_xxx hat.

3	Wenn momentan keine Bibliotheken geöffnet sind, können Sie auf den Knoten Bibliotheken im Navigator doppelklicken, um eine neue Bibliothek zu erstellen.

Nachdem Sie eine Bibliothek erstellt haben, können Sie bestehende Programmblöcke hinzufügen oder neue Programmblöcke zur Speicherung in der Bibliothek erstellen.


Bibliotheken öffnen

So öffnen Sie eine Bibliothek:

1	Wählen Sie Datei [image] Öffnen, um das Dialogfeld Filter anzuzeigen.

2	Wählen Sie Bibliotheken oder Alle Dateien aus dem Feld Grafische Anwendung.

3	Wählen Sie die Optionsschaltfläche Datenbank oder Datei im Feld Objektzugriff, je nachdem, wo die Bibliothek gespeichert ist.

4	Klicken Sie auf OK, um Ihre Auswahlen zu bestätigen.

Wenn Ihre Bibliothek im Dateisystem gespeichert ist, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn Ihre Bibliothek in der Datenbank gespeichert ist, wird das Dialogfeld Aus Datenbank öffnen angezeigt.

5	Geben Sie den Namen der zu öffnenden Bibliothek an, und akzeptieren Sie das Dialogfeld, um die Bibliothek zu öffnen.

Bibliotheken verwenden die Dateinamenerweiterung .pll, damit sie von anderen Dateien unterschieden werden können.


Bestehende Programmblöcke zu geöffneten Bibliotheken hinzufügen

So fügen Sie einen bestehenden Programmblock zu einer geöffneten Bibliothek hinzu:

1	Blenden Sie die Unterknoten der zu ändernden geöffneten Bibliothek im Objektnavigator ein.

2	Wählen Sie den hinzuzufügenden Programmblock aus dem Knoten Grafische Anwendung.

3	Klicken und ziehen Sie das Symbol des Programmblocks unter den Unterknoten Programmblöcke der geöffneten Bibliothek.

Wenn Sie die Maustaste loslassen, wird der Programmblock automatisch in die geöffnete Bibliothek kopiert. Wenn in der Bibliothek schon ein Programmblock mit demselben Namen und Typ vorhanden ist, müssen Sie in einem Warnfenster bestätigen, daß der Original-Programmblock überschrieben werden soll.


Neue Programmblöcke in einer geöffneten Bibliothek erstellen

So erstellen Sie einen neuen Programmblock in einer geöffneten Bibliothek:

1	Wählen Sie den Unterknoten Programmblöcke unter dem Knoten der geöffneten Bibliothek im Objektnavigator.

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Neuer Programmblock anzuzeigen.

Wenn momentan keine Programmblöcke in der Bibliothek vorhanden sind, doppelklicken Sie auf den Unterknoten Programmblöcke im Navigator, um das Dialogfeld Neuer Programmblock anzuzeigen.

3	Geben Sie einen Namen für den neuen Programmblock ein.

4	Wählen Sie einen Typ für den neuen Programmblock.

5	Klicken Sie auf OK, um das Dialogfeld Neuer Programmblock zu akzeptieren und den Programmblock-Editor anzuzeigen.

6	Definieren Sie den neuen Programmblock.

7	Klicken Sie auf Kompilieren, um den neuen Programmblock zu kompilieren.

8	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.

Der neue Programmblock wird unter dem Unterknoten Programmblöcke der Bibliothek angezeigt.


Programmblöcke aus einer geöffneten Bibliothek löschen

So löschen Sie einen Programmblock aus einer geöffneten Bibliothek:

1	Blenden Sie die Unterknoten der geöffneten Bibliothek ein, die geändert werden soll.

2	Wählen Sie den Programmblock aus, der aus der Bibliothek gelöscht werden soll.

3	Klicken Sie auf die Schaltfläche Löschen, oder wählen Sie Navigator [image] Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

4	Klicken Sie zur Bestätigung auf Ja.


Bibliotheken speichern

So speichern Sie eine Bibliothek:

1	Wählen Sie die zu speichernde geöffnete Bibliothek aus.

2	Klicken Sie auf Speichern, oder wählen Sie Datei [image] Speichern bzw. Datei [image] Speichern unter, um das Dialogfeld Bibliothek speichern anzuzeigen.

Benutzen Sie den Befehl Speichern unter nur, wenn Sie die Bibliothek das erste Mal speichern.

3	Geben Sie einen Namen für die Bibliothek an, und geben Sie an, ob die Bibliothek im Dateisystem oder der Datenbank gespeichert werden soll.

4	Klicken Sie auf OK, um die Bibliothek zu speichern.

Bibliotheken wird automatisch die Dateinamenerweiterung .pll zugewiesen, wenn sie im Dateisystem gespeichert werden.


Bibliotheken grafischen Anwendungen zuordnen

So ordnen Sie eine Bibliothek einer grafischen Anwendung zu:

1	Wählen Sie im Objektnavigator den Knoten Zugeordnete Bibliotheken (unter dem Knoten Grafische Anwendungen).

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Bibliothek zuordnen anzuzeigen.

Wenn momentan keine Bibliotheken zugeordnet sind, doppelklicken Sie auf den Knoten Zugeordnete Bibliotheken im Navigator, um das Dialogfeld Bibliothek zuordnen anzuzeigen.

3	Geben Sie den Namen der zuzuordnenden Bibliothek ein.

4	Klicken Sie auf Zuordnen, um die Bibliothek zuzuordnen.

Wenn Sie einen Pfadnamen mit der Bibliothek angeben (d.h. die Bibliothek wird nicht in Ihrem aktuellen oder Arbeitsordner gespeichert), werden Sie aufgefordert, den Pfadnamen zu kürzen. Wenn Sie den Pfadnamen nicht kürzen möchten, sucht Graphics Builder nur unter dem angegebenen Pfadnamen nach der Bibliothek. Wenn Sie die grafische Anwendung an andere Benutzer verteilen möchten, kann Graphics Builder in diesem Fall die Bibliothek möglicherweise nicht finden.

Wenn Sie den Pfadnamen kürzen, sucht Graphics Builder in den folgenden Suchpfaden nach der Bibliothek:

•	Dem aktuellen oder Arbeitsordner des Benutzers

•	Dem von der Pfad-Umgebungsvariablen von Graphics Builder angegebenen Ordner

•	Dem von der Pfad-Umgebungsvariablen von Oracle angegebenen Ordner

Sie können einer grafischen Anwendung eine bestimmte Bibliothek zuordnen, um den Inhalt dieser Bibliothek in der grafischen Anwendung zu benutzen. Durch das Zuordnen der Bibliothek zu der grafischen Anwendung stellen Sie sicher, daß die Bibliothek und deren Inhalt die grafische Laufzeitanwendung begleiten. Die zugeordnete Bibliothek ist nicht statisch, d.h. ist kein "Snapshot" der Bibliothek zu dem Zeitpunkt, zu dem sie zugeordnet wurde. Statt dessen ist die zugeordnete Bibliothek eine Verknüpfung zu der Bibliothek und empfängt alle Aktualisierungen, die Sie an der Bibliothek vornehmen.

Geöffnete Bibliotheken können nicht zugeordnet werden. Wenn die zuzuordnende Bibliothek gerade geöffnet ist, schließen Sie sie, und ordnen Sie sie dann zu. Sie können einer grafischen Anwendung mehrere Bibliotheken zuordnen.


Zuordnung von Bibliotheken an grafische Anwendungen aufheben

So heben Sie die Zuordnung einer Bibliothek zu einer grafischen Anwendung auf:

1	Wählen Sie die Bibliothek, deren Zuordnung Sie aufheben möchten, unter dem Knoten Zugeordnete Bibliotheken im Objektnavigator aus.

2	Klicken Sie auf die Schaltfläche Entfernen, oder wählen Sie Navigator [image] Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, die Aufhebung der Zuordnung zu bestätigen.

3	Klicken Sie auf OK, um die Zuordnung der Bibliothek aufzuheben.


Zugriffsberechtigung zu Bibliotheken im Dateisystem erteilen und entziehen

So erteilen bzw. entziehen Sie die Zugriffsberechtigung zu Bibliotheken im Dateisystem:

  Bei einigen Betriebssystemen können Benutzer die Lese-, Schreib- und Ausführungsberechtigung für einzelne Dateien erteilen. Weitere Informationen über das Erteilen von Zugriffsberechtigungen bei Ihrem Betriebssystem finden Sie in der Betriebssystemdokumentation. Sie können aber auch den Systemadministrator fragen.


Zugriffsberechtigung zu Bibliotheken in der Datenbank erteilen und entziehen

So erteilen bzw. entziehen Sie die Zugriffsberechtigung zu einer Bibliothek in der Datenbank:

1	Wählen Sie Datei [image] Verwaltung [image] Modulzugriff [image] Bibliothek, um das Dialogfeld Modulzugriff in Datenbank anzuzeigen.

Dieses Dialogfeld enthält eine Liste aller Bibliotheken, die in der Datenbank gespeichert sind, zu der Sie die Zugriffsberechtigung haben.

2	Wählen Sie eine Bibliothek aus der Liste aus.

3	Klicken Sie auf OK, um das Dialogfeld Modulzugriff anzuzeigen.

Dieses Dialogfeld enthält eine Liste der Benutzer, die eine Zugriffsberechtigung zu der Bibliothek haben.

4	Um die Zugriffsberechtigung zu erteilen, geben Sie den Datenbank-Benutzernamen der Person, der Sie die Zugriffsberechtigung erteilen möchten, in das Feld Benutzer ein.

5	Klicken Sie auf Hinzufügen, um den Benutzernamen zu der Liste Zugriff hinzuzufügen.

6	Um die Zugriffsberechtigung eines Benutzers in der Liste Zugriff zu entziehen, wählen Sie den Benutzernamen in der Liste aus.

7	Klicken Sie auf Entfernen, um den Benutzernamen aus der Liste Zugriff zu entfernen.

8	Klicken Sie auf OK, um die Änderungen zu akzeptieren und das Dialogfeld Modulzugriff zu schließen.

Die Zugriffsberechtigungen für Ihre Bibliothek werden aktualisiert. Sie können einem anderen Benutzer die Zugriffsberechtigung (Lesen/Schreiben/Ausführen) zu einer Bibliothek erteilen, die Sie erstellt und in der Datenbank gespeichert haben. Der Benutzer benötigt jedoch auch die Zugriffsberechtigung zu den Datenbanktabellen von Graphics Builder. Weitere Informationen erhalten Sie von Ihrem Datenbankadministrator.


Im Dateisystem gespeicherte Dateien umbenennen

So benennen Sie Bibliotheken im Dateisystem um:

  Sie können eine Bibliothek, die im Dateisystem gespeichert ist, mit Ihrem Betriebssystem umbenennen. Sie benötigen die entsprechende Zugriffsberechtigung, um die Datei umbenennen zu können.

In Ihrer Betriebssystemdokumentation wird die richtige Methode für das Umbenennen von Dateien beschrieben.


In der Datenbank gespeicherte Bibliotheken umbenennen

So benennen Sie eine in der Datenbank gespeicherte Bibliothek um:

1	Wählen Sie Werkzeuge [image] PL/SQL-Interpreter, um den PL/SQL-Interpreter aufzurufen.

2	Geben Sie den Befehl RENAME in der Befehlszeile des Interpreters wie folgt ein:

PL/SQL> .RENAME LIB library_name1 TO library_name2

Wenn Sie die Bibliothek nicht selbst erstellt haben und die Bibliothek in der Datenbank gespeichert ist, benötigen Sie die Berechtigung GRANT, um die Bibliothek umzubenennen. Wenn die Bibliothek im Dateisystem gespeichert ist, benötigen Sie die richtige Zugriffsberechtigung für das Umbenennen der Bibliothek.


Bibliotheken aus dem Dateisystem löschen

So löschen Sie Bibliotheken aus dem Dateisystem:

  Sie können eine Bibliothek, die als Datei gespeichert ist, mit dem Betriebssystem löschen. Sie benötigen die entsprechende Zugriffsberechtigung, um eine Datei löschen zu können.

In Ihrer Betriebssystemdokumentation wird beschrieben, wie Dateien richtig gelöscht werden.


Bibliotheken aus der Datenbank löschen

So löschen Sie eine Bibliothek aus der Datenbank:

1	Wählen Sie Werkzeuge [image] PL/SQL-Interpreter, um den PL/SQL-Interpreter anzuzeigen.

2	Geben Sie den folgenden Befehl in der Befehlszeile des Interpreters ein:

PL/SQL> .DELETE LIBRARY library_name;

wobei library_name der Name der zu löschenden Bibliothek ist.

3	Schließen Sie den PL/SQL-Interpreter.


Über die Reihenfolge bei der Ausführung von Triggern

Trigger sind PL/SQL-Prozeduren, die zur Laufzeit zu bestimmten Zeiten ausgelöst werden. Mit Triggern können Sie die grafischen Anwendungen mit Funktionen gestalten, wie z.B. Schaltflächen, der dynamischen sofortigen Formatierung von Diagrammen und automatischen Updates und Commit-Vorgängen. Graphics Builder führt alle Trigger-Prozeduren, die mit einer grafischen Anwendung verknüpft sind, in einer bestimmten Reihenfolge aus. Wenn Sie die Reihenfolge der Ausführung verstehen, kann Ihnen dies bei der Entwicklung Ihrer grafischen Anwendungen helfen.

Die folgenden Ereignisse können in der angegebenen Reihenfolge auftreten bzw. treten in der angegebenen Reihenfolge auf:

•	Open-Display-Trigger wird ausgelöst

•	Abfrage wird ausgeführt

•	Diagramm wird aktualisiert

•	Timer wird ausgeführt

•	Schaltfläche wird ausgeführt

•	Close-Display-Trigger wird ausgelöst


Über das Auslösen des Open-Display-Triggers

Ein Open-Display-Trigger wird zu dem Zeitpunkt ausgelöst, der schon mit seinem Namen angegeben wird: unmittelbar nach dem Starten (Öffnen) einer grafischen Anwendung. Open-Display-Trigger sind die ersten Trigger, die ausgelöst werden.


Über die Ausführung der Abfrage

  Verwandte Themen

Während der Ausführung der Abfrage treten folgende Ereignisse in der angegebenen Reihenfolge ein:

1	Die Abfrage wird automatisch beim Öffnen einer grafischen Anwendung ausgeführt, wenn die Option Ausführen bei Grafische Anwendung öffnen für die Abfrage festgelegt wurde. Standardmäßig ist diese Option aktiviert, d.h. die Abfrage wird sofort nach Auslösung des Open-Display-Triggers ausgeführt.

Wenn die Option Ausführen bei Grafische Anwendung öffnen nicht aktiviert ist, wird die Abfrage erst ausgeführt, wenn die vordefinierte Prozedur OG_EXECUTE_QUERY aufgerufen wird.

2	Wenn er vorhanden ist, wird der Post-Execution-Trigger unmittelbar nach Ausführung der Abfrage ausgelöst.

3	Wenn vorhanden, wird die Abfragefilterfunktion unmittelbar nach Auslösung des Post-Execution-Triggers ausgeführt. Der Abfragefilter schränkt die Anzeige der abgerufenen Daten im Register Attribute Abfrage nicht ein, sondern bestimmt, welche Teilmenge dieser Daten grafisch dargestellt wird.


Über das Aktualisieren von Diagrammen

  Verwandte Themen

Beim   von Diagrammen werden die folgenden zusammengehörigen Ereignisse in der angegebenen Reihenfolge ausgeführt:

1	Diagramme werden automatisch im Anschluß an die Abfrageausführung ausgeführt, wenn für das Diagramm die Option Diagramm nach Ausführen der Abfrage aktualisieren festgelegt wurde. Standardmäßig ist diese Option aktiviert, d.h. das Diagramm wird sofort aktualisiert, nachdem die Prozeduren zur Ausführung der Abfrage ausgeführt wurden.

Wenn die Option Diagramm nach Ausführen der Abfrage aktualisieren nicht aktiviert ist, wird das Diagramm erst aktualisiert, wenn die vordefinierte Prozedur OG_UPDATE_CHART aufgerufen wird.

2	Wenn vorhanden, wird der Format-Trigger im Endstadium der Diagrammaktualisierung ausgelöst, unmittelbar bevor das Diagramm gezeichnet wird.

Mit Format-Triggern könnten Sie bedingte Formatierungsattribute festlegen, wie z.B. die Farbe für ein Diagrammelement.


Über die Ausführung von Timern

  Verwandte Themen

Die Ausführung von Timern umfaßt folgende zusammengehörige Ereignisse in der angegebenen Reihenfolge:

1	Wenn eine Abfrage mit einem Timer verknüpft ist (über die Option Ausführen bei Timer im Register Optionen des Dialogfeldes Attribute Abfrage), wird die Abfrage automatisch ausgeführt, wenn der Timer abläuft. Standardmäßig ist diese Option nicht aktiviert.

Wenn die Option Ausführen bei Timer jedoch aktiviert ist, könnte die Ausführung der Abfrage wiederum eine Aktualisierung eines Diagramms erzeugen.

2	Die Timer-Prozedur wird gleichzeitig mit der optionalen Abfrageausführung (wie vorher beschrieben) ausgeführt, wenn der Timer abläuft. Wenn beim Ablauf des Timers keine Abfrage ausgeführt werden muß, ist die Timer-Prozedur das einzige Ereignis, das eintritt.

Timer können automatisch aktiviert werden, wenn die grafische Anwendung ausgeführt wird. Sie können auch programmgesteuert aus einem PL/SQL-Programmblock mit der vordefinierten PL/SQL-Prozedur OG_ACTIVATE_TIMER von Graphics Builder aktiviert werden.


Über die Ausführung von Schaltflächen

  Verwandte Themen

Die Ausführung von Schaltflächen umfaßt die folgenden zusammengehörigen Ereignisse in der unten beschriebenen Reihenfolge:

1	Wenn ein Mausereignis bei einem Diagrammelement entdeckt wird, das in einer Aufgliederungsbeziehung als Schaltfläche fungiert (z.B. ein Kreissegment), weist Graphics Builder einem Parameter einen Spaltenwert zu, wobei die Spalte und der Parameter benutzt werden, die im Register Aufgliedern im Dialogfeld Diagrammattribute angegeben werden.

2	Wenn ein Mausereignis bei einem Diagrammelement entdeckt wird, das in einer Aufgliederungsbeziehung als Schaltfläche fungiert (z.B. ein Kreissegment), führt Graphics Builder die Detail-Diagrammabfrage aus, die im Register Aufgliedern des Attributblatts des Diagrammelements angegeben wird.

3	Wenn bei einem Schaltflächenobjekt ein Mausereignis entdeckt wird, wird die Schaltflächenprozedur (sofern vorhanden) für dieses Objekt ausgeführt.

Die Ausführung der Abfrage könnte wiederum eine Aktualisierung des Diagramms verursachen.


Über das Auslösen des Close-Display-Triggers

Ein Close-Display-Trigger wird unmittelbar vor dem Schließen der grafischen Anwendung ausgelöst. Close-Display-Trigger werden als letzte Trigger ausgelöst.


Über das Referenzieren eines Triggers

Für jeden Triggertyp wird im Objektnavigator ein entsprechender Zuweisungs-/Referenzknoten angezeigt. Diese Knoten stellen dar, welche Prozeduren gegebenenfalls einem bestimmten Trigger zugewiesen sind.

Sie können einem Trigger einen bestehenden Programmblock zuweisen, indem Sie das Programmblockobjekt im Navigator auswählen und direkt unter einen der Trigger-Zuweisungsknoten ziehen. Wenn Sie die Maus loslassen, wird der Name des Programmblocks mit dem Trigger-Knoten angezeigt.

In der folgenden Tabelle wird dargestellt, welche Zuweisungsknoten für Trigger-Prozeduren mit den jeweiligen Objekten im Navigator verknüpft sind:

Triggertyp	Objektknoten im Navigator

Open Display	Grafische Anwendung
Post Execution	Abfragen
Format	Diagrammelement
Timer	Abfrage, Timer
Button	Objekt, Diagrammelement, Ebene usw.
Close Display	Grafische Anwendung
Sie können jederzeit auf einen der Triggerknoten doppelklicken, um eine neue Triggerprozedur mit dem Programmblock-Editor zu erstellen oder die momentan zugewiesene Trigger-Prozedur zu bearbeiten.


Über die Benutzung von Open-Display-Triggern

  Verwandte Themen

Ein Open-Display-Trigger führt eine PL/SQL-Prozedur aus, wenn die grafische Anwendung das erste Mal gestartet wird. Sie könnten z.B. einen Open-Display-Trigger definieren, der den Anfangsstatus der grafischen Anwendung festlegt, indem Abfragen ausgeführt und Diagramme erstellt, Timer aktiviert werden usw.


Open-Display-Trigger erstellen

  Beispiel	   Verwandte Themen

So erstellen Sie einen Open-Display-Trigger:

1	Doppelklicken Sie auf das Objekt Open-Display im Navigator, um den Programmblock-Editor aufzurufen.

Der Programmblock-Editor wird mit einer Vorlage für eine standardmäßige Trigger-Prozedur angezeigt (die anfänglich den Namen OGTRIGGERPROCx hat).

2	Benennen Sie die Trigger-Prozedur um, oder behalten Sie den Standardnamen bei, und geben Sie dann den Prozedurrumpf ein.

3	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler auftreten, korrigieren Sie diese, und kompilieren Sie den Programmblock neu.

4	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.


Beispiel: Open-Display-Trigger

PROCEDURE open_disp IS
  old_layr  OG_LAYER;
  nu_layr   OG_LAYER;
  the_qry   OG_QUERY;
BEGIN
  old_layer:=OG_GET_LAYER('layer_home');
  nu_layer:=OG_GET_LAYER('layer_buttn');
  the_qry:=OG_GET_QUERY('query0');
  OG_ACTIVATE_LAYER(nu_layr);
  OG_HIDE_LAYER(old_layr);
  OG_EXECUTE_QUERY(the_qry);
END:


Referenzen auf Prozeduren des Open-Display-Triggers ändern

So ändern Sie eine Referenz auf eine Prozedur des Open-Display-Triggers:

1	Wählen Sie Werkzeuge [image] Grafische Anwendung, um das Dialogfeld Attribute anzeigen aufzurufen.

2	Wählen Sie eine verfügbare Trigger-Prozedur aus der Dropdown-Liste Open-Trigger, oder wählen Sie Keine, wenn beim Öffnen der grafischen Anwendung keine bestimmte Vorgehensweise erwünscht wird.

3	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Attribute anzeigen zu schließen.

Mit Graphics Builder können Sie mehrere Trigger-Prozeduren erstellen und jede dieser Prozeduren bei der Entwicklung der grafischen Anwendung einem Open-Display-Trigger zuweisen.


Über die Benutzung von Post-Execution-Trigger
Über die Benutzung von Post-Execution-Triggern

  Verwandte Themen

Post-Execution-Trigger sind PL/SQL-Prozeduren, die mit Abfragen verknüpft sind. Sie werden unmittelbar nach der Ausführung der zugehörigen Abfrage ausgelöst.


Post-Execution-Trigger erstellen

  Beispiel

So erstellen Sie einen Post-Execution-Trigger:

1	Doppelklicken Sie auf das Post-Execution-Objekt unter dem Objekt Abfragen im Navigator.

Daraufhin wird der Programmblock-Editor angezeigt, der eine Standardvorlage für eine Trigger-Prozedur enthält (die anfänglich den Namen OGQUERYPROCx hat).

2	Benennen Sie die Trigger-Prozedur um, oder behalten Sie den Standardnamen bei, und geben Sie dann den Rumpf der Prozedur ein.

3	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler auftreten, korrigieren Sie diese, und kompilieren Sie den Programmblock neu.

4	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.


Beispiel: Post-Execution-Trigger

PROCEDURE post_exec IS
  the_timer  OG_TIMER;
BEGIN
  the_timer:=OG_GET_TIMER('check_stock');
  OG_ACTIVATE_TIMER(the_timer);
END:


Referenzen auf Post-Execution-Trigger ändern

So ändern Sie eine Referenz auf einen Post-Execution-Trigger:

1	Doppelklicken Sie auf ein Abfrageobjekt im Navigator, oder wählen Sie die Abfrage, und wählen Sie den Befehl Attribute aus dem Popup-Menü, um das Dialogfeld Attribute Abfrage anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Wählen Sie das Registertab Optionen, um das Register Optionen anzuzeigen.

3	Wählen Sie eventuell verfügbare Post-Execution-Trigger-Prozeduren aus der Dropdown-Liste Post-Execution-Trigger, oder wählen Sie Keine, wenn kein Post-Execution-Verhalten gewünscht wird.

4	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Attribute Abfrage zu schließen.

Bei Graphics Builder können Sie mehrere Post-Execution-Trigger-Prozeduren erstellen und diese jederzeit einer beliebigen Abfrage in Ihrer grafischen Anwendung zuweisen.


Über die Benutzung von Format-Triggern

  Verwandte Themen

Ein Format-Trigger ist eine PL/SQL-Prozedur, die mit einem Diagrammelement verknüpft ist. Format-Trigger werden direkt vor dem Zeichnen des Diagrammelements ausgeführt, so daß Sie die Formatierungsattribute des Elements dynamisch ändern können. So könnten Sie z.B. einen Format-Trigger definieren, um die Balken eines Diagramms grün zu gestalten, wenn sie einen bestimmten Wert überschreiten.


Format-Trigger erstellen

  Beispiel	  Verwandte Themen

So erstellen Sie einen Format-Trigger:

1	Doppelklicken Sie auf das zu formatierende Diagrammelement, oder wählen Sie das Diagrammelement aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü, um das Dialogfeld Objektattribute für das Diagrammelement anzuzeigen.

2	Klicken Sie auf Neu rechts neben der Dropdown-Liste Format-Trigger.

Daraufhin wird der Programmblock-Editor angezeigt, der eine Standardvorlage für eine Format-Trigger-Prozedur enthält (die anfänglich den Namen OGFORMATTRIGx hat).

3	Benennen Sie die Format-Trigger-Prozedur um, oder behalten Sie den Standardnamen bei, und geben Sie dann den Rumpf der Prozedur ein.

4	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler auftreten, korrigieren Sie diese, und kompilieren Sie den Programmblock neu.

5	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.


Beispiel: Format-Trigger

PROCEDURE format_point (elem IN og_object, query IN
og_query) IS
  st_price  NUMBER;
BEGIN
  st_price:=OG_GET_NUMCELL(query, OG_NEWDATA, 'sell_pr');
 IF st_price > 200 THEN
   OG_SET_BFCOLOR (elem, 'red');
 END IF;
END:


Referenzen auf Format-Trigger ändern

So ändern Sie eine Referenz auf einen Format-Trigger:

1	Doppelklicken Sie auf das Diagrammelement, oder wählen Sie das Element aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü, um das Dialogfeld Objektattribute für das Diagrammelement anzuzeigen.

2	Wählen Sie eine verfügbare Format-Trigger-Prozedur aus der Dropdown-Liste Format-Trigger aus, oder wählen Sie Keine, wenn keine besondere Formatierung gewünscht wird.

3	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Objektattribute zu schließen.

Bei Graphics Builder können Sie mehrere Format-Trigger-Prozeduren erstellen und diese jederzeit aus dem Attributblatt eines gültigen Diagrammelements aufrufen.


Über Timer-Trigger

  Verwandte Themen

Ein Timer führt eine PL/SQL-Trigger-Prozedur bei jedem Auftreten eines bestimmten Zeitintervalls aus. So könnten Sie z.B. einen Timer definieren, der jede Minute ausgelöst wird und eine PL/SQL-Prozedur ausführt, die ein Diagramm aktualisiert.


Timer-Trigger erstellen

  Beispiel	  Verwandte Themen

So erstellen Sie einen Timer-Trigger:

1	Wählen Sie den Knoten Timer im Objektnavigator aus.

2	Klicken Sie auf die Schaltfläche Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Timer-Trigger anzuzeigen.

Wenn momentan keine Timer vorhanden sind, doppelklicken Sie auf den Knoten Timer im Navigator, um einen neuen Standardtimer im Dialogfeld Timer-Trigger anzuzeigen. In diesem Dialogfeld werden die Standardeinstellungen für einen neuen Timer angezeigt (der anfänglich den Namen Timerx hat).

Alternativ können Sie auch Werkzeuge [image] Timer auswählen und auf Neu klicken, um einen neuen Timer zu erstellen.

3	Wenn Sie eine neue Prozedur erstellen möchten, klicken Sie auf Neu rechts neben der Dropdown-Liste Prozedur.

Daraufhin wird der Programmblock-Editor angezeigt, der eine Standardvorlage für eine Trigger-Prozedur enthält (die anfänglich den Namen OGTRIGGERPROCx hat).

4	Benennen Sie die Trigger-Prozedur um, oder behalten Sie den Standardnamen bei, und geben Sie dann den Rumpf der Prozedur ein.

5	Klicken Sie auf Kompilieren, um die neue Prozedur zu kompilieren.

6	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen und in das Dialogfeld Timer-Trigger zurückzugehen.

7	Wenn ein bestehender Programmblock vorhanden ist, der zugewiesen werden soll, wählen Sie diesen aus der Dropdown-Liste Prozedur.

8	Ändern Sie gegebenenfalls Namen und Intervall des Timers.

Bestimmen Sie mit dem Kontrollkästchen Aktiv, ob der Timer automatisch aktiviert wird, wenn die grafische Anwendung ausgeführt wird (angekreuzt), oder ob er aus einem anderen PL/SQL-Programmblock aktiviert wird (nicht angekreuzt).

Sie können außerdem die vordefinierte PL/SQL-Prozedur OG_ACTIVATE_TIMER von Graphics Builder verwenden, um den Timer aus einem anderen Programmblock zu aktivieren. Unter Umständen möchten Sie, daß der Benutzer den Timer aktivieren kann, indem er in der grafischen Anwendung zur Laufzeit auf eine Schaltfläche klickt.


Beispiel: Timer-Trigger

PROCEDURE check_stock IS
  the_query  OG_QUERY;
  the_chart  OG_OBJECT;
BEGIN
  the_query:=OG_GET_QUERY('stock_val');
  the_chart:=OG_GET_CHART('stock');
  OG_EXECUTE_QUERY(the_query);
  OG_UPDATE_CHART(the_chart, OG_ALL_CHUPDA);
END:


Referenzen auf Timer-Trigger-Prozeduren ändern

So ändern Sie eine Referenz auf einen Timer-Trigger:

1	Doppelklicken Sie auf den zu ändernden Timer, oder wählen Sie Werkzeuge [image] Timer, um das Dialogfeld Timer-Trigger anzuzeigen.

2	Wählen Sie eine verfügbare Prozedur aus der Dropdown-Liste Prozedur aus, oder wählen Sie Keine, wenn beim Ablauf des Timers keine bestimmte Aktion gewünscht wird.

3	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Timer-Trigger zu schließen.

Sie können auf diese Weise jederzeit PL/SQL-Prozeduren, die in der grafischen Anwendung gespeichert sind, einem bestehenden Timer zuweisen.


Über Schaltflächenprozeduren

Jedem Objekt, das Sie in Graphics Builder erstellen oder importieren, kann eine Schaltflächenprozedur zugewiesen werden, einschließlich Ebenen, Grafikobjekten, Diagrammelementen, Symbolen und Textobjekten. Schaltflächenprozeduren werden ausgeführt, wenn ein bestimmtes "Mausereignis" (z.B. Maustaste gedrückt) entdeckt wird, das das verknüpfte Objekt umfaßt.

Bei Schaltflächen und Schaltflächenprozeduren müssen bestimmte Erwägungen berücksichtigt werden:

•	Mausereignisse

•	Ereignis-aktive Objekte

•	Spezifikation von Schaltflächenprozeduren

•	Erstellen von Schaltflächenprozeduren

•	Ändern von Referenzen auf Schaltflächenprozeduren

Da Schaltflächen automatisch aufgerufen werden und keine Werte zurückgeben, werden keine Schaltflächenfunktionen unterstützt. (Der Einfachheit halber ist bei der Beschreibung von Schaltflächen jede Referenz auf ein "Objekt" gleichbedeutend mit "Objekt oder Ebene".)


Über Mausereignisse

Graphics Builder erkennt die folgenden Mausereignisse:

Ereignis	Beschreibung

Maustaste gedrückt	Wird erkannt, wenn die Maustaste gedrückt wird
Maustaste losgelassen	Wird erkannt, wenn die Maustaste losgelassen wird
Mausbewegung gedrückt	Wird erkannt, wenn die Maus bewegt wird, während die Taste gedrückt gehalten wird
Mausbewegung losgelassen	Wird erkannt, wenn die Maus bewegt wird, während die Taste nicht gedrückt gehalten wird (kann nur von einer Ebene erkannt werden)


Über ereignis-aktive Objekte

Das Ereignis Maustaste gedrückt ist das wichtigste Ereignis, weil es bestimmt, welches Objekt "ereignis-aktiv" wird. Das ereignis-aktive Objekt "empfängt" das Maustaste-gedrückt-Ereignis und jedes nachfolgende Ereignis, bis zum nächsten Maustaste-gedrückt-Ereignis (mit dem dann ein neues ereignis-aktives Objekt bestimmt wird).

Nur ein Objekt, mit dem eine Prozedur verknüpft ist, und das mindestens ein Mausereignis empfangen soll, kann zum ereignis-aktiven Objekt werden. (Sie können die Prozedur eines Objekts und die gewünschten Ereignisse im entsprechenden Dialogfeld Attribute oder über PL/SQL festlegen.) Beachten Sie, daß für ein Objekt nicht angegeben werden muß, daß es ein Maustaste-gedrückt-Ereignis empfängt, um ereignis-aktiv zu werden.

Wenn Graphics Builder ein Maustaste-gedrückt-Ereignis erkennt, ermittelt es anhand der folgenden Suchstrategie das erste Objekt, das den obigen Kriterien entspricht:

•	Oberstes Objekt (auf der aktiven Ebene), auf das die Maus zeigt

•	Übergeordnete Gruppe des obersten Objekts (Beachten Sie, daß Sie einem Gruppenobjekt, das aufgerufen wird, wenn auf eines der untergeordneten Objekte geklickt wird, eine Prozedur zugewiesen werden kann, solange den untergeordneten Objekten keine eigenen Prozeduren zugewiesen wurden, die vorrangig wären.)

•	Das übergeordnete Objekt des übergeordneten Objekts usw. im Gruppenbaum des obersten Objekts nach oben

•	Aktive Ebene

Das erste Objekt, das den angegebenen Kriterien entspricht, wird zum ereignis-aktiven Objekt. Wenn keine vollständigen Objekte gefunden werden, wird das Maustaste-gedrückt-Ereignis ignoriert. Beachten Sie, daß die aktive Ebene ereignis-aktiv gemacht werden kann, indem auf einen Punkt in dem Layout geklickt wird, der nicht von einem Objekt belegt wird, das auf dieser Ebene steht.

Nachdem das ereignis-aktive Objekt ausgewählt wurde, prüft Graphics Builder, ob dieses Objekt für den Empfang von Maustaste-gedrückt-Ereignissen vorbereitet ist. Wenn ja, empfängt es das Maustaste-gedrückt-Ereignis, das es ereignis-aktiv gemacht hat, und die Prozedur wird ausgeführt. Graphics Builder führt dann dieselben Schritte für alle nachfolgend entdeckten Ereignisse aus, wobei die Prozedur nur für die Ereignisse aufgerufen wird, für deren Empfang das Objekt vorbereitet ist.

Wenn Graphics Builder ein Maustaste-losgelassen-Ereignis erkennt, wird das ereignis-aktive Objekt "deaktiviert". Es empfängt keine Mausereignisse mehr, es sei denn, es wird wieder von einem Maustaste-gedrückt-Ereignis ereignis-aktiv gemacht.

Besonderer Hinweis zu Ebenen

Eine Ebene kann zwei Ereignisse empfangen, die ein Objekt nicht empfangen kann: Mausbewegung losgelassen und Mausbewegung gedrückt. Wenn mit der aktiven Ebene eine Prozedur verknüpft ist und diese für den Empfang eines Ereignisses vorbereitet ist, geschieht dies, während kein anderes Objekt ereignis-aktiv ist.


Über die Spezifikation von Schaltflächenprozeduren

  Beispiel	  Verwandte Themen

Eine Schaltflächenprozedur benötigt genau vier spezifische Argumente. Graphics Builder stellt die folgende Standard-Prozedurspezifikation bereit, wenn Sie eine neue Schaltflächenprozedur erstellen:

PROCEDURE proc_name
  (buttonobj  IN  og_object,
   hitobj     IN  og_object,
   win        IN  og_window,
   eventinfo  IN  og_event) IS

wobei:

proc_name	Der Name der Prozedur ist. Graphics Builder liefert einen eindeutigen Standardnamen für die Prozedur. Sie können diesen jedoch ändern.
buttonobj	Das Handle zu dem ereignis-aktiven Objekt ist (das Objekt, mit dem diese Schaltflächenprozedur verknüpft ist).
hitobj	Das Handle zu dem obersten Objekt auf der aktiven Ebene ist, auf das die Maus zeigt, wenn das Ereignis entdeckt wird. Dies kann sich von buttonobj unterscheiden, wenn es sich bei dem Objekt, auf das geklickt wurde, um ein untergeordnetes Objekt einer Gruppe handelt, die eine Schaltflächenprozedur hat; in diesem Fall ist buttonobj das Gruppenobjekt und hitobj das untergeordnete Objekt.
win	Das Handle zu dem Fenster ist, in dem das ereignis-aktive Objekt ereignis-aktiv wurde.
eventinfo	Ein Datensatz ist, der Informationen über das Mausereignis enthält, das diese Prozedur aufgerufen hat. Dieses Feld hat den vordefinierten Datentyp OG_EVENT von Graphics Builder.
Sie können das Argument eventinfo der Schaltflächenprozedur benutzen, damit die Prozedur verschiedene Aktionen mit verschiedenen Ereignissen ausführt. Beachten Sie, daß eine Schaltflächenprozedur von einem Ereignis aufgerufen wird, für dessen Empfang sie vorbereitet ist. Wenn in den Aktionen der Prozedur keine Bedingungen stehen, werden alle Anweisungen, die nicht auf eine bestimmte Bedingung beschränkt sind, ausgeführt.


Beispiel: Schaltflächenprozedur - Objekte verschieben

Die folgende Schaltflächenprozedur verschiebt das Schaltflächenobjekt um zwei Zoll nach rechts und unten, wenn sie ein Maustaste-gedrückt-Ereignis empfängt, und dreht das Objekt dann um 45 Grad (wobei die Mausposition als Drehmittelpunkt benutzt wird), wenn sie ein Maustaste-losgelassen-Ereignis empfängt. Beachten Sie, daß selbst, wenn das Schaltflächenobjekt auf den Empfang von Mausbewegung-gedrückt-Ereignissen eingerichtet ist und diese Ereignisse deshalb die Prozedur aufrufen, diese Prozedur die Ereignisse einfach ignoriert.

PROCEDURE move_and_rotate(buttonobj IN og_object, hitobj IN og_object, win IN og_window, eventinfo IN og_event) IS
  move_offset  OG_POINT;
BEGIN
  IF eventinfo.event_type=OG_MOUSE_DOWN THEN
    move_offset.x := 2 * OG_INCH;
    move_offset.y := 2 * OG_INCH;
    OG_MOVE(buttonobj, move_offset);
  ELSIF eventinfo.event_type=OG_MOUSE_UP THEN
    OG_ROTATE(buttonobj, eventinfo.mouse_position, 45);
  END IF;
END;


Schaltflächenprozeduren erstellen

  Beispiel

So erstellen Sie eine Schaltflächenprozedur:

1	Doppelklicken Sie auf das Objekt, oder wählen Sie das Objekt aus, und wählen Sie Werkzeuge [image] Attribute, um das Dialogfeld Objektattribute anzuzeigen.

2	Wenn das Objekt unbenannt ist, geben Sie einen Namen in das Feld Name ein.

3	Klicken Sie auf Neu rechts neben der Dropdown-Liste Prozedur.

Daraufhin wird der Programmblock-Editor angezeigt, der eine Standardvorlage für eine Schaltflächenprozedur enthält (die anfänglich den Namen OGBUTTONPROCx hat).

4	Benennen Sie die Schaltflächenprozedur um, oder akzeptieren Sie den Standardnamen, und geben Sie dann den Rumpf der Prozedur ein.

5	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler angetroffen werden, korrigieren Sie diese, und kompilieren Sie den Programmblock neu.

6	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.


Beispiel: Schaltflächenprozedur - Timer stoppen

PROCEDURE stop_plot (buttonobj IN og_object, hitobj IN
og_object, win IN og_object) IS
  the_timer  OG_TIMER;
BEGIN
  the_timer:=og_get_timer('stockchk');
  OG_DEACTIVATE_TIMER(the_timer);
END;


Referenzen auf Schaltflächenprozeduren ändern

So ändern Sie eine Referenz auf eine Schaltflächenprozedur:

1	Doppelklicken Sie auf das Objekt, oder wählen Sie das Objekt, und wählen Sie Werkzeuge [image] Attribute, um das Dialogfeld Objektattribute anzuzeigen.

2	Wählen Sie eine verfügbare Schaltflächenprozedur aus der Dropdown-Liste Prozedur, oder wählen Sie Keine, wenn kein Schaltflächenverhalten gewünscht wird.

3	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Objektattribute zu schließen.

Bei Graphics Builder können Sie mehrere Schaltflächenprozeduren erstellen und diese jederzeit aus jedem Dialogfeld Objektattribute aufrufen, während Sie Ihre grafischen Anwendungen erstellen.


Über die Benutzung von Close-Display-Triggern

  Verwandte Themen

Ein Close-Display-Trigger führt eine PL/SQL-Prozedur aus, wenn die grafische Anwendung zur Laufzeit geschlossen wird. So könnten Sie z.B. einen Close-Display-Trigger definieren, um die grafische Anwendung auszudrucken und Änderungen in der Datenbank festzuschreiben.

Beachten Sie, daß die grafische Anwendung erst dann wirklich geschlossen wird, wenn die Prozedur des Close-Display-Triggers vollständig abgeschlossen ist.


Close-Display-Trigger erstellen

  Beispiel	  Verwandte Themen

So erstellen Sie einen Close-Display-Trigger:

1	Doppelklicken Sie im Objektnavigator auf das Symbol Close-Trigger, oder wählen Sie Werkzeuge [image] Grafische Anwendung, um das Dialogfeld Attribute anzeigen aufzurufen.

2	Klicken Sie auf Neu rechts neben der Dropdown-Liste Close-Trigger.

Daraufhin wird der Programmblock-Editor angezeigt, der eine Standardvorlage für eine Trigger-Prozedur enthält (die anfänglich den Namen OGTRIGGERPROCx hat).

3	Benennen Sie die Prozedur um, oder behalten Sie den Standardnamen bei, und geben Sie dann den Rumpf der Prozedur ein.

4	Klicken Sie auf Kompilieren, um den Programmblock zu kompilieren.

Wenn Fehler auftreten, korrigieren Sie diese, und kompilieren Sie den Programmblock neu.

5	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.


Beispiel: Close-Display-Trigger

PROCEDURE close_disp IS
  the_sound  OG_SOUND;
BEGIN
  the_sound:=OG_GET_SOUND('playme');
  OG_PLAY_SOUND(the_sound);
END;


Referenzen auf Close-Display-Trigger-Prozeduren ändern

So ändern Sie eine Referenz auf einen Close-Display-Trigger:

1	Wählen Sie Werkzeuge [image] Grafische Anwendung, um das Dialogfeld Attribute anzeigen zu öffnen.

2	Wählen Sie eine verfügbare Trigger-Prozedur aus der Dropdown-Liste Close-Trigger, oder wählen Sie Keine, wenn beim Schließen der grafischen Anwendung kein besonderes Verhalten gewünscht wird.

3	Klicken Sie auf OK, um die Änderung anzuwenden und das Dialogfeld Attribute anzeigen zu schließen.

Bei Graphics Builder können Sie mehrere Trigger-Prozeduren erstellen und eine dieser Prozeduren jederzeit bei der Entwicklung der grafischen Anwendung als Close-Display-Trigger zuweisen.


Über Abfragen

Abfragen sind SQL SELECT-Anweisungen oder Dateien, mit denen Sie Daten für eine grafische Anwendung abrufen können. In den meisten Fällen benutzen Sie Abfragen, um Daten für Diagramme abzurufen. Sie können Abfragen auch programmgesteuert ausführen und die Daten für das Erstellen und Ändern von Objekten benutzen.

Unabhängig davon, ob Sie Ihre Abfragen beim Erstellen des Diagramms oder separat erzeugen, wird empfohlen, jeder Abfrage einen eindeutigen und repräsentativen Namen zuzuweisen. Jeder Abfrage, die Sie erstellen, wird von Graphics Builder ein Standardname Abfragex zugewiesen. Durch die Zuweisung aussagefähiger Namen können Sie die Abfrage im Objektnavigator einfacher suchen oder beim Erstellen eines Diagramms eine Abfrage aus einer Dropdown-Liste auswählen.


Verbindung zu der Datenquelle herstellen

So stellen Sie die Verbindung zu der Datenquelle her:

1	Wählen Sie Datei [image] Anmelden, um das Dialogfeld Anmelden anzuzeigen.

Bevor Sie eine Datenquelle abfragen können, müssen Sie die Verbindung zu der Datenquelle herstellen. Danach können Sie eine SQL SELECT-Anweisung erstellen, um die Daten abzurufen.

2	Geben Sie Ihren Benutzernamen und das Kennwort ein. (Das Kennwort wird bei der Eingabe nicht wiedergegeben.) Wenn Sie nicht sicher sind, welchen Benutzernamen und welches Kennwort Sie verwenden sollen, fragen Sie den Administrator der Datenquelle.

Machen Sie im Feld Datenbank keine Angaben, es sei denn, Sie stellen die Verbindung zu einer entfernten Datenquelle her. In diesem Fall müssen Sie das SQL*Net-Kommunikationsprotokoll, den Knoten der Datenquelle und den Datenbanknamen, durch Doppelpunkte voneinander getrennt, eingeben. Zum Beispiel:

t:boston:payroll

Bei einer ODBC-Datenquelle müssen Sie folgendes eingeben:

ODBC:boston:payroll

Sie können eine standardmäßige DB-Adresse für die Datenquelle zur Benutzung bei allen Anmeldungen angeben.

1	Klicken Sie auf Anmelden, um sich anzumelden.

Wenn Sie erfolgreich bei der Datenquelle angemeldet sind, wird das Dialogfeld Anmelden geschlossen. Wenn eine Fehlermeldung angezeigt wird, fragen Sie den Administrator der Datenquelle, und prüfen Sie, ob Sie die richtige Anmelde-ID und Spezifikation der Datenquelle verwenden.


Über das Erstellen von Abfragen

Bei Graphics Builder haben Sie folgende Möglichkeiten für das Erstellen von Abfragen:

Erstellen einer SQL SELECT-Anweisung

Angabe von Dateien in Form von Abfragen

Erstellen von Abfragen beim Erstellen von Diagrammen

Erstellen einer Abfrage mit PL/SQL

Die benutzte Methode hängt von Ihrer Datenquelle ab. Wenn Sie als Datenquelle eine Datenbank verwenden, benutzen Sie eine SQL SELECT-Anweisung. Wenn die Datenquelle eine Datei ist, wie z.B. ein Kalkulationsblatt, geben Sie die ganze Datei als Abfrage an. Außerdem können Sie benutzerdefinierte Abfragen mit einer Kombination von SQL-Anweisungen und PL/SQL-Code erstellen.

Wenn Sie eine Abfrage ausführen, lädt Graphics Builder die angegebene Gruppe mit Datenspalten und die zugehörigen Zeilen und setzt sie in das Register Daten im Dialogfeld Attribute Abfrage. Das Register Daten enthält immer die aus der aktuellen Abfrage abgerufenen Daten. Wenn Sie ein Diagramm erstellen, benutzt Graphics Builder die Daten aus der aktuellen Abfrage, es sei denn, Sie machen andere Angaben.


Über die Benutzung externer SQL-Abfragen

Wenn bestehende SQL-Abfragen in Dateien gespeichert sind, können Sie eine der folgenden Optionen verwenden:

•	Referenzieren externer SQL-Abfragen

•	Importieren externer SQL-Abfragen

Weitere Informationen über SQL SELECT-Anweisungen und deren Speicherung in Textdateien finden Sie im Oracle7 Server SQL Language Reference Manual.


SQL SELECT-Anweisungen erstellen

So erstellen Sie eine Abfrage mit einer SQL SELECT-Anweisung:

1	Wählen Sie den Knoten Abfragen im Objektnavigator, und klicken Sie auf Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Attribute Abfrage aufzurufen.

Wenn momentan keine Abfragen vorhanden sind, doppelklicken Sie auf den Knoten Abfragen im Navigator, um das Dialogfeld Attribute Abfrage aufzurufen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage aufzurufen, und dann auf Neu klicken, um eine neue Abfrage zu erstellen.

Der Standardname ist Abfragex, wobei x eine Instanznummer ist, die jedesmal um eins erhöht wird, wenn eine neue Abfrage während der aktuellen Sitzung erstellt wird.

2	Übernehmen Sie den Standardnamen, oder geben Sie einen neuen Namen in das Feld Name ein.

3	Geben Sie eine SQL SELECT-Anweisung in das Feld SQL-Befehl ein.

Weitere Informationen über SQL SELECT-Anweisungen finden Sie im Oracle7 Server SQL Language Reference Manual.

4	Klicken Sie auf Ausführen, um die Abfrage auszuführen.

Die Daten werden im Register Daten angezeigt.

5	Klicken Sie auf OK oder auf Schließen, um das Dialogfeld Attribute Abfrage zu schließen.

Die Abfrage bleibt die aktuelle Abfrage, bis Sie eine neue Abfrage erstellen oder bearbeiten.

Wenn Sie zuerst Abfragen erstellen und die Diagramme zu einem späteren Zeitpunkt erzeugen möchten, verwenden Sie diese Methode. Mit dem Dialogfeld Attribute Abfrage können Sie mehrere Abfragen gleichzeitig erstellen.


Dateien als Abfragen angeben

So geben Sie eine Datei als Abfrage an:

1	Wählen Sie den Knoten Abfragen im Objektnavigator, und klicken Sie auf Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Attribute Abfrage anzuzeigen.

Wenn momentan keine Abfragen vorhanden sind, doppelklicken Sie auf den Knoten Abfragen im Navigator, um das Dialogfeld Attribute Abfrage anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage anzuzeigen, und dann auf Neu klicken, um eine neue Abfrage zu erstellen.

Der Standardname ist Abfragex, wobei x eine Instanznummer ist, die jedesmal um eins erhöht wird, wenn eine neue Abfrage während der laufenden Sitzung erstellt wird.

2	Übernehmen Sie den Standardnamen, oder geben Sie einen neuen Namen in das Feld Name ein.

3	Wählen Sie einen Dateityp aus der Dropdown-Liste Typ.

4	Klicken Sie auf Suchen, um das Datei-Dialogfeld Ihres Systems aufzurufen.

5	Wählen Sie eine gültige Datei aus, und akzeptieren Sie das Dialogfeld.

Graphics Builder setzt den Verzeichnispfad und den Dateinamen in das Feld Datei.

Wenn die Datei Datumsangaben enthält, wird auf das Hilfethema Datumsformate für Dateiabfragen festlegen verwiesen.

6	Klicken Sie auf Ausführen, um die Abfrage auszuführen.

Die Daten werden im Register Daten angezeigt.

7	Klicken Sie auf OK oder Schließen, um das Dialogfeld Attribute Abfrage zu schließen.

Die Abfrage bleibt die aktuelle Abfrage, bis Sie eine andere Abfrage erstellen oder bearbeiten.

Die Dateiformate SYLK, WKS oder PRN können als Abfragen benutzt werden.


Abfragen mit PL/SQL erstellen

  Verwandte Themen

So erstellen Sie eine Abfrage mit PL/SQL:

  Benutzen Sie Parameter und vordefinierte PL/SQL-Prozeduren von Graphics Builder, um Abfragen programmgesteuert zu erstellen und auszuführen. So können Sie z.B. einen Parameter benutzen, um eine Where-Klausel programmgesteuert für die Abfrage festzulegen. Hierzu könnten Sie eine Abfrage (Abfrage0) erstellen, die eine lexikalische Referenz auf einen Parameter vom Typ CHAR enthält (the_param).

Mit der folgenden Prozedur wird ein Wert für den Parameter basierend auf dem angegebenen Argument festgelegt. Danach wird die Abfrage ausgeführt und das zugehörige Diagramm aktualisiert:

PROCEDURE add_param (the_name IN VARCHAR2) IS
  query  OG_QUERY;
  the_chart  OG_OBJECT;
BEGIN
  :the_param:='WHERE ename = '|| the_name;
  query:=OG_GET_QUERY('query0');
  OG_EXECUTE_QUERY(query);
  the_chart:=OG_GET_CHART('name_chart');
  OG_UPDATE_CHART(the_chart, OG_ALL_CHUPDA);
END;

Alternativ können Sie die ganze Abfrage programmgesteuert mit der Funktion OG_MAKE_QUERY erstellen. Zum Beispiel:

FUNCTION make_ch RETURN og_query IS
BEGIN
  query:=OG_MAKE_QUERY(OG_SQL_QTYPE, 'select ename,
sal from emp');
END;

Nachdem Sie eine Abfrage mit der obigen Funktion erstellt haben, können Sie die Ergebnisabfrage für das Erstellen eines Diagramms benutzen.


Externe SQL-Abfragen referenzieren

  Verwandte Themen

So referenzieren Sie eine externe Abfrage:

1	Wählen Sie den Knoten Abfragen im Objektnavigator, und klicken Sie auf Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Attribute Abfrage anzuzeigen.

Wenn momentan keine Abfragen vorhanden sind, doppelklicken Sie auf den Knoten Abfragen im Navigator, um das Dialogfeld Attribute Abfrage anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage anzuzeigen und dann auf Neu klicken, um eine neue Abfrage zu erstellen.

2	Wählen Sie Externe SQL-Datei aus der Dropdown-Liste Typ aus.

Daraufhin werden die Felder Datei und Suchen aktiviert.

3	Geben Sie Namen und Speicherort der SQL-Datei in das Feld Datei ein, oder klicken Sie auf Suchen, um das Datei-Dialogfeld Ihres Betriebssystems anzuzeigen.

4	Wählen Sie die zu referenzierende SQL-Datei aus, und akzeptieren Sie das Datei-Dialogfeld, um es zu schließen.

Graphics Builder speichert den Pfad in dieser Datei.

5	Klicken Sie auf Ausführen, um die Abfrage in der externen Datei auszuführen.

6	Klicken Sie auf OK, um das Dialogfeld Attribute Abfrage zu schließen.

Durch das Referenzieren einer externen Abfragedatei in Graphics Builder wird ein Link zu dieser Datei hergestellt, anstatt die Abfrage in der grafischen Anwendung aufzunehmen. Benutzen Sie diese Methode, wenn Sie die Abfrage nicht bearbeiten oder in der grafischen Anwendung aufnehmen möchten.

Wenn Sie die grafische Anwendung zur Laufzeit verteilen, müssen Sie auch die externe Abfragedatei verteilen, damit Graphics Builder sie zur Ausführung finden kann.


Externe SQL-Abfragen importieren

So importieren Sie eine externe SQL-Abfrage:

1	Wählen Sie den Knoten Abfragen im Objektnavigator, und klicken Sie auf Erstellen, oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Attribute Abfrage anzuzeigen.

Wenn momentan keine Abfragen vorhanden sind, doppelklicken Sie auf den Knoten Abfragen im Navigator, um das Dialogfeld Attribute Abfrage anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage anzuzeigen, und dann auf Neu klicken, um eine neue Abfrage zu erstellen.

2	Klicken Sie mit dem Cursor im Feld SQL-Befehl.

3	Klicken Sie auf SQL Import, um das Datei-Dialogfeld Ihres Systems anzuzeigen.

4	Wählen Sie eine Textdatei, die eine SQL SELECT-Anweisung enthält, und akzeptieren Sie das Dialogfeld.

Graphics Builder importiert die in der Datei gespeicherte SQL-Anweisung in das Feld SQL-Befehl.

5	Klicken Sie auf Ausführen, um die importierte Abfrage auszuführen.

6	Klicken Sie auf OK, um das Dialogfeld zu schließen.

Nachdem die Abfrage importiert wurde, können Sie sie gegebenenfalls bearbeiten.


Abfragen in Textdateien exportieren

So exportieren Sie eine Abfrage in eine Textdatei:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Klicken Sie mit dem Cursor im Feld SQL-Befehl.

4	Wählen Sie SQL Export, um das Datei-Dialogfeld Ihres Betriebssystems anzuzeigen.

5	Wählen Sie eine Textdatei für die SQL-Anweisung, und akzeptieren Sie das Dialogfeld.

6	Klicken Sie auf OK, um das Dialogfeld Attribute Abfrage zu schließen.

Graphics Builder exportiert die SQL-Anweisung in die benannte Datei.

Nachdem Sie eine SQL-Abfrage in Graphics Builder erstellt haben, können Sie diese Abfrage zur Benutzung in anderen Oracle-Produkten in eine Textdatei exportieren. Sie können Abfragen in Graphics Builder erneut benutzen, indem Sie eine Abfrage im Objektnavigator von einer grafischen Anwendung zu einer anderen ziehen.


Über das Erstellen benutzerdefinierter Abfragen

Mit benutzerdefinierten Abfragen können Sie Spalten erstellen und diese nur mit PL/SQL oder einer Kombination aus SQL und PL/SQL mit Daten auffüllen.

Sie können Abfragespalten mit einer benutzerdefinierten Ausführungsprozedur oder mit einer externen Quelle auffüllen. Nachdem Sie eine benutzerdefinierte Abfrage erstellt haben, können Sie sie beim Erstellen eines Diagramms referenzieren.


Über das Auffüllen von Abfragespalten mit einer externen Quelle

Wenn Sie ein Graphics Builder-Diagramm in einem anderen Oracle-Produkt aufnehmen, wie z.B. Form Builder oder Report Builder (in Reports Developer enthalten), benutzt das Diagramm die Daten aus der Abfrage des aufrufenden Produkts, solange die Abfragespalten, die für das Erstellen des Diagramms benutzt werden, und die Spalten, die in der Abfrage des aufrufenden Produkts benutzt werden, übereinstimmen.

Wenn das zu erstellende Diagramm nur von einem anderen Oracle-Produkt aufgerufen wird, können Sie eine benutzerdefinierte Abfrage benutzen, um ein "leeres" Diagramm zu erstellen. Dieses Diagramm wird mit Daten aufgefüllt, wenn es vom aufrufenden Produkt aufgerufen wird. Benutzen Sie das Register Schema der benutzerdefinierten Abfrage, um Spalten mit denselben Namen wie bei der Abfrage zu erstellen, die von dem aufrufenden Produkt benutzt wird. Danach definieren Sie die Diagrammattribute wie normal, wobei Sie Kategorie- und Wertedaten zuweisen usw.

Das Diagramm wird ohne Daten im Layout angezeigt.

Wenn die Graphics Builder-Anwendung von einem anderen Produkt aufgerufen wird, wird die Abfrage des aufrufenden Produkts durch die benutzerdefinierte Abfrage ersetzt. Weil die Spaltennamen identisch sind, wird das Diagramm gemäß Ihren Spezifikationen gezeichnet.

In diesem Fall müssen Sie keine benutzerdefinierte Ausführungsprozedur erstellen, um die Spalten mit Daten aufzufüllen.


Benutzerdefinierte Abfragespalten erstellen

So erstellen Sie benutzerdefinierte Abfragespalten:

1	Wählen Sie den Knoten Abfragen im Objektnavigator aus, und klicken Sie auf Erstellen oder wählen Sie Navigator [image] Erstellen, um das Dialogfeld Attribute Abfrage anzuzeigen.

Wenn momentan keine Abfragen vorhanden sind, doppelklicken Sie auf den Knoten Abfragen im Navigator, um das Dialogfeld Attribute Abfrage anzuzeigen.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage anzuzeigen, und dann auf Neu klicken, um eine neue Abfrage zu erstellen.

Der Standardname ist Abfragex, wobei x eine Instanznummer ist, die jedesmal um eins erhöht wird, wenn während der laufenden Sitzung eine neue Abfrage erstellt wird.

2	Akzeptieren Sie den Standardnamen, oder geben Sie einen neuen Namen in das Feld Name ein.

3	Wählen Sie Benutzerdefiniert aus der Dropdown-Liste Typ aus.

4	Wählen Sie das Registertab Schema, um das Register Schema anzuzeigen.

5	Klicken Sie auf Neue Spalte, um eine Spalte zu erstellen.

6	Ändern Sie gegebenenfalls Namen, Typ und andere Einstellungen.

Erstellen Sie weiter alle Spalten, die Sie grafisch darstellen möchten.

7	Erstellen Sie eine benutzerdefinierte Ausführungsprozedur, um die Spalten mit Daten aufzufüllen, oder klicken Sie auf Schließen, um das Dialogfeld Attribute Abfrage zu schließen.


Abfragespalten mit einer benutzerdefinierten Ausführungsprozedur auffüllen

  Beispiel

So erstellen Sie eine benutzerdefinierte Ausführungsprozedur:

1	Doppelklicken Sie auf das zu ändernde (benutzerdefinierte) Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Wählen Sie das Registertab Optionen, um das Register Optionen anzuzeigen.

4	Wählen Sie einen bestehenden benutzerdefinierten Ausführungs-Trigger aus der Dropdown-Liste, oder klicken Sie auf Neu, um eine neue benutzerdefinierte Ausführungsprozedur zu erstellen.

Daraufhin wird der Programmblock-Editor mit einer Vorlagenprozedur OGQUERYPROC0 angezeigt.

5	Bearbeiten Sie die Vorlagenprozedur, um die benutzerdefinierten Spalten aufzufüllen.

Benutzen Sie hierzu die vordefinierten PL/SQL-Prozeduren OG_SET_xxxCELL und OG_APPEND_ROW.

6	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Attribute Abfrage zu schließen.

Sie können Ihre grafische Anwendung speichern und ausführen oder Diagramm [image] Diagramm aktualisieren wählen, um die benutzerdefinierte Ausführungsprozedur zu testen.


Beispiel: Benutzerdefinierte Abfrageprozedur verwenden

Die folgende Prozedur ist ein Beispiel für eine benutzerdefinierte Ausführungsprozedur. Bei dieser Prozedur wird davon ausgegangen, daß drei Spalten im Register Schema erstellt wurden. Die Spalte Name hat den Datentyp CHAR, die Spalte Salary hat den Typ NUMBER, und die Spalte Hired hat den Datentyp DATE.

Graphics Builder verwaltet eine Pufferzeile oder virtuelle Zeile für die Tabelle. Sie füllen die virtuelle Zeile mit OG_SET_xxxCELL auf und hängen dann die virtuelle Zeile mit OG_APPEND_ROW an die Tabelle an. Da nur eine virtuelle Zeile vorhanden ist, können Sie immer nur eine Zeile der Tabelle gleichzeitig auffüllen.

PROCEDURE fill_columns (query IN og_query)IS

/* Set the data for the first row */
  OG_SET_CHARCELL(query, 'Name', 'Smith');
  OG_SET_NUMCELL(query, 'Salary', '50000');
  OG_SET_DATECELL(query, 'Hired', '12-NOV-88');

/* Append the row of data to the table*/
  OG_APPEND_ROW(query);

/* Set the data for the next row*/
  OG_SET_CHARCELL(query, 'Name', 'Jones');
  OG_SET_NUMCELL(query, 'Salary', '55000');
  OG_SET_DATECELL(query, 'Hired', '19-APR-92');

/* Append the row of data to the table*/
  OG_APPEND_ROW(query);

END;


Abfragen mit dem Objektnavigator aufrufen

So rufen Sie eine Abfrage mit dem Objektnavigator auf:

1	Doppelklicken Sie auf das Abfrageobjekt im Navigator, um das Dialogfeld Attribute Abfrage für diese Abfrage anzuzeigen, oder wählen Sie das Abfrageobjekt aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

2	Nachdem das Dialogfeld Attribute Abfrage geöffnet wurde, können Sie andere zu ändernde Abfragen aus der Dropdown-Liste Abfrage auswählen.


Abfragen mit dem Menü aufrufen

So rufen Sie Abfragen mit dem Menü auf:

1	Wählen Sie Werkzeuge [image] Abfragen, um das Dialogfeld Attribute Abfrage anzuzeigen.

2	Wählen Sie eine Abfrage aus der Dropdown-Liste Abfrage.

Führen Sie die gewünschte Aktion durch.

Mit dieser Methode wird das Dialogfeld Attribute Abfrage für die aktuelle Abfrage geöffnet. Nachdem das Register geöffnet ist, können Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage auswählen. Die aktuelle Abfrage ist die als letztes im Dialogfeld Attribute Abfrage erstellte oder geänderte Abfrage.


Abfragen ändern

So ändern Sie eine Abfrage:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Navigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Ändern Sie die Abfrage wie folgt:

 Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, ändern Sie die SQL SELECT-Anweisung in dem Feld SQL-Befehl.

 Wenn die Abfrage auf einer Datei basiert, wird das Datei-Dialogfeld Ihres Systems angezeigt. Wählen Sie eine Datei aus, und akzeptieren Sie das Dialogfeld. Ändern Sie die Datei nach Bedarf.

4	Klicken Sie auf Ausführen, um die Abfrage erneut auszuführen.

Die neuen Daten werden im Register Daten angezeigt.

5	Klicken Sie auf OK, um das Dialogfeld Attribute Abfrage zu schließen.

Die Abfrage bleibt die aktuelle Abfrage, bis Sie eine andere Abfrage erstellen oder bearbeiten.


Abfragen mit dem Objektnavigator ändern

So ändern Sie eine Abfrage mit dem Objektnavigator:

  Wählen Sie das Abfrageobjekt aus, und wählen Sie dann eine der Schaltflächen im Objektnavigator, wie z.B. Erstellen oder Löschen, oder wählen Sie eine Option aus dem Menü Navigator.


Abfragen im Objektnavigator umbenennen

So benennen Sie eine Abfrage im Objektnavigator um:

1	Wählen Sie das umzubenennende Abfrageobjekt aus.

2	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und in den Bearbeitenmodus zu gehen.

Wenn Sie den ganzen Namen ersetzen möchten, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein.

Benutzen Sie diese Methode, um eine oder mehrere Abfragen schnell direkt im Objektnavigator umzubenennen. Wenn der Inhalt der Abfrage angezeigt werden soll, bevor Sie diese umbenennen, benutzen Sie die folgende Methode.

3	Wenn die Abfrage in PL/SQL-Programmblöcken oder Aufgliederungsbeziehungen referenziert wird, ändern Sie alle Referenzen entsprechend dem neuen Abfragenamen.


Abfragen im Dialogfeld Attribute Abfrage umbenennen

So benennen Sie eine Abfrage im Dialogfeld Attribute Abfrage um:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Geben Sie einen neuen Namen für die Abfrage in das Feld Name ein.

4	Klicken Sie auf OK, um den neuen Namen anzuwenden und das Dialogfeld Attribute Abfrage zu schließen.

Benutzen Sie diese Methode, wenn Sie den Inhalt der Abfrage anzeigen möchten, bevor Sie sie umbenennen.

5	Wenn die Abfrage in PL/SQL-Programmblöcken oder Aufgliederungsbeziehungen referenziert wird, ändern Sie alle Referenzen entsprechend dem neuen Abfragenamen.


Datumsformate für Dateiabfragen festlegen

So legen Sie Datumsformate für Dateiabfragen fest:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Wählen Sie das Registertab Optionen, um das Register Optionen anzuzeigen.

4	Geben Sie ein Datumsformat in das Feld Datumsformat ein, oder wählen Sie Auflisten, und wählen Sie ein bestehendes Format aus dem Dialogfeld Datumsformat aus.

Weitere Informationen über gültige Formate finden Sie in Oracle7 Server SQL Language Reference Manual.

5	Klicken Sie auf OK, um das Dialogfeld zu akzeptieren und zu dem Dialogfeld Attribute Abfrage zurückzugehen.

6	Klicken Sie auf Ausführen, um die Abfrage erneut auszuführen und die Daten in dem neuen Format darzustellen.

Wenn Sie eine Datei (SYLK, WKS oder PRN) abfragen, die Datumsangaben enthält, und Graphics Builder diese als Datumsangaben und nicht als einzelne Zeichen erkennen soll, müssen Sie im Dialogfeld Attribute Abfrage Datumsformate angeben.

Diese Datumsformate werden nur für Datumsangaben im Register Daten des Dialogfelds Attribute Abfrage benutzt. Für Diagramme können Sie die Datumsformate in den Layout- oder Diagrammvorlagen-Editoren festlegen.


Über die Ausführung von Abfragen

Sie können Abfragen wie folgt ausführen:

•	Automatisch beim Öffnen einer grafischen Anwendung

•	In bestimmten Zeitabständen

•	Mit PL/SQL


Über das Filtern von Diagrammdaten

Wenn Sie die in einem Diagramm dargestellte Datenmenge einschränken möchten, filtern Sie normalerweise die Daten, indem Sie in der Abfrage eine WHERE-Klausel angeben (z.B. "WHERE DEPTNO = :DNO"). Diese Methode setzt jedoch voraus, daß jedem Diagramm eine eigene eindeutige Abfrage zugewiesen ist. Außerdem kann sich die erneute Ausführung einer Abfrage nach jeder Aktualisierung des Diagramms negativ auf die Diagrammleistung auswirken.

Um dieses Problem zu umgehen, können Sie einen Abfragefilter in dem Diagramm erstellen. Abfragefilter sind PL/SQL-Funktionen, die die in einem Diagramm dargestellte Datenmenge einschränken. Weil jedem Diagramm ein eigener Abfragefilter zugewiesen werden kann, kann eine einzelne Abfrage - die nur einmal ausgeführt wird - Daten bereitstellen, die von mehreren Diagrammen benutzt werden.

Die Abfragefilterfunktion liest jede Zeile in Ihrer Abfrage und wertet diese Datenzeile entsprechend den Bedingungen aus, die Sie in dem Abfragefilter selbst festlegen. Jede Zeile, die die Bedingungen erfüllt, wird grafisch dargestellt. Jede Zeile, die die Bedingungen nicht erfüllt, wird nicht dargestellt, bleibt jedoch weiter im Register Daten von Attribute Abfrage bestehen.


Abfragefilter erstellen

  Verwandte Themen	  Beispiel

So erstellen Sie einen Abfragefilter:

1	Legen Sie die Bedingungen für die Abfragedaten fest.

Sie könnten einen oberen Grenzwert für eine Spalte festlegen, Werte von mehreren Spalten vergleichen oder einen bestimmten Bereich mit zulässigen Daten auswählen.

2	Doppelklicken Sie auf das Diagramm, um das Dialogfeld Diagrammattribute anzuzeigen.

3	Klicken Sie auf das Registertab Daten, um das Register Daten anzuzeigen.

4	Klicken Sie auf die Schaltfläche Neu, die rechts neben der Dropdown-Liste Filterfunktion angezeigt wird.

Daraufhin wird der PL/SQL-Programmblock-Editor angezeigt, der eine Standardvorlage für die Abfragefilterfunktion enthält (die ursprünglich die Bezeichnung OGQUERYFILTER0 hat).

Sie müssen eine Bedingung basierend auf einer oder mehreren Spalten in der Abfrage angeben.

5	Definieren Sie die Bedingung, nach der gefiltert werden soll.

6	Klicken Sie auf Kompilieren im Programmblock-Editor, um den Abfragefilter zu kompilieren.

Wenn Sie auf Fehler stoßen, beheben Sie diese, und kompilieren Sie den Filter neu. Der Abfragefilter muß erfolgreich kompiliert werden, bevor er benutzt werden kann.

7	Klicken Sie auf Schließen, um den Programmblock-Editor zu schließen.

8	Klicken Sie auf OK, um das Dialogfeld Diagrammattribute zu schließen.

Sie können Diagramm [image] Diagramm aktualisieren wählen, um die Ergebnisse der Abfragefilterfunktion in dem Diagramm anzuzeigen.

Auch wenn die Abfrage jede Zeile aus der Tabelle auswählt, stellt der Abfragefilter sicher, daß nur bestimmte Zeilen grafisch dargestellt werden.

Weitere Informationen über das Festlegen von Bedingungen mit PL/SQL finden Sie in dem Abschnitt über die Steuerungsstrukturen im PL/SQL User's Guide and Reference.


Abfragefilterfunktionen benutzen

  Verwandte Themen

So benutzen Sie Abfragefilterfunktionen:

1	Doppelklicken Sie auf das Diagramm, oder wählen Sie das Diagramm aus, zu dem Sie einen Abfragefilter hinzufügen möchten (entweder im Layouteditor oder im Objektnavigator), und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie auch Werkzeuge [image] Attribute wählen, um das Dialogfeld Diagrammattribute anzuzeigen.

2	Wählen Sie das Registertab Daten, um das Register Daten anzuzeigen.

3	Wählen Sie eine bestehende Abfragefilterfunktion aus der Dropdown-Liste Filterfunktion, oder klicken Sie auf Neu, um einen neuen Abfragefilter zu erstellen.

4	Klicken Sie auf OK, um die Änderungen anzuwenden und das Dialogfeld Diagrammattribute zu schließen.

Sie können Diagramm [image] Diagramm aktualisieren verwenden, um die Abfragefilterfunktion zu testen.

Mit Graphics Builder können Sie eine einzelne Abfrage erstellen, die mehreren Diagrammen zugewiesen werden kann. Durch Erstellen einer Abfragefilterfunktion für ein Diagramm können Sie die in dem Diagramm dargestellten Daten einschränken (z.B. alle Gehälter, die über 5000 liegen), ohne die Abfrage erneut ausführen zu müssen.

Wenn Sie mehrere Diagramme erstellen möchten, die alle dieselbe Datenquelle benutzen, können Sie eine allgemeine Abfrage erstellen und mit Abfragefiltern festlegen, welche Daten dargestellt werden. In diesem Fall würde der Abfragefilter dieselbe Funktion wie eine WHERE-Klausel ausführen, jedoch mit dem zusätzlichen Leistungsvorteil, daß nur eine Abfrage auf dem Server ausgeführt werden muß, weil der Filter die Daten auf der Client-Seite entsprechend zuteilt.


Abfragen beim Öffnen einer grafischen Anwendung ausführen

So führen Sie eine Abfrage beim Öffnen einer grafischen Anwendung aus:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage aus.

3	Wählen Sie das Registertab Optionen, um das Register Optionen anzuzeigen.

4	Aktivieren Sie Grafische Anwendung öffnen im Feld Ausführen bei, indem Sie auf das Kontrollkästchen klicken.


Abfragen in bestimmten Zeitabständen ausführen

So führen Sie eine Abfrage in bestimmten Zeitabständen aus:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Wählen Sie das Registertab Optionen, um das Register Optionen anzuzeigen.

4	Aktivieren Sie Timer im Feld Ausführen bei, indem Sie auf das Kontrollkästchen klicken.

5	Wählen Sie einen bestehenden Timer aus der Dropdown-Liste, oder klicken Sie auf Neu, um einen neuen Timer zu erstellen.


Abfragen mit PL/SQL ausführen

  Verwandte Themen

So führen Sie eine Abfrage mit PL/SQL aus:

  Benutzen Sie die vordefinierten PL/SQL-Unterprogramme OG_EXECUTE_QUERY und OG_UPDATE_CHART.

Im folgenden Beispiel wird die angegebene Abfrage ausgeführt und das zugehörige Diagramm aktualisiert:

PROCEDURE every_30_secs IS
   query   OG_QUERY;
   the_chart   OG_OBJECT;
BEGIN
   query:=OG_GET_QUERY('emp_query');
   the_chart:=OG_GET_OBJECT('emp_chart');
   OG_EXECUTE_QUERY(query);
   OG_UPDATE_CHART(the_chart, OG_ALL_CHUPDA);
END;


Abfragen im Objektnavigator löschen

So löschen Sie eine Abfrage im Objektnavigator:

1	Wählen Sie das zu löschende Abfrageobjekt.

2	Klicken Sie auf Löschen im Objektnavigator, oder wählen Sie Navigator [image] Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

3	Klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.

Benutzen Sie diese Methode, wenn Sie schnell eine oder mehrere Abfragen im Objektnavigator löschen möchten. Wenn Sie die Abfrage anzeigen möchten, bevor Sie sie löschen, benutzen Sie die unten beschriebene Methode mit dem Dialogfeld Attribute Abfrage.


Abfragen im Dialogfeld Attribute Abfrage löschen

So löschen Sie eine Abfrage im Dialogfeld Attribute Abfrage:

1	Doppelklicken Sie auf das zu ändernde Abfrageobjekt, oder wählen Sie das Abfrageobjekt im Objektnavigator aus, und wählen Sie den Befehl Attribute aus dem Popup-Menü.

Alternativ können Sie auch Werkzeuge [image] Abfragen wählen, um das Dialogfeld Attribute Abfrage für die aktuelle Abfrage anzuzeigen.

2	Gegebenenfalls wählen Sie eine alternative Abfrage aus der Dropdown-Liste Abfrage.

3	Klicken Sie auf Löschen.

Daraufhin werden Sie in einem Warnfenster aufgefordert, den Löschenvorgang zu bestätigen.

4	Klicken Sie auf Ja, um den Löschenvorgang zu bestätigen.

Benutzen Sie diese Methode, wenn Sie den Inhalt einer Abfrage vor dem Löschen anzeigen möchten.


Über das Umbenennen von Ebenen

  Verwandte Themen

Sie können eine Ebene an zwei verschiedenen Stellen umbenennen:

• 	Im Dialogfeld Ebeneneinstellungen

• 	Im Objektnavigator

Wenn Sie eine Ebene umbenennen, die Sie in einem PL/SQL-Programmblock referenziert haben, müssen Sie alle Referenzen ändern, um den neuen Namen zu berücksichtigen.


Ebenen aktivieren

So aktivieren Sie eine Ebene:

1	Doppelklicken Sie auf das Ebenenobjekt im Navigator, um das Dialogfeld Ebeneneinstellungen anzuzeigen.

Alternativ können Sie das Ebenenobjekt im Navigator auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch Werkzeuge [image] Attribute aus dem Menü wählen.

2	Wählen Sie eine Ebene aus der Liste Vorhandene Ebenen.

3	Klicken Sie auf Aktivieren.

Die Ebene wird in dem Feld Aktive Ebene angezeigt. Wenn die Ebene vorher verborgen war, wird sie jetzt angezeigt.

4	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Layouteinstellungen zu schließen.

Um mit einer Ebene arbeiten zu können, müssen Sie diese zur aktiven Ebene machen. Es kann immer nur eine Ebene gleichzeitig aktiv sein.


Ebenen mit PL/SQL aktivieren

  Verwandte Themen

So aktivieren Sie eine Ebene mit PL/SQL:

  Benutzen Sie das vordefinierte PL/SQL-Unterprogramm OG_ACTIVATE_LAYER.

Das folgende Beispiel aktiviert die angegebene Ebene im angegebenen Fenster:

PROCEDURE activate_a_layer(layer_num IN NUMBER, the_window
 IN og_window) IS
   layer_name   VARCHAR2(6);
   the_layer    OG_LAYER;
BEGIN
   layer_name:='layer'||TO_CHAR(layer_num);
   the_layer:=OG_GET_LAYER(layer_name);
   OG_ACTIVATE_LAYER(the_layer, the_window);
END;


Ebenen im Dialogfeld Ebeneneinstellungen umbenennen

So benennen Sie eine Ebene im Dialogfeld Ebeneneinstellungen um:

1	Doppelklicken Sie auf das Ebenenobjekt im Navigator, um das Dialogfeld Ebeneneinstellungen anzuzeigen.

Alternativ können Sie auch das Ebenenobjekt im Navigator auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch Werkzeuge [image] Attribute aus dem Menü wählen.

2	Wählen Sie die Ebene aus der Liste Vorhandene Ebenen.

Die Ebene wird im Feld Umbenennen angezeigt.

3	Geben Sie einen neuen Namen für die Ebene in das Feld Neuer Name ein.

4	Klicken Sie auf Umbenennen.

In der Liste Vorhandene Ebenen wird der neue Name anstelle des alten Namens angezeigt.

5	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Ebeneneinstellungen zu schließen.


Ebenen im Objektnavigator umbenennen

So benennen Sie eine Ebene im Objektnavigator um:

1	Wählen Sie das umzubenennende Ebenenobjekt aus.

2	Setzen Sie den Mauszeiger über den Ebenennamen. Der Cursor ändert seine Form von einem Zeiger in einen Texteditor.

3	Klicken Sie einmal auf den Namen, um den Cursor zu positionieren und den Bearbeitenmodus aufzurufen. Wenn Sie den ganzen Namen ersetzen möchten, klicken Sie auf den Namen, um ihn zu markieren, und geben Sie dann den neuen Namen ein.


Ebenen verbergen und anzeigen

So verbergen oder zeigen Sie eine Ebene an:

1	Doppelklicken Sie auf das Ebenenobjekt im Navigator, um das Dialogfeld Layouteinstellungen anzuzeigen.

Alternativ können Sie das Ebenenobjekt im Navigator auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch Werkzeuge [image] Attribute aus dem Menü auswählen.

2	Wählen Sie die Ebene aus der Liste Vorhandene Ebenen aus.

3	Klicken Sie auf Verbergen/Anzeigen.

  Wenn die Ebene verborgen war, wird vor der Ebene ein Pluszeichen (+) angezeigt, mit dem angegeben wird, daß die Ebene jetzt angezeigt wird.

  Wenn die Ebene angezeigt wurde, wird vor der Ebene ein Minuszeichen (-) angezeigt, um anzugeben, daß sie jetzt verborgen ist.

  Sie können jede Ebene verbergen, die angezeigt wird, mit Ausnahme der aktiven Ebene. Um die Ebene zu verbergen, die gerade aktiv ist, müssen Sie zuerst eine andere Ebene aktivieren.

4	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Layouteinstellungen zu schließen.

Sie können eine beliebige Anzahl von Ebenen verbergen oder anzeigen. Sie können die aktive Ebene nicht verbergen. Wenn Sie eine Ebene verbergen möchten, die momentan aktiv ist, müssen Sie zuerst eine andere Ebene aktivieren.


Ebenen mit PL/SQL verbergen und anzeigen

  Verwandte Themen

So verbergen und zeigen Sie Ebenen mit PL/SQL an:

  Benutzen Sie die vordefinierten PL/SQL-Unterprogramme OG_HIDE_LAYER und OG_SHOW_LAYER.

Im ersten Beispiel wird die angegebene Ebene verborgen, während die angegebene Ebene im zweiten Beispiel angezeigt wird:

PROCEDURE make_layer1_invis(the_window) IS
   my_layer   OG_LAYER;
BEGIN
   my_layer:=OG_GET_LAYER('layer1');
   OG_HIDE_LAYER(my_layer, the_window);
END;

PROCEDURE make_layer_visible(the_window) IS
   my_layer   OG_LAYER;
BEGIN
   my_layer:=OG_GET_LAYER('layer1');
   OG_SHOW_LAYER(my_layer, the_window);
END;


Ebenen neu ordnen

So ordnen Sie Ebenen neu:

1	Doppelklicken Sie auf das Ebenenobjekt im Navigator, um das Dialogfeld Ebeneneinstellungen anzuzeigen.

Alternativ können Sie das Ebenenobjekt im Navigator auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch Werkzeuge [image] Attribute aus dem Menü auswählen.

2	Wählen Sie die Ebene, die Sie an einer anderen Stelle einordnen möchten, aus der Liste Vorhandene Ebenen.

3	Wählen Sie Nach oben (eine Ebene nach oben), Nach unten (eine Ebene nach unten), An den Anfang (an den Anfang des Stapels) oder An das Ende (an das Ende des Stapels).

Die Ebene wird an die neue Position in dem Stapel verschoben.

4	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Ebeneneinstellungen zu schließen.


Ebenen löschen

So löschen Sie eine Ebene:

1	Doppelklicken Sie auf das Ebenenobjekt im Navigator, um das Dialogfeld Ebeneneinstellungen anzuzeigen.

Alternativ können Sie das Ebenenobjekt im Navigator auswählen und den Befehl Attribute aus dem Popup-Menü wählen. Sie können aber auch Werkzeuge [image] Attribute aus dem Menü wählen.

2	Wählen Sie die zu löschende Ebene aus der Liste Vorhandene Ebenen.

3	Klicken Sie auf Löschen.

4	Klicken Sie in dem daraufhin angezeigten Warnfenster auf Ja.

Die Ebene wird aus der Liste Vorhandene Ebenen entfernt.

5	Klicken Sie auf OK, um die Änderungen zu bestätigen und das Dialogfeld Ebeneneinstellungen zu schließen.

Die Ebene und die zugehörigen Objekte werden aus der grafischen Anwendung gelöscht. Sie können beliebige, nicht aktive Ebenen löschen, unabhängig davon, ob diese verborgen sind oder angezeigt werden. Wenn Sie eine Ebene löschen, werden ebenfalls alle Objekte auf dieser Ebene gelöscht. Sie können die aktive Ebene nicht löschen. Wenn Sie die aktive Ebene löschen möchten, müssen Sie zuerst eine andere Ebene aktivieren.


Über User Exits

Ein User Exit ist ein Programm, das Sie schreiben und dann in den ausführbaren Graphics Builder-Dateien verknüpfen. Mit User Exits können Sie Ihre 3GL-Programme aus Graphics Builder aufrufen. Generieren Sie User Exits, wenn Sie die Kontrolle von Graphics Builder an ein von Ihnen geschriebenes Programm übergeben möchten, das eine bestimmte Funktion ausführt, und dann die Kontrolle an Graphics Builder zurückgeben möchten.

Mit User Exits können Sie die folgenden Aufgaben ausführen:

•	Daten von Betriebssystem-Textdateien an Graphics Builder übergeben

•	LONG RAW-Daten bearbeiten

•	PL/SQL-Blöcke unterstützen

•	Echtzeitgeräte steuern, wie z.B. einen Drucker oder eine Maschine

Sie können User Exits auch für andere Aufgaben verwenden, wie z.B. mathematische Verarbeitungen. Oracle empfiehlt jedoch, daß Sie derartige Aufgaben mit PL/SQL in Graphics Builder ausführen, weil PL/SQL portierbar ist, während User Exits dies nicht sind.

Hinweis:  Nicht alle Typen von User Exits können alle beschriebenen Aufgaben ausführen. Sie können die meisten dieser Aufgaben nur mit User Exits von ORACLE Precompiler ausführen.


Über User Exits von ORACLE Precompiler

Mit einem User Exit von ORACLE Precompiler wird die ORACLE Precompiler-Oberfläche integriert. Mit dieser Oberfläche können Sie eine Subroutine in einer der Host-Sprachen (Ada, C, COBOL, FORTRAN, Pascal, PL/l) schreiben und SQL-Befehle einbetten. Der User Exit kann auch (über eingebettete SQL-Befehle) auf ORACLE sowie auf Graphics Builder-Parameter zugreifen.

Aufgrund dieser Funktionen werden Sie die meisten User Exits als User Exits von ORACLE Precompiler schreiben. Weitere Informationen über die Oberfläche von ORACLE Precompiler finden Sie im Programmer's Guide to the ORACLE Precompilers.

Sie können auch einen User Exit schreiben, der sowohl die ORACLE Precompiler-Oberfläche als auch die OCI kombiniert.

Hinweis:  Nicht alle Betriebssysteme unterstützen alle aufgeführten Sprachen. Weitere Informationen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.


Über User Exits von OCI (ORACLE Call Interface)

Ein OCI User Exit integriert die ORACLE Call Interface, d.h. die ORACLE-Funktionsschnittstelle. Mit dieser Schnittstelle können Sie ein Unterprogramm schreiben, das Aufrufe von ORACLE enthält.

Ein User Exit, der nur OCI (und nicht die ORACLE Precompiler-Oberfläche) integriert, kann nicht auf Graphics Builder-Parameter zugreifen. Weitere Informationen über OCI finden Sie in Programmer's Guide to the ORACLE Call Interface.

Sie können auch einen User Exit schreiben, der sowohl die ORACLE Precompiler-Oberfläche als auch OCI umfaßt.


Über fremde User Exits

Ein fremder User Exit integriert weder die ORACLE Precompiler-Oberfläche noch OCI. Ein fremder User Exit könnte z.B. vollständig in C geschrieben werden. Per Definition kann ein fremder User Exit nicht auf ORACLE- oder Graphics Builder-Parameter zugreifen.


Über das Schreiben eines User Exit

  Verwandte Themen

In diesem Abschnitt werden die grundlegenden Schritte beim Schreiben eines User Exit von ORACLE Precompiler beschrieben. (Dieser Abschnitt gilt speziell für User Exits von ORACLE Precompiler, weil dies der Typ von User Exit ist, den Sie am häufigsten verwenden. Er kann auf Graphics Builder-Variablen, -Parameter und ORACLE-Datenbankdaten zugreifen und ist der Typ von User Exit, den Oracle Corporation für die meisten Aufgaben empfiehlt.)

Um einen User Exit zu schreiben, müssen Sie folgendes kennen:

•	Unterstützte Funktionen (z.B. wie Graphics Builder Argumente einliest und übergibt und wie Sie Fehler aus dem User Exit auslösen können)

•	Syntax eines übergebenen User Exit-Aufrufs (d.h. wie der Aufruf aussieht, wenn das User Exit-Programm diesen empfängt)

Hinweis:  Hier wird das Schreiben und Implementieren eines User Exit nicht in allen Details beschrieben. Diese Details variieren je nach Betriebssystem, mit dem Sie arbeiten, und der Sprache, in der Sie den User Exit schreiben.


Über die Implementierung von User Exits

Im allgemeinen umfaßt die Implementierung eines User Exit folgende Schritte:

•	Erstellen einer IAPXTB-Tabelle und Einfügen jedes User Exit-Namens in die Tabelle (eine Zeile pro User Exit).

•	Generieren einer Quelldatei aus einer IAPXTB-Tabelle.

•	Kompilieren der IAPXTB-Quelldatei und des geschriebenen Programms und Verknüpfen der Ergebnis-Objektmodule mit G30DES, G30RUN und/oder G30BAT.


User Exits erstellen

So erstellen Sie einen User Exit:

1	Erstellen Sie Ihre grafische Anwendung ohne User Exits.

2	Entscheiden Sie, welche User Exits benötigt werden.

3	Schreiben Sie den User Exit mit einer der Host-Programmiersprachen.

4	Implementieren Sie den User Exit. Dies umfaßt folgende Schritte:

   Erstellen einer IAPXTB-Tabelle und Einfügen jedes User Exit-Namens in die Tabelle (eine Zeile pro User Exit).

  Generieren einer Quelldatei aus der IAPXTB-Tabelle.

  Kompilieren der IAPXTB-Quelldatei und des geschriebenen Programms und Verknüpfen dieser mit G30DES, G30RUN und/oder G30BAT.

5	Erstellen Sie das Graphics Builder-Objekt und den User Exit-Aufruf (gefolgt von den zu übergebenden Argumenten).

Hinweis:  Einige Details der Implementierung von User Exits sind betriebssystem-spezifisch. Weitere Informationen über die genau auszuführenden Schritte finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.


IAPXTB-Tabelle erstellen

So erstellen Sie die IAPXTB-Tabelle:

  Bevor Sie einen User Exit (bei einem beliebigen Betriebssystem) implementieren können, müssen das Programm GENXTB und die Form GENXTB vorhanden sein. In der Graphics Builder-Dokumentation für Ihr Betriebssystem wird beschrieben, wie diese Funktionen verfügbar gemacht werden.

Benutzen Sie das Programm GENXTB, um die IAPXTB-Tabelle zu erstellen, die Basistabelle, die von der Form GENXTB benutzt wird. Weitere Informationen über die Benutzung des Programms GENXTB finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem. Wenn Sie Form Builder nicht haben, erstellen Sie selbst eine IAPXTB-Tabelle mit SQL*Plus. In SQL*Plus User's Guide and Reference wird beschrieben, wie Tabellen erstellt werden.

In der IAPXTB-Tabelle werden alle User Exits aufgelistet, die Sie mit Graphics Builder verknüpfen. Als nächstes wird jede Spalte in der IAPXTB-Tabelle beschrieben:

Spaltenname	Beschreibung	Verwendung

XTB$XNM	NAME	Diese Spalte gibt den Namen des User  Exits an. (Dies ist nicht unbedingt der  Name der Datei, die den User Exit  enthält.) Beachten Sie, daß bei einigen  Hostsprachen die Schreibweise berücksichtigt werden muß.
XTB$XTY	TYPE	In dieser Spalte wird die Sprache  beschrieben, in der der User Exit geschrieben wird.
XTB$REM	REMARKS	In dieser Spalte wird eine Textfolge  angegeben, die den Zweck des User  Exits beschreibt. Die Zeichenfolge kann  maximal 80 Zeichen umfassen.
XTB$CRE	CREATION	In dieser Spalte wird das Datum  angegeben, an dem Sie einen  Datensatz in der Tabelle IAPXTB erstellt  haben. Wenn Sie einen Datensatz  festschreiben, gibt die Form GENXTB einen Wert automatisch in diese Spalte ein.
XTB$MOD	MODIFY	In dieser Spalte wird das Datum  angegeben, an dem Sie zuletzt einen  Datensatz in der IAPXTB-Tabelle  geändert haben. Wenn Sie einen  Datensatz festschreiben, gibt die Form GENXTB automatisch einen Wert in diese Spalte ein.

Die Tabelle muß die Namen aller zu benutzenden User Exits enthalten. Wenn z.B. schon eine Tabelle mit User Exits von Form Builder vorhanden ist, müssen Sie die vordefinierten User Exits von Graphics Builder (es sind noch keine vorhanden) und eventuell neu erstellte User Exits hinzufügen.

Benutzen Sie die Form GENXTB, eine Form Builder-Form, um Beschreibungen der User Exits in die Tabelle IAPXTB einzufügen. Wenn Sie Form Builder nicht haben, benutzen Sie SQL*Plus, um die Zeilen einzufügen (in SQL*Plus User's Guide and Reference wird beschrieben, wie Zeilen in eine Tabelle eingefügt werden).

Sie müssen für jeden User Exit-Namen eine Zeile in die IAPXTB-Tabelle eingeben. (Diese Bedingung gilt für User Exits von ORACLE Precompiler, unabhängig davon, ob ein User Exit in einer Datei steht, die vorkompiliert und ganz alleine oder mit verschiedenen anderen User Exits kompiliert wird.) Außerdem müssen alle Production User Exits für ein System in einer IAPXTB-Tabelle verwaltet werden.

Die Implementierung eines User Exits ist betriebssystem-spezifisch. Weitere Informationen über die auszuführenden Schritte finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

Hinweise:

Sie sollten Textversionen der User Exits in einer separaten IAPXTB-Tabelle speichern, falls die Tabelle versehentlich gelöscht wird.


IAPXTB-Quelldatei generieren

So generieren Sie die IAPXTB-Quelldatei:

  Benutzen Sie das Programm GENXTB, um die Informationen in die Tabelle IAPXTB einzulesen und die Quelldatei zu generieren. Diese Quelldatei ist die Einsprungsdatei, die für die Verknüpfung der User Exits erforderlich ist.

Hinweis:  Der Prozeß der Implementierung eines User Exits ist betriebssystem-spezifisch. Weitere Informationen über die auszuführenden Schritte finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.


Quelldatei und Programm kompilieren

So kompilieren Sie die Quelldatei und das Programm:

  Kompilieren Sie die IAPXTB-Quelldatei und das User Exit-Programm. Weitere Informationen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem. Als nächstes verknüpfen Sie die IAPXTB-Ergebnis-Objektdatei mit den ausführbaren Dateien G30DES, G30RUN und/oder G30BAT.

Hinweis:  Die Implementierung eines User Exits ist betriebssystem-spezifisch. Weitere Informationen über die auszuführenden Schritte finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.


User Exit-Aufrufe schreiben

So schreiben Sie einen User Exit-Aufruf:

Sie können den User Exit von jeder Stelle in Graphics Builder aufrufen, in die Sie PL/SQL eingeben können. Benutzen Sie folgende Syntax:

Syntax:	og_user_exit('user_exit_name [argument_list]');

wobei:

user_exit_name	der Name des User Exits ist, an den Sie die Kontrolle übergeben. Der User Exit-Name kann eine beliebige Länge haben. (Bei einigen Betriebssystemen kann der Name maximal sechs Zeichen umfassen. Fragen Sie Ihren Systemadministrator.)

argument_list	die Namen willkürlicher Parameter enthalten kann, die Sie an den User Exit übergeben möchten. Die Argumentliste kann eine beliebige Länge haben.

Hinweis:  Die obige Syntax muß in eine PL/SQL-Schaltflächen- oder Trigger-Prozedur eingebettet werden.

Beispiele:

Angenommen, Sie haben einen User Exit (mit der Bezeichnung INTEGRAL) geschrieben, der den Bereich unter einer Kurve basierend auf zwei Punkten auf der Kurve berechnet. Weiter angenommen, daß vier Graphics Builder-Parameter (mit der Bezeichnung POINT1X, POINT1Y, POINT2X und POINT2Y) vorhanden sind, deren Werte die x- und y-Koordinaten der beiden Punkte enthalten. Ein User Exit-Aufruf würde wie folgt aussehen:

og_user_exit('integral point1x point1y point2x point2y');

Schließlich angenommen, daß das User Exit-Programm (EXEC TOOLS SET) den berechneten Bereich in einen Graphics Builder-Parameter mit der Bezeichnung AREA zurückgeben soll. Hierzu schreiben Sie einfach den User Exit so, daß der Wert für den Parameter AREA gesetzt wird.

Regeln:

1	Für die Namen von User Exits gelten die Regeln Ihres Betriebssystems und der Hostsprache. Beachten Sie, daß diese Regeln auch Regeln für die Groß-/Kleinschreibung enthalten können.

2	Der User Exit-Name darf maximal 10 Zeichen umfassen (bei einigen Betriebssystemen ist der Grenzwert 6 Zeichen). Die maximale Länge von argument_list beträgt 230 Zeichen. Leerzeichen werden mitgezählt.

Hinweis:  Diese Grenzwerte können betriebssystemabhängig sein. Bitten Sie den Systemadministrator um die genauen Grenzwerte.

3	Argumente dürfen nur durch Leerzeichen voneinander getrennt werden. Wenn zwischen Argumenten in der Argumentliste ein Leerzeichen steht, löscht Graphics Builder zusätzliche Leerstellen, bevor die Zeichenfolge an den User Exit übergeben wird.

Der folgende Aufruf:

'quota 10 20     Q4'

wird z.B. wie folgt an den User Exit übergeben:

'quota 10 20 Q4'

4	Wenn Sie in einer Argumentliste literale doppelte Anführungszeichen referenzieren möchten, benutzen Sie \". Der \ wird gelöscht, bevor das Argument übergeben wird.


Auf User Exit-Fehler in PL/SQL prüfen

So prüfen Sie auf User Exit-Fehler in PL/SQL:

  Benutzen Sie die folgenden Exceptions:

OG_USEREXIT_FAILURE_ERROR

OG_USEREXIT_FATAL_ERROR

Die Exception OG_USEREXIT_FAILURE_ERROR wird ausgelöst, wenn der User Exit FAILURE zurückgibt. Die Exception OG_USEREXIT_FATAL_ERROR wird ausgelöst, wenn der User Exit FATAL zurückgibt.

Beispiel:

Angenommen, Sie möchten bei einem User Exit mit der Bezeichnung MYEXIT prüfen, ob dieser erfolgreich ausgeführt wurde oder nicht. Der User Exit-Aufruf könnte folgendermaßen aussehen:

BEGIN
  og_user_exit('myexit');
EXCEPTION
  WHEN og_userexit_failure_error THEN
    og_quit;
  WHEN og_userexit_fatal_error THEN
    og_quit;
END;


Dateisicherheit und Einschränkungen

  Verwandte Themen

Project Builder benutzt Ihre Betriebssystemumgebung, um die Sicherheit der in Dateien gespeicherten Module festzulegen. Der Erhalt der Zugriffsberechtigung zu Modulen, die in Dateien gespeichert sind, ist betriebssystemabhängig. Weitere Informationen finden Sie in Ihrer Systemdokumentation.


Kennwortschutz

  Verwandte Themen

Der Kennwortschutz wurde in Project Builder R6.0 wesentlich erweitert. In diesem Release werden alle Kennwörter, die in Dialogfeldern oder Statusfeldern angezeigt werden, mit Sternchen dargestellt. Alle in Projektverbindungen gespeicherten Kennwörter sind codiert. So wird z.B. sowohl in dem Statusfeld für die Generieren-Aktion als auch in dem Dialogfeld, das angezeigt wird, wenn Sie eine Aktion im Modus Aktionsvorschau ausführen, das Datenbankkennwort für die Verbindung in Form von Sternchen angezeigt. Wenn Sie ein Projekt exportieren und die Ergebnis-Exportdatei mit einem Texteditor überprüfen, ist das Kennwort codiert.

Projektdateien können auch mit Kennwörtern geschützt werden, damit Benutzer keinen Zugang zu Oracle-Kennwörtern erhalten, wenn sie die Projektdatenbank öffnen. Weitere Informationen finden Sie unter Verwandte Themen.


PJ10

  Verwandte Themen

Benutzen Sie die ausführbare Datei PJ10, um Project Builder aufzurufen. In Project Builder erstellen und verwalten Sie dann Projekte.

Syntax	pj10 {ws-options} {reg_file_name}

wobei

{ws-options}	(Optional)  Optionen, die von Ihrem Fensterverwaltungsprogramm erkannt werden, wie z.B. -bg bei Motif. Weitere Informationen über mögliche Optionen finden Sie in der Beschreibung des Fensterverwaltungssystems.

{reg_file_name}	(Optional)  Name der Benutzerregistrierungsdatei. Standardmäßig die Datei pjuser<lang>.upd.

Hinweis:  Die tatsächliche Aufrufmethode von Project Builder und der Name der ausführbaren Datei sind schließlich plattformabhängig. In dem Hilfeabschnitt mit Plattforminformationen wird beschrieben, wie Sie Project Builder auf Ihrer Plattform starten.


Project Builder-Registrierungsdateien

  Verwandte Themen

Mit Project Builder erhalten Sie zwei Registrierungsdateien:

Name	Datei
types<lang>.upd wobei <lang> die aktuelle Sprache angibt.	Die Globale Registrierungsdatei, die Definitionen aller globalen Typen enthält. Auf diese Datei kann standardmäßig auf Ihrer Plattform global zugegriffen werden. Wenn Sie den Zugriff zu dieser Datei beschränken möchten, muß diese zu einer schreibgeschützten Datei oder einer Datei mit begrenzten Zugriffsberechtigungen gemacht werden.
pjuser<lang>.upd wobei  <lang> die aktuelle Sprache angibt.	Die Standard-Benutzerregistrierungsdatei, in der Ihre persönlichen Projektinformationen gespeichert werden.


Dateibenennungsregeln

  Verwandte Themen

Die folgenden Dateinamenerweiterungen werden Project Builder-Dateien auf Plattformen zugewiesen, bei denen Dateinamenerweiterungen erforderlich sind.

Erweiterung	Dateityp
upd	Die Dateinamenerweiterung für eine Project Builder-Registrierungsdatei.
upx	Die Erweiterung für eine Project Builder-Exportdatei, die beim Exportieren von Projektinformationen mit dem Dialogfeld Optionen exportieren erstellt wird.


 Menü Anordnen

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Anordnen beschrieben.

In den Vordergrund

In den Hintergrund

Eins vor

Eins zurück

Objekte ausrichten

Ausrichtung wiederholen

Skalierung

Skalierung wiederholen

Gruppieren

Gruppe auflösen

Gruppenvorgänge


In den Vordergrund

Verschiebt ein Objekt innerhalb seiner Gruppe (oder Ebene) und setzt es vor jedes andere Objekt in dieser Gruppe (oder Ebene). Das vorderste Objekt wird immer als letztes gezeichnet und überlagert andere Objekte, die denselben Platz im Layout belegen.


In den Hintergrund

Verschiebt ein Objekt innerhalb seiner Gruppe (oder Ebene), indem es hinter jedes andere Objekt in dieser Gruppe (oder Ebene) gesetzt wird. Das hinterste Objekt wird immer zuerst gezeichnet und kann teilweise von Objekten verdeckt werden, die vor ihm stehen und denselben Platz im Layout belegen.


Eins vor

Verschiebt ein Objekt innerhalb seiner Gruppe (oder Ebene), indem es vor das Objekt gesetzt wird, hinter dem es unmittelbar steht. Ein Objekt, das vor einem anderen Objekt steht, wird über diesem gezeichnet und kann dieses teilweise verdecken, wenn die Objekte denselben Platz im Layout belegen.

Möglicherweise müssen Sie ein Objekt mehrmals nach vorne schieben, wenn das Objekt, das das betreffende Objekt im Layout verdeckt, nicht unmittelbar vor diesem Objekt in der Gruppe (oder Ebene) steht.


Eins zurück

Verschiebt ein Objekt innerhalb der Gruppe (oder Ebene), indem es hinter das Objekt gesetzt wird, vor dem es unmittelbar steht. Ein Objekt, das hinter einem anderen Objekt steht, wird hinter diesem gezeichnet und wird möglicherweise teilweise verdeckt, wenn beide Objekte denselben Platz in dem Layout belegen.

Sie müssen ein Objekt möglicherweise mehrmals zurückversetzen, wenn das Objekt, das das betreffende Objekt im Layout verdeckt, nicht unmittelbar hinter dem Objekt in der entsprechenden Gruppe (oder Ebene) steht.


Objekte ausrichten

Positioniert die ausgewählten Objekte in dem Layout relativ zueinander oder richtet sie am Raster aus. Bestimmte Ausrichtungseinstellungen werden zum Standard für die Ausrichtung von Objekten mit dem Menübefehl Ausrichtung wiederholen.

Dialogfeldoptionen

Aneinander

Gibt an, daß die ausgewählten Objekte aneinander ausgerichtet werden sollen.

Am Raster

Gibt an, daß die ausgewählten Objekte an Rasterpunkten ausgerichtet werden sollen. Die Option An Raster ausrichten muß nicht eingeschaltet sein.

Horizontal

Gibt an, wie die ausgewählten Objekte horizontal ausgerichtet werden sollen. Sie können unter folgenden Optionen auswählen:

Keine	Gibt an, daß die Horizontalposition der Objekte nicht verändert wird.

Linksbündig	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die linken Seiten an der linken Seite des linksbündigsten Objekts ausgerichtet werden.

Rechtsbündig	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die rechten Seiten an der rechten Seite des rechtsbündigsten Objekts ausgerichtet werden.

Zentriert	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die horizontalen Mittelpunkte an einer Horizontalposition ausgerichtet werden, die dem Mittelwert aller Mittelpunkte entspricht.

Gleicher Abstand	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß ein gleicher horizontaler Abstand zwischen jedem Objekt besteht, wobei die linksbündigsten und rechtsbündigsten Objekte ihre ursprüngliche Horizontalposition beibehalten.

Stapel	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die linke Seite jedes Objekts an der rechten Seite des Objekts unmittelbar links von ihm ausgerichtet wird, wobei das linksbündigste Objekt seine Originalposition beibehält.

Vertikal

Gibt an, wie die ausgewählten Objekte vertikal ausgerichtet werden sollen. Sie können unter folgenden Optionen auswählen:

Keine	Gibt an, daß die Vertikalposition der Objekte nicht verändert wird.

Oben	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die oberen Ränder am oberen Rand des obersten ausgewählten Objekts ausgerichtet werden.

Unten	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die unteren Ränder am unteren Rand des untersten ausgewählten Objekts ausgerichtet werden.

Zentriert	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß die vertikalen Mittelpunkte an einer Vertikalposition ausgerichtet werden, die dem Mittelwert aller Mittelpunkte entspricht.

Gleicher Abstand	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß ein gleicher Abstand zwischen jedem Objekt vorhanden ist, wobei das oberste und unterste Objekt ihre ursprüngliche vertikale Position beibehalten.

Stapel	Gibt an, daß die ausgewählten Objekte so verschoben werden, daß der obere Rand jedes Objekts am unteren Rand des Objekts direkt darüber ausgerichtet wird, wobei das höchste Objekt seine Originalposition beibehält.


Ausrichtung wiederholen

Richtet die gerade ausgewählten Objekte mit den aktuellen Ausrichtungseinstellungen aus, wie im Dialogfeld Objekte ausrichten angegeben.


Skalierung

Skaliert die ausgewählten Objekte relativ zueinander. Bestimmte Skalierungseinstellungen werden zum Standardwert für die Skalierung von Objekten mit dem Menübefehl Skalierung wiederholen.

Dialogfeldoptionen

Breite

Gibt an, wie die Breite der ausgewählten Objekte geändert werden soll. Sie können unter folgenden Optionen auswählen:

Keine Änderung	Gibt an, daß sich die Breite der Objekte nicht ändert.

Kleinste	Gibt an, daß jedes Objekt so skaliert wird, daß seine Breite der Breite des dünnsten ausgewählten Objekts entspricht.

Größte	Gibt an, daß jedes Objekt so skaliert wird, daß seine Breite der Breite des breitesten ausgewählten Objekts entspricht.

Mittelwert	Gibt an, daß jedes Objekt so skaliert wird, daß seine Breite der durchschnittlichen Breite aller ausgewählten Objekte entspricht.

Benutzerdefiniert	Gibt an, daß jedes Objekt so skaliert wird, daß seine Breite der hier eingegebenen benutzerdefinierten Breite entspricht. Die Maßeinheit für diesen Wert wird mit der Optionsschaltfläche Einheiten angegeben.

Höhe

Gibt an, wie die Höhe der ausgewählten Objekte geändert werden soll. Sie können unter folgenden Optionen auswählen:

Keine Änderung	Gibt an, daß sich die Höhe der Objekte nicht ändert.

Kleinste	Gibt an, daß jedes Objekt so skaliert wird, daß seine Höhe der Höhe des kürzesten ausgewählten Objekts entspricht.

Größte	Gibt an, daß jedes Objekt so skaliert wird, daß seine Höhe der Höhe des größten ausgewählten Objekts entspricht.

Mittelwert	Gibt an, daß jedes Objekt so skaliert wird, daß seine Höhe der durchschnittlichen Höhe aller ausgewählten Objekte entspricht.

Benutzerdefiniert	Gibt an, daß jedes Objekt so skaliert wird, daß seine Höhe der hier eingegebenen benutzerdefinierten Höhe entspricht. Die Maßeinheit für diesen Wert wird mit der Optionsschaltfläche Einheiten angegeben.

Einheiten

Gibt die Einheiten für die benutzerdefinierten Höhen- und Breitenwerte an.


Skalierung wiederholen

Skaliert die gerade ausgewählten Objekte mit der aktuellen Skalierungseinstellung, wie im Dialogfeld Objekte skalieren angegeben.


Gruppieren

Konsolidiert alle ausgewählten Objekte in einem Gruppenobjekt. Die acht Steuerungspunkte des Gruppenobjekts werden sichtbar und geben an, daß es sich jetzt um ein einziges Objekt handelt.


Gruppe auflösen

Löst das ausgewählte Gruppenobjekt auf.

Das ausgewählte Gruppenobjekt ist nicht mehr vorhanden. Alle untergeordneten Objekte, aus denen das Gruppenobjekt bestand, werden im Gruppenbaum eine Ebene nach oben verschoben. Sonst bleiben sie unverändert. Danach belegt jedes untergeordnete Objekt dieselbe Ebene im Gruppenbaum wie das vorher übergeordnete Objekt und wird zum neuen untergeordneten Objekt des früheren überübergeordneten Objekts.


Gruppenvorgänge

Ermöglicht die Kontrolle über das Gruppieren, Auswählen und Ändern von Gruppenobjekten. Mit diesem Befehl wird ein Untermenü angezeigt, in dem Sie den auszuführenden Gruppenvorgang angeben:

Übergeordnetes Objekt auswählen

Untergeordnete Objekte auswählen

Zu Gruppe hinzufügen

Aus Gruppe entfernen


Übergeordnetes Objekt auswählen

Wählt die übergeordnete Gruppe des gerade ausgewählten Objekts aus. Wenn es sich bei dem ausgewählten Objekt nicht um ein Element einer Gruppe handelt (und es demzufolge kein übergeordnetes Objekt hat), kommt es zu einem Fehler.


Untergeordnete Objekte auswählen

Wählt alle untergeordneten Objekte des gerade ausgewählten Gruppenobjekts aus. Wenn dann nur eines der untergeordneten Objekte ausgewählt werden soll, klicken Sie auf dieses Objekt. Wenn das auszuwählende untergeordnete Objekt ein anderes Gruppenobjekt ist, klicken Sie auf eines der zugehörigen untergeordneten Objekte, um dieses auszuwählen. Wenn es sich bei dem ursprünglich ausgewählten Objekt nicht um eine Gruppe handelt (und demzufolge keine untergeordneten Objekte vorhanden sind), kommt es zu einem Fehler.


Zu Gruppe hinzufügen

Macht das gerade ausgewählte einzelne Objekt zu einem untergeordneten Objekt des gerade ausgewählten Gruppenobjekts. Sie müssen mindestens zwei Objekte ausgewählt haben, und eines dieser beiden Objekte muß ein Gruppenobjekt sein. Sonst kommt es zu einem Fehler.


Aus Gruppe entfernen

Entfernt das gerade ausgewählte einzelne oder Gruppenobjekt aus der übergeordneten Gruppe und setzt es im Gruppenbaum eine Ebene nach oben. Danach wird es zu einem gleichrangigen Objekt des früheren übergeordneten Objekts und einem untergeordneten Objekt des früheren überübergeordneten Objekts. Wenn es sich bei dem ausgewählten Objekt nicht um ein Element einer Gruppe handelt (und demzufolge kein übergeordnetes Objekt vorhanden ist), kommt es zu einem Fehler.


 Menü Diagramm

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Diagramm beschrieben:

Diagramm erstellen

Rahmen

Achsen

Feldvorlagen

Referenzlinien

Diagramm aktualisieren

Konvertierung in Grafik


Diagramm erstellen

Erstellt ein Diagramm.

Wenn keine Abfragen vorhanden sind, werden Sie im Dialogfeld Neue Abfrage aufgefordert, eine Abfrage zu erstellen.

Wenn Abfragen vorhanden sind, werden Sie im Dialogfeld Diagramm-Assistent aufgefordert, eine Abfrage zu wählen oder eine neue Abfrage zu erstellen.

Nachdem Sie eine Abfrage angegeben haben, wird das Attributblatt Diagramm angezeigt.


Rahmen

Ändert die Attribute des Rahmens des ausgewählten Diagramms.

Wählen Sie das Register für die gewünschten Optionen:

Register Rahmen

Bestimmt Tiefe-, Schattierung- und Legendeneinstellungen.

Register Achsenrahmen (nur Achsendiagramm)

Bestimmt Basislinien-, Kategoriebreiten- und 2. Y-Achsen-Attribute.

Register Kreisrahmen (nur Kreisdiagramm)

Bestimmt Verwendung von Kreisen, Beschriftungen, Definition des Segments Andere und weitere Attribute.

Register Tabellenrahmen (nur Tabellendiagramm)

Bestimmt Beschriftung, Raster, Anzahl von Zeilen/Spalten und andere Attribute.


Achsen

Ändert die Attribute der ausgewählten Diagrammachsen.

Wählen Sie das Register für die gewünschten Optionen:

Register Achsen

Bestimmt Beschriftungs-, Positions-, Richtungs-, Teilungs-, Raster- und andere Attribute.

Register Werteachse

Bestimmt Maximum, Minimum, Schrittgröße und Maßstab für die Achse.

Register Datumsachse

Bestimmt Maximum, Minimum, Schrittgröße, Beschriftung und andere Attribute.

Register Kategorienachse

Bestimmt Mindest- und Höchstanzahl von Kategorien.


Feldvorlagen

Ändert die Attribute der Feldvorlagen des ausgewählten Diagramms.

Wählen Sie das Register für die gewünschten Optionen:

Register Feld

Bestimmt den Namen der Feldvorlage sowie das Farb-/Muster-Rotationsschema.

Register Achsenfeld

Bestimmt Darstellungsart, Linienstil, Beschriftungsdrehung, Kurventyp und andere Attribute.


Referenzlinien

Ändert die Attribute der Referenzlinien des ausgewählten Diagramms.

Dialogfeldoptionen

Referenzlinien

Wählt die zu ändernde Referenzlinie aus. Alle Referenzlinien, die in der Vorlage des ausgewählten Diagramms vorhanden sind, werden in dieser Liste angezeigt.

Beschriftung der Legende

Dies ist die Textbeschriftung, mit der die Referenzlinie in der Legende gekennzeichnet wird.

Wert

Referenzwert, bei dem die Referenzlinie angezeigt wird.

Achsenzuordnung

Gibt an, mit welcher Achse der Referenzwert verglichen wird, um seine Position zu bestimmen.

Neu

Erstellt eine neue Referenzlinie für die Vorlage des ausgewählten Diagramms.

Löschen

Löscht die Referenzlinie aus der Vorlage des ausgewählten Diagramms.


Diagramm aktualisieren

Erstellt das ausgewählte Diagramm aufgrund der zugehörigen Abfrage und Diagrammvorlage neu, die sich möglicherweise geändert hat, seit das Diagramm das letzte Mal gezeichnet wurde.

Sie können nur dynamische Diagramme aktualisieren. Wenn Sie das Diagramm mit dem Menübefehl Konvertierung in Grafik konvertiert haben, kann es nicht aktualisiert werden.


Konvertierung in Grafik

Ändert ein dynamisches Diagramm, das aktualisiert werden kann, in ein statisches Diagramm, das nicht aktualisiert werden kann.

Sie sollten ein statisches Diagramm genau wie jedes andere Gruppenobjekt behandeln. Sie können die untergeordneten Objekte auswählen, einzelne Objekte bearbeiten usw. Denken Sie jedoch daran, daß das Diagramm nicht mehr aufgrund der Abfrage oder Vorlage aktualisiert werden kann. Im wesentlichen betrachtet Graphics Builder dieses Diagramm nicht mehr als Diagramm.

Ein statisches Diagramm kann nicht in ein dynamisches Diagramm konvertiert werden. Wenn Abfrage und Vorlage des Diagramms noch verfügbar sind, können Sie das Diagramm jedoch erneut erstellen.


 Menü Bearbeiten

In diesem Abschnitt werden die folgenden Menübefehle im Graphics Builder-Menü Bearbeiten beschrieben:

Rückgängig

Ausschneiden

Kopieren

Einfügen

Löschen

Duplizieren

Alles auswählen

Objekt auswählen

Auflösung verringern

Programmblöcke synchronisieren

Suchen/Ersetzen


Rückgängig

Macht den als letztes ausgeführten Vorgang rückgängig. Wenn Sie z.B. versehentlich ein Objekt gelöscht haben, würde dieses mit Rückgängig wiederhergestellt.

Beachten Sie, daß bestimmte Vorgänge (wie z.B. das Speichern einer grafischen Anwendung) nicht rückgängig gemacht werden können. In diesem Fall ist der Menüpunkt Rückgängig inaktiv.

Sie können Rückgängig nicht innerhalb eines Dialogfeldes auswählen. Um Änderungen rückgängig zu machen, die in einem Dialogfeld durchgeführt wurden, klicken Sie auf die Schaltflächen Abbrechen oder Schließen in dem Dialogfeld, ohne die Änderungen zu übernehmen.


Ausschneiden

Löscht die gerade ausgewählten Objekte bzw. Texte und speichert sie in der Zwischenablage. Mit dem Menüpunkt Einfügen können Sie den Inhalt der Zwischenablage an einer beliebigen Stelle in der grafischen Anwendung einfügen.

Bei jedem neuen Ausschneiden-Vorgang wird der Inhalt der Zwischenablage überschrieben. Wenn Sie einen Ausschneiden-Vorgang rückgängig machen, wird der vorherige Inhalt der Zwischenablage nicht wiederhergestellt.


Kopieren

Speichert die gerade ausgewählten Objekte oder Texte in der Zwischenablage, ohne sie zu löschen (wie dies bei Ausschneiden der Fall ist). Danach können Sie den Inhalt der Zwischenablage mit dem Menüpunkt Einfügen an einer beliebigen Stelle in der grafischen Anwendung einfügen.

Bei jedem neuen Kopieren-Vorgang wird der Inhalt der Zwischenablage überschrieben. Ein Kopieren-Vorgang kann nicht rückgängig gemacht werden.


Einfügen

Setzt den Inhalt der Zwischenablage (d.h. die als letztes ausgeschnittenen oder kopierten Objekte und Texte) in das Layout im aktuellen Fenster.

Wenn die Zwischenablage leer ist, oder wenn ein Einfügen-Vorgang nicht durchgeführt werden kann (z.B. kann ein Rechteck nicht in ein Textfeld eingefügt werden), ist der Menüpunkt Einfügen inaktiv.

Ein Einfügen-Vorgang ändert den Inhalt der Zwischenablage nicht. Gegebenenfalls können Sie den Inhalt der Zwischenablage mehrmals einfügen.


Löschen

Löscht die gerade ausgewählten Objekte oder Texte, ohne sie in der Zwischenablage zu speichern (wie dies bei Ausschneiden der Fall ist).

Ein Löschen-Vorgang ändert den Inhalt der Zwischenablage nicht.


Duplizieren

Fertigt eine genaue Kopie des bzw. der ausgewählten Objekte an.

Eine Kopie des bzw. der ausgewählten Objekte wird leicht versetzt von der Position des Originals im Layout angezeigt. Die Auswahl des Originals wird aufgehoben, während die Kopie ausgewählt wird.

Ein Duplizieren-Vorgang ändert den Inhalt der Zwischenablage nicht.


Alles auswählen

Wählt jedes Objekt in dem Layout aus.

Wenn bei Alles auswählen keine Objekte ausgewählt sind, wird jedes Objekt auf der aktiven Ebene des Layouts ausgewählt.

Wenn bei Auswahl dieses Befehls ein Objekt ausgewählt ist, werden alle gleichrangigen Objekte des Objekts im zugehörigen Gruppenbaum ausgewählt.


Objekt auswählen

Wählt ein benanntes grafisches Objekt aus bzw. hebt die Auswahl auf.

Dialogfeldoptionen

Name

Name des Objekts, das ausgewählt bzw. dessen Auswahl aufgehoben werden soll.

Auswählen

Wählt das angegebene Objekt aus.

Auswahl aufheben

Hebt die Auswahl des angegebenen Objekts auf bzw. entfernt es aus der aktuellen Auswahl (sofern möglich).


Auflösung verringern

Verringert die Auflösung des ausgewählten Bildes auf die niedrigste Auflösung, mit der das Objekt noch korrekt in der aktuellen Größe angezeigt werden kann. Graphics Builder verwirft zusätzliche Auflösungsinformationen.

Wenn Sie ein Bild verkleinern, wird standardmäßig die Originalauflösung des Bildes beibehalten. Das kleinere Bild kann jedoch mit einer niedrigeren Auflösung als der des Originals dargestellt werden, ohne daß es zu einem Qualitätsverlust kommt. Wenn Sie die Auflösung eines neu skalierten Bildes verringern, benötigen Sie möglicherweise weniger Platz im Arbeitsspeicher zur Verarbeitung des Bildes und weniger Festplattenspeicher zum Speichern der grafischen Anwendung.

Die Auflösung eines Bildes kann nicht vergrößert werden. Wenn Sie also ein Bild verkleinern, seine Auflösung verringern und das Bild dann wieder in die Originalgröße vergrößern, leidet die Qualität des Bildes.


Programmblöcke synchronisieren

Ersetzt den Status der Programmblöcke in der Designer-Anwendung durch den aktuellen Status der Programmblöcke im Laufzeit-Debugger. Auf diese Weise können Sie die Programmblöcke zur Laufzeit testen, sie so ändern, daß das gewünschte Verhalten erreicht wird, und die Änderungen dann in der Designer-Anwendung integrieren.

Diese Menüoption ist nur bei der Laufzeitsimulation verfügbar.

Warnung: Alle Programmblöcke in der Designer-Anwendung werden durch die entsprechenden Laufzeit-Programmblöcke überschrieben. Designer-Programmblöcke, die während der Laufzeitsimulation gelöscht werden, werden auch in der Designer-Anwendung gelöscht.


Suchen/Ersetzen

Sucht und ersetzt Text in PL/SQL-Programmblöcken. Dieser Befehl ist nur innerhalb eines Programmblockeditors gültig.

Dialogfeldoptionen

Suchen

Text, nach dem in dem Programmblock gesucht werden soll. Um nach einem regulären Ausdruck zu suchen, geben Sie ihn an dieser Stelle ein, und wählen Sie das Kontrollkästchen Regulärer Ausdruck.

Ersetzen durch

Text, durch den der gefundene Text ersetzt werden soll.

Regulärer Ausdruck

Gibt an, ob es sich bei der Suchfolge um einen regulären Ausdruck handelt. Weitere Informationen über reguläre Ausdrücke finden Sie im Procedure Builder Developer's Guide.

Groß-/Kleinschreibung beachten

Findet nur Text, der der genauen Groß- bzw. Kleinschreibung der Suchfolge entspricht.

Suchen

Sucht und hebt das nächste Vorkommen der Suchfolge hervor.

Ersetzen

Ersetzt die aktuelle Auswahl durch die Ersatzfolge und sucht nach dem nächsten Vorkommen der Suchfolge.

Alles ersetzen

Ersetzt jedes Vorkommen der Suchfolge durch die Ersatzfolge, ohne bei jedem Vorkommen zu stoppen und dieses hervorzuheben. Nur Text unterhalb der Cursorposition wird geändert.


 Menü Datei

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Datei beschrieben:

Neu

Öffnen

Schließen

Speichern

Speichern unter

Wiederherstellen

Importieren

Exportieren

Ausführen

Kompilieren

Alles kompilieren

Konsistenz prüfen

Anmelden

Abmelden

Verwaltung

Drucken

Druckereinrichtung

Zuletzt aufgerufene Dateien

Beenden


Neu

Erstellt eine neue grafische Anwendung oder PL/SQL-Bibliothek.

Dieser Menüpunkt enthält das folgende Untermenü:

Grafische Anwendung	Erstellt eine neue grafische Anwendung. Im Objektnavigator wird ein Knoten für die neue grafische Anwendung angezeigt. Außerdem wird der Layouteditor der grafischen Anwendung angezeigt.

Bibliothek	Erstellt eine neue PL/SQL-Bibliothek. Im Objektnavigator wird unter dem Knoten für die geöffneten Bibliotheken ein Knoten für die neue Bibliothek angezeigt.


Öffnen

Ruft eine bestehende grafische Anwendung ab, die in einer Datei oder der Datenbank gespeichert ist.

Es können zwar verschiedene grafische Anwendungen gleichzeitig geöffnet sein, jedoch können nicht mehrere Instanzen einer grafischen Anwendung in derselben Graphics Builder-Sitzung geöffnet sein.

Dialogfeldoptionen

Objektzugriff

Gibt den Pfad der zu öffnenden grafischen Anwendung an. Wenn Sie Datenbank auswählen, wird das Dialogfeld Aus Datenbank öffnen angezeigt. Wenn Sie Dateisystem auswählen, wird das Datei Öffnen-Dialogfeld Ihres Betriebssystems angezeigt.

Grafische Anwendung

Gibt die Art von Dateien oder Modulen an, die angezeigt werden sollen, wenn eine Datei bzw. ein Modul geöffnet wird.


Schließen

Schließt die aktuelle grafische Anwendung.

Wenn die grafische Anwendung nicht gespeichert wurde, nachdem Änderungen vorgenommen wurden, werden Sie in einem Dialogfeld gefragt, ob Sie die Änderungen speichern, die Änderungen verwerfen oder den Schließen-Vorgang abbrechen möchten.


Speichern

Speichert die aktuelle grafische Anwendung in einer Datei oder Datenbank entsprechend den folgenden Regeln:

•	Wenn die grafische Anwendung vorher während der laufenden Sitzung gespeichert wurde, wird sie unter demselben Namen und Pfad wie zuvor gespeichert.

•	Wenn die grafische Anwendung geöffnet, jedoch nicht gespeichert wurde, wird sie unter demselben Namen und Pfad gespeichert, mit dem sie geöffnet wurde.

•	Wenn die grafische Anwendung neu ist und noch nicht gespeichert wurde, wird das Dialogfeld Speichern unter angezeigt, in dem Sie Namen und Pfad der grafischen Anwendung angeben können.


Speichern unter

Speichert die aktuelle grafische Anwendung unter einem neuen Namen und Pfad.

Bei Auswahl dieses Menüpunkts werden die unten aufgeführten Untermenüpunkte angezeigt.

Datenbank

Öffnet das Dialogfeld In Datenbank speichern.

Datei

Zeigt das Datei Speichern-Dialogfeld Ihres Betriebssystems an.

Wenn die grafische Anwendung noch nie gespeichert wurde, wird die grafische Anwendung bei Auswahl von Speichern unter standardmäßig unter dem Namen "Anwx" gespeichert (wobei x eine beliebige Zahl ist). Sonst wird die grafische Anwendung unter dem Namen gespeichert, unter dem sie zuletzt geöffnet oder gespeichert wurde.


Wiederherstellen

Verwirft alle Änderungen, die an der grafischen Anwendung vorgenommen wurden, und stellt diese wieder in dem Zustand her, den sie beim letzten Speichern oder Öffnen hatte.

Für den Befehl Wiederherstellen gelten folgende Regeln:

•	Wenn die grafische Anwendung vorher während der laufenden Sitzung gespeichert wurde, wird sie in dem Zustand wiederhergestellt, den sie beim letzten Speichern hatte.

•	Wenn die grafische Anwendung geöffnet, jedoch nicht gespeichert wurde, wird sie in dem Zustand wiederhergestellt, in dem sie geöffnet wurde.

•	Wenn die grafische Anwendung neu ist und noch nicht gespeichert wurde, werden alle Änderungen verworfen und wird der Ausgangszustand wiederhergestellt.


Importieren

Nimmt ein Modul, das in einer Datei oder der Datenbank gespeichert ist, in der aktuellen grafischen Anwendung auf.

Wählen Sie den Untermenüpunkt für das zu importierende Objekt.

Grafische Anwendung

Integriert eine grafische Anwendung, die in einer Datenbank oder Datei gespeichert ist, in der aktuellen grafischen Anwendung. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Grafische Anwendung importieren angezeigt.

Zeichnung

Setzt eine grafische Zeichnung in das aktuelle Layout. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Importieren angezeigt.

Bild

Setzt ein Bitmap-Bild in das aktuelle Layout. Wenn Sie diesen Befehl wählen, wird das Dialogfeld Bild importieren angezeigt.

Klang

Erstellt einen neuen Klang aus den Klängen, die in der Datenbank oder dem Dateisystem gespeichert sind. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Klang importieren angezeigt.

Text

Setzt Text aus einer Datei in einen PL/SQL-Programmblock-Editor.Wenn Sie diesen Befehl auswählen, wird das Datei Öffnen-Dialogfeld Ihres Betriebssystems angezeigt.

Vorlage

Integriert eine Diagrammvorlage, die in einer Datei oder der Datenbank gespeichert ist, in der aktuellen grafischen Anwendung. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Importieren angezeigt.

Farbpalette

Ersetzt die aktuelle Farbpalette der grafischen Anwendung durch eine neue Farbpalette. Dieser Menüpunkt ist nur aktiviert, wenn für den Farbpalettenmodus der grafischen Anwendung im Dialogfeld Werkzeugoptionen Editierbar angegeben wurde. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Importieren angezeigt.


Exportieren

Speichert ein Modul aus der aktuellen grafischen Anwendung in einer Datei oder der Datenbank.

Als nächstes werden die Menüpunkte des Untermenüs Exportieren beschrieben:

Zeichnung

Speichert den Inhalt der dargestellten Ebenen in einer Datei oder der Datenbank. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Exportieren angezeigt.

Bild

Speichert das ausgewählte Bild in einer Datei oder der Datenbank. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Bild exportieren angezeigt.

Klang

Lädt einen Klang in die aktuelle grafische Anwendung. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Klang exportieren angezeigt.

Text

Setzt Text aus einer Datei in einen PL/SQL-Programmblock-Editor. Wenn Sie diesen Befehl auswählen, wird das Datei Speichern-Dialogfeld Ihres Betriebssystems angezeigt.

Vorlage

Speichert eine Diagrammvorlage aus der aktuellen grafischen Anwendung in einer Datei oder der Datenbank. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Exportieren angezeigt.

Farbpalette

Speichert die Farbpalette der aktuellen grafischen Anwendung in einer Datei oder der Datenbank. Wenn Sie diesen Befehl auswählen, wird das Dialogfeld Exportieren angezeigt.


Ausführen

Führt eine grafische Anwendung im Laufzeitsimulationsmodus aus. In diesem Modus wird die Laufzeitausführung der grafischen Anwendung simuliert und können Sie Fehler in der Logik des PL/SQL-Codes feststellen.

Wenn Sie eine grafische Anwendung ausführen, führt Graphics Builder eine Stapelkompilierung des gesamten enthaltenen PL/SQL-Codes durch. Wenn keine Kompilierungs- oder anderen Fehler gefunden werden, wird das Fenster Hauptlayout der grafischen Anwendung angezeigt.


Kompilieren

Kompiliert alle Programmblöcke in der grafischen Anwendung, die im Augenblick noch nicht kompiliert sind, und zeigt das Dialogfeld Kompilieren an. Programmblöcke, die schon kompiliert wurden, sind nicht betroffen.


Alles kompilieren

Kompiliert alle Programmblöcke in der grafischen Anwendung neu, unabhängig davon, ob sie schon einmal kompiliert wurden, und zeigt das Dialogfeld Kompilieren an. Programmblöcke, die gerade kompiliert werden, werden zuerst invalidiert und dann neu kompiliert.


Konsistenz prüfen

Prüft, ob keine Inkonsistenzen zwischen den verschiedenen Teilen der grafischen Anwendung vorhanden sind. So wird z.B. eine Schaltflächenprozedur, deren Parameterliste versehentlich gelöscht wurde, richtig kompiliert, funktioniert jedoch nicht einwandfrei, wenn die grafische Anwendung ausgeführt wird. Eine Konsistenzprüfung unterrichtet Sie über dieses Problem.

Nach einer Konsistenzprüfung werden eine oder mehrere der folgenden Meldungen angezeigt:

Keine Konsistenzfehler.

Ursache:	Die grafische Anwendung enthält keine Konsistenzfehler.

Maßnahme:	Keine.

 <Trigger_Typ>: Prozedur '<Prozedurname>' nicht gefunden.

Ursache:	Sie haben einen PL/SQL-Programmblock als Trigger benannt, Graphics Builder konnte jedoch keine Prozedur mit diesem Namen finden.

Maßnahme:	Prüfen Sie, ob

•	Sie die im Trigger-Dialogfeld benannte Prozedur definiert und kompiliert haben.

•	Sie den richtigen Namen im Trigger-Dialogfeld und in der Kopfzeile der Prozedur verwendet haben.

•	der Programmblock, den Sie mit dem Trigger verknüpft haben, eine Prozedur (und keine Funktion bzw. kein Paket) ist.

 <Trigger_Typ>: Prozedur '<Prozedurname>' darf keine Parameter haben.

Ursache:	Die PL/SQL-Prozedur, die Sie mit dem Trigger verknüpft haben, erfordert, daß beim Aufruf Argumente an die Prozedur übergeben werden. Da Graphics Builder Trigger-Prozeduren ohne Argumente aufruft, ist dies ungültig.

Maßnahme:	Weisen Sie dem Trigger eine Prozedur zu, die keine Parameter erfordert.

Prozedur '<Prozedurname>', die mit Objekt '<Objektname>' verknüpft ist, ist nicht vorhanden.

Ursache:	Sie haben eine PL/SQL-Schaltlfächenprozedur mit dem Objekt verknüpft, Graphics Builder konnte jedoch keine Prozedur mit diesem Namen finden.

Maßnahme:	Prüfen Sie, ob der Name im Feld Prozedur im Dialogfeld Objektattribute des Objekts mit einer Prozedur übereinstimmt, die definiert wurde.

Programmblock '<PB_Name>', der mit Objekt '<Objektname>' verknüpft ist, ist keine Prozedur.

Ursache:	Der Programmblock, den Sie mit dem Objekt verknüpft haben, ist keine Prozedur. Sie können keine Funktionen oder Pakete mit einem Objekt verknüpfen.

Maßnahme:	Prüfen Sie, ob der Name im Feld Prozedur im Dialogfeld Objektattribute des Objekts der Name einer gültigen Prozedur ist.

Prozedur '<Prozedurname>', die mit Objekt '<Objektname>' verknüpft ist, muß genau 4 Parameter haben.

Ursache:	Die Kopfzeile der PL/SQL-Prozedur, die Sie mit dem Objekt verknüpft haben, enthält nicht die vier Argumente, die für Schaltflächenprozedurren erforderlich sind.

Maßnahme:	Prüfen Sie, ob die Prozedurkopfzeile die vier erforderlichen Argumente enthält.

Prozedur '<Prozedurname>', die mit Objekt '<Objektname>' verknüpft ist, hat inkorrekte Argumenttyp(en).

Ursache:	Die Kopfzeile der PL/SQL-Prozedur, die Sie mit dem Objekt verknüpft haben, enthält ein oder mehrere Argumente, die nicht den richtigen Typ für Schaltflächenprozeduren aufweisen.

Maßnahme:	Prüfen Sie, ob die Prozedurkopfzeile Argumente des richtigen Typs enthält und ob diese in der richtigen Reihenfolge aufgeführt werden.


Anmelden

Mit diesem Befehl melden Sie sich bei einer Datenbank an.

Sie können Eingaben in jedem Textfeld separat machen oder können die folgenden Angaben alle auf einer Zeile im Textfeld Benutzername eingeben:

Benutzername/Kennwort@Datenbank

Sie können auch nur den Benutzernamen und den Namen der Datenbank in das Textfeld Benutzername eingeben und das Kennwort in das Textfeld Kennwort eingeben, so daß es nicht angezeigt wird:

Benutzername@Datenbank

Dialogfeldoptionen

Benutzername

Benutzername des Datenbank-Accounts, bei dem Sie sich anmelden möchten.

Kennwort

Kennwort für das Datenbank-Account.

Datenbank

DB-Adresse, mit der die Datenbank angegeben wird. Wenn Sie sich bei einer entfernten Datenbank anmelden wollen, müssen Sie außerdem die entsprechende SQL*Net DB-Adresse eingeben.


Abmelden

Schließt die aktuelle Datenbankverbindung.


Verwaltung

Mit diesem Befehl können Sie in der Datenbank gespeicherte Module verwalten, eine Laufzeitversion der grafischen Anwendung erstellen und die Versionskontrolle von Dateien verwalten.

Als nächstes werden die Menüpunkte des Untermenüs beschrieben.

Zugriff

Erteilt die Zugriffsberechtigung für ein in der Datenbank gespeichertes Modul bzw. entzieht diese. Nachdem Sie einen Modultyp aus diesem Untermenü ausgewählt haben, wird das Dialogfeld Modulzugriff in Datenbank angezeigt.

Löschen

Löscht ein in der Datenbank gespeichertes Modul. Nachdem Sie einen Modultyp aus diesem Untermenü ausgewählt haben, wird das Dialogfeld Aus Datenbank löschen angezeigt.

Umbenennen

Benennt ein in der Datenbank gespeichertes Modul um. Nachdem Sie einen Modultyp aus diesem Untermenü ausgewählt haben, wird das Dialogfeld Umbenennen angezeigt.

Generieren

Erstellt eine Laufzeitversion der aktuellen grafischen Anwendung. Wenn Sie diese Version in der Datenbank speichern wollen, wird das Dialogfeld In Datenbank speichern angezeigt. Wenn Sie die Laufzeitversion im Dateisystem speichern, wird das Datei Speichern-Dialogfeld Ihres Betriebssystems angezeigt.

Wenn Sie eine grafische Anwendung generieren, werden nicht kompilierte PL/SQL-Programmblöcke automatisch kompiliert. Wenn Kompilierungs- oder andere Fehler auftreten, wird eine Fehlermeldung angezeigt und die Generierung abgebrochen.

Check In

Ruft das Dialogfeld Versionskontrolle: Check-in auf. In diesem Dialogfeld können Sie eine grafische Anwendungsdatei eintragen und archivieren. Dieser Befehl ist nur verfügbar, wenn das Polytron Version Control System (PVCS) installiert ist.

Wenn Sie eine grafische Anwendungsdatei eintragen, führt PVCS automatisch eine Binär-zu-Text-Konvertierung aus und archiviert die Datei in dem angegebenen Pfad als Textdatei.

Siehe auch: Dialogfeld Versionskontrolle: Check In.

Check Out

Ruft das Dialogfeld Versionskontrolle: Check-out auf. In diesem Dialogfeld können Sie eine grafische Anwendungsdatei abrufen, die vorher in ein Versionskontrollarchiv eingetragen wurde. Dieser Befehl ist nur verfügbar, wenn das Polytron Version Control System (PVCS) installiert ist.

Archivierte Dateien werden als Textdateien gespeichert. Wenn Sie eine Datei austragen, wandelt Graphics Builder die Textdatei automatisch in eine Binärdatei (.OGD) um, die im Designer bearbeitet werden kann.

Siehe auch: Dialogfeld Versionskontrolle: Check Out.

Konvertierungsoptionen

Ruft das Dialogfeld Versionskontrolloptionen auf. In diesem Dialogfeld können Sie die Optionen für das Versionskontrollsystem festlegen. Dieser Befehl ist nur verfügbar, wenn das Polytron Version Control System (PVCS) installiert ist.

Siehe auch: Versionskontrolle: Optionen.


Drucken

Druckt das Layout auf dem Standarddrucker aus.

Nur die angezeigten Ebenen werden ausgedruckt.

Bei Auswahl des Menüpunkts Drucken wird bei Ihrem Betriebssystem möglicherweise ein Drucker-Dialogfeld angezeigt. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation.


Druckereinrichtung (Seite einrichten)

Bestimmt Seitengröße, Format und andere ausgabebezogene Einstellungen.

Dieses Dialogfeld ist betriebssystemspezifisch. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation.


Zuletzt aufgerufene Dateien

Listet die vier zuletzt aufgerufenen Dateien in absteigender Reihenfolge auf. Mögliche Dateitypen sind .ogd und .pll. Wenn Sie auf den Dateinamen einer .ogd-Datei doppelklicken, wird diese Datei im Designer geöffnet, während bei Doppelklicken auf den Dateinamen einer .pll-Datei die Bibliothek geladen wird.


Beenden

Beendet die Designer-Sitzung von Graphics Builder.

Alle geöffneten grafischen Anwendungen werden geschlossen, und die Sitzung wird beendet. Wenn grafische Anwendungen geändert wurden, seit sie das letzte Mal gespeichert oder geöffnet wurden, werden Sie gefragt, ob Sie die Änderungen speichern, verwerfen oder den Beenden-Vorgang abbrechen möchten.


 Menü Format

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Format beschrieben:

Schriftart

Zeilenabstand

Ausrichtung

Richtung

Linie

Strichart

Umriß

Pfeil

Symbol

Zeichnenoptionen

Farbpalette

Zahl

Datum


Schriftart

Bestimmt die Schriftart für den ausgewählten Text. Bei einigen Systemen wird für Schriftart ein Untermenü mit einer Liste mit Schriftarten angezeigt, während bei anderen Systemen ein Dialogfeld angezeigt wird.

Die verfügbaren Schriftarten sind systemspezifisch, können jedoch Optionen wie Times, Helvetica und Courier enthalten. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation.

Wenn ein Textobjekt ausgewählt ist, wird die gewählte Schriftart für den gesamten Text in diesem Objekt angewendet. Wenn nur ein Textsegment innerhalb eines Textobjektes ausgewählt ist, wird die gewählte Schriftart nur für dieses Segment angewendet.

Die gewählte Schriftart wird zur Standardschriftart für den gesamten nachfolgend erstellten Text, unabhängig davon, ob bei Auswahl der Schriftart Text ausgewählt war oder nicht.


Zeilenabstand

Mit diesem Befehl wird der Zeilenabstand für ein Textobjekt festgelegt.

Als nächstes werden die einzelnen Menüpunkte beschrieben:

Einfach

Der Zeilenabstand entspricht der Punktgröße des größten Textsegments auf jeder Zeile.

1 1/2

Der Zeilenabstand entspricht der eineinhalbfachen Punktgröße des größten Textsegments auf jeder Zeile.

Doppelt

Der Zeilenabstand entspricht der doppelten Punktgröße des größten Textsegments auf jeder Zeile.

Benutzerdefiniert

Der Zeilenabstand wird vom Benutzer definiert. Wenn Sie diesen Menüpunkt auswählen, wird das Dialogfeld Benutzerdefinierter Abstand wie unten beschrieben angezeigt.

Dialogfeld-Optionen

Wählen Sie eine Größe für den Zeilenabstand, oder wählen Sie Anderer, und geben Sie einen Wert in das entsprechende Textfeld ein.


Ausrichtung

Bestimmt die Ausrichtung von Text innerhalb eines Textobjektes bezogen auf die Umrandung.

Als nächstes werden die Menüpunkte in diesem Untermenü beschrieben:

Links

Richtet die linke Seite jeder Textzeile am linken Rand der Umrandung des Textobjekts aus.

Zentriert

Richtet den Mittelpunkt jeder Textzeile am horizontalen Mittelpunkt der Umrandung des Textobjekts aus.

Rechts

Richtet die rechte Seite jeder Textzeile am rechten Rand der Umrandung des Textobjekts aus.

Anfang

Richtet den Text am Anfangspunkt aus, der von den Ländereinstellungen Ihres Betriebssystems angegeben wird. Im englischen Sprachsystem würde der Text z.B. linksbündig ausgerichtet, während er bei einem arabischen Sprachsystem rechtsbündig ausgerichtet würde.

Ende

Richtet den Text an dem von den Ländereinstellungen Ihres Systems angegebenen Endpunkt aus. Im englischen Sprachsystem würde der Text z.B. am rechten Rand ausgerichtet, während er in einem arabischen Sprachsystem am linken Rand ausgerichtet würde.


Richtung

Bestimmt die Richtung, mit der neuer Text in das Textobjekt eingefügt wird.

Als nächstes werden die Menüpunkte dieses Untermenüs beschrieben:

Standard

Fügt neuen Text in der Richtung ein, die von den Ländereinstellungen Ihres Betriebssystems angegeben wird. Bei einem englischen Sprachsystem würde der Text. z.B. von links nach rechts eingefügt, während er bei einem arabischen Sprachsystem von rechts nach links eingefügt würde.

Von links nach rechts

Fügt neuen Text von links nach rechts ein.

Von rechts nach links

Fügt neuen Text von rechts nach links ein.


Linie

Bestimmt die Linienbreite einer Linie oder eines Objektrandes.

Wählen Sie eine Linienbreite aus dem Untermenü. Wenn Sie Benutzerdefiniert wählen, wird das Dialogfeld Benutzerdefinierte Linienbreite mit den folgenden Optionen angezeigt.

Dialogfeldoptionen

Breite

Bestimmt die Linienbreite.

Einheiten

Bestimmt die Maßeinheit, mit der die Breite angegeben wird.


Strichart

Bestimmt die Strichart für eine Linie oder einen Objektrand.

Wählen Sie die gewünschte Strichart aus dem Untermenü.


Umriß

Bestimmt den Umrißstil für eine Linie oder einen Objektrand.

Wählen Sie den gewünschten Umrißstil aus dem Untermenü.


Pfeil

Bestimmt den Pfeilstil einer Linie.

Wählen Sie den gewünschten Pfeilstil aus dem Untermenü.


Symbol

Bestimmt die Größe eines Symbols.

Wählen Sie die gewünschte Symbolgröße aus dem Untermenü.


Zeichnenoptionen

Bestimmt den Stil und die Optionen für das Zeichnen.

Wählen Sie den Menüpunkt für die gewünschten Optionen:

Allgemein

Bestimmt Linienenden und Verknüpfungsart, das Zeichnen von der Mitte/Ecke aus sowie den Transfermodus.

Bogen

Bestimmt die Bogenfüllung und -begrenzung.

Text

Bestimmt Textanordnung, Umrandung, Zeilenumbruch und andere Optionen.

Abgerundetes Rechteck

Bestimmt den Winkelradius des abgerundeten Rechtecks.

Bild

Bestimmt die Bildqualität und Dithering-Optionen.


Farbpalette

Ändert die in der Farbpalette definierten Farben.

Dieser Menüpunkt ist nur aktiviert, wenn für den Farbpalettenmodus im Dialogfeld Werkzeugoptionen Editierbar angegeben wurde.

Da die Farbpalette mit der grafischen Anwendung gespeichert wird, werden an der Palette vorgenommene Änderungen ebenfalls gespeichert.

Dialogfeldoptionen

Farbe zum Bearbeiten auswählen

Zeigt den Inhalt der aktuellen Farbpalette an. Klicken Sie auf eine Farbzelle, um die darin enthaltene Farbe zu ändern.

Aktuelle Farbe

Name der Farbe, die gerade in der Palette ausgewählt ist. Um den Namen zu ändern, geben Sie einen neuen Namen in dieses Textfeld ein, und wählen Sie Umbenennen.

Bearbeiten

Zeigt ein systemspezifisches Dialogfeld an, in dem Sie die Definition der ausgewählten Farbe ändern können. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation.

Umbenennen

Ändert den Namen der ausgewählten Farbe in den Namen, der im Textfeld Aktuelle Farbe angezeigt wird.


Zahl

Fügt verfügbare Zahlenformatmasken hinzu, wendet diese an bzw. entfernt sie. Sie können eine Formatmaske nur für ein Textobjekt anwenden, bei dem es sich um ein Diagrammelement handelt.

Wenn Sie diesen Menüpunkt auswählen, wird das Dialogfeld Zahlenformat angezeigt.


Datum

Fügt verfügbare Datumsformatmasken hinzu, entfernt diese bzw. wendet sie an. Sie können eine Formatmaske nur für ein Textobjekt anwenden, bei dem es sich um ein Diagrammelement handelt.

Wenn Sie diesen Menüpunkt auswählen, wird das Dialogfeld Datumsformat angezeigt.


 Menü ? (Hilfe)

Das Hilfemenü ist systemspezifisch. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation. Allerdings werden die folgenden Menüpunkte immer angezeigt:

Inhalt

Lernprogramm

Kurzanleitung

Modulinfo

Info Graphics Builder


Inhalt

Ruft das Hilfesystem für Graphics Builder auf. Wenn möglich, benutzt das Hilfesystem die Standard-Hilfeschnittstelle Ihres Betriebssystems. Sonst wird das Oracle-Hilfesystem angezeigt.


Lernprogramm

Ruft das Lernprogramm auf, das Instruktionen zur Durchführung vieler grundlegender Aufgaben von Graphics Builder enthält.


Kurzanleitung

(New topic text goes here.)

Ruft die Kurzanleitung auf, einen Überblick über die Werkzeuge in Graphics Builder und die grundlegenden Schritte beim Generieren von grafischen Anwendungen.


Modulinfo

Zeigt Erstellungs- und Änderungsinformationen für die aktuelle grafische Anwendung an.

Dialogfeldoptionen

Erstellt

Gibt an, wann die grafische Anwendung erstellt wurde, wenn sie in einer Datenbank gespeichert ist.

Von	Benutzername des Benutzers, der die grafische Anwendung zuerst in der Datenbank gespeichert hat.

Datum	Datum, an dem die grafische Anwendung zuerst in der Datenbank gespeichert wurde.

Version	Graphics Builder-Version, mit der die grafische Anwendung erstellt wurde.

Zuletzt geändert

Gibt an, wann die grafische Anwendung zuletzt geändert wurde, wenn diese in der Datenbank gespeichert ist.

Von	Benutzername des Benutzers, der die grafische Anwendung zuletzt in der Datenbank gespeichert hat.

Datum	Datum, an dem die grafische Anwendung zuletzt in der Datenbank gespeichert wurde.

Version	Graphics Builder-Version, mit der die grafische Anwendung zuletzt aktualisiert wurde.

Copyright

Zeigt Copyright-Informationen zu der grafischen Anwendung an. Die Copyright-Informationen sind von Nutzen, wenn Sie die grafische Anwendung an andere Benutzer weitergeben möchten. Sie werden auch in dem Dialogfeld Modulinfo in der Laufzeitversion von Graphics Builder angezeigt. Geben Sie hier den Text ein, der in den Laufzeitversionen der verteilten grafischen Anwendung angezeigt werden soll. Dieses Feld enthält standardmäßig den Inhalt des Feldes Copyright-Hinweis im Dialogfeld Werkzeugoptionen.


Info Graphics Builder

Zeigt Informationen über die ausführbare Graphics Builder-Datei an, einschließlich Versionsnummer und Copyright-Hinweis.


 Menü Navigator

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Navigator beschrieben:

Erstellen

Löschen

Einblenden

Ausblenden

Alles einblenden

Alles ausblenden

Markieren

Gehe zu Markierung

Navigatoroptionen


Erstellen

Erstellt ein neues Objekt, das denselben Typ wie das gerade ausgewählte Objekt oder der übergeordnete Knoten hat.


Löschen

Löscht das gerade ausgewählte Objekt.


Einblenden

Zeigt die unmittelbar untergeordneten Knoten des gerade ausgewählten Knotens an.


Ausblenden

Blendet die unmittelbar untergeordneten Knoten des gerade ausgewählten Knotens aus.


Alles einblenden

Blendet die untergeordneten Knoten des gerade ausgewählten Knotens rekursiv ein.


Alles ausblenden

Blendet die untergeordneten Knoten des gerade ausgewählten Knotens rekursiv aus.


Markieren

Setzt eine Referenzmarke bei dem gerade ausgewählten Knoten. Auf diese Weise können Sie mit anderen Objekten im Objektnavigator arbeiten und dann zu dem markierten Knoten zurückgehen, indem Sie den Menüpunkt Gehe zu Markierung auswählen.


Gehe zu Markierung

Wählt den Knoten aus, der vorher mit dem Menüpunkt Markieren markiert wurde.


Navigatoroptionen

Bestimmt die Optionen, die das Erscheinungsbild der Objekte im Objektnavigator festlegen.

Dialogfeldoptionen

Referenzknoten anzeigen

Zeigt Knoten unter einem Objekt an, die andere Objekte darstellen, auf die das Objekt Bezug nimmt. So enthält ein Diagrammobjekt z.B. einen Abfrage-Knoten, der die Abfrage anzeigt, auf die das Diagramm Bezug nimmt.

Referenzierte Knoten anzeigen

Zeigt Knoten unter einem Objekt an, die Bezugnahmen auf dieses Objekt durch andere Objekte darstellen. So kann ein Abfrageobjekt z.B. angeben, daß von einem Diagramm auf die Abfrage Bezug genommen wird.


Menü Vorlage

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Vorlage beschrieben:

Erstellen

Umbenennen

Löschen

Rahmen

Achsen

Feldvorlagen

Referenzlinien


Erstellen

Erstellt eine neue Diagrammvorlage.

Wenn Sie eine neue grafische Anwendung erstellen, enthält der Diagrammvorlagen-Editor anfänglich keine Diagrammvorlagen. Um die erste Vorlage zu erstellen, können Sie:

•	Vorlage [image] Erstellen wählen wie hier beschrieben.

•	Einen Diagrammtyp aus dem Menü Typ auswählen. In diesem Fall wird automatisch eine neue Diagrammvorlage mit dem Namen "Vorlage0" erstellt.

Nachdem Sie dieses Dialogfeld bestätigt haben, wird die neue Diagrammvorlage im Diagrammvorlagen-Editor angezeigt.

Dialogfeldoptionen

Diagrammtyp

Typ des zu erstellenden Diagramms. Klicken Sie auf ein Symbol, um einen Diagrammtyp auszuwählen.

Name der Vorlage

Name der Vorlage.


Umbenennen

Ändert den Namen der Vorlage, die im Diagrammvorlagen-Editor angezeigt wird.

Dialogfeldoptionen

Name der Vorlage

Neuer Name der Vorlage.


Löschen

Löscht die Vorlage, die im Diagrammvorlagen-Editor angezeigt wird.


Rahmen

Ändert die Attribute des Rahmens der Vorlage, die im Diagrammvorlagen-Editor angezeigt wird.

Wählen Sie das Register für die gewünschten Optionen:

Register Rahmen

Bestimmt Attribute für Tiefe, Schattierung und Legende.

Register Achsenrahmen (nur Achsendiagramm)

Bestimmt Attribute für Basislinie, Kategoriebreite und 2. Y-Achse.

Register Kreisrahmen (nur Kreisdiagramm)

Bestimmt Attribute für Verwendung der Kreise, Beschriftungen, Definition des Segments "Andere" sowie weitere Attribute.

Register Tabellenrahmen (nur Tabellendiagramm)

Bestimmt Attribute für Beschriftung, Raster, Anzahl Zeilen/Spalten und weitere Attribute.


Achsen

Ändert Attribute für die Achsen der Vorlage, die im Diagrammvorlagen-Editor angezeigt wird.

Wählen Sie das Register für die gewünschten Optionen:

Register Achse

Bestimmt Attribute für Beschriftung, Position, Richtung, Teilung, Raster und andere Attribute.

Register Werteachse

Bestimmt Maximum, Minimum, Schrittgröße und Maßstab für die Achse.

Register Datumsachse

Bestimmt Maximum, Mininum, Schrittgröße, Beschriftung und andere Attribute.

Register Kategorienachse

Bestimmt Min. und Max. Anzahl an Kategorien.


Feldvorlagen

Ändert die Attribute der Feldvorlagen für die Diagrammvorlage, die im Diagrammvorlagen-Editor angezeigt wird.

Wählen Sie das Register für die gewünschten Optionen:

Register Feld

Bestimmt den Namen der Feldvorlage und das Farb-/Muster-Rotationsschema.

Register Achsenfeld

Bestimmt Darstellungstyp, Linienstil, Beschriftungsdrehung, Kurventyp und andere Attribute.


Referenzlinien

Ändert Attribute der Referenzlinien der Vorlage, die im Diagrammvorlagen-Editor angezeigt wird.

Dialogfeldoptionen

Referenzlinie

Wählen Sie die zu ändernde Referenzlinie aus. Alle Referenzlinien, die in der aktuellen Vorlage vorhanden sind, werden in dieser Liste angezeigt.

Beschriftung der Legende

Textbeschriftung, die die Referenzlinie in der Legende kennzeichnet.

Wert

Referenzwert, bei dem die Referenzlinie angezeigt wird.

Achsenzuordnung

Gibt an, mit welcher Achse der Referenzwert verglichen wird, um seine Position zu bestimmen.

Neu

Erstellt eine neue Referenzlinie für die aktuelle Vorlage.

Löschen

Löscht die Referenzlinie aus der aktuellen Vorlage.


 Menü Werkzeuge

In diesem Abschnitt werden die Menüpunkte im Graphics Builder-Menü Werkzeuge beschrieben:

Attribute

PL/SQL-Interpreter

Programmblöcke

Gespeicherte Programmblöcke

Datenbank-Trigger

Grafische Anwendung

Ebenen

Parameter

Abfragen

Vorlagen

Timer

Werkzeugoptionen


Attribute

Bestimmt Attribute für das ausgewählte Objekt. Sie können ein Objekt entweder im Layout oder im Objektnavigator auswählen.

Wählen Sie den zu ändernden Objekttyp aus:

Diagramm

Bestimmt Diagrammtyp, Abfrage, Kategorien, Werte und andere Attribute.

Grafische Anwendung

Legt die Open-Display- und Close-Display-Trigger fest und ändert das Parameter-Datumsformat.

Grafikobjekt

Bestimmt Name, Schaltflächenprozedur und Aufgliederungsattribute.

Ebene

Erstellt, löscht, verbirgt, aktiviert, zeigt Ebenen an bzw. benennt Ebenen um.

Parameter

Erstellt und löscht Parameter und bestimmt Name, Datentyp und Ausgangswert.

Abfrage

Erstellt und löscht Abfragen und bestimmt Datenquelle und andere Attribute.

Vorlage

Zeigt den Diagrammvorlagen-Editor an. Erstellt und löscht Diagrammvorlagen und bestimmt Rahmen-, Feldvorlagen-, Achsen- und andere Attribute.

Timer

Erstellt und löscht Timer und bestimmt Timername, Trigger-Prozedur und Zeitintervall.

Optionen


PL/SQL-Interpreter

Zeigt den PL/SQL-Interpreter an, in dem Sie PL/SQL-Programmblöcke ausführen und debuggen. Weitere Informationen finden Sie im Procedure Builder Developer's Guide.


Programmblöcke

Zeigt den Programmblock-Editor an, in dem Sie PL/SQL-Programmblöcke erstellen und bearbeiten. Weitere Informationen finden Sie im Procedure Builder Developer's Guide.


Gespeicherte Programmblöcke

Zeigt den Gespeicherte Programmblöcke-Editor an, in dem Sie PL/SQL-Programmblöcke erstellen und bearbeiten. Weitere Informationen finden Sie im Procedure Builder Developer's Guide.


Datenbank-Trigger

Zeigt den Datenbank-Trigger-Editor an, in dem Sie Datenbank-Trigger erstellen und bearbeiten. Weitere Informationen finden Sie im Procedure Builder Developer's Guide.


Grafische Anwendung

Bestimmt die Open-Display- und Close-Display-Trigger und ändert das Parameter-Datumsformat.

Dialogfeldoptionen

Open-Trigger

Name der PL/SQL-Prozedur, die ausgeführt wird, wenn die grafische Anwendung zur Laufzeit das erste Mal geöffnet wird. Nur Prozeduren, die eine gültige Open-Trigger-Prozedurkopfzeile haben, werden in dieser Liste angezeigt.

Neu

Erstellt einen neuen Open Display-Trigger.

Close-Trigger

Name der PL/SQL-Prozedur, die ausgeführt wird, wenn die grafische Anwendung zur Laufzeit geschlossen wird. Nur Prozeduren, die eine gültige Close-Trigger-Prozedurkopfzeile haben, werden in dieser Liste angezeigt.

Neu

Erstellt einen neuen Close Display-Trigger.

Parameter-Datumsformat

Gibt die Datumsformatmaske an, mit der gültige Werte für Parameter vom Typ DATE erkannt werden.

Auflisten

Zeigt die Datumsformatmasken an, die im Augenblick in der grafischen Anwendung verfügbar sind, und ermöglicht das Hinzufügen oder Löschen von Masken. Wenn Sie diese Schaltfläche auswählen, wird das Dialogfeld Datumsformat angezeigt.

Richtung

Bestimmt die Standardrichtung von Text, Pfeilen usw. bei der bidirektionalen NLS-Unterstützung. Wählen Sie Von links nach rechts, Von rechts nach links oder Standard (wird von der aktuellen Sprache bestimmt).


Ebenen

Erstellt, löscht, verbirgt, aktiviert, zeigt Ebenen an und benennt Ebenen um.

Dialogfeldoptionen

Vorhandene Ebenen

Zeigt die Ebenen an, die in der grafischen Anwendung vorhanden sind. Die Reihenfolge der Ebenen in der Liste bestimmt, wie die Objekte im Layout angezeigt werden. Die Objekte jeder Ebene überlagern die Objekte aller dargestellten Ebenen, die in der Liste unter dieser Ebene stehen.

Neu

Erstellt eine neue, leere Ebene namens"Ebenex" (wobei x eine beliebige Zahl ist).

Löschen

Löscht die in der Liste ausgewählte Ebene. Alle Objekte auf dieser Ebene werden ebenfalls gelöscht.

Verbergen/Anzeigen

Verbirgt die ausgewählte Ebene, wenn sie angezeigt wird, bzw. zeigt sie an, wenn sie verborgen ist. Mit einem '+' neben dem Ebenennamen in der Liste wird angegeben, daß die Ebene angezeigt wird. Mit einem '-' wird angegeben, daß sie verborgen ist. Die aktive Ebene kann nicht verborgen werden.

Aktivieren

Aktiviert die ausgewählte Ebene. Wenn die Ebene verborgen ist, wird sie automatisch angezeigt. Um eine Ebene zu deaktivieren, machen Sie eine andere Ebene zur aktiven Ebene.

Oben/Unten/Anfang/Ende

Verschiebt die ausgewählte Ebene in der Liste eine Stelle nach oben, eine Stelle nach unten, an den Anfang der Liste oder an das Ende der Liste. Die Reihenfolge der Ebenen in der Liste bestimmt, wie die Objekte im Layout angezeigt werden. Die Objekte jeder Ebene überlagern die Objekte aller angezeigten Ebenen, die in der Liste unter dieser Ebene stehen.

Aktive Ebene

Zeigt den Namen der gerade aktiven Ebene an. Es kann immer nur eine Ebene gleichzeitig aktiv sein.

Neuer Name

Neuer Name für die ausgewählte Ebene. Wählen Sie Umbenennen, um die Ebene umzubenennen.

Umbenennen

Benennt die ausgewählte Ebene mit dem Namen um, der im Textfeld Neuer Name angegeben wird.


Parameter

Erstellt und löscht Parameter und legt Name, Datentyp und Ausgangswert fest.

Dialogfeldoptionen

Parameter

Wählt den zu ändernden Parameter aus. Alle Parameter, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Name

Name des Parameters.

Typ

Datentyp des Parameters.

Ausgangswert

Ausgangswert des Parameters, wenn die grafische Anwendung das erste Mal ausgeführt wird. Der hier eingegebene Wert kann durch einen Wert außer Kraft gesetzt werden, der in der Befehlszeile angegeben wird, und Sie können den Wert zur Laufzeit ändern.

Die Länge eines Parameterwerts darf 2000 Byte nicht überschreiten.


Abfragen

Erstellt und löscht Abfragen und bestimmt die Datenquelle sowie weitere Attribute.

Wählen Sie das Register für die festzulegenden Optionen:

Register Abfrage

Bestimmt Namen, Datenquelle und SQL-Anweisung (falls erforderlich) für eine Abfrage.

Register Daten

Zeigt die von der Abfrage zurückgegebenen Daten an.

Register Optionen

Bestimmt die Ausführung und Attribute für das Daten-Caching, Trigger und andere Attribute.

Register Schema (nur benutzerdefinierte Abfragen)

Erstellt und löscht benutzerdefinierte Spalten und bestimmt Namen und Datentyp der benutzerdefinierten Spalten.


Register Abfrage

Bestimmt Namen, Datenquelle und SQL-Anweisung (falls erforderlich) für eine Abfrage.

Registeroptionen

Abfrage

Wählen Sie die zu ändernde Abfrage aus. Alle Abfragen in der grafischen Anwendung werden in dieser Liste angezeigt.

Name

Name der Abfrage.

Typ

Typ der Abfrage. Wählen Sie eine der folgenden Optionen:

SQL-Befehl	Bedeutet, daß die Abfrage Daten aus einer Datenbank aufgrund einer von Ihnen angegebenen SQL SELECT-Anweisung abruft. Geben Sie die SQL-Anweisung in das Textfeld SQL-Befehl ein.

SYLK-Datei	Bedeutet, daß die Abfrage die Daten aus einer Datei im SYLK-Format abruft. SYLK ist ein Format, das von vielen bekannten Anwendungen benutzt wird, wie z.B. Microsoft Excel. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei gelesen. Geben Sie die zu benutzende Datei im Textfeld Datei an.

WKS-Datei	Bedeutet, daß die Abfrage die Daten aus einer Datei im WKS-Format abruft. WKS ist ein Format, das von verschiedenen bekannten Anwendungen benutzt wird, wie z.B. Lotus 1-2-3. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei gelesen. Geben Sie die zu benutzende Datei im Textfeld Datei an.

PRN-Datei	Bedeutet, daß die Abfrage die Daten aus einer Datei im PRN-Format abruft. PRN ist ein Textdateiformat. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei gelesen. Geben Sie die zu benutzende Datei im Textfeld Datei an.

Benutzerdefiniert	Mit dieser Option können Sie die Spalten und Daten für die Abfrage selbst angeben. Um die Spalten festzulegen, verwenden Sie die Steuerelemente, die im Register Schema stehen. Um die Daten festzulegen, benutzen Sie die vordefinierte Prozedur OG_APPEND_ROW.

Externe SQL-Datei	Bedeutet, daß die Abfrage die Daten aus einer Textdatei lädt, die eine SQL SELECT-Anweisung enthält. Wenn Sie die Abfrage ausführen, wird die SQL-Anweisung aus der Datei gelesen und ausgeführt. Geben Sie die zu benutzende Datei im Textfeld Datei an.

Datei

Gibt Pfad und Namen der Datei für eine SYLK-, WKS-, PRN- oder Externe SQL-Abfrage an. Um die Datei in Ihrem Dateisystem zu suchen, klicken Sie auf die Schaltfläche Durchsuchen.

Durchsuchen

Mit dieser Schaltfläche können Sie die Datei suchen und auswählen, die im Textfeld Datei angezeigt werden soll.

SQL-Befehl

Die SQL SELECT-Anweisung, die für eine Abfrage vom Typ SQL-Anweisung ausgeführt wird.

Anmelden

Zeigt das Dialogfeld Anmelden an, mit dem Sie sich bei einer Datenbank anmelden können.

SQL Import

Mit dieser Schaltfläche können Sie den Inhalt einer Textdatei in das Textfeld SQL-Anweisung setzen. Beachten Sie, daß der Text kopiert wird und nicht mit der Datei verknüpft ist. Um eine Verknüpfung zu SQL-Text in einer Datei herzustellen, benutzen Sie eine Abfrage vom Typ Externe SQL-Datei.

SQL Export

Mit dieser Schaltfläche können Sie den Inhalt des Textfeldes SQL-Befehl in eine Datei exportieren.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise verändert.


Register Daten

Zeigt die von der Abfrage zurückgegebenen Daten an. Klicken Sie auf eine Zelle, um den Inhalt in dem Textfeld über der Übersichtstabelle anzuzeigen. Die oberste Zeile der Übersichtstabelle enthält die Spaltennamen und Datentypen.

Registeroptionen

Abfrage

Wählen Sie die zu ändernde Abfrage. Alle Abfragen, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Register Optionen

Bestimmt die Ausführung und die Daten-Caching-Attribute, Trigger und weitere Attribute.

Registeroptionen

Abfrage

Wählen Sie die zu ändernde Abfrage aus. Alle Abfragen in der grafischen Anwendung werden in dieser Liste angezeigt.

Ausführen bei

Gibt an, wann die Abfrage automatisch ausgeführt wird. Wählen Sie unter folgenden Optionen:

Grafische Anwendung öffnen	Führt die Abfrage aus, wenn die grafische Anwendung das erste Mal zur Laufzeit geöffnet wird.

Timer	Führt die Abfrage mit der von einem Timer angegebenen Häufigkeit aus. Wählen Sie einen Timer aus der Dropdown-Liste, oder klicken Sie auf Neu, um einen neuen Timer zu erstellen.

Daten

Bestimmt verschiedene Optionen im Zusammenhang mit den Daten der Abfrage.

Neue Daten	Legt fest, wie die neu abgerufenen Daten von einer Abfrageausführung behandelt werden.

Ersetzen alte Daten bedeutet, daß alle Daten aus der vorherigen Ausführung verworfen und durch die neu abgerufenen Daten ersetzt werden.

Ergänzen alte Daten bedeutet, daß alle bestehenden Datenzeilen beibehalten und die neuen Datenzeilen am Ende der vorhandenen Datengruppe angehängt werden.

Alte Daten speichern	Gibt an, ob vorher abgerufene Daten in einem Spezialpuffer gespeichert werden, wenn sie durch neue Daten ersetzt werden. Danach können Sie auf diesen Puffer mit "alten Daten" zugreifen, indem Sie vordefinierte Routinen wie OG_GET_NUMCELL verwenden. Dieses Attribut ist nur gültig, wenn als Einstellung für Neue Daten der Wert Ersetzen alte Daten ausgewählt wurde.

Maximale Anzahl Zeilen	Gibt die maximale Anzahl von Datenzeilen an, die in der Datengruppe der Abfrage beibehalten werden. Wenn durch das Anhängen von Daten die Anzahl von Zeilen diesen Höchstwert überschreitet, werden überschüssige Zeilen ab dem Anfang der Datengruppe verworfen. Dieses Attribut ist nur gültig, wenn für Neue Daten der Wert Ergänzen alte Daten festgelegt wurde. Außerdem muß das Attribut maxflag für die Abfrage auf TRUE eingestellt sein. Weitere Informationen über die Einstellung des Attributs maxflag finden Sie unter Attribut Marke Max. Anzahl Zeilen.

Datumsformat	Gibt das Format für Datumsdaten aus einer Datei an und bestimmt, wie Datumsangaben im Register Daten angezeigt werden. Wenn die Datumsangaben in der Datei ein anderes Format haben als hier angegeben, erkennt Graphics Builder diese nicht als Datumsangaben.

PL/SQL

Bestimmt verschiedene Optionen im Zusammenhang mit der Benutzung von PL/SQL durch die Abfrage.

Benutzerdefinierte Ausführungsprozedur	(Nur benutzerdefinierte Abfragen) PL/SQL-Prozedur, die aufgerufen wird, wenn eine benutzerdefinierte Abfrage ausgeführt wird. Typischerweise enthält diese Prozedur PL/SQL-Anweisungen, die die Abfrage mit Daten füllen. Nur Prozeduren, für die eine gültige benutzerdefinierte Abfrage-Trigger-Prozedurkopfzeile vorhanden ist, werden in dieser Liste angezeigt.

Klicken Sie auf Neu, um eine neue benutzerdefinierte Abfrageprozedur zu erstellen.

Post-Execution-Trigger	PL/SQL-Prozedur, die nach Ausführung der Abfrage aufgerufen wird. Nur Prozeduren mit einer gültigen Post-Execution-Trigger-Prozedurkopfzeile werden in dieser Liste angezeigt.

Klicken Sie auf Neu, um eine neue Post-Execution-Prozedur zu erstellen.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Register Schema

(Nur benutzerdefinierte Abfragen) Erstellt und löscht Spalten in einer benutzerdefinierten Abfrage und bestimmt den Namen und Datentyp dieser Spalten.

Registeroptionen

Abfrage

Wählen Sie die zu ändernde Abfrage. Alle Abfragen in der grafischen Anwendung werden in dieser Liste angezeigt.

Spalte

Wählen Sie die zu ändernde Spalte. Alle Spalten, die für diese Abfrage definiert wurden, werden in dieser Liste angezeigt.

Name

Spaltenname. Um den Spaltennamen zu ändern, geben Sie hier einen neuen Namen ein, und klicken Sie auf Anwenden.

Typ

Datentyp der Spalte.

Maximale Länge

Die maximale Länge der Daten in der Spalte. Dies gilt nur für Spalten vom Typ CHAR.

Neue Spalte

Fügt eine neue Spalte zu der Abfrage hinzu.

Spalte löschen

Löscht die aktuelle Spalte aus der Abfrage.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Vorlagen

Zeigt den Diagrammvorlagen-Editor an. Erstellt und löscht Diagrammvorlagen und bestimmt Rahmen, Feldvorlage, Achsen und andere Attribute.


Timer

Erstellt und löscht Timer und legt Timername, Triggerprozedur und Zeitintervall fest.

Dialogfeldoptionen

Timer

Wählen Sie den zu ändernden Timer aus. Alle Timer, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Name

Name des Timers.

Prozedur

Die PL/SQL-Prozedur (sofern vorhanden), die ausgeführt wird, wenn der Trigger ausgelöst wird. Nur Prozeduren mit einer gültigen Timer-Trigger-Prozedurkopfzeile werden in dieser Liste angezeigt.

Um eine neue Timer-Prozedur zu erstellen, klicken Sie auf Neu.

Intervall

Der Zeitabstand, der zwischen jedem Auslösen des Timers vergeht.

Aktiv

Gibt an, ob der Timer ausgelöst wird.

Neu

Erstellt einen neuen Timer.

Löschen

Löscht den aktuellen Timer.


Werkzeugoptionen

Ändert verschiedene Graphics Builder-Optionen.

Wählen Sie das Registertab für die gewünschten Optionen:

Register Standardwerte

Legt Copyright-Hinweis, Farbpalette, Zahlen-/Datumsformatlisten und Seitengröße fest.

Register Voreinstellungen

Bestimmt Optionen für das Hochfahren und andere allgemeine Einstellungen.


Register Standardwerte

Bestimmt Copyright-Hinweis, Farbpalette, Zahlen-/Datumsformatlisten und Seitengröße.

Registeroptionen

Copyright-Hinweis

Standardtext, der in dem Dialogfeld Info von neu erstellten grafischen Anwendungen im Feld Copyright angezeigt wird. Diese Einstellung wird mit der nächsten erstellten oder geöffneten grafischen Anwendung wirksam.

Farbpalette

Bestimmt Optionen im Zusammenhang mit der benutzten Farbpalette.

Datei	Name der Datei, die die Farbpalette enthält, die für neu erstellte grafische Anwendungen benutzt werden soll. Wenn dieses Feld leer ist, verwendet Graphics Builder die Standard-Farbpalette. Dieses Feld muß den vollen oder relativen Pfadnamen der Farbpalette enthalten. Diese Einstellung wird mit der als nächstes erstellten oder geöffneten grafischen Anwendung wirksam.

Modus	Bestimmt, wie die Farbpalette einer grafischen Anwendung in Ihrem System implementiert wird. Jedesmal, wenn Sie eine andere grafische Anwendung aktivieren, versucht Graphics Builder, die Farbpalette Ihres Systems so zu ändern, daß sie der Farbpalette der grafischen Anwendung entspricht bzw. dieser so nahe kommt wie möglich. Da Ihr System nur eine begrenzte Anzahl von Farben gleichzeitig verarbeiten kann, kann Graphics Builder möglicherweise nicht mehrere grafische Anwendungen gleichzeitig anzeigen, wenn diese unterschiedliche Farbpaletten verwenden. Diese Einstellung wird mit der als nächstes erstellten oder geöffneten grafischen Anwendung wirksam. Die Liste enthält folgende Optionen:

Editierbar bedeutet, daß Graphics Builder die Farbpalette Ihres Systems vorübergehend durch die Palette der aktiven grafischen Anwendung ersetzt. Wann immer eine neue grafische Anwendung aktiviert wird, ersetzt deren Farbpalette die Systempalette. Die aktive grafische Anwendung wird dann genau angezeigt, allerdings wird das Aussehen der inaktiven grafischen Anwendungen beeinträchtigt. Die Palette muß Editierbar sein, um eine Farbpalette zu ändern oder importieren zu können.

Schreibgeschützt – Gemeinsam genutzt bedeutet, daß Graphics Builder weiter die Farbpalette jeder aktiven grafischen Anwendung an die Originalpalette Ihres Systems anhängt, bis kein Platz mehr in der Palette für weitere Farben ist. Diese Palette wird dann zur einzigen Palette, die alle geöffneten grafischen Anwendungen gemeinsam benutzen. Wenn Sie eine grafische Anwendung erstellen, die vollständig verschiedene Farben benutzt, wird diese möglicherweise nicht genau angezeigt.

Schreibgeschützt – Privat bedeutet, daß Graphics Builder jedesmal, wenn Sie eine grafische Anwendung aktivieren, die Farbpalette dieser Anwendung an die Originalpalette Ihres Systems anhängt, bis kein Platz mehr für weitere Farben in der Palette vorhanden ist. Diese Palette wird benutzt, wann immer diese grafische Anwendung aktiv ist. Die aktive grafische Anwendung wird dann genau dargestellt, während das Aussehen der inaktiven grafischen Anwendungen unter Umständen beeinträchtigt wird.

Formatlisten

Bestimmen Datum und Zahlenformate, die standardmäßig in den Dialogfeldern für Zahlen- und Datumsformate verfügbar sind. Diese Einstellung wird sofort wirksam. Sie können folgende Schaltflächen wählen:

Datum	Bestimmt Datumsformatmasken und zeigt das Dialogfeld Datumsformat an.

Zahl	Bestimmt Zahlenformatmasken und zeigt das Dialogfeld Zahlenformat an.

Seitengröße

Bestimmt Breite, Höhe und Einheiten einer physikalischen Seite, die die Position von Seitenumbrüchen im Layout festlegen. Beachten Sie, daß das Layout größer sein kann als die Seitengröße.

Speichern

Akzeptiert die Optionen und speichert sie in Ihrer Optionendatei.


Register Voreinstellungen

Bestimmt Optionen beim Hochfahren und andere allgemeine Einstellungen.

Registeroptionen

Aufruf

Bestimmt verschiedene Optionen, die das Verhalten von Graphics Builder steuern, wenn Sie das Programm das erste Mal ausführen.

Öffnen	Bestimmt, ob Graphics Builder standardmäßig eine grafische Anwendung öffnet oder erstellt.

Keine grafische Anwendung bedeutet, daß beim ersten Ausführen von Graphics Builder keine grafische Anwendung erstellt oder geöffnet wird.

Neue grafische Anwendung bedeutet, daß Graphics Builder automatisch eine neue grafische Anwendung erstellt und deren Layouteditor anzeigt.

Datei öffnen bedeutet, daß Graphics Builder automatisch das Dialogfeld Filter anzeigt, in dem Sie eine grafische Anwendung aus einer Datei öffnen können.

Bei Aufruf anmelden	Zeigt das Dialogfeld Anmelden an, wenn Sie Graphics Builder das erste Mal ausführen. Wenn Sie sich mit dem ausführbaren Argument USERID bei einer Datenbank anmelden, wird das Dialogfeld Anmelden nicht angezeigt. Diese Einstellung wird wirksam, wenn Sie das nächste Mal eine ausführbare Graphics Builder-Datei ausführen.

Allgemein

Bestimmt allgemeine Optionen.

Klangausgabe

Das Ausgabegerät, das bei der Wiedergabe von Klängen benutzt wird. Die Elemente, die in dieser Liste angezeigt werden, sind systemspezifisch. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation. Diese Einstellung wird sofort wirksam.

Bildkomprimierung

Gibt das Komprimierungsschema an, mit dem alle Bilder in der grafischen Anwendung komprimiert werden, wenn Sie eine grafische Anwendung speichern oder generieren bzw. ein Bild in die Zwischenablage kopieren.

Wenn Sie ein Komprimierungsschema auswählen, das für ein Bild in der grafischen Anwendung nicht zutreffend ist, wird dieses Bild nicht komprimiert. Wenn Sie z.B. PackBits auswählen und eine grafische Anwendung speichern, die ein Farbbild enthält, wird dieses Bild nicht komprimiert. Diese Einstellung wird mit der als nächstes erstellten oder geöffneten grafischen Anwendung wirksam.

Automatische Zeichensatzkonvertierung

Gibt an, ob Graphics Builder den Text einer grafischen Anwendung automatisch in den Zeichensatz konvertiert, der mit der Umgebungsvariablen NLS_LANG angegeben wird, wenn die grafische Anwendung geöffnet wird. Diese Einstellung wird mit der als nächstes erstellten oder geöffneten grafischen Anwendung wirksam.

Zur Laufzeit neu zeichnen

Bestimmt, wie Graphics Builder Teile des Layouts aktualisiert, die von Zeichnenvorgängen betroffen sind. Diese Einstellung wird zur Laufzeit wirksam.

Wenn diese Einstellung ausgeschaltet ist, zeichnet Graphics Builder jedes geänderte Objekt individuell innerhalb eines Veränderungsbereichs.

Wenn diese Einstellung eingeschaltet ist, rendert Graphics Builder jedes der geänderten Objekte zuerst in einen internen Puffer. Wenn das Rendering abgeschlossen ist, wird das Layout mit einem einzigen Zeichnenvorgang aktualisiert.

Mit der Option Zur Laufzeit neu zeichnen wird das Flickern des Layouts beim Aktualisieren wesentlich reduziert. Wenn der Veränderungsbereich jedoch groß ist, belegt der von dieser Option generierte interne Puffer möglicherweise viel Speicherplatz. Es wird empfohlen, daß Sie die Option Zur Laufzeit neu zeichnen eingeschaltet lassen, es sei denn, Sie haben Speicherplatzprobleme.

Sicherungsdatei behalten

Gibt an, ob Graphics Builder eine Sicherungskopie der grafischen Anwendung behält, wenn Sie diese speichern. Die Sicherungsdatei hat denselben Basisnamen wie die Originaldatei, die Dateinamenerweiterung wird jedoch in .bak geändert. Wenn Sie z.B. trends.ogd speichern, hat die Sicherungsdatei den Namen trends.bak.

Navigationsattribute anwenden

Gibt an, ob Änderungen in einem Attributblatt automatisch angewendet werden, wenn Sie die Attribute eines anderen Objekts in diesem Attributblatt anzeigen (z.B. indem Sie ein anderes Objekt aus der Dropdown-Liste des Attributblatts auswählen). Wenn dieses Kontrollkästchen nicht angekreuzt ist, werden Sie gegebenenfalls aufgefordert, ausstehende Änderungen zu speichern.

Attribute der Abfrage bei Ausführung anwenden

Gibt an, ob Änderungen in dem Attributblatt Abfrage automatisch bei der Ausführung der Abfrage angewendet werden. Wenn dieses Kontrollkästchen nicht angekreuzt ist, werden Sie gegebenenfalls aufgefordert, ausstehende Änderungen zu speichern.

Speichern

Akzeptiert die Optionen und speichert sie in Ihrer Optionsdatei.


 Menü Typ

Das Menü Typ enthält vordefinierte Vorlagen für jeden von Graphics Builder unterstützten Diagrammtyp. Diese Vorlagen sollen Ihnen als Ausgangspunkt bei der individuellen Änderung eigener Vorlagen helfen. In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Typ beschrieben:

Säule

Balken

Linie

Gemischt

Kreis

2, Y

Hoch-Tief

Gantt

Punkt

Tabelle


Säule

Zeigt ein Untermenü mit vordefinierten Säulen-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Balken

Zeigt ein Untermenü mit vordefinierten Balken-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Linie

Zeigt ein Untermenü mit vordefinierten Linien-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Gemischt

Zeigt ein Untermenü mit vordefinierten Gemischten Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Kreis

Zeigt ein Untermenü mit vordefinierten Kreis-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


2. Y

Zeigt ein Untermenü mit vordefinierten 2. Y-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Hoch-Tief

Zeigt ein Untermenü mit vordefinierten Hoch-Tief-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Gantt

Zeigt ein Untermenü mit vordefinierten Gantt-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Punkt

Zeigt ein Untermenü mit vordefinierten Punkt-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


Tabelle

Zeigt ein Untermenü mit vordefinierten Tabellen-Diagrammvorlagen an. Wenn eine Vorlage im Editor für Diagrammvorlagen angezeigt wird, werden die Attribute der bestehenden Vorlage durch Auswahl einer vordefinierten Vorlage aus diesem Menü ersetzt. Wenn im Augenblick keine Vorlage vorhanden ist, wird bei Auswahl einer Vorlage aus diesem Menü eine neue Vorlage mit den ausgewählten Standardattributen erstellt.


 Menü Ansicht

In diesem Abschnitt werden die folgenden Menüpunkte des Graphics Builder-Menüs Ansicht beschrieben:

Normale Größe

An Fenster anpassen

Vergrößern

Verkleinern

Formatzeilen

Hilfslinien

Raster

An Raster ausrichten

Seitenumbrüche

Werkzeugpalette

Statusleiste

Optionen


Normale Größe

Stellt das vergrößerte Layout wieder in der normalen Größe dar.


An Fenster anpassen

Paßt die Größe des Layouts so an, daß das ganze Layout im Fenster sichtbar ist.


Vergrößern

Vergrößert das Layout um einen Faktor von 2x.


Verkleinern

Verkleinert das Layout um einen Faktor von 1/2x.


Formatzeilen

Zeigt die Formatzeilen in dem Layout an bzw. verbirgt sie.


Hilfslinien

Zeigt die Hilfslinien im Layout an bzw. verbirgt sie.


Raster

Zeigt das Raster in dem Layout an bzw. verbirgt es.


An Raster ausrichten

Aktiviert oder deaktiviert die Ausrichtung am Raster für das Layout.


Seitenumbrüche

Zeigt die Seitenumbrüche in dem Layout an bzw. verbirgt sie.


Werkzeugpalette

Zeigt die Werkzeugpalette in dem Layout an bzw. verbirgt sie.


Statusleiste

Zeigt die Statusleiste in dem Layout an bzw. verbirgt sie.


Optionen

Ändert Optionen im Zusammenhang mit der Ansicht des Layouts.

Wählen Sie den Menüpunkt aus dem Untermenü für die gewünschten Optionen:

Formatzeile

Bestimmt Formatzeileneinheiten, Rasterabstand und Auflösung für den Rastersprung.

Layout

Bestimmt Layoutgröße und Seitenausrichtung.


Menü Fenster

In diesem Menü werden alle Graphics Builder-Fenster aufgeführt, die gerade geöffnet sind. Außerdem können Sie in diesem Menü ein Fenster auswählen, das aktiviert werden soll.

Das ausgewählte Fenster wird zum aktiven Fenster und wird vor alle anderen Fenster gesetzt. Wenn z.B. der Layouteditor und der Editor für Diagrammvorlagen geöffnet sind und der Layouteditor aktiv ist (vor allen anderen Fenstern steht), können Sie den Editor für Diagrammvorlagen aus dem Menü Fenster auswählen, um ihn zu aktivieren. Weitere Informationen über das Menü Fenster finden Sie in der Betriebssystemdokumentation.


Über OLE

Mit dem Verknüpfen und Einbetten von Objekten (OLE) können Sie die Funktionen von mehreren Anwendungen in einem Dokument kombinieren.

Eine Container-Anwendung ist eine Anwendung, in der die Objekte einer anderen Anwendung angezeigt werden können. So kann Forms z.B. ein Microsoft Excel-Kalkulationsblatt enthalten.

Eine Server-Anwendung ist eine Anwendung, deren Objekte von einem Container angezeigt werden können. So kann z.B. eine grafische Anwendung von Graphics Builder in einer Visual Basic-Form eingebettet sein.

Graphics Builder ist ein OLE-Server. Sie können eine grafische Anwendung von Graphics Builder in einer OLE-Container-Anwendung einbetten. Weitere Informationen finden Sie in der Dokumentation für die Container-Anwendung.


Über OLE-Verben

Mit einem Verb wird der Vorgang angegeben, den eine grafische Anwendung von Graphics Builder ausführt, wenn sie in einem OLE-Container aktiviert wird. Graphics Builder unterstützt die folgenden Verben:

HIDE

OPEN

SHOW

Das PRIMÄRE (d.h. Standard-)Verb ist OPEN.


Über HIDE

Das OLE-Verb HIDE deaktiviert das eingebettete Graphics Builder-Objekt und verbirgt die grafische Anwendung.


Über OPEN

Das OLE-Verb OPEN führt die ausführbare Graphics Builder-Datei aus und lädt die eingebettete grafische Anwendung in die Container-Anwendung.


Über SHOW

Das OLE-Verb SHOW aktiviert das eingebettete Graphics Builder-Objekt und bereitet es zur Zusammenarbeit mit der Container-Anwendung vor.


Über OLE-Automation

Mit der OLE-Automation können Sie eine eingebettete grafische Anwendung in Graphics Builder mit programmatischen Konstrukten aus der Container-Anwendung bearbeiten. Graphics Builder unterstützt verschiedene Methoden für den Zugriff auf die Funktionalität von Graphics Builder. Weitere Informationen über den Aufruf dieser Methoden finden Sie in der Dokumentation für die Container-Anwendung.


ClearQuery

Entfernt alle Daten aus einer Graphics Builder-Abfrage.

Visual Basic-Syntax:

ole.Object.ClearQuery Abfrage_Name

wobei:

ole	das OLE-Objekt ist.

Abfrage_Name	der Name der zu entfernenden Graphics Builder-Abfrage ist.


Connect

Stellt eine Datenbankverbindung für die eingebettete grafische Anwendung von Graphics Builder her.

Visual Basic-Syntax:

ole.Object.Connect DB-Adresse

wobei:

ole	das OLE-Objekt ist.

DB-Adresse	eine gültige Oracle DB-Adresse in Form von Benutzername/Kennwort@entfernter_Server ist.


GetCharParam

Gibt den Zeichenwert eines Graphics Builder-Parameters zurück. Wenn dieser Parameter nicht vom Typ CHAR ist, wird er in CHAR konvertiert, bevor er zurückgegeben wird.

Visual Basic-Syntax:

x = ole.Object.GetCharParam Param_Name

wobei:

ole	das OLE-Objekt ist.

Param_Name	der Name des Parameters in der grafischen Anwendung von Graphics Builder ist.


Interpret

Weist Graphics Builder an, eine beliebige PL/SQL-Folge auszuführen.

Visual Basic-Syntax:

ole.Object.Interpret pls_Folge

wobei:

ole	das OLE-Objekt ist.

pls_Folge	eine beliebige PL/SQL-Folge ist, die erfolgreich von Graphics Builder ausgeführt werden kann.


MouseDown

Signalisiert ein Maustaste-Drücken-Ereignis an die grafische Anwendung von Graphics Builder.

Visual Basic-Syntax:

ole.Object.MouseDown Pos_x Pos_y

wobei:

ole	das OLE-Ojekt ist.

Pos_x	die x-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseDown-Ereignis geliefert.

Pos_y	die y-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseDown-Ereignis geliefert.


MouseMove

Signalisiert eine Mausbewegung an die grafische Anwendung von Graphics Builder.

Visual Basic-Syntax:

ole.Object.MouseMove Pos_x Pos_y

wobei:

ole	das OLE-Objekt ist.

Pos_x	die x-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseMove-Ereignis geliefert.

Pos_y	die y-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseMove-Ereignis geliefert.


MouseUp

Signalisiert ein Maustaste-Loslassen-Ereignis an die grafische Anwendung von Graphics Builder.

Visual Basic-Syntax:

ole.Object.MouseUp Pos_x, Pos_y

wobei:

ole	das OLE-Objekt ist.

Pos_x	die x-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseUp-Ereignis geliefert.

Pos_y	die y-Koordinate der Position des Mausereignisses ist. Diese Information wird z.B. von dem Visual Basic MouseUp-Ereignis geliefert.


SetRow

Hängt eine Datenzeile an eine benutzerdefinierte Abfrage in der eingebetteten grafischen Anwendung von Graphics Builder an.

Visual Basic-Syntax:

ole.Object.SetRow Abfrage_Name, Wert[, Wert...]

wobei:

ole	das OLE-Objekt ist.

Abfrage_Name	der Name der benutzerdefinierten Abfrage ist.

Wert	ein Zeichen oder ein numerischer Datenwert ist. Diese Werte werden zu einer einzelnen Datenzeile kombiniert und dann an der Abfrage angehängt. Wenn Sie z.B. eine benutzerdefinierte Abfrage 'Abfrage0' definieren, die die Spalten ENAME und SAL enthält, würden Sie den folgenden Visual Basic-Befehl verwenden, um eine Zeile mit den Werten 'SCHMIDT' und 2000 anzuhängen:

ole.Object.SetRow "Abfrage0", "SCHMIDT", 2000


Sync

Aktualisiert das Erscheinungsbild des eingebetteten Objektes so, daß es dem aktuellen Status der grafischen Anwendung entspricht.

Visual Basic-Syntax:

ole.Object.Sync

wobei:

ole	das OLE-Objekt ist.


Musterpalette

Um ein Beispiel für jedes Muster in der Palette zusammen mit dem entsprechenden Namen anzuzeigen, klicken Sie auf eines der folgenden Themen unten:

Muster, Teil 1

Muster, Teil 2


Standardfarbpalette

Graphics Builder benutzt die Standardfarbpalette, wenn Sie nicht ausdrücklich eine andere Palette angeben oder importieren.

Die Standardpalette wird auch als Datei geliefert, die Sie in eine grafische Anwendung importieren können. Informationen über den Pfad dieser Datei finden Sie in den Installationsinformationen für Ihr Betriebssystem.

Für die Standardfarbpalette gelten folgende Regeln:

1	Der obere linke Bereich der Palette enthält 16 der gebräuchlichsten Farben mit den folgenden Namen:

schwarz	weiß	grün	dunkelgrün
	grau	dunkelgrau	zyan	dunkelzyan
	rot	dunkelrot	blau	dunkelblau
	gelb	dunkelgelb	magenta	dunkelmagenta
2	Der untere linke Bereich der Palette enthält acht leere Zellen, in die Sie benutzerdefinierte Farben eingeben können.

3	Die nächsten fünf Spalten bestehen aus verschiedenen Grauschattierungen. Jede Farbe hat den Namen 'grau<Wert>' je nach Prozentsatz des Grauwertes. Die Werte reichen von 4 bis 96, in Schritten von jeweils 4. So sind gültige Farbnamen z.B. 'grau96', 'grau92' und 'grau4'.

4	Die restliche Palette enthält Farben, die mit variierenden Prozentsätzen von Rot-, Grün- und Blau-Komponenten (RGB) angegeben werden:

Die Prozentwerte für jede Rot- oder Grün-Komponente sind: 0, 25, 50, 75, 88 oder 100.

Die Prozentwerte für jede Blau-Komponente sind:  0, 50, 75, 88 oder 100.

Jede Farbe hat den Namen 'r<Wert>g<Wert>b<Wert>' je nach RGB-Wert (so hat z.B. eine Farbe, die aus 100% rot, 0% grün und 88% blau zusammengesetzt ist, den Namen 'r100g0b88').

Mit Ausnahme der oben beschriebenen Farbzellen besteht die Palette aus fünf Hauptbereichen mit jeweils 36 Farben in einer 6x6-Anordnung. Für diese Farben gelten folgende Regeln:

Der Rotwert nimmt mit den Farben von links nach rechts in jedem Hauptbereich zu.

Der Grünwert nimmt mit den Farben von oben nach unten innerhalb jedes Hauptbereichs zu.

Der Blauwert nimmt mit den Hauptbereichen von links nach rechts zu, wobei alle Farben in einem einzelnen Bereich denselben Blauwert verwenden.


Graustufen

Die Graustufen-Farbpalette besteht ganz aus variierenden Grauschattierungen. Für sie gelten folgende Regeln:

1	Die ersten beiden Farben haben den Namen 'schwarz' und 'weiß'.

2	Die restliche Palette enthält Farben, die mit variierenden Grauprozentsätzen angegeben werden. Jede Farbe hat den Namen 'grau<Wert>' entsprechend dem jeweiligen Grauwert. Für diese Farben gelten folgende Regeln:

Der Grauwert der ersten Graufarbe (rechts neben 'weiß') ist 100%. Diese Farbe hat den Namen 'grau100'.

Der Grauwert jeder Farbe nimmt mit den Farben von links nach rechts in der Palette (und unter Berücksichtigung des Umbruchs von der rechtsbündigsten Zelle in einer Zeile in die linksbündigste Zelle in der nächsten Zeile) um 0,5 Prozent ab.

Nach 'grau12,5' ist der Grauwert für jede Farbe 0,25 Prozent niedriger als der Wert der Farbe zuvor.

Die Grauwerte nehmen bis zur letzten Farbe in der Palette mit dem Namen 'grau0' ab.


Oracle CDE1

Die Oracle CDE1-Farbpalette war die Standardfarbpalette in Graphics Builder 2.0. Für sie gelten folgende Regeln:

1	Die ersten beiden Spalten in der Palette enthalten:

Allgemein verwendete Farben mit den Namen 'blau', 'magenta', 'rot', 'zyan', 'grün' und 'gelb'

Grauschattierungen mit den Namen 'schwarz', 'grau60', 'grau45', 'grau30', 'grau15' und 'weiß'

2	Die restliche Palette enthält Farben, die mit unterschiedlichen Prozentsätzen von Rot-, Grün- und Blau-Komponenten (RGB) angegeben werden. Der Prozentwert für jede Komponente beläuft sich auf: 0, 40, 55, 70, 85 oder 100.

Jede Farbe hat den Namen 'r<Wert>g<Wert>b<Wert>' entsprechend den jeweiligen RBG-Werten (so hat z.B. eine Farbe, die aus 100% rot, 40% blau und 0% grün zusammengesetzt ist, den Namen 'r100b40g0').

Mit Ausnahme der ersten beiden Spalten besteht die Palette aus sechs Hauptbereichen mit jeweils 36 Farben in einer 6x6-Anordnung. Für diese Farben gelten die folgenden Regeln:

 Der Rotwert nimmt mit den Farben von links nach rechts in jedem Farbbereich zu.

 Der Grünwert nimmt mit den Farben von oben nach unten innerhalb jedes Hauptbereichs zu.

 Der Blauwert nimmt mit den Hauptbereichen von links nach rechts zu, wobei alle Farben in einem einzelnen Bereich denselben Blauwert benutzen.


Muster, Teil 1


Muster, Teil 2


Alphabetische Liste der Objekte

Abfrageattribute

Achsenattribute

Attribute der grafischen Anwendung

Diagrammattribute

Ebenenattribute

Feldvorlagenattribute

Objektattribute

Parameterattribute

Rahmenattribute

Referenzlinienattribute

Timer-Attribute


Achsenattribute

Achsenattribute

Beschriftung, Position, Richtung, Teilung, Raster und andere Attribute.

Werteachsenattribute

Maximum, Minimum, Schrittgröße und Maßstab für die Achse.

Datumsachsenattribute

Maximum, Minimum, Schrittgröße, Beschriftung und andere Attribute.

Kategorienachsenattribute

Min. und Max Anzahl Kategorien.


Achsenattribute

Beschriftung eingeben

Gibt den Text der Beschriftung an, die entlang der Achse angezeigt wird.

Datentyp

Gibt das Verhalten der Daten an, die entlang der Achse angezeigt werden.

Position der Achse

Gibt an, an welchem Rand des Diagramms die Achse angezeigt wird.

Achsenrichtung

Gibt an, in welcher Richtung anwachsende Werte oder aufeinanderfolgende Kategorien entlang der Achse positioniert werden.

Position der Teilungen

Gibt an, wie die Grob- und Feinteilungen angezeigt werden.

Drehung der Teilungsbeschriftung

Gibt den Drehwinkel der Teilungsbeschriftungen an. Hinweis: Einige Systeme unterstützen das Drehen von Text nicht. Weitere Informationen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

Feinteilungen pro Intervall

Anzahl der Feinteilungen, die innerhalb jedes Intervalls der Grobteilungen definiert sind.

Grobteilungen anzeigen

Gibt an, ob Grobteilungen bei jedem Grobintervall angezeigt werden.

Feinteilungen anzeigen

Gibt an, ob Feinteilungen angezeigt werden, wie mit dem Wert für Feinteilungen pro Intervall angegeben.

Grobraster anzeigen

Gibt an, ob bei jeder Grobteilung eine Rasterlinie angezeigt wird.

Feinraster anzeigen

Gibt an ob bei jeder Feinteilung eine Rasterlinie angezeigt wird.

Achsenbeschriftung anzeigen

Gibt an, ob Achsenbeschriftungen zur Kennzeichnung der Werte entlang der Achse angezeigt werden.

Teilungsbeschriftung anzeigen

Gibt an, ob Beschriftungen zur Kennzeichnung der Werte entlang der Achse angezeigt werden.


Werteachsenattribute

Maximum

Der größte Wert, der auf der Achse angezeigt wird.

Schrittgröße

Das Hauptintervall entlang der Achse, bei dem Grobteilungen und Teilungsbeschriftungen angezeigt werden.

Minimum

Der kleinste Wert, der auf der Achse angezeigt wird.

Maßstab

Gibt den Algorithmus für den Maßstab der Achse an.

Linear	Bedeutet, daß die Achse mit einem festen Intervall zwischen den Minimum- und Maximum-Achsenwerten skaliert wird.

Logarithmisch	Bedeutet, daß die Achse mit einem logarithmischen Algorithmus (Zehnerpotenz) skaliert wird, um die Intervalle zwischen den Minimum- und Maximum-Achsenwerten zu bestimmen.

Prozent von	Bedeutet, daß die Achse so skaliert wird, daß Datenwerte bezogen auf einen der folgenden Beträge dargestellt werden:

Summe	Bedeutet, daß jeder Datenwert als Prozentsatz der Summe aller Datenwerte dargestellt wird.

Minimum	Bedeutet, daß jeder Datenwert als Prozentsatz des kleinsten Datenwertes dargestellt wird.

Maximum	Bedeutet, daß jeder Datenwert als Prozentsatz des größten Datenwertes dargestellt wird.

Hinweis: Der Maßstab Prozent von ist bei einer Werteachse nicht anwendbar, die auch unabhängig ist (z.B. bei einem Punktdiagramm).

Wenn Sie Prozent von auswählen, müssen Sie außerdem angeben, wie die Vergleichswerte berechnet werden:

Feld	Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten für dasselbe Feld in anderen Kategorien berechnet wird. So wird z.B. das Gehalt von SCHMIDT im Vergleich zu den Gehältern aller anderen Mitarbeiter dargestellt.

Kategorie	Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten in derselben Kategorie für andere Felder dargestellt wird (diese Option hat nur einen Sinn, wenn mehr als ein Feld für eine Kategorie dargestellt wird). So werden z.B. das Gehalt und die Provision von SCHMIDT im Vergleich zueinander, jedoch nicht im Vergleich zu anderen Mitarbeitern dargestellt.


Datumsachsenattribute

Maximum

Der größte Wert, der auf der Achse angezeigt wird.

Schrittgröße

Bestimmt den Abstand, in dem eine unabhängige Datumsachse in Kategorien unterteilt wird. Die Schrittgröße wird in die Haupteinheit unterteilt, die mit der Einstellung für Beschriftungen angegeben wird, woraus sich die Anzahl von Kategorien ergibt, die zwischen den Teilungen dargestellt werden.

Minimum

Der kleinste Wert, der auf der Achse angezeigt wird.

Erster Monat

Der Monat, der als Jahresbeginn betrachtet wird.

Wochenenden überspringen

Gibt an, ob beim Berechnen der Achsenwerte die Wochenenden übersprungen werden.

Beschriftungen

Gibt das Grobintervall entlang der Achse an, bei dem Grobteilungen und Teilungsbeschriftungen angezeigt werden, sowie das Format der Beschriftungen. Beschriftungseinstellungen für Einheiten, die kleiner sind als die mit Schrittgröße angegebenen Einheiten, werden ignoriert.

Benutzerdefiniert	Sie müssen ein benutzerdefiniertes Datumsformat in das entsprechende Textfeld eingeben. Wenn die kleinste in diesem Datumsformat benutzte Einheit kleiner ist als eine der angekreuzten Einheiten, verhält sich Graphics Builder so, als hätten Sie diese Einheit angekreuzt. Für Informationen über gültige Datumsformate wird auf Oracle7 Server SQL Language Reference Manual verwiesen.


Kategorienachsenattribute

Min. Anzahl Kategorien

Die Mindestanzahl an Kategorien, die in dem Diagramm dargestellt werden. Wenn die tatsächliche Anzahl von Kategorien kleiner ist als die hier angegebene Zahl, wird in dem Diagramm Platz für die Aufnahme der angegebenen Mindestanzahl von Kategorien gelassen.

Max. Anzahl Kategorien

Maximale Anzahl an Kategorien, die in dem Diagramm dargestellt werden. Nachdem die maximale Anzahl an Kategorien dargestellt wurde, werden eventuell verbleibende Daten ignoriert.


Diagrammattribute

Diagrammattribute

Name, Titel und Diagrammtyp sowie Vorlagenattribute.

Datenattribute (Diagramm)

Abfrage, Filter, Datenbereich und andere Attribute.

Kategorienattribute

Abfragespalten, die als Kategorien in dem Diagramm angezeigt werden.

Werteattribute

Abfragespalten, die als Werte in dem Diagramm angezeigt werden.

PL/SQL-Attribute

Einstellungen für PL/SQL-Schaltflächenprozeduren.


Diagrammattribute

Name

Der Name des Diagramms. Sie müssen den Namen des Diagramms benutzen, um in den PL/SQL-Programmblöcken Bezug auf das Diagramm nehmen zu können. Wenn Sie nicht programmatisch auf das Diagramm Bezug nehmen möchten, ist die Benennung nicht erforderlich.

Titel

Der Titel des Diagramms. Standardmäßig wird der Titel über dem Diagramm angezeigt. Gegebenenfalls können Sie ihn an eine andere Stelle ziehen.

Typ

Basis-Diagrammtyp.

Subtyp

Variante des Diagrammtyps. Jede Variante basiert auf dem angegebenen Diagrammtyp, wobei verschiedene Attribute festgelegt werden, um unterschiedliche Effekte zu erzeugen.

Vorlage

Diagrammvorlage, auf der das Diagramm beruht. Eine neue Vorlage wird automatisch erstellt, wenn Sie ein neues Diagramm erstellen. Um ein Diagramm auf einer bestehenden Vorlage aufzubauen, wählen Sie es aus dieser Liste aus.


Datenattribute (Diagramm)

Abfrage

Die Abfrage, die die Daten für das Diagramm liefert.

Beachten Sie, daß Graphics Builder das Diagramm mit den zuletzt abgerufenen Daten für die ausgewählte Abfrage erstellt. Um neuere Daten zu benutzen, führen Sie die Abfrage erneut aus.

Diagramm nach Ausführen der Abfrage aktualisieren

Gibt an, daß das Diagramm automatisch nach Ausführung der Abfrage aktualisiert wird. Sie können auch die vordefinierte Prozedur OG_UPDATE_CHART verwenden, um das Diagramm programmatisch zu aktualisieren.

Filterfunktion

Die PL/SQL-Funktion, mit der die von der Abfrage gelieferten Daten gefiltert werden. Nur Datenzeilen, für die diese Funktion den Wert TRUE zurückgibt, werden in dem Diagramm angezeigt. In dieser Liste werden nur Funktionen angezeigt, die eine gültige Filter-Trigger-Funktionskopfzeile haben.

Abbildungsart

Bestimmt das Layout des Registers Werte. Die verfügbaren Auswahlen hängen vom Diagrammtyp ab.

Allgemein	Ermöglicht die Angabe einer einfachen Werteliste.

Gantt	Ermöglicht die Angabe von Spalten, die als "Anfangs"- und "End"-Werte angezeigt werden.

Hoch-Tief	Ermöglicht die Angabe von Spalten, die als "Hoch"-, "Schluß"- und "Tief"-Werte angezeigt werden.

Datenbereich

Gibt an, welche Datenzeilen aus der Diagrammabfrage in dem Diagramm dargestellt werden.

Alle Zeilen	Stellt alle Zeilen der Abfrage in dem Diagramm dar.

Zeilen darstellen	Zeigt nur die Datenzeilen an, die in den angegebenen Bereich fallen.


Kategorienattribute

Spalten der Abfrage

Zeigt die Spalten aus der Diagrammabfrage an, die als Diagrammkategorien benutzt werden können.

Diagrammkategorien

Zeigt die Spalten an, die als Diagrammkategorien dargestellt werden.

Unterkategorie

Gibt die Abfragespalte an, die als Unterkategorie in einem Gruppenwechseldiagramm benutzt wird.

Einfügen

Fügt die ausgewählte Spalte zu der Liste mit Kategorien hinzu.

Löschen

Löscht die ausgewählte Spalte aus der Liste mit Kategorien.

Anfang

Setzt die ausgewählte Spalte an den Anfang der Kategorienliste, damit sie zuerst dargestellt wird.

Ende

Setzt die ausgewählte Spalte an das Ende der Kategorienliste, damit sie zuletzt dargestellt wird.

Oben

Setzt die ausgewählte Spalte in der Kategorienliste eine Position nach oben, damit sie früher dargestellt wird.

Unten

Setzt die ausgewählte Spalte in der Kategorienliste eine Position nach unten, damit sie später dargestellt wird.


Werteattribute

Spalten der Abfrage

Zeigt die Spalten aus der Diagrammabfrage an, die als Diagrammwerte benutzt werden können.

Diagrammwerte

(Allgemeiner Abbildungsart) Zeigt die Spalten an, die als Diagrammwerte dargestellt werden.

Feldvorlage

(Allgemeiner Abbildungsart) Gibt die Feldvorlage an, mit der das Erscheinungsbild der ausgewählten Spalte bestimmt wird.

Anfang

(Gantt-Abbildungsart) Gibt die Spalte an, deren Daten als Anfangswert dargestellt werden.

Ende

(Gantt-Abbildungsart) Gibt die Spalte an, deren Daten als Endwert dargestellt werden.

Hoch

(Hoch-Tief-Abbildungsart) Gibt die Spalte an, deren Daten als Hoch-Wert dargestellt werden.

Schluß

(Hoch-Tief-Abbildungsart) Gibt die Spalte an, deren Daten als Schluß-Wert dargestellt werden.

Tief

(Hoch-Tief-Abbildungsart) Gibt die Spalte an, deren Daten als Tief-Wert dargestellt werden.


PL/SQL-Attribute

Prozedur

Name der PL/SQL-Schaltflächenprozedur, die mit dem Diagramm verknüpft ist. Diese Prozedur wird ausgeführt, wenn ein angegebenes "Mausereignis", das im Zusammenhang mit dem Diagramm steht, entdeckt wird. Nur Prozeduren, die eine gültige Schaltflächen-Trigger-Prozedurkopfzeile haben, werden in dieser Liste angezeigt.

Ereignisarten

Gibt an, welches "Mausereignis" die angegebene Schaltflächenprozedur aufruft.

Maustaste drücken	Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maustaste geklickt wird.

Maustaste loslassen	Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maustaste losgelassen wird.

Bewegung mit gedrückter Maustaste	Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maus bewegt wird, während die Maustaste gedrückt gehalten wird.


Attribute von grafischen Anwendungen

Setzt die Open Display- und Close Display- Trigger und ändert das Parameter-Datumsformat.

Open-Trigger

Name der PL/SQL-Prozedur, die ausgeführt wird, wenn die grafische Anwendung zur Laufzeit das erste Mal geöffnet wird. Nur Prozeduren, die eine gültige Open-Trigger-Prozedurkopfzeile haben, werden in dieser Liste angezeigt.

Neu

Erstellt einen neuen Open Display-Trigger.

Close-Trigger

Name der PL/SQL-Prozedur, die ausgeführt wird, wenn die grafische Anwendung zur Laufzeit geschlossen wird. Nur Prozeduren mit einer gültigen Close-Trigger-Prozedurkopfzeile werden in dieser Liste angezeigt.

Neu

Erstellt einen neuen Close Display-Trigger.

Parameter-Datumsformat

Gibt die Datumsformatmaske an, mit der gültige Werte für Parameter vom Typ DATE erkannt werden.

Auflisten

Zeigt die Datumsformatmasken an, die gerade in der grafischen Anwendung verfügbar sind, und ermöglicht das Hinzufügen oder Löschen von Masken. Wenn diese Schaltfläche ausgewählt wird, wird das Dialogfeld Datumsformat angezeigt.

Richtung

Bestimmt die Standardrichtung von Text, Pfeilen usw. bei der bidirektionalen NLS-Unterstützung. Wählen Sie Von links nach rechts, Von rechts nach links oder Standard (wird von der aktuellen Sprache bestimmt).


Feldvorlagenattribute

Feldattribute

Feldvorlagenname und Farb-/Muster-Drehschema.

Achsenfeldattribute

Darstellungstyp, Linienstil, Beschriftungsdrehung, Kurventyp und andere Einstellungen.


Feldattribute

Name

Der Name der Feldvorlage.

Farbrotation

Gibt an, ob Graphics Builder automatisch durch die Farb- oder Musterpalette rotiert, um eine eindeutige Schattierung für jedes Feld auszuwählen, das diese Feldvorlage benutzt. Wenn nicht, werden alle Felder, die diese Feldvorlage verwenden, mit derselben Schattierung angezeigt.


Achsenfeldattribute

Darstellungstyp

Gibt die Elemente an, die zur Darstellung dieses Feldes in dem Diagramm verwendet werden.

Balken	Bedeutet, daß jeder Datenwert für das Feld als Balken dargestellt wird, der entlang der Werteachse von der Basislinie bis zu dem entsprechenden Wert reicht.

Linie	Bedeutet, daß Datenwerte für das Feld als Linien dargestellt werden, die die Werte für jede Kategorie verbinden.

Füllung	Bedeutet, daß die Datenwerte für das Feld als ausgefüllter Bereich dargestellt werden, dessen Umgrenzungen die Basislinie, die Ränder des Diagramms und eine Linie sind, die die Werte für jede Kategorie verbindet.

Symbol  	Bedeutet, daß jeder Datenwert für das Feld als Symbol bei dem entsprechenden Datenpunkt dargestellt wird. Um ein benutzerdefiniertes Symbol auszuwählen, wählen Sie eines der Symbole der Vorlage, und wählen Sie ein neues Symbol aus der Symbolpalette.

Mittellinie	Bedeutet, daß jeder Datenwert für das Feld als gerade Linie dargestellt wird, die die Basislinie mit dem Datenpunkt verbindet.

Beschriftung	Bedeutet, daß jeder Datenwert für das Feld als Textbeschriftung dargestellt wird, die den entsprechenden Wert enthält.

Linienart

Gibt die Linienart an, mit der die Datenpunkte eines Feldes durch eine Linie verbunden werden.

Drehung der Beschriftung

Gibt den Drehwinkel der Beschriftungen für ein Feld mit der Darstellungsart Beschriftung an.

Achsenzuordnung

Gibt die Achse an, mit der die Datenwerte verglichen werden, um festzulegen, wie das Feld dargestellt wird.

Kurventyp

Gibt an, ob eine Kurve für das Diagramm angewendet wird, und wenn ja, welcher Algorithmus benutzt wird.

Graphics Builder berechnet die Kurve mit der Näherungsmethode der kleinsten Quadrate, anders ausgedrückt, Graphics Builder versucht, die Werte a und b für die Gleichungen zu ermitteln, die unten aufgeführt werden, wobei die Summe der Quadrate der Differenz zwischen den Werten der Kurve und den tatsächlichen Datenwerten minimiert wird. Die Kurve für jeden Kurventyp wird wie unten aufgeführt definiert:

Linear	Bedeutet, daß die Kurve mit folgender Gleichung definiert wird:

y = ax + b.

Logarithmisch	Bedeutet, daß die Kurve mit folgender Gleichung definiert wird:

y = a(log x) + b.

Exponentiell	Bedeutet, daß die Kurve mit folgender Gleichung definiert wird:

(log y) = ax + b.

Potenz	Bedeutet, daß die Kurve mit folgender Gleichung definiert wird:

(log y) = a(log x) + b.

Position der Darstellung

Gibt für jede Kategorie die Beziehung zwischen den Datenwerten von zwei oder mehr Feldern an.

Normal	Bedeutet, daß Datenwerte aus mehreren Feldern normal dargestellt werden und daß der Platz für die Darstellung der Kategoriedaten gleichmäßig aufgeteilt wird.

Aus vorherigem Feld	Bedeutet, daß Datenwerte aus mehreren Feldern übereinander gestapelt werden, wobei jedes Diagrammelement (d.h. Balken, Linie usw.) ab dem Endpunkt des vorherigen Elements bis zum neuen Datenpunkt gezeichnet wird.

Gestapelt	Bedeutet, daß Datenwerte aus mehreren Feldern übereinander gestapelt werden und denselben Platz für die Darstellung der Kategoriedaten teilen. Die Position jedes Datenpunktes wird bestimmt, indem der Wert zu dem vorherigen Wert addiert wird.

Überlappend

Gibt den Prozentsatz an, mit dem sich Balken, die Datenwerte aus mehreren Feldern darstellen, in einem Balken- oder Säulendiagramm überlappen.


Rahmenattribute

Rahmenattribute

Tiefe, Schattierung und Legendeneinstellungen.

Achsenrahmenattribute

Basislinie, Kategoriebreite und Einstellungen für 2. Y-Achse.

Kreisrahmenattribute

Verwendung des Kreises, Beschriftungen, Definition des Segments "Andere" und weitere Einstellungen.

Tabellenrahmenattribute

Beschriftung, Raster, Anzahl Zeilen/Spalten und andere Einstellungen.


Rahmenattribute

Tiefe

Gibt die Tiefe an, mit der der Diagrammrahmen und die Diagrammelemente gezeichnet werden, um ihnen ein dreidimensionales Aussehen zu geben.

Schattentiefe

Bestimmt die Größe des Schattens, mit dem der Diagrammrahmen und die Diagrammelemente gezeichnet werden.

Schattenrichtung

Gibt die Richtung des Schattens an, mit dem der Diagrammrahmen und die Diagrammelemente gezeichnet werden.

Darstellungsrahmen anzeigen

Gibt an, ob das Rechteck, das das Diagramm umgibt, dargestellt werden soll. (Gilt bei Kreisdiagrammen nicht.)

Legende anzeigen

Gibt an, ob die Diagrammlegende angezeigt werden soll. (Gilt bei Tabellendiagrammen nicht.)

Anzahl der Spalten in der Legende

Anzahl der Spalten für die Anzeige der Beschriftungen in der Legende. Wenn diese Zahl größer als oder gleich der Anzahl von vorhandenen Beschriftungen ist, wird jede Beschriftung in einer separaten Spalte angezeigt.


Achsenrahmenattribute

Wert der Basislinie

Der Wert, der als Anfangspunkt für die Darstellung von Feldern entlang der Werteachse benutzt wird. Alle Werte, die größer sind als der Wert der Basislinie, werden über der Basislinie gezeichnet, während alle Werte, die kleiner sind als der Wert der Basislinie, unter der Basislinie gezeichnet werden.

Minimum	Bedeutet, daß die Basislinie dem minimalen Achsenwert entspricht.

Maximum	Bedeutet, daß die Basislinie dem maximalen Achsenwert entspricht.

Null	Bedeutet, daß der Wert 0 als Basislinie benutzt wird.

Benutzerdefiniert	Bedeutet, daß der in das zugehörige Textfeld eingegebene Wert als Basislinie benutzt wird.

Basislinie zuordnen

Gibt die Achse an, mit der der Wert der Basislinie verglichen wird, um die Position zu bestimmen.

Kategorienbreite

Die Breite der Balken in einem Balken- oder Säulendiagramm als Prozentsatz der Breite der Mittellinie. Die Breite der Mittellinie entspricht der größten Breite, die die Balken haben können, ohne sich zu überlappen. Sie wird bestimmt, indem die Länge der Kategorienachse durch die Anzahl von darzustellenden Balken dividiert wird.

Durch Festlegung der Kategorienbreite kann ein Abstand zwischen den Balken festgelegt werden, indem die Breite auf einen Wert von weniger als 100% festgelegt wird.

Zweite Y-Achse anzeigen

Gibt an, ob eine zweite Y-Achse in dem Diagramm angezeigt wird.


Kreisrahmenattribute

Verwendung Kreis

Gibt die Beziehung zwischen den einzelnen Kreissegmenten und dem vollständigen Diagramm an.

Gesamtwert	Bedeutet, daß jedes Kreissegment so dargestellt wird, als wäre der Datenwert ein Prozentsatz des hier angegebenen Gesamtwertes.

Prozent	Bedeutet, daß die Summe der vorhandenen Datenwerte den angegebenen Prozentsatz des Gesamtwertes des Diagramms darstellt und daß die einzelnen Segmente entsprechend dargestellt werden.

Reihenfolge Darstellung

Gibt die Reihenfolge an, in der die Datenwerte dargestellt werden. Das erste Kreissegment wird immer am Anfang des Diagramms angezeigt, und alle nachfolgenden Segmente werden in der hier angegebenen Richtung dargestellt.

Kategorienbeschriftung anzeigen

Gibt an, ob jedes Kreissegment mit dem Namen der Kategorie beschriftet wird, die es darstellt.

Datenwerte anzeigen

Gibt an, ob jedes Kreissegment mit dem entsprechenden Datenwert beschriftet wird.

Prozentwerte anzeigen

Gibt an, ob jedes Kreissegment mit dem Prozentsatz des gesamten Diagramms beschriftet wird, den dieses Segment darstellt.

Teilungen anzeigen

Gibt an, ob die Teilungen, die jedes Kreissegment mit der Beschriftung verbinden, dargestellt werden.

Segmente unter % als 'Andere'

Gibt an, daß Kreissegmente, die einzeln Prozentsätze darstellen, die kleiner sind als die hier eingegebene Zahl, zu einem einzigen Kreissegment mit der Beschriftung "Andere" zusammengefaßt werden.

Überschneidung von Beschriftungen verhindern

Gibt an, daß die Beschriftungen für die Kreissegmente sich nicht überlappen dürfen. Wenn die Beschriftungen lang sind, müssen sie hierzu möglicherweise in entsprechender Entfernung von dem Diagramm dargestellt werden. In diesem Fall sollten Sie diese Einstellung ausschalten.


Tabellenrahmenattribute

Tabellendarstellung

Gibt an, ob die Datenzeilen horizontal oder vertikal aufgelistet werden.

Min. Anzahl Zeilen

Mindestanzahl von Zeilen, die in dem Tabellendiagramm dargestellt werden. Wenn die tatsächliche Anzahl von Zeilen kleiner ist als die hier angegebene Zahl, bleibt Platz in dem Diagramm zur Aufnahme der angegebenen Mindestanzahl von Zeilen.

Max. Anzahl Zeilen

Maximale Anzahl von Zeilen, die in dem Tabellendiagramm dargestellt werden. Nachdem die maximale Anzahl von Zeilen dargestellt wurde, werden verbleibende Zeilen ignoriert.

Spaltennamen anzeigen

Gibt an, ob die Namen der Spalten als erste Zeile in dem Diagramm dargestellt werden.

Vertikale Rasterlinien anzeigen

Gibt an, ob vertikale Rasterlinien zwischen den Spalten angezeigt werden.

Horizontale Rasterlinien anzeigen

Gibt an, ob horizontale Rasterlinien zwischen den Zeilen angezeigt werden.

Zeilen pro horizontaler Linie

Anzahl von Datenzeilen, die dargestellt werden, bevor jede horizontale Rasterlinie gezeichnet wird.


Ebenenattribute

Erstellt, löscht, verbirgt, aktiviert, zeigt Ebenen an und benennt diese um.

Dialogfeldoptionen

Vorhandene Ebenen

Zeigt die Ebenen an, die in der grafischen Anwendung vorhanden sind. Die Reihenfolge der Ebenen in der Liste bestimmt, wie die Objekte in dem Layout angezeigt werden. Die Objekte jeder Ebene überlagern die Objekte aller angezeigten Ebenen, die unter dieser Ebene in der Liste stehen.

Neu

Erstellt eine neue, leere Ebene namens "Ebenex" (wobei x eine beliebige Zahl ist).

Löschen

Löscht die in der Liste ausgewählte Ebene. Alle Objekte auf dieser Ebene werden ebenfalls gelöscht.

Verbergen/Anzeigen

Verbirgt die ausgewählte Ebene, wenn sie angezeigt wird, bzw. zeigt sie an, wenn sie verborgen ist. Mit einem '+' neben dem Ebenennamen in der Liste wird angegeben, daß die Ebene gerade angezeigt wird. Mit einem '-' wird angegeben, daß sie verborgen ist. Sie können die aktive Ebene nicht verbergen.

Aktivieren

Aktiviert die ausgewählte Ebene. Wenn die Ebene verborgen ist, wird sie automatisch angezeigt. Um eine Ebene zu deaktivieren, machen Sie eine andere Ebene zur aktiven Ebene.

Oben/Unten/Anfang/Ende

Verschiebt die ausgewählte Ebene eine Position in der Liste nach oben, eine Position in der Liste nach unten, an den Anfang der Liste oder an das Ende der Liste. Die Reihenfolge der Ebenen in der Liste bestimmt, wie die Objekte in dem Layout angezeigt werden. Die Objekte jeder Ebene überlagern die Objekte aller angezeigten Ebenen, die in der Liste unter dieser Ebene stehen.

Aktive Ebene

Zeigt den Namen der gerade aktiven Ebene an. Nur eine Ebene kann jeweils aktiv sein.

Neuer Name

Neuer Name für die ausgewählte Ebene. Klicken Sie auf die Schaltfläche Umbenennen, um die Ebene umzubenennen.

Umbenennen

Diese Schaltfläche benennt die ausgewählte Ebene mit dem im Textfeld Neuer Name angegebenen Namen um.


Objektattribute

Objektattribute

Name, Schaltflächenprozedur, Mausereignis und Format-Trigger.

Aufgliederungsattribute

Aufgliederungsattribute.


Objektattribute

Name

Name des Objekts. Sie müssen den Namen des Objekts verwenden, um in den PL/SQL-Programmblöcken auf das Objekt Bezug nehmen zu können. Wenn Sie nicht programmatisch auf das Objekt Bezug nehmen möchten, ist die Benennung nicht erforderlich.

Prozedur

Name der PL/SQL-Schaltflächenprozedur, die mit diesem Objekt verknüpft ist. Diese Prozedur wird ausgeführt, wenn ein angegebenes "Mausereignis" für das Objekt erkannt wird. Nur Prozeduren mit einer gültigen Schaltflächen-Trigger-Prozedurkopfzeile werden in dieser Liste aufgeführt.

Ereignistypen

Gibt an, welche "Mausereignisse" die angegebene Schaltflächenprozedur aufrufen.

Maustaste drücken	Bedeutet, daß die Prozedur aufgerufen wird, wenn auf die Maustaste geklickt wird.

Maustaste loslassen	Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maustaste losgelassen wird.

Bewegung mit gedrückter Maustaste	Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maus bewegt wird, während die Maustaste gedrückt gehalten wird.

Bewegung mit losgelassener Maustaste	(Nur Ebenen) Bedeutet, daß die Prozedur aufgerufen wird, wenn die Maus bewegt wird, während die Maustaste nicht gedrückt gehalten wird.

Format-Trigger

Name der Format-Trigger-Prozedur des Diagramms, die mit diesem Objekt verknüpft ist. Nur Prozeduren, die eine gültige Format-Trigger-Prozedurkopfzeile haben, werden in dieser Liste aufgeführt. Hinweis: Dieses Attribut ist nur anwendbar, wenn es sich bei dem Objekt um ein Diagrammelement handelt.


Aufgliederungsattribute

Parameter setzen

Der Parameter, dessen Wert gesetzt wird, wenn auf das Objekt geklickt wird.

Neu

Erstellt einen neuen Parameter und zeigt das Register Parameter an.

Auf Wert von

Gibt den Wert an, auf den der Parameter gesetzt wird, wenn das Objekt ausgewählt wird.

Wenn es sich bei dem Objekt um ein Diagrammelement handelt, können Sie eine Spalte auswählen, die in der Abfrage des Diagramms angezeigt wird. Der Parameter wird dann auf den Datenwert gesetzt, der in der angegebenen Spalte für die aktuelle Abfragezeile angezeigt wird.

Wenn es sich bei dem Objekt nicht um ein Diagrammelement handelt, besteht die einzige Auswahl darin, den Parameter auf den Objektnamen zu setzen.

Abfrage ausführen

Gibt die Abfrage an, die ausgeführt werden soll, wenn das Objekt ausgewählt wird. Wenn Sie außerdem angeben, daß ein Parameter gesetzt ist, wird der Parameter gesetzt, bevor die Abfrage ausgeführt wird.

Neu

Erstellt eine neue Abfrage und zeigt das Register Abfrage an.


Parameterattribute

Parameter

Wählen Sie den zu ändernden Parameter aus. Alle Parameter, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Name

Name des Parameters.

Typ

Datentyp des Parameters.

Ausgangswert

Ausgangswert des Parameters, wenn Sie die grafische Anwendung das erste Mal ausführen. Der hier eingegebene Wert kann durch einen Wert ersetzt werden, der auf der Befehlszeile eingegeben wird. Außerdem können Sie den Wert zur Laufzeit ändern.

Die Länge des Parameterwertes darf 2000 Byte nicht überschreiten.


Abfrageattribute

Abfrageattribute

Name, Datenquelle und SQL-Anweisung (sofern erforderlich) für eine Abfrage.

Datenattribute (Abfrage)

Von der Abfrage zurückgegebene Daten.

Optionsattribute

Ausführungs- und Daten-Caching-Attribute, Trigger und andere Attribute.

Schemaattribute (Nur benutzerdefinierte Abfragen)

Erstellt, löscht und bestimmt Namen und Datentyp der benutzerdefinierten Spalten.


Abfrageattribute

Abfrage

Wählt die zu ändernde Abfrage aus. Alle Abfragen, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Name

Name der Abfrage.

Typ

Typ der Abfrage. Wählen Sie eine der folgenden Optionen:

SQL-Befehl	  Bedeutet, daß die Abfrage die Daten aus einer Datenbank aufgrund einer von Ihnen angegebenen SQL SELECT-Anweisung abruft. Geben Sie die SQL-Anweisung in das Textfeld SQL-Befehl ein.

SYLK-Datei	  Bedeutet, daß die Abfrage die Daten aus einer Datei im SYLK-Format abruft. SYLK ist ein Format, das von verschiedenen bekannten Anwendungen verwendet wird, wie z.B. Microsoft Excel. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei abgerufen. Geben Sie die zu benutzende Datei in dem Textfeld Datei an.

WKS-Datei	Bedeutet, daß die Abfrage die Daten aus einer Datei im WKS-Format abruft. WKS ist ein Format, das von vielen bekannten Anwendungen benutzt wird, wie z.B. Lotus 1-2-3. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei gelesen. Geben Sie die zu benutzende Datei im Textfeld Datei an.

PRN-Datei	Bedeutet, daß die Abfrage die Daten aus einer Datei im PRN-Format abruft. PRN ist ein Textdatei-Format. Wenn Sie die Abfrage ausführen, werden die Daten aus der Datei gelesen. Geben Sie die zu benutzende Datei im Textfeld Datei an.

Benutzerdefiniert	Mit dieser Option können Sie Spalten und Daten der Abfrage individuell gestalten. Um die Spalten zu setzen, verwenden Sie die Steuerelemente im Reigster Schema. Um die Daten zu setzen, verwenden Sie die vordefinierte Prozedur OG_APPEND_ROW.

Externe SQL-Datei	Bedeutet, daß die Abfrage die Daten aus einer Textdatei abruft, die eine SQL SELECT-Anweisung enthält. Wenn Sie die Abfrage ausführen, wird die SLQ-Anweisung aus der Datei gelesen und ausgeführt. Geben Sie die zu benutzende Datei im Textfeld Datei an.

Datei

Gibt Pfad und Name der Datei an, die für eine SYLK-, WKS-, PRN- oder Externe SQL-Abfrage benutzt werden soll. Um die Datei in Ihrem Dateisystem zu suchen, klicken Sie auf die Schaltfläche Durchsuchen.

Durchsuchen

Mit dieser Schaltfläche können Sie den Dateinamen suchen und auswählen, der im Textfeld Datei angezeigt werden soll.

SQL-Befehl

Die SQL SELECT-Anweisung, die für eine Abfrage vom Typ SQL-Befehl ausgeführt wird.

Anmelden

Zeigt das Dialogfeld Anmelden an, mit dem Sie sich bei einer Datenbank anmelden können.

SQL Import

Mit dieser Schaltfläche können Sie den Inhalt einer Textdatei in das Textfeld SQL-Anweisung setzen. Beachten Sie, daß der Text kopiert und nicht mit der Datei verknüpft wird. Um eine Verknüpfung zu SQL-Text in einer Datei herzustellen, benutzen Sie eine Abfrage vom Typ Externe SQL-Datei.

SQL Export

Mit dieser Schaltfläche können Sie den Inhalt der Textfeld SQL-Befehl in eine Datei setzen.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Datenattribute (Abfrage)

Abfrage

Wählen Sie die zu ändernde Abfrage aus. Alle Abfragen, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller geladenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Optionsattribute

Abfrage

Wählen Sie die zu ändernde Abfrage aus. Alle Abfragen, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Ausführen bei

Gibt an, wann die Abfrage automatisch ausgeführt wird. Wählen Sie eine der folgenden Optionen:

Grafische Anwendung öffnen	Führt die Abfrage aus, wenn die grafische Anwendung das erste Mal zur Laufzeit geöffnet wird.

Timer	Führt die Abfrage mit der von einem Timer angegebenen Häufigkeit aus. Wählen Sie einen Timer aus der Dropdown-Liste aus, oder klicken Sie auf Neu, um einen neuen Timer zu erstellen.

Daten

Bestimmt verschiedene Optionen im Zusammenhang mit den Abfragedaten.

Neue Daten	Bestimmt, wie die neu abgerufenen Daten von einer Abfrageausführung behandelt werden

Bei Auswahl von Ersetzen alte Daten werden alle Daten aus der vorherigen Ausführung verworfen und durch die neu abgerufenen Daten ersetzt.

Durch Ergänzen alte Daten werden alle bestehenden Datenzeilen beibehalten und die neuen Datenzeilen am Ende der bestehenden Datengruppe hinzugefügt.

Alte Daten speichern	Gibt an, ob vorher abgerufene Daten in einem Spezialpuffer gespeichert werden, wenn sie durch neue Daten ersetzt werden. Sie können dann auf den Puffer mit den "alten Daten" mit vordefinierten Routinen wie OG_GET_NUMCELL zugreifen. Dieses Attribut ist nur gültig, wenn für Neue Daten die Option Ersetzen alte Daten ausgewählt wurde.

Maximale Anzahl Zeilen	Gibt die maximale Anzahl von Datenzeilen an, die in der Datengruppe der Abfrage beibehalten werden. Wenn die Anzahl von Zeilen diesen Höchstwert durch das Anhängen von Daten überschreitet, werden die überschüssigen Zeilen ab dem Anfang der Datengruppe verworfen. Dieses Attribut ist nur gültig, wenn für Neue Daten die Option Ergänzen alte Daten ausgewählt wurde. Außerdem muß das Attribut maxflag für die Abfrage auf TRUE eingestellt sein. Weitere Informationen über die Einstellung des Attributs maxflag finden Sie unter Attribut Marke Max. Anzahl Zeilen.

Datumsformat	Gibt das Format an, mit dem Datumsdaten aus einer Datei erkannt werden, und legt fest, wie Datumsangaben im Register Daten angezeigt werden. Wenn die Datumsangaben in der Datei ein anderes Format als das hier angegebene Format haben, erkennt Graphics Builder sie nicht als Datumsangaben.

PL/SQL

Bestimmt verschiedene Optionen im Zusammenhang mit der Benutzung von PL/SQL durch die Abfrage.

Benutzerdefinierte

Ausführungsprozedur	(Nur benutzerdefinierte Abfragen) Die PL/SQL-Prozedur, die aufgerufen wird, wenn eine benutzerdefinierte Abfrage ausgeführt wird. Typischerweise enthält diese Prozedur PL/SQL-Anweisungen, die die Abfrage mit Daten bestücken. Nur Prozeduren, die eine gültige benutzerdefinierte Abfrage-Trigger-Prozedurkopfzeile haben, werden in dieser Liste angezeigt.

Klicken Sie auf die Schaltfläche Neu, um eine neue benutzerdefinierte Abfrageprozedur zu erstellen.

Post-Execution-Trigger	Die PL/SQL-Prozedur, die nach Ausführung der Abfrage aufgerufen wird. Nur Prozeduren mit einer gültigen Post-Execution-Trigger-Prozedurkopfzeile werden in dieser Liste aufgeführt.

Klicken Sie auf die Schaltfläche Neu, um eine neue Post-Execution-Prozedur zu erstellen.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Schemaattribute

Diese Attribute gelten nur für benutzerdefinierte Abfragen.

Abfrage

Wählen Sie die zu ändernde Abfrage aus. Alle Abfragen, die in der grafischen Anwendung vorhanden sind, werden in dieser Liste angezeigt.

Spalte

Wählen Sie die zu ändernde Spalte aus. Alle Spalten, die für diese Abfrage definiert wurden, werden in dieser Liste angezeigt.

Name

Spaltenname. Um den Spaltennamen zu ändern, geben Sie hier einen neuen Namen ein, und klicken Sie auf Anwenden.

Typ

Datentyp der Spalte.

Maximale Länge

Maximale Länge der Daten in der Spalte. Dies gilt nur für Spalten vom Typ CHAR.

Neue Spalte

Fügt eine neue Spalte zu der Abfrage hinzu.

Spalte löschen

Löscht die aktuelle Spalte aus der Abfrage.

Neu

Erstellt eine neue Abfrage.

Löschen

Löscht die aktuelle Abfrage.

Ausführen

Führt die aktuelle Abfrage aus. Wenn es sich bei der Abfrage um eine SQL SELECT-Anweisung handelt, werden die Daten aus der Datenbank abgerufen. Wenn die Abfrage Daten aus einer Datei abruft, wird die Datei gelesen. Wenn es sich bei der Abfrage um eine benutzerdefinierte Abfrage handelt, wird die benutzerdefinierte Abfrageprozedur ausgeführt.

Daten entfernen

Entfernt den Daten-Cache aller abgerufenen Daten. Dadurch wird die Abfrage selbst nicht gelöscht und in keiner Weise geändert.


Referenzlinienattribute

Ändert die Attribute der Referenzlinien in der Vorlage, die im Editor für Diagrammvorlagen angezeigt wird.

Referenzlinie

Wählen Sie die zu ändernde Referenzlinie aus. Alle Referenzlinien, die in der aktuellen Vorlage vorhanden sind, werden in dieser Liste angezeigt.

Beschriftung der Legende

Die Textbeschriftung, mit der die Referenzlinie in der Legende gekennzeichnet wird.

Wert

Der Referenzwert, bei dem die Referenzlinie angezeigt wird.

Achsenzuordnung

Gibt an, mit welcher Achse der Referenzwert verglichen wird, um seine Position zu bestimmen.

Neu

Erstellt eine neue Referenzlinie für die aktuelle Vorlage.

Löschen

Löscht die Referenzlinie aus der aktuellen Vorlage.


Timer-Attribute

Erstellt und löscht Timer, bestimmt den Namen des Timers, Trigger-Prozeduren und das Zeitintervall.

Dialogfeldoptionen

Timer

Wählen Sie den zu ändernden Timer aus. Alle Timer, die in der grafischen Anwendung vorhanden sind, werden in der Liste angezeigt.

Neu

Erstellt einen neuen Timer.

Löschen

Löscht den aktuellen Timer.

Name

Name des Timers.

Prozedur

Die PL/SQL-Prozedur (sofern vorhanden), die ausgeführt wird, wenn der Timer ausgelöst wird. Nur Prozeduren mit einer gültigen Timer-Trigger-Prozedurkopfzeile werden in dieser Liste angezeigt.

Um eine neue Timerprozedur zu erstellen, wählen Sie Neu.

Intervall

Zeitspanne, die zwischen jedem Auslösen des Timers vergeht.

Aktiv

Gibt an, ob der Timer ausgelöst ist.

Neu

Erstellt einen neuen Timer.

Löschen

Löscht den aktuellen Timer.


Über Dateisicherheit und Einschränkungen

Graphics Builder benutzt die Betriebssystemumgebung, um die Sicherheit der in Dateien gespeicherten Module zu bestimmen. Der Erhalt der Berechtigung für den Zugriff auf Module, die in Dateien gespeichert sind, ist betriebssystemabhängig. Weitere Informationen finden Sie in Ihrer Betriebssystemdokumentation.


Über Datenbanksicherheit und Einschränkungen

Es gibt zwei Arten von Einschränkungen, die Sie für Benutzer von Graphics Builder festlegen können. Sie können:

den Zugriff auf Graphics Builder steuern

den Zugriff anderer Benutzer auf die Module steuern

Der Sicherheitsmechanismus von Graphics Builder verwendet die Oracle-Befehle GRANT und REVOKE, wobei noch zusätzliche Sicherheitsmaßnahmen geboten werden. Alle mit GRANT und REVOKE festgelegten Einschränkungen gelten weiter.


Zugriff auf Graphics Builder steuern

Zugriff auf Graphics Builder steuern:

  Ein Benutzer kann nur auf Graphics Builder zugreifen, wenn ihm die Zugriffsberechtigung zu den Graphics Builder-Tabellen durch Ausführung der entsprechenden Installationsskripts gewährt wurde. Sie müssen die Zugriffsberechtigung eines Benutzers manuell entziehen.


Zugriff anderer Benutzer auf die Module steuern

So steuern Sie den Zugriff anderer Benutzer auf Ihre Module:

1	Wählen Sie einen Modultyp aus dem Menü Datei [image] Verwaltung [image] Zugriff des Layouteditors, um das Dialogfeld Modulzugriff in Datenbank anzuzeigen.

2	Wählen Sie einen Modulnamen aus.

3	Klicken Sie auf OK, um das Dialogfeld Modulzugriff anzuzeigen.

4	Geben Sie einen Benutzernamen (oder ÖFFENTLICH) in das Feld Benutzer ein. Wenn Sie ÖFFENTLICH eingeben, haben alle Benutzer, denen die Zugriffsberechtigung zu den systemeigenen Tabellen gewährt wurde, Zugriff auf das Modul.


Über Datenbanktabellenspeicher

Bei Graphics Builder gibt es drei Gruppen von Tabellen:

•	Demotabellen	Enthalten Beispieldaten, die in Demos benutzt werden.

•	Datentabellen	Enthalten Ihre eigenen Daten.

•	Graphics Builder-Tabellen	Enthalten Graphics Builder-Module.

Graphics Builder-Tabellen

Wenn Sie ein Graphics Builder-Modul (grafische Anwendung, Zeichnung, Diagrammvorlage, Farbpalette, Klang, Bild) in einer Datenbank speichern, wird es in den Graphics Builder-Tabellen gespeichert. Diese Tabellen umfassen:

Graphics Builder-spezifische Tabellen: Graphics Builder-spezifische Tabellen enthalten Modul- und andere Definitionen der grafischen Anwendung. Diese Tabellen werden ausschließlich von Graphics Builder benutzt und werden nicht mit anderen Oracle-Produkten gemeinsam verwendet. Über die Benutzung von Ansichten und öffentlichen Synonymen können Benutzer Informationen über Module anzeigen, die ihnen gehören oder für die sie eine Zugriffsberechtigung erhalten haben.

Gemeinsam benutzte Oracle-Produkttabellen: Gemeinsam benutzte Oracle-Produkttabellen umfassen Moduldefinitionen. Sie können mit anderen Oracle-Produkten gemeinsam benutzt werden. Über die Benutzung von Datenbankansichten und öffentlichen Synonymen können Benutzer Informationen über Module anzeigen, die ihnen gehören oder für die sie eine Zugriffsberechtigung erhalten haben.

Achtung: Oracle Corporation garantiert die Funktionalität und Integrität von Modulen nicht, deren Tabellendefinitionen über SQL*Plus oder andere Datenbank-Tools geändert wurde, die nicht speziell für die Änderung der Graphics Builder-Tabellen ausgelegt sind. Beachten Sie außerdem, daß Oracle Corporation sich das Recht vorbehält, Namen und Struktur der Tabellen jederzeit ohne Vorankündigung zu ändern.


Über Anforderungen an Datenbankspeicher

Die gemeinsam genutzten Oracle-Produkttabellen erfordern im leeren Zustand einen Speicherplatz von etwa 255 Datenblöcken (oder 460 KB). Die Graphics Builder-spezifischen Tabellen erfordern im leeren Zustand zusätzliche 140 Datenblöcke (oder 260 KB). Wenn mehrere Benutzer eine Tabellengruppe gemeinsam nutzen, sind ursprünglich pro Installation nur 385 Blöcke erforderlich. Wenn jeder Benutzer seine eigene Tabellengruppe hat, müssen 385 Blöcke pro Benutzer vorgesehen werden.

Der von den Tabellen belegte Speicherplatz nimmt mit der Definition von Modulen zu. Der ursprüngliche Speicherplatz pro Modul kann stark variieren. Bei grafischen Anwendungen hängt er von der Anzahl von Objekten, der Anzahl von Abfragen, der Größe von PL/SQL-Programmblöcken usw. ab.


Über Graphics Builder-spezifische Tabellen

Graphics Builder-spezifische Tabellen enthalten Modul- und andere Definitionen von grafischen Anwendungen. Diese Tabellen werden ausschließlich von Graphics Builder benutzt und werden nicht gemeinsam mit anderen Oracle-Produkten verwendet. Über Ansichten und öffentliche Synonyme können Benutzer Informationen über Module anzeigen, die ihnen gehören oder für die sie eine Zugriffsberechtigung erhalten haben.


Graphics Builder-spezifische Tabellen

GC_CHARTING

GC_FIELD

GC_REFERENCE

GO_DOCUMENT

GO_PARAMETER

GO_QUERY

GO_SOUND

GO_TIMER

VG_COLOR

VG_FONT

VG_IMAGE


GC_CHARTING

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
CHARTNAME	RAW(255)	Diagrammname
CHARTNAME_LEN	INTEGER	Länge Diagrammname
CHARTNAME_CS	INTEGER	Zeichensatz Diagrammname
CHART_TYPE	INTEGER	Diagrammtyp
CHART_VIS	INTEGER	Diagrammsichtbarkeitsmarke
DEPTH_SIZE	INTEGER	Tiefe (0 => 20)
SHADOW_SIZE	INTEGER	Schattierung (0 => keine Schattierung)
SHADOW_DIR	INTEGER	Schattierungsrichtung
BASELN_FLG	INTEGER	Marke Basisliniendefinition
BASELN_DAT	DATE	Basislinien-Datumswert
BASELN_VAL	FLOAT	Basislinienwert
CATEGORY_WD	FLOAT	Gesamtbreite Kategorie (% der Streifenbreite)
BASELN_AXIS	INTEGER	Achsenzuordnung Basislinie (y1 oder y2)
X1_AXIS_TYPE	INTEGER	Achsendatentyp: Werte oder Kategorien
X1_AXIS_DEP	INTEGER	Achsenabhängigkeitsstatus: wahr, wenn abhängig
X1_SCALE_FNC	INTEGER	Maßstab: Linear, Log, Pkt
X1_AXIS_POS	INTEGER	Achsenposition: Anfang/Ende/Links/Rechts
X1_GRID_VIS	INTEGER	Sichtbarkeitsmaske: Grob-/Feinteilung/-raster
X1_AXIS_STEP	INTEGER	Marke benutzerdef. Min/Max/Schritt
X1_NUM_STRIP	INTEGER	Anzahl Mittellinien auf Werteachse
X1_CONT_AX_MN	FLOAT	Werteachse Min.
X1_CONT_AX_MX	FLOAT	Werteachse Max.
X1_CONT_AX_ST	FLOAT	Werteachse Schritt
X1_DATE_AX_MN	DATE	Datumsachse Min.
X1_DATE_AX_MX	DATE	Datumsachse Max.
X1_DATE_AX_ST	INTEGER	Datumsachse Schritt
X1_AX_LBL_HS	INTEGER	Marke Achsenbeschriftung verbergen/anzeigen
X1_TIC_TYPE	INTEGER	Teilungstyp (zentriert innen/außen)
X1_MINOR_TIC	INTEGER	Feinteilung/-raster Anzahl 0..9
X1_NUM_FORMAT	RAW(255)	Num. Format Folge für Teilungsbeschriftungen
X1_NUM_FORMAT_CS	INTEGER	Num. Format Zeichensatz für Teilungsbeschriftungen
X1_NUM_FORMAT_LEN	INTEGER	Num. Format Zeichenlänge für Teilungen
X1_DAT_FORMAT	RAW(255)	Datumsformat Folge für Teilungsbeschriftungen
X1_DAT_FORMAT_CS	INTEGER	Datumsformat Zeichensatz für Teilungsbeschriftungen
X1_DAT_FORMAT_LEN	INTEGER	Datumsformat Zeichenlänge für Teilungsbeschriftungen
X1_TIC_ROT	INTEGER	Teilungsbeschriftung Richtung (Drehung)
X1_TIC_FIX	INTEGER	Marke Teilungsbeschriftung feste Richtung
X1_TIC_DT_VIS	INTEGER	Sichtbarkeit Achsenteilung mit Datumsbeschriftung
X1_DATE_ABBR	INTEGER	Marken Datumsabkürzung
X1_WKEND_FLG	INTEGER	Marke Kein Wochenende
X1_START_MNTH	INTEGER	Anfangsmonat Steuerjahr (1..2)
X1_PCT_TYP	INTEGER	Prozenttyp (Summe, min oder max)
X1_PCT_GRP	INTEGER	Prozentgruppierung (Spalte oder Kategorie)
X2_AXIS_TYPE	INTEGER	Achsendatentyp: Werte oder Kategorien
X2_AXIS_DEP	INTEGER	Achsenabhängigkeitsstatus: wahr, wenn abhäng.
X2_SCALE_FNC	INTEGER	Maßstab: Linear, Log, Pkt
X2_AXIS_POS	INTEGER	Achsenposition: Anfang/Ende/Links/Rechts
X2_GRID_VIS	INTEGER	Maske Grob-/Feinteilung/-raster
X2_AXIS_STEP	INTEGER	Marke benutzerdef. Min/Max/Schritt
X2_NUM_STRIP	INTEGER	Anzahl Mittellinien auf Werteachse
X2_CONT_AX_MN	FLOAT	Werteachse Min.
X2_CONT_AX_MX	FLOAT	Werteachse Max.
X2_CONT_AX_ST	FLOAT	Werteachse Schritt
X2_DATE_AX_MN	DATE	Datumsachse Min.
X2_DATE_AX_MX	DATE	Datumsachse Max.
X2_DATE_AX_ST	INTEGER	Datumsachse Schritt
X2_AX_LBL_HS	INTEGER	Marke Achsenbeschriftung verbergen/anzeigen
X2_TIC_TYPE	INTEGER	Teilungstyp (zentriert innen/außen)
X2_MINOR_TIC	INTEGER	Feinteilung/-raster 0..9
X2_NUM_FORMAT	RAW(255)	Num. Format Folge für Teilungsbeschriftungen
X2_NUM_FORMAT_CS	INTEGER	Num. Format Zeichensatz für Teilungsbeschriftungen
X2_NUM_FORMAT_LEN	INTEGER	Num. Format Zeichenlänge für Teilungsbeschriftungen
X2_DAT_FORMAT	RAW(255)	Datumsformat Folge für Teilungsbeschriftungen
X2_DAT_FORMAT_CS	INTEGER	Datumsformat Zeichensatz für Teilungsbeschriftungen
X2_DAT_FORMAT_LEN	INTEGER	Datumsformat Zeichenlänge für Teilungsbeschriftungen
X2_TIC_ROT	INTEGER	Richtung Teilungsbeschriftung (Drehung)
X2_TIC_FIX	INTEGER	Marke feste Richtung Teilungsbeschriftung
X2_TIC_DT_VIS	INTEGER	Sichtbarkeit Achsenteilungsbeschriftung mit Datum
X2_DATE_ABBR	INTEGER	Marke Datumsabkürzung
X2_WKEND_FLG	INTEGER	Marke Kein Wochenende
X2_START_MNTH	INTEGER	Anfangsmonat Steuerjahr (1..2)
X2_PCT_TYP	INTEGER	Prozenttyp (Summe, Min oder Max)
X2_PCT_GRP	INTEGER	Prozentgruppierung (Spalte oder Kategorie)
X3_AXIS_TYPE	INTEGER	Achsendatentyp: Wert oder Kategorie
X3_AXIS_DEP	INTEGER	Achsenabhängigkeitsstatus: wahr, wenn abhängig.
X3_SCALE_FNC	INTEGER	Maßstab: Linear, Log, Pkt.
X3_AXIS_POS	INTEGER	Achsenposition: Oben/Unten/Links/Rechts
X3_GRID_VIS	INTEGER	Sichtbarkeitsmaske Grob-/Feinteilung/-raster
X3_AXIS_STEP	INTEGER	Marke benutzerdef. Min/Max/Schritt
X3_NUM_STRIP	INTEGER	Anzahl Mittellinien auf Werteachse
X3_CONT_AX_MN	FLOAT	Werteachse Min.
X3_CONT_AX_MX	FLOAT	Werteachse Max.
X3_CONT_AX_ST	FLOAT	Werteachse Schritt
X3_DATE_AX_MN	DATE	Datumsachse Min.
X3_DATE_AX_MX	DATE	Datumsachse Max.
X3_DATE_AX_ST	INTEGER	Datumsachse Schritt
X3_AX_LBL_HS	INTEGER	Marke Achsenbeschriftung verbergen/anzeigen
X3_TIC_TYPE	INTEGER	Teilungstyp (zentriert innen/außen)
X3_MINOR_TIC	INTEGER	Anzahl Feinteilungen/-raster 0..9
X3_NUM_FORMAT	RAW(255)	Num. Format Folge für Teilungsbeschriftungen
X3_NUM_FORMAT_CS	INTEGER	Num. Format Zeichensatz für Teilungsbeschriftungen
X3_NUM_FORMAT_LEN	INTEGER	Num. Format Zeichenlänge für Teilungsbeschriftungen
X3_DAT_FORMAT	RAW(255)	Datumsformat Folge für Teilungsbeschriftungen
X3_DAT_FORMAT_CS	INTEGER	Datumsformat Zeichensatz für Teilungsbeschriftungen
X3_DAT_FORMAT_LEN	INTEGER	Datumsformat Zeichenlänge für Teilungsbeschriftungen
X3_TIC_ROT	INTEGER	Richtung Teilungsbeschriftung (Drehung)
X3_TIC_FIX	INTEGER	Marke feste Richtung Teilungsbeschriftung
X3_TIC_DT_VIS	INTEGER	Sichtbarkeit Achsenteilungsbeschriftung mit Datum
X3_DATE_ABBR	INTEGER	Marke Datumsabkürzung
X3_WKEND_FLG	INTEGER	Marke Kein Wochenende
X3_START_MNTH	INTEGER	Anfangsmonat des Steuerjahres (1..2)
X3_PCT_TYP	INTEGER	Prozenttyp (Summe, Min, Max)
X3_PCT_GRP	INTEGER	Prozentgruppierung (Spalte oder Kategorie)
P_CLOCK_FLG	INTEGER	Marke Uhrzeigersinn
P_SUM_FLG	INTEGER	Marke Summe
P_TIC_VIS	INTEGER	Sichtbarkeitsmaske Teilung/Beschriftung
P_FIXED_SUM	FLOAT	Benutzerdefinierte Summe
P_FIXED_PCT	FLOAT	Benutzerdefinierter Prozentsatz
P_CAT_LBL_FMT	RAW(255)	Kategoriebeschriftung Format Folge
P_CAT_LBL_FMT_CS	INTEGER	Kategoriebeschriftung Format Zeichensatz
P_CAT_LBL_FMT_LEN	INTEGER	Kategoriebeschriftung Format Folgenlänge
P_DAT_LBL_FMT	RAW(255)	Datumsbeschriftung Format Folge
P_DAT_LBL_FMT_CS	INTEGER	Datumsbeschriftung Format Zeichensatz
P_DAT_LBL_FMT_LEN	INTEGER	Datumsbeschriftung Format Zeichenlänge
P_ABS_LBL_FMT	RAW(255)	Absolute Beschriftung Format Folge
P_ABS_LBL_FMT_CS	INTEGER	Absolute Beschriftung Format Zeichensatz
P_ABS_LBL_FMT_LEN	INTEGER	Absolute Beschriftung Format Zeichenlänge
P_PCT_LBL_FMT	RAW(255)	Prozentbeschriftung Format Folge
P_PCT_LBL_FMT_CS	INTEGER	Prozentbeschriftung Format Zeichensatz
P_PCT_LBL_FMT_LEN	INTEGER	Prozentbeschriftung Format Folgenlänge
T_MAX_ROW	INTEGER	Max. Anzahl von Zeilen
T_MAX_ROW_FIX	INTEGER	Marke max. Zeilen fest
T_GRID_VIS	INTEGER	Sichtbarkeitsmarken Raster
T_TABLE_DIR	INTEGER	Tabellenrichtung
T_ROW_PERGRID	INTEGER	Zeilen pro horizontaler Rasterlinie
L_NUM_COL	INTEGER	Legende: Anzahl Spalten
L_SHADOW_SIZE	INTEGER	Legende: Schattengröße (0 => kein Schatten)


GC_FIELD

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
TEMPLATE_SEQ	INTEGER	Feldvorlagen-Folgenummer
FIELDNAME	RAW(255)	Feldvorlagenname
FIELDNAME_LEN	INTEGER	Feldvorlagenname Länge
FIELDNAME_CS	INTEGER	Feldvorlagenname Zeichensatz
PLOT_DEF	INTEGER	Bitmaske Darstellungsdefinition
CONNECT_TYPE	INTEGER	Verbindungstyp
PLOT_EXT	INTEGER	Darstellungsbereich
REGRESS_TST	INTEGER	Regressionstyp
ROT_COL_FLAG	INTEGER	Marke Farben/Muster rotieren
LABEL_ROT_ANG	INTEGER	Beschriftungsdrehwinkel
BAR_OVERLAP	FLOAT	Balkenüberlappung (Teil von Balkenbr.)
NUM_FORMAT	RAW(255)	Num. Formatfolge für Text/Hinweis
NUM_FORMAT_CS	INTEGER	Num. Format Zeichensatz für Text/Beschriftung
NUM_FORMAT_LEN	INTEGER	Num. Format Länge für Text/Beschriftung
DAT_FORMAT	RAW(255)	Datumsformat Folge für Text/Beschriftung
DAT_FORMAT_CS	INTEGER	Datumsformat Zs für Text/Beschriftung
DAT_FORMAT_LEN	INTEGER	Datumsformat Länge für Text/Beschriftung
AXIS_MAPPING	INTEGER	Achsenzuordnung


GC_REFERENCE

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
REFLINE_ID	INTEGER	Referenzlinien-ID
REFLINE_MAP	INTEGER	Referenzlinien-Zuordnung
CONT_AXIS_VAL	FLOAT	Werteachse Wertzuordnung für Linie
DATE_AXIS_VAL	DATE	Datumsachse Wertzuordnung für Linie
LEG_LBL	RAW(255)	Legendenbeschriftung Folge
LEG_LBL_LEN	INTEGER	Legendenbeschriftung Folgenlänge
LEG_LBL_CS	INTEGER	Legendenbeschriftung Zeichensatz


GO_DOCUMENT

Name	      Typ	       Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
FOREGROUND_EDGE_COLOR	INTEGER	Standard Vordergrund-Randfarbe
BACKGROUND_EDGE_COLOR	INTEGER	Standard Hintergrund-Randfarbe
EDGE_PATTERN	INTEGER	Standard-Randmuster
FOREGROUND_FILL_COLOR	INTEGER	Standard-Vordergrundfüllfarbe
BACKGROUND_FILL_COLOR	INTEGER	Standard-Hintergrundfüllfarbe
FILL_PATTERN	INTEGER	Standardfüllmuster
DASH_STYLE	INTEGER	Standard-Strichart
ARROW_STYLE	INTEGER	Standard-Pfeilstil
SYMBOL_SIZE	INTEGER	Standard-Symbolgröße
SYMBOL_INDEX	INTEGER	Standard-Symbolindex
BRUSH_WIDTH	INTEGER	Standard-Linienbreite
TRANS_MODE	INTEGER	Standard-Transfermodus
CAP_STYLE	INTEGER	Standard-Linienende
JOIN_STYLE	INTEGER	Standard-Verknüpfungsart
ARC_FILL_STYLE	INTEGER	Standard-Bogenfüllung
ARC_CLOSURE	INTEGER	Standard-Bogenschließung
RRECT_CORNER_WIDTH	INTEGER	Standardecke abgerundetes Rechteck
RRECT_CORNER_HEIGHT	INTEGER	Standardecke abgerundetes Rechteck
FACE_NAME	RAW(255)	Standardschriftart
FACE_NAME_CHAR	INTEGER	Schriftartname-Zeichensatz
FACE_NAME_LEN	INTEGER	Schriftartname-Länge
FONT_SIZE	INTEGER	Standard-Schriftgrad
FONT_STYLE	INTEGER	Standard-Schriftstil
FONT_WEIGHT	INTEGER	Standard-Schriftstärke
FONT_WIDTH	INTEGER	Standard-Schriftbreite
IMAGE_TEXT	INTEGER	Standard-Bildtext
KERNING	INTEGER	Standard-Kerningeinstellung
CHAR_SET	INTEGER	Standard-Zeichensatz
TEXT_COLOR	INTEGER	Standard-Textfarbe
TEXT_HOR_ALIGN	INTEGER	Standard Text horizontale Ausrichtung
TEXT_VER_ALIGN	INTEGER	Standard Text vertikale Ausrichtung
TEXT_HOR_JUSTI	INTEGER	Standard Text horizontale Justierung
TEXT_VER_JUSTI	INTEGER	Standard Text vertikale Justierung
TEXT_SPACING	INTEGER	Standard-Textabstand
TEXT_FIXED_FLAG	INTEGER	Marke Standard fester Text
TEXT_FONTSC_FLAG	INTEGER	Marke Standard skalierbare Schriftart
TEXT_WRAP_FLAG	INTEGER	Marke Standard Textumbruch
TEXT_BBOX_SCALABILITY	INTEGER	Marke Standard skalierbares Textfeld
TEXT_INVISIBILITY	INTEGER	Marke Standard unsichtbarer Text
TEXT_CUSTOM_SPACING	INTEGER	Marke Standard benutzerdefinierter Abstand
HOR_ALIGN_MODE	INTEGER	Standard horizontale Ausrichtungseinstellungen
VER_ALIGN_MODE	INTEGER	Standard vertikale Ausrichtungseinstellungen
CTR_TRACK_FLAG	INTEGER	Marke Standard Zeichnen von Mitte/Ecke
DRAW_SIZE_WIDTH_DEN	INTEGER	Nenner Layoutbreite
DRAW_SIZE_WIDTH_NUM	INTEGER	Zähler Layoutbreite
DRAW_SIZE_HEIGHT_DEN	INTEGER	Nenner Layouthöhe
DRAW_SIZE_HEIGHT_NUM	INTEGER	Zähler Layouthöhe
PAGE_COUNT	INTEGER	Standardseitenzahl
ACTIVE_LAYER	INTEGER	Aktive Ebene-ID
MAIN_EDITOR_X	INTEGER	Layouteditor X-Koordinate
MAIN_EDITOR_Y	INTEGER	Layouteditor Y-Koordinate
MAIN_EDITOR_WIDTH	INTEGER	Layouteditor Breite
MAIN_EDITOR_HEIGHT	INTEGER	Layouteditor Höhe
CHART_TEMP_HS	INTEGER	Editor für Diagrammvorlagen verbergen/anzeigen
CHART_TEMP_X	INTEGER	Editor für Diagrammvorlagen X-Koordinate
CHART_TEMP_Y	INTEGER	Editor für Diagrammvorlagen Y-Koordinate
CHART_TEMP_WIDTH	INTEGER	Editor für Diagrammvorlagen Breite
CHART_TEMP_HEIGHT	INTEGER	Editor für Diagrammvorlagen Höhe
DATATABLE_HS	INTEGER	Datentabelle verbergen/anzeigen
DATATABLE_X	INTEGER	Datentabelle X-Koordinate
DATATABLE_Y	INTEGER	Datentabelle Y-Koordinate
DATATABLE_WIDTH	INTEGER	Datentabelle Breite
DATATABLE_HEIGHT	INTEGER	Datentabelle Höhe
CONST_WIND_HS	INTEGER	Konsistenzprüfung verbergen/anzeigen
CONST_WIND_X	INTEGER	Konsistenzprüfung X-Koordinate
CONST_WIND_Y	INTEGER	Konsistenzprüfung Y-Koordinate
CONST_WIND_WIDTH	INTEGER	Konsistenzprüfung Breite
CONST_WIND_HEIGHT	INTEGER	Konsistenzprüfung Höhe
PLSQL_WIND_HS	INTEGER	Batch-Compiler verbergen/anzeigen
PLSQL_WIND_X	INTEGER	Batch-Compiler X-Koordinate
PLSQL_WIND_Y	INTEGER	Batch-Compiler Y-Koordinate
PLSQL_WIND_WIDTH	INTEGER	Batch-Compiler Breite
PLSQL_WIND_HEIGHT	INTEGER	Batch-Compiler Höhe
PLSQL_PROG_HS	INTEGER	PL/SQL-Browser verbergen/anzeigen
PLSQL_PROG_X	INTEGER	PL/SQL-Browser X-Koordinate
PLSQL_PROG_Y	INTEGER	PL/SQL-Browser Y-Koordinate
PLSQL_PROG_WIDTH	INTEGER	PL/SQL-Browser Breite
PLSQL_PROG_HEIGHT	INTEGER	PL/SQL-Browser Höhe
PLSQL_BROWSER_HS	INTEGER	Bibliotheks-Browser verbergen/anzeigen
PLSQL_BROWSER_X	INTEGER	Bibliotheks-Browser X-Koordinate
PLSQL_BROWSER_Y	INTEGER	Bibliotheks-Browser Y-Koordinate
PLSQL_BROWSER_WIDTH	INTEGER	Bibliotheks-Browser Breite
PLSQL_BROWSER_HEIGHT	INTEGER	Bibliotheks-Browser Höhe
BIND_VAR_HS	INTEGER	Parametertabelle verbergen/anzeigen
BIND_VAR_X	INTEGER	Parametertabelle X-Koordinate
BIND_VAR_Y	INTEGER	Parametertabelle Y-Koordinate
BIND_VAR_WIDTH	INTEGER	Parametertabelle Breite
BIND_VAR_HEIGHT	INTEGER	Parametertabelle Höhe
OPEN_DRAWING_TRIGNAME	RAW(255)	Name Open Display Trigger
OPEN_DRAWING_CHARSET	INTEGER	Name Zeichensatz Open Display Trigger
OPEN_DRAWING_CHARLEN	INTEGER	Name Länge Open Display Trigger
CLOSE_DRAWING_TRIGNAME	RAW(255)	Name Close Display Trigger
CLOSE_DRAWING_CHARSET	INTEGER	Name Zeichensatz Close Display Trigger
CLOSE_DRAWING_CHARLEN	INTEGER	Name Länge Close Display Trigger
BIND_VAR_NAME	RAW(255)	Datumsformat Parametertabelle
BIND_VAR_CHAR	INTEGER	Datumsformat Zeichensatz Parametertabelle
BIND_VAR_LEN	INTEGER	Datumsformat Länge Parametertabelle
TEMPLATE_NAME	RAW(255)	Aktueller Vorlagenname
TEMPLATE_NAME_CHAR	INTEGER	Aktueller Vorlagenname Zeichensatz
TEMPLATE_NAME_LEN	INTEGER	Aktueller Vorlagenname Länge
ACTIVE_QUERY	INTEGER	Aktuelle Abfrage-ID
DISPLAY_ROW	INTEGER	Anzahl von Zeilen in Parametertabelle
OCL_VERSION	INTEGER	Versionsnummer Oracle Charting Library


GO_PARAMETER

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEM	INTEGER	Parameter-ID
PARAM_NAME	RAW(255)	Parametername
PARAM_NAME_CHAR	INTEGER	Parametername Zeichensatz
PARAM_NAME_LEN	INTEGER	Parametername Länge
PARAM_TYPE	INTEGER	Parametertyp
PARAM_STR_NAME	RAW(255)	Parameterwert
PARAM_STR_NAME_CHAR	INTEGER	Parameterwert Zeichensatz
PARAM_STR_NAME_LEN	INTEGER	Parameterwert Länge
ROW_NUMBER	INTEGER	Parametertabelle Zeile


GO_QUERY

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Abfrage-ID
QUERY_NAME	RAW(255)	Abfragename
QUERY_NAME_CHAR	INTEGER	Abfragename Zeichensatz
QUERY_NAME_LEN	INTEGER	Abfragename Länge
QUERY_SRC	LONG RAW	Abfragequelle
QUERY_SRC_CHAR	INTEGER	Abfragequelle Zeichensatz
QUERY_SRC_LEN	INTEGER	Abfragequelle Länge
QUERY_TYPE	INTEGER	Abfragetyp
DATE_FORMAT	RAW(255)	Datumsformat
DATE_FORMAT_CHAR	INTEGER	Datumsformat Zeichensatz
DATE_FORMAT_LEN	INTEGER	Datumsformat Länge


GO_SOUND

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Klang-ID
NAME	RAW(255)	Klangname
NAME_SET	INTEGER	Klangname Zeichensatz
NAME_LEN	INTEGER	Klangname Länge
LONGID	INTEGER	Long Feld-ID
RECVOLUME	INTEGER	Aufzeichnungslautstärke
PLAYVOLUME	INTEGER	Wiedergabelautstärke


GO_TIMER

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEM	INTEGER	Timer-ID
TIMER_NAME	RAW(255)	Timername
TIMER_NAME_CHARSET	INTEGER	Timername Zeichensatz
TIMER_NAME_LENGTH	INTEGER	Timername Länge
PROC_NAME	RAW(255)	Timer-Prozedurname
PROC_NAME_CHARSET	INTEGER	Prozedurname Zeichensatz
PROC_NAME_LENGTH	INTEGER	Prozedurname Länge
TIMER_INTERVAL	INTEGER	Timer-Intervall


GO_VISLAYER

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
LAYERID	INTEGER	Layer-ID


VG_COLOR

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
CELLID	INTEGER	Farbzelle-ID
COLOR_NAME	RAW(255)	Farbname
NAME_SET	INTEGER	Zeichensatz von Farbname
NAME_LENGTH	INTEGER	Länge Farbname
RED	INTEGER	Rote Komponente
GREEN	INTEGER	Grüne Komponente
BLUE	INTEGER	Blaue Komponente


VG_DRAWING

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
LONGID	INTEGER	Long Feld-ID


VG_FONT

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
FONTID	INTEGER	Schriftart-ID
COUNT	INTEGER	Anzahl von Objekten, die Schriftart referenzieren
NAME	RAW(255)	Schriftartname
NAME_SET	INTEGER	Schriftartname Zeichensatz
NAME_LEN	INTEGER	Schriftartname Länge
FONT_SIZE	INTEGER	Schriftgrad
STYLE	INTEGER	Schriftstil
WEIGHT	INTEGER	Schriftstärke
WIDTH	INTEGER	Schriftbreite
IMAGETEXT	INTEGER	Schriftart Bildtext
KERNING	INTEGER	Schriftart Kerning
CHAR_SET	INTEGER	Schriftart Zeichensatz


VG_IMAGE

Name	 Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer-ID
MODID	INTEGER	Modul-ID
ITEMID	INTEGER	Instanz-ID
IMAGEID	INTEGER	Bild-ID
COUNT	INTEGER	Anzahl von Objekten, die ein Bild referenzieren
LONGID	INTEGER	Long Feld-ID


Über Gemeinsam benutzte Oracle-Produkttabellen

Gemeinsam benutzte Oracle-Produkttabellen enthalten Moduldefinitionen und können mit anderen Oracle-Produkten gemeinsam benutzt werden. Über Datenbankansichten und öffentliche Synonyme können Benutzer Informationen über Module anzeigen, die ihnen gehören oder für die sie die Zugriffsberechtigung erhalten haben.


Gemeinsam benutzte Oracle-Produkttabellen

DE_ATTACHED_LIBS

ROSLFDESC

ROSSTRINGS

TOOL_ACCESS

TOOL_LRAW

TOOL_MODULE

TOOL_PLSQL


DE_ATTACHED_LIBS

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Eigentümer
MODID	DECIMAL(10)	Modul-ID
ITEMID	DECIMAL(10)	Bibliotheksnummer (Reihenfolge in der Liste)
LIBNAME	VARCHAR(30)	Bibliotheksname
LIBMODE	DECIMAL(10)	Bibliotheksmodus (dies ist eine Bitmaske)


ROSLFDESC

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Benutzer
MODID	DECIMAL(10)	Modul-ID
ID	DECIMAL(10)	Long Feld-ID
LPAGEID	DECIMAL(10)	Logische Seiten-Folgenummer
LFLEN	DECIMAL(10)	Long Feld-Länge
N	DECIMAL(10)	Anzahl von Seiten
DATALEN	DECIMAL(10)	Länge der Daten auf dieser Seite
DATA	LONG RAW	Daten (Folge)


ROSSEQUENCES

Name	Typ	   Beschreibung

OWNER	VARCHAR2(30)	Eigentümer
MODID	DECIMAL(10)	Modul-ID
SEQNAME	VARCHAR2(30)	Folgename
MIN_VAL	DECIMAL(10)	Minimalwert
MAX_VAL	DECIMAL(10)	Maximalwert
INC_BY	DECIMAL(10)	Schrittweite
CURRVAL	DECIMAL(10)	Aktueller Wert
NEXTVAL	DECIMAL(10)	Nächster Wert
CACHESIZE	DECIMAL(10)	Cache-Größe


ROSSTRINGS

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Benutzer
MODID	DECIMAL(10)	Modul-ID
GROUPID	DECIMAL(10)	Gruppen-ID
STRINGID	DECIMAL(10)	Kennzeichnet die Instanz der Folge im Modul
LFID	DECIMAL(10)	Zur ROS-Benutzung
LEN length	DECIMAL(10)	Daten (Folge)
CS	DECIMAL(10)	Zeichensatz
STR	LONG RAW	Daten (Folge)


TOOL_ACCESS

Name	Typ	   Beschreibung

PRODUCT	VARCHAR(30)	Produktname
OWNER	VARCHAR(30)	Moduleigentümer
MODID	INTEGER	Modul-ID
GRANTEE	VARCHAR(30)	Benutzer, dem Zugriff erteilt wurde


TOOL_LRAW

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Moduleigentümer
MODID	DECIMAL(10)	Modul-ID
ID	DECIMAL(10)	LONG RAW Feld-ID
LPAGEID	DECIMAL(10)	LONG RAW Seiten-ID
LFLEN	DECIMAL(10)	LONG RAW Feldlänge
N	DECIMAL(10)	LONG RAW Feldfolgenummer
ATALEN	DECIMAL(10)	LONG RAW Feldlänge
DATA	LONG RAW	LONG RAW Abholrate


TOOL_MODULE

Name	Typ	   Beschreibung

PRODUCT	VARCHAR(30)	Produktname
MODTYPE	VARCHAR(30)	Modultyp
MODID	DECIMAL(10)	Modul-ID
NEXT_ITEMID	DECIMAL(10)	Nächste verfügbare interne ID
OWNER	VARCHAR(30)	Moduleigentümer
MODNAME	VARCHAR(30)	Modulname
CREATOR	VARCHAR(30)	Benutzer, der das Modul erstellt hat
CREATE_DATE	DATE	Erstelldatum
CREATE_VER	DECIMAL(10)	Produktversion beim Erstellen
MODIFIER	VARCHAR(30)	Benutzer, der das Modul zuletzt geändert hat
MOD_DATE	DATE	Änderungsdatum
MOD_VER	DECIMAL(10)	Produktversion bei Änderung
COPYRIGHT	VARCHAR(250)	Modul Copyright-Hinweis
REQ_ROLE	VARCHAR(30)	Rolle zur Ausführung dieses Moduls
TCS_VER	DECIMAL(8)	Version von TCS
VGS_VER	DECIMAL(8)	Version von VGS
DE_VER	DECIMAL(8)	Version von DE
ROS_VER	DECIMAL(8)	Version von ROS


TOOL_PLSQL

Name	Typ	   Beschreibung

OWNER	VARCHAR(30)	Moduleigentümer
MODID	DECIMAL(10)	Modul-ID
ITEMID	DECIMAL(10)	Objekt (Programmblock)-ID
OBJECT_ID	DECIMAL(10)	Zugehörige Objekt-ID (optional)
TYPE	DECIMAL(4)	Programmblocktyp (optional, produktdefiniert)
NAME	VARCHAR(30)	Name des Programmblocks
PLSLFID_ST	DECIMAL(10)	LONG Feld-ID von PL/SQL-Quelltext
PLSLFID_EP	DECIMAL(10)	LONG Feld-ID von codiertem PL/SQL-Programmblock


Schriftzuordnung

Wenn Sie eine grafische Anwendung mit einem Zeichensatz (z.B. WE8ISO8859P1) erstellen und dann zur Laufzeit einen anderen Zeichensatz (EEC8EUROPA3) verwenden, müssen Sie unbedingt die entsprechenden Einträge in Ihrer Schriftart-Aliasdatei (uifont.ali) vornehmen, um die richtigen Schriftarten zwischen den Zeichensätzen zuzuordnen.

Um die von Graphics Builder benutzten Schriftartaliase zu definieren, bearbeiten Sie uifont.ali. Für jede Schriftart, für die Sie einen Alias erstellen möchten, nehmen Sie folgenden Eintrag in der Datei vor:

source_font = destination_font

Für jede Schriftart können Sie folgende Attribute angeben:

<Schriftart>.<Schriftgrad>.<Stil>.<Stärke>.<Breite>.<Zeichensatz>

<Schriftart> muß dem Namen (Zeichenfolge/Bezeichner) einer Schriftart entsprechen. Bei <Stil>, <Stärke>, <Breite> und <Zeichensatz> kann es sich entweder um einen numerischen Wert oder einen vordefinierten Bezeichner bzw. eine vordefinierte Zeichenfolge handeln. So sind z.B. sowohl US7ASCII und 1 gültige Werte und beziehen sich auf denselben Zeichensatz. Bei der Angabe für <Schriftgrad> muß es sich um einen spezifischen Schriftgrad in Punkt handeln.

Als nächstes finden Sie eine Liste der erkannten Namen und ihrer numerischen Äquivalente:

Stile	Numerischer Wert
----------------------------------------
Normal	0
Kursiv	1
Schräg
Unterstrichen	4
Umriß	8
Schatten	16
Invers	32
Durchgestrichen	64
Blinken	128

Stärken	Numerischer Wert
---------------------------------------
Ultramager	1
Extramager	2
Mager	3
Halbmager	4
Mittel	5
Halbfett	6
Fett	7
Extrafett	8
Ultrafett	9
Ultraschmal	1
Extraschmal	2
Schmal	3
Halbschmal	4
Normal	5
Halbbreit	6
Breit	7
Extrabreit	8
Ultrabreit	9

Stile können mit dem Pluszeichen (+) kombiniert werden. Zum Beispiel:

Arial..Kursiv+Durchgestrichen = Helvetica.12.Kursiv.Fett

Bei der Zuordnung spielt die Groß-/Kleinschreibung in den Zeichenfolgen keine Rolle. Beim Nachschlagen muß die Schreibweise der Schriftarten möglicherweise berücksichtigt werden je nach Plattform und Oberfläche, so daß bei Namen auf der rechten Seite mit Vorsicht vorgegangen werden muß. Sie werden jedoch ohne Berücksichtigung der Groß-/Kleinschreibung zugeordnet.

Der umgekehrte Schrägstrich (\) wird als Fortsetzungszeichen betrachtet. Kommentare können wie folgt aufgenommen werden.

/* Kommentar */
# Kommentar
; Kommentar

Überprüfung der Schriftzuordnung

Um zu überprüfen, ob die Datei uifont.ali richtig ist, verwenden Sie fontchk. Dieses Programm prüft, ob Ihre Datei keine Fehler enthält. Geben Sie folgenden Befehl ein, um die Schriftzuordnungsdatei zu analysieren:

fontchk filename

Beispiel für die Schriftzuordnung

Als nächstes finden Sie ein Beispiel für eine Schriftzuordnungsdatei, die mit Graphics Builder benutzt werden könnte.

[ Global ]  # Put mappings for all surfaces here.

# Mapping from MS Windows

Arial             = helvetica
"Courier New"     = courier
"Times New Roman" = times
Modern            = helvetica
"MS Sans Serif"   = helvetica
"MS Serif"        = times
"Small Fonts"     = helvetica

# Mapping from Macintosh

"New Century Schlbk" = "new century schoolbook"
"New York"           = "times"
[ Printer ]  # Put mappings for all printers here.
[ Printer:PostScript1 ]  /* Put mappings for PostScript
                            level 1 printers here. */

# Mapping from MS Windows

Roman             = palatino
Script            = "itc zapf chancery"
FixedSys          = courier
System            = helvetica
# Mapping from Macintosh
"Avant Garde"     = "itc avant garde gothic"

# Mapping from Motif display

fixed             = courier
clean             = times
lucidatypewriter  = courier
lucidabright      = times

# Sample Kanji font mappings

courier...Medium..JEUC   = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
courier...Bold..JEUC     = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
courier...Medium..SJIS   = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
courier...Bold..SJIS     = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
times...Medium..JEUC     = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
times...Bold..JEUC       = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
times...Medium..SJIS     = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
times...Bold..SJIS       = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
helvetica...Medium..JEUC = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
helvetica...Bold..JEUC   = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
helvetica...Medium..SJIS = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
helvetica...Bold..SJIS   = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC

[ Printer:PostScript2 ]  /* Put mappings for PostScript
                            level 2 printers here. */

# Mapping from MS Windows

Roman             = palatino
Script            = "itc zapf chancery"
FixedSys          = courier
System            = helvetica

# Mapping from Macintosh

"Avant Garde"     = "itc avant garde gothic"

# Mapping from Motif display

fixed             = courier
clean             = times
lucidatypewriter  = courier
lucidabright      = times

# Sample Kanji font mappings

courier...Medium..JEUC   = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
courier...Bold..JEUC     = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
Courier...Medium..SJIS   = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
courier...Bold..SJIS     = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
times...Medium..JEUC     = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
times...Bold..JEUC       = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
times...Medium..SJIS     = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
times...Bold..SJIS       = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
helvetica...Medium..JEUC = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
helvetica...Bold..JEUC   = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC
helvetica...Medium..SJIS = \
   "Ryumin-Light-83pv-RKSJ-H"...Light..JEUC
helvetica...Bold..SJIS   = \
   "GothicBBB-Medium-83pv-RKSJ-H"...Medium..JEUC

[ Display ]  # Put mappings for all display surfaces here.

[ Display:Motif ]  # Put mappings for Motif displays here

# Mapping from MS Windows

Courier           = courier
Roman             = lucida
Script            = lucidabright
FixedSys          = fixed
System            = lucida

# Mapping from Macintosh

"Avant Garde"     = helvetica
"Bookman"         = times
[ Display:CM ]     # Put mappings for all CM displays here.

# These are DEC-specific, and may need localization

*..Blink          = Blinking
*..Inverted+Underline.Bold = ReverseBoldUnderline
*..Inverted+Underline.     = UnderlineReverse
*..Underline.Bold = UnderlineBold
*..Inverted.Bold  = ReverseBold
*...Bold          = Bold
*..Underline      = Underline
*..Inverted       = Reverse
*                 = Plain    # The font of last resort


Schriftzuordnungsdatei

Graphics Builder unterstützt Schriftartaliase. Die Schriftzuordnungen von Graphics Builder werden in der Datei uifont.ali definiert. Sie können diese Zuordnungen ändern, indem Sie die Datei bearbeiten. Der Pfad der Datei variiert je nach Betriebssystem.

Hinweis: Graphics Builder sucht nach der Schriftzuordnungsdatei in dem angegebenen Pfad über die Umgebungsvariable TK2_FONTALIAS. Wenn TK2_FONTALIAS nicht angegeben wird, sucht Graphics Builder in dem Standardpfad Ihres Betriebssystems.


Unterstützte Funktionen für User Exits

Wenn Sie einen User Exit mit einer der Host-Sprachen von ORACLE Precompiler schreiben, kann der User Exit folgende Funktionen ausführen:

•	Prozedurale Vorgänge (über Host-Sprachen-Anweisungen)

•	Zusätzliche Funktionen (über die Anweisungen in der folgenden Tabelle)

Verfügbare Anweisungen	Verwendung

EXEC SQL	Führt SQL-Befehle aus.
EXEC TOOLS GET	Übergibt Werte von Graphics Builder an einen User Exit.
EXEC TOOLS SET	Übergibt Werte von einem User Exit an Graphics Builder.
EXEC TOOLS MESSAGE	Übergibt eine Meldung und einen optionalen Meldungscode von einem User Exit an Graphics Builder
EXEC TOOLS GET CONTEXT	Übergibt einen Kontextzeiger von Graphics Builder an einen User Exit.
EXEC TOOLS SET CONTEXT	Übergibt einen Kontextzeiger von einem User Exit an Graphics Builder.
EXEC ORACLE	Führt Optionen von ORACLE Precompiler aus.


EXEC SQL

Diese Anweisung ist ein SQL-Befehl, vor dem "EXEC SQL" steht. Mit EXEC SQL-Anweisungen können Sie jeden SQL-Befehl in einem User Exit von ORACLE Precompiler ausführen. Mit diesen Anweisungen können Sie Daten in der Datenbank von einem User Exit auswählen und verarbeiten.

Syntax:	EXEC SQL sql_Anweisung;

wobei:

sql_Anweisung	eine beliebige gültige ORACLE SQL-Anweisung ist, mit Ausnahme der eingeschränkten Befehle, die in diesem Abschnitt beschrieben werden.

Sie müssen keinen ausdrücklichen CONNECT-Befehl bei einem User Exit von ORACLE Precompiler ausführen, da Graphics Builder die Verbindung automatisch herstellt. ORACLE unterstützt jedoch keine gleichzeitigen Anmeldungen. Weitere Informationen finden Sie im Programmer's Guide to the ORACLE Precompilers.

Hinweis: Graphics Builder SPEICHERT keine Änderungen an der Datenbank nach der Ausführung einer grafischen Anwendung (mit G30DES, G30RUN und/oder G30BAT). Wenn Sie die Datenbank mit COMMIT speichern möchten, können Sie dies mit dem User Exit tun.


EXEC TOOLS GET

Diese Anweisung übergibt einen Wert von Graphics Builder an einen User Exit von ORACLE Precompiler. Speziell wird der Wert eines Graphics Builder-Parameters in eine Variable der Host-Sprache gesetzt. Nachdem Graphics Builder einen Wert an einen User Exit übergeben hat, kann der User Exit den Wert zur Berechnung, Verarbeitung oder Aktualisierung verwenden.

Syntax:	EXEC TOOLS GET display_variable_1[,
display_variable_2, ...]INTO :host_variable_1[,
:host_variable_2, ...];

wobei:

display_variable_n	den Namen des Graphics Builder-Parameters enthält, aus dem ein Wert gelesen wird.

host_variable_n	der Name der Variablen der Host-Sprache ist, in die Sie einen Wert einlesen.

Hinweise:

1	display_variable_n kann eine Referenz auf einen der folgenden Werte sein:

   einen Graphics Builder-Parameter

  eine Variable der Host-Sprache (mit vorangestelltem Doppelpunkt), deren Wert ein Parametername ist.

2	Graphics Builder übergibt die Argumente der grafischen Anwendung an den User Exit in einem SQL-Standardformat:

  Zeichenfolgen werden in einfachen Anführungszeichen übergeben (siehe Regel 1 unten).

  Konstanten werden unverändert übergeben (d.h. ohne Apostrophe).

  Datumsangaben werden in dem Format übergeben, das mit der Formatmaske des Parameters angegeben wird, und stehen in einfachen Anführungszeichen (siehe Regel 1 unten).

  Host-Variablen haben einen vorangestellten Doppelpunkt (:).

In der folgenden Tabelle finden Sie Beispiele dafür, wie Graphics Builder Argumente an einen User Exit übergibt:

Wert	Ergebnis

'Gipfel'	So wird der Zeichenfolgenwert Gipfel der Konstanten übergeben.
413.60	So wird der numerische Wert 413.60 der Konstanten übergeben.
'19910414083000'	So wird der Datumswert 14. April 1991, 8:30 AM mit einer Formatmaske von YYYYMMDDHH24MISS übergeben.
:holder1	So wird der Wert der Host-Variablen holder 1 übergeben.
(Weitere Informationen über Einschränkungen bei Variablen der Host-Sprache finden Sie im Programmer's Guide to the ORACLE Precompilers.)

Regeln:

1	Einige der Host-Sprachen verwenden doppelte und keine einfachen Anführungszeichen.

2	Wenn die Daten eines Graphics Builder-Objekts länger sind als 32 K, wird der von EXEC TOOLS GET zurückgegebene Wert auf die linksbündigsten 32 K Zeichen abgeschnitten.


EXEC TOOLS SET

  Verwandte Themen

Diese Anweisung übergibt einen Wert von einem User Exit von ORACLE Precompiler an Graphics Builder. Sie setzt speziell den Wert einer Konstanten bzw. den Wert einer Variablen der Host-Sprache in einen Graphics Builder-Parameter.

Syntax:	EXEC TOOLS SET display_variable[, ...]VALUES
({:host_variable | constant}[, ...]);

wobei:

display_variable	der Name des Graphics Builder-Parameters ist, in den Sie einen Wert einlesen.

host_variable	der Name der Variablen der Host-Sprache ist, aus der Sie einen Wert lesen.

Constant	die Konstante ist, die Sie gerade lesen.

Hinweis: Argumente werden identisch an bzw. von User Exit übergeben.

Regeln:

1	Daten, die länger sind als 32 K Zeichen, können nicht mit EXEC TOOLS SET in einen Graphics Builder-Parameter gesetzt werden.


EXEC TOOLS GET CONTEXT

Diese Anweisung übergibt einen Kontext von einem User Exit von ORACLE Precompiler zu einem anderen. Mit dieser Anweisung können Sie insbesondere Informationen von einem User Exit und einem anderen ABRUFEN, ohne daß globale Variablen erforderlich sind.

Syntax:	EXEC TOOLS GET CONTEXT application_context_name INTO
:host_variable_pointer;

wobei:

application_context_name	der Name des Kontexts ist, auf den Sie zugreifen möchten.

host_variable_pointer	der Name der Zeigervariablen der Host-Sprache ist, in die Sie den Kontext setzen.

Regeln:

1	Um einen Kontext mit GET abzurufen, muß User Exit in demselben Prozeß wie die ausführbare Graphics Builder-Datei stehen, in der er verknüpft ist (d.h. der User Exit darf keinen Unterprozeß generieren und erwarten, daß der Unterprozeß auf den Kontext zugreifen kann).


EXEC TOOLS SET CONTEXT

Diese Anweisung erstellt einen benannten Kontext. Mit Kontexten können Sie User Exit-übergreifende Informationen verwenden, ohne daß globale Variablen erforderlich sind. Wenn ein User Exit namens A einen Kontext erstellt, können Ihre anderen User Exits, die mit A verknüpft sind, alle Informationen abrufen, die in dem Kontext gefunden werden, den A erstellt hat.

Syntax:	EXEC TOOLS SET CONTEXT :host_variable_pointer BY
application_context_name;

wobei:

host_variable_pointer	der Zeiger auf den Kontext ist, den Sie erstellen.

application_context_name	der Name des Kontexts ist.

Regeln:

1	Um einen Kontext gemeinsam zu benutzen, muß der User Exit in demselben Prozeß stehen, wie die ausführbare Graphics Builder-Datei, in der er verknüpft ist (d.h. der User Exit darf keinen Unterprozeß generieren und erwarten, daß der Unterprozeß auf den Kontext zugreifen kann).


 EXEC ORACLE

Dies ist eine Anweisung, bei der es sich nicht um eine SQL-Standardanweisung handelt. Sie wird zur Ausführung der ORACLE Precompiler-Optionen verwendet. Weitere Informationen finden Sie im Programmer's Guide to the ORACLE Precompilers.

Regeln:

1	Graphics Builder speichert keine Änderungen an der Datenbank nach der Ausführung einer grafischen Anwendung (mit G30DES, G30RUN und/oder G30BAT). Wenn Sie die Änderungen mit COMMIT speichern möchten, können Sie dies mit Ihrem User Exit tun.


EXEC TOOLS MESSAGE

  Verwandte Themen

Diese Anweisung übergibt eine Meldung von einem User Exit von ORACLE Precompiler an Graphics Builder. Graphics Builder zeigt die Meldung wie jede andere Graphics Builder-Meldung an (z.B. als Warnmeldung an das Standardausgabegerät Ihres Systems usw.).

Syntax:	EXEC TOOLS MESSAGE msg_text [msg_number];

wobei:

msg_text	maximal 190 minus msg_text alphanumerischen Zeichen ist, die als Meldung ausgegeben werden sollen.

msg_number	eine Zahl von 0-9999 ist, die als Meldungsnummer ausgegeben werden muß.

Hinweis: Sie können eine Fehlermeldung auch mit PL/SQL definieren und weiterleiten.


Allgemeine Regel

Sie können keine Bildschirm-E/A der Host-Sprache von einem User Exit von ORACLE Precompiler ausführen. Diese Einschränkung ist vorhanden, da die Laufzeitroutinen, die eine Host-Sprache zur Ausführung einer Bildschirm-E/A verwenden, einen Konflikt mit den Routinen darstellen, mit denen Graphics Builder die eigene E/A ausführt.

Sie können die Datei-E/A der Host-Sprache von einem User Exit ausführen.


Syntax eines übergebenen User Exit-Aufrufs

Das User Exit-Programm empfängt den User Exit-Aufruf als eine Zeichenfolge, die den ersten user_exit_name enthält und dann optional eine Argument_Liste. Die Argumente in Argument_Liste werden durch ein Leerzeichen getrennt.

Beispiele:

1	Der folgende Aufruf:

OG_USER_EXIT('quota 10 20 Q4');

wird an den User Exit in Form von:

'quota 10 20 Q4'

2	Der folgende Aufruf:

OG_USER_EXIT('quota');

wird an den User Exit wie folgt übergeben:

'quota'

Regeln:

1	User Exit - und nicht Graphics Builder - muß die User Exit-Aufruffolge analysieren.

2	Wenn zwischen Argumenten, die mit dem User Exit-Namen übergeben werden, mehr als ein Leerzeichen steht, löscht Graphics Builder die zusätzlichen Leerstellen, bevor es die Zeichenfolgen an den User Exit übergibt.

So wird z.B. der folgende Aufruf:

'quota 10     20  Q4'

wie folgt an den User Exit übergeben:

'quota 10 20 Q4'


Attributsätze benutzen

•	Überblick

•	Vordefinierte Abkürzungsprozeduren

•	Beschreibung von Attributsätzen


Überblick

Viele der vordefinierten Unterprogramme akzeptieren ein Argument, das als "Attributsatz" beschrieben wird. Ein "Attribut" ist einfach eine Eigenschaft eines beliebigen Graphics Builder-Objekts. So ist z.B. ein Attribut eines Rechtecks die Vordergrundfüllfarbe. Zwei Attribute eines Bogens sind der Anfangswinkel und der Endwinkel. Graphics Builder hat genügend Attribute identifiziert, um Struktur und Erscheinungsbild jedes Objekts vollständig zu beschreiben.

Graphics Builder verfügt über verschiedene neue vordefinierte variable Datentypen zur Steuerung dieser Attribute, von denen die meisten als RECORDs definiert sind. (Weitere Informationen über den Datentyp RECORD finden Sie in PL/SQL User's Guide and Reference.) Jedes Feld in einem dieser Sätze stellt ein bestimmtes Attribut dar. Somit referenziert ein "Attributsatz" eine bestimmte Variable, deren Typ Sie als einen dieser neuen Record-Datentypen deklariert haben.

Als nächstes sehen Sie z.B. die Typdefinition von OG_LINE_ATTR, dem Attributsatz für eine Linie:

TYPE og_line_attr IS RECORD
(mask        NUMBER(1,1),
 startpt     og_point,
 endpt       og_point,
 arrowstyle  NUMBER(1,0)
);

Dieser Satz gibt Attribute für den Anfangspunkt, den Endpunkt und den Pfeilstil einer Linie an (das Attribut Maske wird später beschrieben).

Alle Attribute eines Objekts werden in einem von mehreren Attributsätzen dargestellt. Um eines dieser Attribute programmgesteuert zu ändern (z.B. um das Füllmuster zu ändern), müssen Sie die Werte der entsprechenden Felder in dem entsprechenden Attributsatz ändern und den Attributsatz dann an eine Prozedur oder Funktion übergeben. (Beachten Sie, daß es die Prozeduren und Funktionen sind, die die von Ihnen gewünschten Aktionen ausführen; Sie müssen jedoch einen Attributsatz benutzen, um der Prozedur oder Funktion genau anzugeben, welche Aktion ausgeführt werden soll.)


Attributklassen

Einige Attributsätze enthalten Attribute, die für viele Objekttypen gelten, während andere Attribute enthalten, die nur für einen Objekttyp spezifisch sind. So kann z.B. jedes Objekt einen Namen haben, jedoch können nur Textobjekte einen Schriftgrad haben.

Alle Attribute wurden in folgende Klassen eingeordnet:

•	Allgemein

•	Grafisch

•	Objektspezifisch

Allgemeine Attributte

Allgemeine Attribute gelten für die meisten Objektklassen. Die meisten Objekte haben z.B. einen Namen, eine verknüpfte Schaltflächenprozedur oder ein übergeordnetes Objekt.

Grafische Attribute

Grafische Attribute gelten für viele Objektklassen, jedoch nicht für alle. Sie können nur für grafische Objekte angewendet werden (Objekte, die mit einem der Grafikwerkzeuge im Layouteditor erstellt werden können). So kann z.B. ein grafisches Attribut wie "Füllfarbe" benutzt werden, um Rechtecke, Bogen, Symbole usw. zu beschreiben. Dieses Attribut ist jedoch für die Beschreibung eines Bildes bedeutungslos - das keine Füllfarbe hat. Gleichermaßen kann ein Gruppenobjekt nicht mit grafischen Attributen beschrieben werden. (Während eine Gruppe kein grafisches Objekt ist, können die einzelnen Komponenten der Gruppe sehr wohl grafische Objekte sein. In diesem Fall können dann grafische Attribute für diese Komponenten angewendet werden.)

Objektspezifische Attribute

Ein objektspezifisches Attribut kann nur für eine spezifische Objektklasse angewendet werden. So ist z.B. 'Anfangswinkel' ein Attribut, das nur Bogen beschreibt und keine Rechtecke, Linien oder andere Objekte. Unter Umständen möchten Sie die 'Anzahl von untergeordneten Objekten' wissen, aus denen ein Gruppenobjekt besteht, es wäre jedoch bedeutungslos, dieses Attribut mit einer anderen Objektklasse zu verwenden. Graphics Builder hat Attribute identifiziert, die für Anwendungs-, Bogen-, Gruppen-, Bild-, Linien-, Polygon-, Rechteck-, abgerundete Rechteck-, Symbol-, Text- und Fensterobjekte spezifisch sind.

Ein vordefinierter Attributsatz wurde für allgemeine Attribute definiert und ein weiterer Attributsatz für grafische Attribute. Außerdem wurde ein separater Attributsatz für jede Sammlung von objektspezifischen Attributen definiert.

Nachfolgend eine Liste der Graphics Builder-Objekte und Attributsätze, die für jedes der Objekte gelten:

Objektklasse	Attributsätze
Anwendung	Anwendung
Bogen	Allgemein Grafisch Bogen
Diagramm	Allgemein Gruppen Diagramm
Diagrammelement	Grafisch Diagrammelement
Grafische Anwendung	Grafische Anwendung
Grafisch	Allgemein Grafisch
Gruppe	Allgemein Gruppe
Bild	Allgemein Bild
Linie	Allgemein Grafisch Linie
Polygon	Allgemein Grafisch Polygon
Drucker	Drucker
Abfrage	Abfrage
Rechteck	Allgemein Grafisch Rechteck
Abgerundetes Rechteck	Allgemein Grafisch Abgerundetes Rechteck
Klang	Klang
Symbol	Allgemein Grafisch Symbol
Text	Allgemein Grafisch Text
Timer	Timer
Fenster	Fenster


Kombinierte Attributsätze

Neben den oben beschriebenen Attributsätzen definiert Graphics Builder auch "kombinierte Attributsätze". Ein kombinierter Attributsatz kombiniert alle Attributsätze in einer einzigen Variablen, die erforderlich sind, um ein Objekt vollständig zu beschreiben. Wie aus dem Namen hervorgeht, handelt es sich um einen anderen Satz, jedes dessen Felder ist jedoch ein allgemeiner, grafischer oder objektspezifischer Attributsatz. In den meisten Fällen können Sie also einen einzigen kombinierten Attributsatz benutzen, um alle Attribute eines Objekts zu steuern, anstatt mehrere separate Attributsätze benutzen zu müssen, um jede der Attributklassen des Objekts darzustellen.

So enthält z.B. der kombinierte Rechteck-Attributsatz drei Felder, die die allgemeinen, grafischen und Rechteck-Attributsätze darstellen. Der kombinierte Bild-Attributsatz enthält nur zwei Felder, die die allgemeinen und Bild-Attributsätze darstellen.

Als nächstes sehen Sie die Typdefinition von OG_LINE_CA, dem kombinierten Attributsatz für ein Linienobjekt:

TYPE og_line_ca IS RECORD
(line_caob  og_generic_attr,  /* generic attribute record*/
 line_caoh  og_graphic_attr,  /* graphic attribute record */
 line_caol  og_line_attr      /* line attribute record */
);

Dieser kombinierte Attributsatz enthält drei Felder, die allgemeine, grafische und Linien-Attributsätze darstellen.


Maskenattribute

Jeder Attributsatz (jedoch nicht kombinierte Attributsatz) verfügt über ein numerisches Feld, das als "Maske" bezeichnet wird. Der Wert dieses Feldes gibt an, welche Attribute in dem Attributsatz geändert (d.h. eingestellt) oder geprüft (d.h. eingelesen) werden sollen. Wenn Sie einen Attributsatz als Argument für eine Prozedur oder Funktion verwenden, benutzt diese Prozedur oder Funktion die Maske, um festzustellen, welche Attribute beachtet werden müssen.

Angenommen, Sie möchten nur die Vordergrundfüllfarbe eines Objekts ändern, indem Sie das Attribut ffcolor in einem grafischen Attributsatz einstellen, und diesen Attributsatz und das Objekt-Handle als Argumente an die Prozedur OG_SET_ATTR übergeben. Die Prozedur weiß nicht, welche Attribute eingestellt werden sollen; sollen alle grafischen Attribute des Objekts oder nur einige geändert werden? Diese Angaben werden anhand des Maskenattributs des Attributsatzes ermittelt.

Der Wert eines Maskenattributs gibt an, welche Attribute in dem Attributsatz eine Prozedur oder Funktion benutzen soll. Dieser Wert wird als "Maskenwert" bezeichnet.


Maskenkonstanten

Damit Sie den entsprechenden Maskenwert für einen Attributsatz bestimmen können, hat Graphics Builder jedes Attribut mit einer anderen vordefinierten numerischen Konstanten verknüpft, die als "Maskenkonstante" bezeichnet wird.

Als nächstes sehen Sie eine weitere Auflistung des Linien-Attributsatzes, diesmal mit den zugehörigen Maskenkonstanten:

TYPE og_line_attr IS RECORD    Maskenkonstansten:
(mask       NUMBER(1,0),
 startpt    og_point,          OG_STARTPT_LINEA
 endpt      og_point,          OG_ENDPT_LINEA
 arrowstyle NUMBER(1,0)        OG_ARROWSTYLE_LINEA
);
                               OG_ALL_LINEA
                               OG_NONE_LINEA

Nachdem Sie festgestellt haben, welche Attribute in einem Attributsatz benutzt werden sollen, berechnen Sie die Summe der Maskenkonstanten, die mit diesen Attributen verknüpft sind. Das Ergebnis ist ein Maskenwert, der nur diese Attribute darstellt. Wenn Sie das Maskenattribut in dem Attributsatz auf diesen Maskenwert einstellen, beachtet jede Prozedur oder Funktion, an die Sie diesen Attributsatz übergeben, nur diese Attribute.

Um z.B. das Attribut startpt im obigen Linien-Attributsatz zu ändern, deklarieren Sie zuerst eine Variable dieses Typs:

my_variable   og_line_attr;

Danach stellen Sie den neuen Wert des Attributs startpt ein:

my_variable.startpt := new_point;

Schließlich stellen Sie die Maske so ein, daß angegeben wird, daß ein neuer Anfangspunkt festgelegt werden soll:

my_variable.mask := OG_STARTPT_LINEA;

(Beachten Sie, daß diese Folge von Aktionen einen Attributsatz nur zur Benutzung durch eine Prozedur oder Funktion vorbereitet. Anhand der Beschreibung der spezifischen Prozedur oder Funktion können Sie verstehen, in welcher Beziehung dies zu der tatsächlichen Änderung eines Objekts steht.)

Wenn neue Werte sowohl für den Anfangs- als auch den Endpunkt der Linie eingestellt werden sollen, müssen Sie die Maske entsprechend einstellen. In diesem Fall wäre der entsprechende Maskenwert die Summe der Maskenkonstanten für diese beiden Attribute:

my_variable.mask := OG_STARTPT_LINEA +  OG_ENDPT_LINEA;

Neben den Maskenkonstanten für jedes Attribut enthält jeder Attributsatz zwei zusätzliche Attribute zur Angabe, daß alle Attribute von einer Prozedur oder Funktion benutzt werden sollen, oder daß keine benutzt werden sollen. Bei dem Linien-Attributsatz sind diese Maskenkonstanten OG_ALL_LINEA und OG_NONE_LINEA.

Beachten Sie, daß diese Maskenkonstanten Zahlen sind und als solche behandelt werden können. Sie können die Maskenkonstanten nicht nur addieren, um mehrere Attribute anzugeben, sondern auch subtrahieren. Um z.B. anzugeben, daß alle Attribute mit Ausnahme des Endpunkts von einer Prozedur oder Funktion betroffen sein sollen, können Sie den Maskenwert folgendermaßen einstellen:

my_variable.mask := OG_ALL_LINEA - OG_ENDPT_LINEA;

In einigen Fällen wird dieselbe Maskenkonstante zur Darstellung mehrerer Attribute mit einem Attributsatz benutzt. Wenn diese Maskenkonstante zur Berechnung des Maskenwertes benutzt wird, werden alle von dieser Konstanten dargestellten Attribute von der Prozedur oder Funktion benutzt, an die der Attributsatz übergeben wird.

Masken in kombinierten Attributsätzen

Weiter oben wurde angegeben, daß alle Attributsätze ein Maskenattribut enthalten, kombinierte Attributsätze hingegen nicht. Wenn Sie einen kombinierten Attributsatz als Argument an eine Prozedur übergeben, benutzt diese Prozedur die Masken von jedem der Attributsätze, die darin enthalten sind.

Angenommen, Sie deklarieren eine Variable als kombinierten Linien-Attributsatz (denken Sie daran, daß ein kombinierter Linien-Attributsatz Attributsätze für allgemeine, grafische und linienspezifische Attribute enthält):

comb_variable   og_line_ca;

Als nächstes möchten Sie einige der Attribute des Satzes ändern. In dem allgemeinen Attributsatz möchten Sie keine Werte ändern; in dem grafischen Attributsatz möchten Sie die Werte der Attribute dashstyle und capstyle ändern. In dem Linien-Attributsatz möchten Sie nur den Wert des Attributs arrowstyle ändern. Als nächstes werden die möglichen Anweisungen aufgeführt:

comb_variable.line_caoh.dashstyle := new_dashstyle;
comb_variable.line_caoh.capstyle := new_capstyle;
comb_variable.line_caol.arrowstyle := new_arrowstyle;

Bevor Sie diesen kombinierten Attributsatz an eine Prozedur übergeben, die Ihre Änderungen implementiert, müssen Sie die Maske in jedem Attributsatz so einstellen, daß angegeben wird, welche Attribute die Prozedur in diesem Datensatz benutzen soll:

comb_variable.line_caob.mask := OG_NONE_GENERICA;
comb_variable.line_caoh.mask := OG_DASHSTYLE_GRAPHICA +
                                OG_CAPSTYLE_GRAPHICA;
comb_variable.line_caol.mask := OG_ARROWSTYLE_LINEA;

Beachten Sie, daß Sie die Maske für jeden Attributsatz innerhalb eines kombinierten Attributsatzes einstellen müssen, selbst wenn Sie keine Attribute innerhalb dieses Attributsatzes benutzen möchten. In diesem Fall würden Sie die Maske auf die Maskenkonstante einstellen, mit der angegeben wird, daß keine Attribute benutzt werden.

Nachdem Sie die Masken für jeden der einzelnen Attributsätze eingestellt haben, können Sie den kombinierten Attributsatz an eine Prozedur oder Funktion übergeben. Denken Sie daran, daß die Prozedur oder Funktion nur anhand des Maskenwertes eines Attributsatzes ermitteln kann, welche Attribute Sie benutzen möchten.


Erstellbare, Einstellbare, Einlesbare Attribute

Neben der Auflistung jedes unten beschriebenen Attributs finden Sie eine Angabe aus einem, zwei oder drei Buchstaben.

Buchstabe	Bedeutung
C	Gibt an, daß das Attribut erstellbar ist. Dies bedeutet, daß Graphics Builder den Wert erkennt, den Sie dem Attribut zuweisen, wenn das Objekt mit diesem Attribut das erste Mal erstellt wird. Wenn das Attribut nicht erstellbar ist, liefert Graphics Builder einen Standardwert beim Erstellen des Objekts.
S	Gibt an, daß das Attribut einstellbar ist. Dies bedeutet, daß Sie den Wert des Attributs einstellen können, indem Sie das entsprechende vordefinierte Graphics Builder-Unterprogramm aufrufen.
G	Gibt an, daß das Attribut einlesbar ist. Dies bedeutet, daß Sie den Wert des Attributs einlesen können, indem Sie das entsprechende vordefinierte Graphics Builder-Unterprogramm aufrufen.


Vordefinierte Abkürzungsprozeduren

Neben der oben beschriebenen Lösung mit Attributsätzen enthält Graphics Builder außerdem eine Reihe von vordefinierten Unterprogrammen, mit denen das Erstellen von Objekten und das Einlesen bzw. Einstellen von deren Attributen vereinfacht wird. Jedes dieser "Abkürzungs"-Unterprogramme kann benutzt werden, um ein einzelnes Attribut eines Objektes einzustellen oder einzulesen. Weitere Informationen finden Sie in dem Hilfethema Überblick über vordefinierte Graphics Builder-Prozeduren.

Um z.B. das Füll- und Randmuster eines Objekts mit Attributsätzen einzustellen, müssen Sie die neuen Füllmuster einstellen, die entsprechenden Masken einstellen und OG_SET_ATTR aufrufen:

PROCEDURE attr_rec_approach (my_obj OG_OBJECT) IS
   my_rec   og_graphic_ca;
BEGIN
   my_rec.graphic_caoh.fillpatt:='gray50';
   my_rec.graphic_caoh.edgepatt:='kangaroo';
   my_rec.graphic_caob.mask:=OG_NONE_GENERICA;
   my_rec.graphic_caoh.mask:=OG_FILLPATT_GRAPHICA+
                             OG_EDGEPATT_GRAPHICA;
   og_set_attr(my_obj, my_rec);
END;

Wenn Sie die Abkürzung verwenden, können Sie dasselbe Ergebnis mit nur zwei Prozeduraufrufen erzielen:

PROCEDURE shortcut_approach (my_obj OG_OBJECT) IS
BEGIN
   og_set_fillpatt(my_obj, 'gray50');
   og_set_edgepatt(my_obj, 'kangaroo');
END;

Vorteile

Wenn Sie Abkürzungsprozeduren anstelle von Attributsätzen benutzen, hat dies folgende Vorteile:

•	Es ist weniger PL/SQL-Code erforderlich, so daß die Entwicklungszeit reduziert wird.

•	Die Programmblöcke können einfacher gelesen und verstanden werden.

Nachteile

Wenn Sie Abkürzungsprozeduren anstelle von Attributsätzen verwenden, hat dies folgende Nachteile:

•	Die Methode ist weniger effizient. Weil Graphics Builder Attributsätze intern benutzt, muß Graphics Builder bei jedem Aufruf einer Abkürzungsprozedur einen neuen internen Attributsatz definieren und auffüllen. Außerdem dauert es länger, mehrere 'Satz'-Routinen als nur eine einzige auszuführen. Im obigen Beispiel ist die erste Prozedur (mit einem 'Satz'-Aufruf) etwa doppelt so schnell wie die zweite Prozedur (mit zwei 'Satz'-Aufrufen).

•	Ihre Anwendung muß sich auf Standardeinstellungen verlassen, da sich der Aufruf von mehreren Abkürzungsprozeduren für die Einstellung aller erforderlichen Attribute ernsthaft auf die Leistung der Anwendung auswirken kann.


Anwendungs-Attributsätze

Der Anwendungs-Attributsatz enthält Attribute, die mit der aktuellen Anwendung benutzt werden können.

TYPE og_app_attr IS RECORD            Maskenkonstanten:
(mask         NUMBER(3,0),
 cursor       VARCHAR2(255),          OG_CURSOR_APPA
 hscreen_res  NUMBER(5,0),            OG_SCREEN_RES_APPA
 vscreen_res  NUMBER(5,0),            OG_SCREEN_RES_APPA
 hlayout_res  NUMBER(10,0),           OG_LAYOUT_RES_APPA
 vlayout_res  NUMBER(10,0),           OG_LAYOUT_RES_APPA
 platform     NUMBER(1,0),            OG_PLATFORM_APPA
 username     VARCHAR2(255),          OG_USERNAME_APPA
 password     VARCHAR2(255),          OG_PASSWORD_APPA
 connection   VARCHAR2(255)           OG_CONNECTION_APPA
);
                                      OG_ALL_APPA
                                      OG_NONE_APPA

	Attribut	Beschreibung
SG	cursor	Der Name des zu benutzenden Mauscursors. Der Wert dieses Attributs kann aus einer der folgenden Zeichenfolgen bestehen: default insertion crosshair help busy Das Erscheinungsbild jedes Cursors ist systemspezifisch. Weitere Informationen finden Sie in der Systemdokumentation. Wenn Sie dieses Attribut auf einen ungültigen Wert einstellen, wird der Wert 'default' verwendet.
G	hscreen_res	Horizontale Bildschirmauflösung. Dieser Wert entspricht der Anzahl von Bildschirm-Auflösungseinheiten (d.h. Pixel) in einem horizontalen Zoll auf dem Bildschirm.
G	vscreen_res	Vertikale Bildschirmauflösung. Dieser Wert entspricht der Anzahl von Bildschirm-Auflösungseinheiten (d.h. Pixel) in einem vertikalen Zoll auf dem Bildschirm.
G	hlayout_res	Horizontale Auflösung des Layouts. Dieser Wert entspricht der Anzahl von Layouteinheiten in einem horizontalen Zoll des Layouts.
G	vlayout_res	Vertikale Auflösung des Layouts. Dieser Wert entspricht der Anzahl von Layouteinheiten in einem vertikalen Zoll des Layouts.
G	platform	Plattform, auf der Graphics Builder läuft. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_MACINTOSH_PLATFORM   Bedeutet, daß die Apple Macintosh-Plattform benutzt wird.
		OG_MOTIF_PLATFORM   Bedeutet, daß die OSF/MOTIF-Plattform benutzt wird.
		OG_MSWINDOWS_PLATFORM   Bedeutet, daß die Microsoft Windows-Plattform benutzt wird.
		OG_PM_PLATFORM   Bedeutet, daß die Presentation Manager-Plattform benutzt wird.
		OG_X_PLATFORM   Bedeutet, daß die X Window System-Plattform benutzt wird.
G	username	Benutzername der aktuellen Datenbankverbindung. Wenn der Benutzer nicht angemeldet ist, ist dieses Attribut NULL.
G	password	Kennwort für die aktuelle Datenbankverbindung. Wenn der Benutzer nicht angemeldet ist oder wenn für die Voreinstellung Keep_Password No angegeben wurde, ist dieses Attribut NULL.
G	connection	DB-Adresse für die aktuelle Datenbankverbindung. Wenn der Benutzer nicht angemeldet ist, ist dieses Attribut NULL.


Kombinierter Bogen-Attributsatz

Der kombinierte Bogen-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Bogen-Attributsatz:

TYPE og_arc_ca IS RECORD
(arc_caob  og_generic_attr,   /* generic */
 arc_caoh  og_graphic_attr,   /* graphic */
 arc_caoa  og_arc_attr        /* arc */
);


Bogen-Attributsatz

Der Bogen-Attributsatz besteht aus Attributen, die nur mit Bogenobjekten benutzt werden können:

TYPE og_arc_attr IS RECORD                Maskenkonstanten:
(mask     NUMBER(1,0),
 basearc  og_arc,                         OG_BASEARC_ARCA
 arcfill  NUMBER(1,0),                    OG_ARCFILL_ARCA
 closed   BOOLEAN                         OG_CLOSED_ARCA
);
                                          OG_ALL_ARCA
                                          OG_NONE_ARCA

	Attribut	Beschreibung
CSG	basearc	x- und y-Koordinaten der oberen linken Ecke und Höhe sowie Breite des Rechtecks, das als Basis für die Ellipse benutzt wird, aus der der Bogen ausgeschnitten wird.
CSG	arcfill	Füllform des Bogens. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CHORD_ARCFILL   Bedeutet, daß die Füllform des Bogens einem Bogen entspricht.
		OG_PIE_ARCFILL   Bedeutet, daß die Füllform des Bogens einem vollen Kreissegment entspricht.
CSG	closed	Schließen des Bogens. Dieses Attribut kann einen der folgenden Werte aufweisen:
		TRUE   Bedeutet, daß der Bogen geschlossen ist.
		FALSE   Bedeutet, daß der Bogen offen ist.


Kombinierter Werteachsen-Attributsatz

TYPE og_contaxis_ca IS RECORD
(ca_axis  og_axis_attr,       /* generic axis */
 ca_cont  og_contaxis_attr   /* continuous axis */
);


Werteachsen-Attributsatz

TYPE og_contaxis_attr IS RECORD     Maskenkonstanten:
(mask      NUMBER(4,0),
 automin   BOOLEAN,                 OG_MINIMUM_CONTAXISA
 minimum   NUMBER(6),               OG_MINIMUM_CONTAXISA
 autostep  BOOLEAN,                 OG_STEP_CONTAXISA
 step      NUMBER(6),               OG_STEP_CONTAXISA
 automax   BOOLEAN,                 OG_MAXIMUM_CONTAXISA
 maximum   NUMBER(6),               OG_MAXIMUM_CONTAXISA
 scale     NUMBER(1,0),             OG_SCALE_CONTAXISA
 pct_of    NUMBER(1,0),             OG_PCTOF_CONTAXISA
 pct_by    NUMBER(1,0),             OG_PCTBY_CONTAXISA
 numfmt    VARCHAR2(255)            OG_NUMFMT_CONTAXISA
);
                                    OG_ALL_CONTAXISA
                                    OG_NONE_CONTAXISA

	Attribut	Beschreibung
SG	automin	Gibt an, ob der Achsenmindestwert auf Auto eingestellt wird.
SG	minimum	Gibt den Mindest-Achsenwert an (wenn automin FALSE ist).
SG	autostep	Gibt an, ob der Achsen-Schrittwert auf Auto eingestellt ist.
SG	step	Gibt den Achsen-Schrittwert an (wenn autostep FALSE ist).
SG	automax	Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.
SG	maximum	Gibt den Achsenhöchstwert an (wenn automax FALSE ist).
SG	scale	Gibt den Algorithmus an, der zur Skalierung der Achse benutzt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_LINEAR_SCALE   Bedeutet, daß die Achse mit einem festen Intervall zwischen dem Achsenmindestwert und dem Achsenhöchstwert skaliert wird.
		OG_LOG_SCALE   Bedeutet, daß die Achse mit einem logarithmischen Algorithmus (zur Basis 10) skaliert wird, um die Intervalle zwischen dem Achsenmindestwert und dem Achsenhöchstwert zu bestimmen.
		OG_PCT_SCALE   Bedeutet, daß die Achse so skaliert wird, daß die Datenwerte relativ zu der mit pct_of angegebenen Menge dargestellt werden.
SG	pct_of	Gibt den relativen Skalierungsfaktor an (wenn für scale OG_PCT_SCALE eingestellt wurde). Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_MAXIMUM_PCTOF   Bedeutet, daß jeder Datenwert als Prozentsatz des größten Wertes dargestellt wird.
		OG_MINIMUM_PCTOF   Bedeutet, daß jeder Datenwert als Prozentsatz des kleinsten Datenwertes dargestellt wird.
		OG_SUM_PCTOF   Bedeutet, daß jeder Datenwert als Prozentsatz der Summe aller Datenwerte dargestellt wird.
SG	pct_by	Gibt an, wie die Skalierungswerte pct_of berechnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CATEGORY_PCTBY   Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten für dasselbe Feld in anderen Kategorien berechnet wird.
		OG_FIELD_PCTBY   Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten in derselben Kategorie für andere Felder berechnet wird.
SG	numfmt	Gibt das Zahlenformat für die Teilungsbeschriftungen der Achse an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.


Kombinierter Datumsachsen-Attributsatz

TYPE og_dateaxis_ca IS RECORD
(ca_axis  og_axis_attr,       /* generic axis */
 ca_date  og_dateaxis_attr   /* date axis */
);


Datumsachsen-Attributsatz

TYPE og_dateaxis_attr IS RECORD   Maskenkonstanten:
(mask       NUMBER(5,0),
 automin    BOOLEAN,              OG_MINIMUM_DATEAXISA
 minimum    DATE,                 OG_MINIMUM_DATEAXISA
 autostep   BOOLEAN,              OG_STEP_DATEAXISA
 step       NUMBER(2,0),          OG_STEP_DATEAXISA
 automax    BOOLEAN,              OG_MAXIMUM_DATEAXISA
 maximum    DATE,                 OG_MAXIMUM_DATEAXISA
 firstmon   NUMBER(2,0),          OG_FIRSTMON_DATEAXISA
 skipwknds  BOOLEAN,              OG_SKIPWKNDS_DATEAXISA
 labels     NUMBER(4,0),          OG_LABELS_DATEAXISA
 dayfmt     NUMBER(1,0),          OG_DAYFMT_DATEAXISA
 monthfmt   NUMBER(1,0),          OG_MONTHFMT_DATEAXISA
 qtrfmt     NUMBER(1,0),          OG_QTRFMT_DATEAXISA
 yearfmt    NUMBER(1,0),          OG_YEARFMT_DATEAXISA
 custfmt    VARCHAR2(255)         OG_CUSTMT_DATEAXISA
);
                                  OG_ALL_DATEAXISA
                                  OG_NONE_DATEAXISA

	Attribut	Beschreibung
SG	automin	Gibt an, ob der Achsenmindestwert auf Auto eingestellt ist.
SG	minimum	Gibt den Achsenmindestwert an (wenn automin FALSE ist).
SG	autostep	Gibt an, ob der Achsenschrittwert auf Auto eingestellt ist.
SG	step	Gibt den Achsenschrittwert an (wenn autostep FALSE ist). Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_SECOND_STEP
		OG_MINUTE_STEP
		OG_HOUR_STEP
		OG_DAY_STEP
		OG_WEEK_STEP
		OG_MONTH_STEP
		OG_QUARTER_STEP
		OG_YEAR_STEP
SG	automax	Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.
SG	maximum	Gibt den Achsenhöchstwert an (wenn automax FALSE ist).
SG	firstmonth	Entspricht dem Monat, der als Beginn eines neuen Jahres betrachtet wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_JAN_MONTH
		OG_FEB_MONTH
		OG_MAR_MONTH
		OG_APR_MONTH
		OG_MAY_MONTH
		OG_JUN_MONTH
		OG_JUL_MONTH
		OG_AUG_MONTH
		OG_SEP_MONTH
		OG_OCT_MONTH
		OG_NOV_MONTH
		OG_DEC_MONTH
SG	skipweekends	Gibt an, ob bei der Berechnung von Achsenwerten Wochenenden ignoriert werden sollen.
SG	labels	Gibt das Grobintervall auf der Achse an, bei dem Grobteilungen und Teilungsbeschriftungen angezeigt werden, sowie das Erscheinungsbild der Teilungsbeschriftungen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NO_LABELS
		OG_SECOND_LABELS
		OG_MINUTE_LABELS
		OG_HOUR_LABELS
		OG_AMPM_LABELS
		OG_DAY_LABELS
		OG_DAYOFWEEK_LABELS
		OG_WEEK_LABELS
		OG_MONTH_LABELS
		OG_QUARTER_LABELS
		OG_YEAR_LABELS
		OG_CUSTOM_LABELS   (Wenn labels auf diesen Wert eingestellt ist, müssen Sie das benutzerdefinierte Datumsformat im Attribut customfmt angeben.)
SG	dayfmt	Bestimmt das Erscheinungsbild der Wochentagsbeschriftungen entlang der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_FIRSTLETTER_FMT
		OG_THREELETTER_FMT
SG	monthfmt	Bestimmt das Erscheinungsbild der Monatsbeschriftungen auf der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_FIRSTLETTER_FMT
		OG_THREELETTER_FMT
SG	quarterfmt	Bestimmt das Erscheinungsbild der Quartalsbeschriftungen auf der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_ARABIC_FMT
		OG_ROMAN_FMT
SG	yearfmt	Bestimmt das Erscheinungsbild der Jahresbeschriftungen auf der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_FOURDIGIT_FMT
		OG_TWODIGIT_FMT
SG	custfmt	Entspricht dem benutzerdefinierten Datumsformat für die Teilungsbeschriftungen der Achse. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie im Server SQL Reference.


Kombinierter Kategorienachsen-Attributsatz

TYPE og_discaxis_ca IS RECORD
(ca_axis  og_axis_attr,       /* generic axis */
 ca_disc  og_discaxis_attr   /* discrete axis */
);


Kategorienachsen-Attributsatz

TYPE og_discaxis_attr IS RECORD       Maskenkonstanten:
(mask     NUMBER(3,0),
 automin  BOOLEAN,                    OG_MINCAT_DISCAXISA
 mincat   NUMBER(10,0),               OG_MINCAT_DISCAXISA
 automax  BOOLEAN,                    OG_MAXCAT_DISCAXISA
 maxcat   NUMBER(10,0),               OG_MAXCAT_DISCAXISA
 numfmt   VARCHAR2(255),              OG_NUMFMT_DISCAXISA
 datefmt  VARCHAR2(255)               OG_DATEFMT_DISCAXISA
);
                                      OG_ALL_DISCAXISA
                                      OG_NONE_DISCAXISA

	Attribut	Beschreibung
SG	automin	Gibt an, ob die Mindestanzahl von Kategorien, die auf der Achse angezeigt werden, auf Auto eingestellt ist.
SG	mincat	Gibt die Mindestanzahl von Kategorien auf der Achse an (wenn automin FALSE ist).
SG	automax	Gibt an, ob die Höchstzahl von Kategorien, die auf der Achse angezeigt werden, auf Auto eingestellt ist.
SG	maxcat	Gibt die Höchstzahl von Kategorien auf der Achse an (wenn automax FALSE ist).
SG	numfmt	Gibt das Zahlenformat für die Teilungsbeschriftungen der Achse an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
SG	datefmt	Gibt das Datumsformat für die Teilungsbeschriftungen der Achse an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.


Achsen-Attributsatz

TYPE og_axis_attr IS RECORD          Maskenkonstanten:
(mask          NUMBER(5,0),
 axistype      NUMBER(1,0),          OG_AXISTYPE_AXISA
 custlabel     VARCHAR2(255),        OG_CUSTLABEL_AXISA
 position      NUMBER(1,0),          OG_POSITION_AXISA
 direction     NUMBER(1,0),          OG_DIRECTION_AXISA
 tickpos       NUMBER(1,0),          OG_TICKPOS_AXISA
 ticklabelrot  NUMBER(1,0),          OG_TICKLABELROT_AXISA
 minorct       NUMBER(1,0),          OG_MINORCT_AXISA
 majorticks    BOOLEAN,              OG_MAJORTICKS_AXISA
 minorticks    BOOLEAN,              OG_MINORTICKS_AXISA
 majorgrid     BOOLEAN,              OG_MAJORGRID_AXISA
 minorgrid     BOOLEAN,              OG_MINORGRID_AXISA
 axislabel     BOOLEAN,              OG_AXISLABEL_AXISA
 ticklabels    BOOLEAN               OG_TICKLABELS_AXISA
);
                                     OG_ALL_AXISA
                                     OG_NONE_AXISA

	Attribut	Beschreibung
SG	axistype	Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CONTINUOUS_AXISTYPE
		OG_DATE_AXISTYPE
		OG_DISCRETE_AXISTYPE
SG	custlabel	Gibt den Text der Beschriftung an, die auf der Achse angezeigt wird.
SG	position	Gibt an, an welchem Rand des Diagramms die Achse angezeigt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_BOTTOM_POSITION
		OG_LEFT_POSITION
		OG_RIGHT_POSITION
		OG_TOP_POSITION
SG	direction	Gibt an, in welcher Richtung ansteigende Werte oder aufeinanderfolgende Kategorien auf der Achse positioniert werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_DOWN_DIRECTION
		OG_LEFT_DIRECTION
		OG_RIGHT_DIRECTION
		OG_UP_DIRECTION
SG	tickpos	Gibt an, wie die Grob- und Feinteilungen angezeigt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CROSS_TICKPOS
		OG_INSIDE_TICKPOS
		OG_OUTSIDE_TICKPOS
SG	ticklabelrot	Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CCW_ROTATION
		OG_CW_ROTATION
		OG_NO_ROTATION
SG	minorct	Entspricht der Anzahl von Teilungen, die innerhalb jedes Grobteilungsintervalls definiert sind.
SG	majorticks	Gibt an, ob Grobteilungen bei jedem Grobintervall angezeigt werden.
SG	minorticks	Gibt an, ob Feinteilungen angezeigt werden, wie mit dem Wert für Feinteilungen pro Intervall angegeben.
SG	majorgrid	Gibt an, ob bei jeder Grobteilung eine Rasterlinie angezeigt wird.
SG	minorgrid	Gibt an, ob bei jeder Feinteilung eine Rasterlinie angezeigt wird.
SG	axislabel	Gibt an, ob Beschriftungen zur Kennzeichnung der Werte auf der Achse angezeigt werden.
SG	ticklabels	Gib an, ob Beschriftungen zur Kennzeichnung der Werte entlang der Achse angezeigt werden.


Kombinierter Diagramm-Attributsatz

Ein Diagramm wird wie ein Gruppenobjekt behandelt, das aus Linien, Rechtecken, Text usw. besteht. Deshalb können Sie mit dem kombinierten Diagramm-Attributsatz auf Gruppenattribute sowie auf für ein Diagramm spezifische Attribute zugreifen. Da ein Diagramm selbst kein grafisches Objekt ist (auch wenn die Objekte, aus denen das Diagramm besteht, grafische Objekte sind), bietet dieser Datensatz außerdem keinen Zugriff auf grafische Attribute. Um die grafischen Attribute einzelner Elemente eines Diagramms einzustellen, benutzen Sie den Diagrammelement-Attributsatz (der weiter hinten beschrieben wird).

Dieser Datensatz kann nur für den Zugriff auf die Attribute eines manuell in dem Layout gezeichneten Diagramms benutzt werden, wenn das Diagramm als dynamisch angegeben wurde. Wenn es sich bei dem Diagramm um grafische Objekte handelt, wird es als Gruppenobjekt und nicht als Diagrammobjekt betrachtet. Ein Diagramm, das programmgesteuert erstellt wird, ist ein dynamisches Diagramm.

Der kombinierte Diagramm-Attributsatz besteht aus einem allgemeinen Attributsatz, einem Gruppen-Attributsatz und einem Diagramm-Attributsatz:

TYPE og_chart_ca IS RECORD
(chart_caob  og_generic_attr,   /* generic */
 chart_caog  og_group_attr,     /* graphic */
 chart_caoc  og_chart_attr      /* chart */
);


Diagramm-Attributsatz

Der Diagramm-Attributsatz enthält Attribute, die nur mit Diagrammobjekten benutzt werden können:

TYPE og_chart_attr IS RECORD        Maskenkonstanten:
(mask        NUMBER(4,0),
 frame       og_rectangle,          OG_FRAME_CHARTA
 template    og_template,           OG_TEMPLATE_CHARTA
 query       og_query,              OG_QUERY_CHARTA
 title       VARCHAR2(255),         OG_TITLE_CHARTA
 autoupdate  BOOLEAN,               OG_AUTOUPDATE_CHARTA
 rangeflag   BOOLEAN,               OG_ROWS_CHARTA
 startrow    NUMBER(10,0),          OG_ROWS_CHARTA
 endrow      NUMBER(10,0),          OG_ROWS_CHARTA
 filter      VARCHAR2(255)          OG_FILTER_CHARTA
);
                                    OG_ALL_CHARTA
                                    OG_NONE_CHARTA

	Attribut	Beschreibung
CSG	frame	x- und y-Koordinaten, Höhe und Breite des Diagrammrahmens (in Layouteinheiten).
CSG	template	Handle zu der Vorlage, die für das Diagramm benutzt werden soll.
CSG	query	Handle zu der Abfrage, die für das Diagramm benutzt werden soll.
CSG	title	Titel des Diagramms.
CSG	autoupdate	Gibt an, daß das Diagramm automatisch aktualisiert wird, wenn die Abfrage ausgeführt wird.
CSG	rangeflag	Gibt an, ob die Anzahl von Abfragezeilen in dem Diagramm auf den Bereich begrenzt ist, der mit startrow und endrow angegeben wird.
CSG	startrow	Die erste Zeile aus der Abfrage, die in dem Diagramm angezeigt wird. Die erste Abfragezeile ist 0, die zweite Zeile 1 usw.
CSG	endrow	Die letzte Zeile aus der Abfrage, die in dem Diagramm angezeigt wird.
CSG	filter	Name der Filter-Trigger-Prozedur der Abfrage.


Kombinierter Diagrammelement-Attributsatz

Ein Diagrammelement ist ein grafisches Objekt, das einen einzelnen Wert für ein Feld darstellt. So sind z.B. Balken und Kreissegmente Diagrammelemente. Dieser kombinierte Attributsatz wird in Verbindung mit der Prozedur OG_SET_ATTR benutzt, um die Attribute eines Diagrammelements zu ändern.

Der kombinierte Diagrammelement-Attributsatz besteht aus einem grafischen Attributsatz und einem Diagrammelement-Attributsatz:

TYPE og_chelement_ca IS RECORD
(chelement_cagr  og_graphic_attr,    /* graphic */
 chelement_cace  og_chelement_attr   /* chart element */
);


Diagrammelement-Attributsatz

Der Diagrammelement-Attributsatz enthält Attribute, die nur mit Diagrammelementen benutzt werden können:

TYPE og_chelement_attr IS RECORD   Maskenkonstanten:
(mask       NUMBER(1,0),
 button     og_buttonproc,         OG_BUTTON_CHELEMENTA
 events     NUMBER(2,0),           OG_BUTTON_CHELEMENTA
 explosion  NUMBER(10,0),          OG_EXPLOSION_CHELEMENTA
 name       VARCHAR2(255)          OG_NAME_CHELEMENTA
);
                                   OG_ALL_CHELEMENTA
                                   OG_NONE_CHELEMENTA

	Attribut	Beschreibung
S	button	Handle zu der Schaltflächenprozedur, die mit diesem Diagrammelement verknüpft werden soll. Beachten Sie, daß das Ereignisattribut richtig eingestellt werden muß, um sicherzustellen, daß diese Prozedur die gewünschten Mausereignisse empfängt.
S	events	Typ der Mausereignisse, die die Schaltflächenprozedur empfangen soll. Der Wert dieses Attributs kann einer der unten aufgeführten vordefinierten Konstanten entsprechen. Damit die Prozedur mehrere Ereignistypen empfangen kann, stellen Sie dieses Attribut so ein, daß es der Summe der Konstanten für die gewünschten Ereignisse entspricht.
		OG_NO_EVENTS   Bedeutet, daß die Prozedur keine Mausereignisse empfängt.
		OG_MOUSE_DOWN   Bedeutet, daß die Prozedur nur Maustaste-gedrückt-Ereignisse empfängt.
		OG_MOUSE_MOVE_DOWN   Bedeutet, daß die Prozedur nur Mausbewegung-gedrückt-Ereignisse empfängt.
		OG_MOUSE_UP   Bedeutet, daß die Prozedur nur Maustaste-losgelassen-Ereignisse empfängt.
		OG_MOUSE_MOVE_UP   Bedeutet, daß die Prozedur nur Mausbewegung-losgelassen-Ereignisse empfängt.
S	explosion	Entspricht der Distanz, um die das Diagrammelement (d.h. Kreissegment) abgesetzt werden soll in Prozent der x- und y-Radii des Diagramms. Dieses Attribut ist nur bei der Benutzung mit einem Kreisdiagramm sinnvoll. Außerdem werden alle Kreissegmente für eine bestimmte Kategorie um denselben Prozentsatz abgesetzt. Deshalb muß der Attributsatz, der einen Absetzungswert angibt, mit einem unabhängigen Feld verknüpft werden.
S	name	Name des Diagrammelements. Um den Namen eines Diagrammelements einzulesen, benutzen Sie den allgemeinen Attributsatz.


Grafische Anwendung-Attributsatz

Der Grafische Anwendung-Attributsatz enthält Attribute, die nur mit der aktuellen grafischen Anwendung benutzt werden können:

TYPE og_display_attr IS RECORD	 Maskenkonstanten:
(mask          NUMBER(2,0),
 opentrigger   VARCHAR2(255),      OG_OPENTRIGGER_DISPLAYA
 closetrigger  VARCHAR2(255),      OG_CLOSETRIGGER_DISPLAYA
 width         NUMBER(10,0),       OG_SIZE_DISPLAYA
 height        NUMBER(10,0),       OG_SIZE_DISPLAYA
 dateformat    VARCHAR2(255)       OG_DATEFORMAT_DISPLAYA
);
                                   OG_ALL_DISPLAYA
                                   OG_NONE_DISPLAYA

	Attribut	Beschreibung
SG	opentrigger	Name des Open-Display-Triggers der grafischen Anwendung.
SG	closetrigger	Name des Close-Display-Triggers der grafischen Anwendung.
SG	width	Breite des Layouts (in Layouteinheiten).
SG	height	Höhe des Layouts (in Layouteinheiten).
SG	dateformat	Gibt das Datumsformat für Parameter an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.


Kombinierter Achsenfeldvorlagen-Attributsatz

TYPE og_axisftemp_ca IS RECORD
(ca_ftemp   og_ftemp_attr,     /* generic field template */
 ca_aftemp  og_axisftemp_attr  /* axis field template */
);


Achsenfeldvorlagen-Attributsatz

TYPE og_axisftemp_attr IS RECORD   Maskenkonstanten:
(mask       NUMBER(3,0),
 plottype   NUMBER(3,0),           OG_PLOTTYPE_AXISFTEMPA
 linestyle  NUMBER(1,0),           OG_LINESTY_AXISFTEMPA
 labelrot   NUMBER(1,0),           OG_LABELROT_AXISFTEMPA
 plotpos    NUMBER(1,0),           OG_PLOTPOS_AXISFTEMPA
 overlap    NUMBER(3),             OG_OVERLAP_AXISFTEMPA
 axis       NUMBER(1,0),           OG_AXIS_AXISFTEMPA
 curvefit   NUMBER(1,0)            OG_CURVEFIT_AXISFTEMPA
);
                                   OG_ALL_AXISFTEMPA
                                   OG_NONE_AXISFTEMPA

	Attribut	Beschreibung
SG	plottype	Gibt die Elemente an, die zur Darstellung dieses Feldes in dem Diagramm benutzt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NONE_PLOTTYPE
		OG_BAR_PLOTTYPE
		OG_LINE_PLOTTYPE
		OG_SYMBOL_PLOTTYPE
		OG_FILL_PLOTTYPE
		OG_SPIKE_PLOTTYPE
		OG_LABEL_PLOTTYPE
SG	linestyle	Gibt den Linienstil für die Verbindung der Datenpunkte eines Feldes mit einem Linien-Darstellungstyp an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_SPLINE_LINESTYLE
		OG_STEP_LINESTYLE
		OG_STRAIGHT_LINESTYLE
SG	labelrot	Gibt den Drehwinkel der Beschriftungen für ein Feld mit einem Beschriftungs-Darstellungstyp an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
SG	plotpos	Gibt - für jede Kategorie - die Beziehung zwischen den Datenwerten von zwei oder mehr Feldern an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NORMAL_PLOTPOS
		OG_FROMPREV_PLOTPOS
		OG_STACKED_PLOTPOS
SG	overlap	Gibt den Prozentsatz an, um den sich Balken, die Datenwerte aus mehreren Feldern darstellen, in einem Balken- oder Säulendiagramm überlappen können.
SG	axis	Gibt die Achse an, mit der Datenwerte verglichen werden, um festzulegen, wie das Feld dargestellt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_X_AXIS
		OG_Y1_AXIS
		OG_Y2_AXIS
SG	curvefit	Gibt an, ob eine Kurve für das Diagramm angewendet wird, und wenn ja, welcher Algorithmus verwendet wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NO_CURVEFIT
		OG_LINEAR_CURVEFIT
		OG_LOG_CURVEFIT
		OG_EXP_CURVEFIT
		OG_POWER_CURVEFIT


Feldvorlagen-Attributsatz

TYPE og_ftemp_attr IS RECORD           Maskenkonstanten:
(mask      NUMBER(3,0),
 name      VARCHAR2(255),              OG_NAME_FTEMPA
 root      OG_OBJECT,                  OG_ROOT_FTEMPA
 colorrot  NUMBER(1,0),                OG_COLORROT_FTEMPA
 numfmt    VARCHAR2(255),              OG_NUMFMT_FTEMPA
 datefmt   VARCHAR2(255)               OG_DATEFMT_FTEMPA
);
                                       OG_ALL_FTEMPA
                                       OG_NONE_FTEMPA

	Attribut	Beschreibung
SG	name	Name der Feldvorlage.
G	root	Handle zu der Diagrammvorlage, zu der die Feldvorlage gehört.
SG	colorrot	Gibt an, ob Graphics Builder automatisch durch die Farb- oder Musterpalette geht, um eine eindeutige Schattierung für jedes Feld auszuwählen, das diese Feldvorlage verwendet. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NO_COLORROT
		OG_AUTO_COLORROT
		OG_COLOR_COLORROT
		OG_PATTERN_COLORROT
		OG_BOTH_COLORROT
SG	numfmt	Gibt das Zahlenformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
SG	datefmt	Gibt das Datumsformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.


Kombinierter Achsenrahmen-Attributsatz

TYPE og_axisframe_ca IS RECORD
(ca_frame  og_frame_attr,       /* generic frame */
 ca_axis   og_axisframe_attr    /* axis frame */
);


Achsenrahmen-Attributsatz

TYPE og_axisframe_attr IS RECORD   Maskenkonstanten:
(mask       NUMBER(3,0),
 reflinect  NUMBER(3,0),           OG_REFLINECT_AXISFRAMEA
 basevalue  NUMBER(1,0),           OG_BASEVALUE_AXISFRAMEA
 cust_num   NUMBER(6),             OG_BASEVALUE_AXISFRAMEA
 cust_date  DATE,                  OG_BASEVALUE_AXISFRAMEA
 base_axis  NUMBER(1,0),           OG_BASEAXIS_AXISFRAMEA
 catwidth   NUMBER(3,0),           OG_CATWIDTH_AXISFRAMEA
 second_y   BOOLEAN                OG_SECONDY_AXISFRAMEA
);
                                   OG_ALL_AXISFRAMEA
                                   OG_NONE_AXISFRAMEA

	Attribut	Beschreibung
G	reflinect	Anzahl von Referenzlinien, die zu der Diagrammvorlage gehören.
SG	baseline_value	Wert, der als Anfangspunkt bei der Darstellung von Feldern entlang der Werteachse benutzt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_MIN_BASELINE
		OG_MAX_BASELINE
		OG_ZERO_BASELINE
		OG_CUSTOM_BASELINE
SG	custom_num	Gibt die benutzerdefinierte Zahl an, auf die die Basislinie eingestellt werden soll. Dadurch wird der Basiswert automatisch auf  OG_CUSTOM_BASELINE eingestellt.
SG	custom_date	Gibt das benutzerdefinierte Datum an, auf das der benutzerdefinierte Datumswert eingestellt werden soll. Dadurch wird der Basiswert automatisch auf OG_CUSTOM_BASELINE eingestellt.
SG	baseline_axis	Gibt die Achse an, mit der der Wert der Basislinie verglichen wird, um die Position zu bestimmen.
SG	catwidth	Breite der Balken in einem Balken- oder Säulendiagramm in Prozent der "Streifenbreite". Die Streifenbreite entspricht der maximalen Breite, die Balken haben können, ohne einander zu überlappen. Sie wird bestimmt, indem die Länge der Kategorienachse durch die Anzahl von darzustellenden Balken definiert wird.
SG	second_y	Gibt an, ob in dem Diagramm eine zweite Y-Achse angezeigt wird.


Rahmen-Attributsatz

TYPE og_frame_attr IS RECORD       Maskenkonstanten:
(mask         NUMBER(4,0),
 name         VARCHAR2(255),       OG_NAME_FRAMEA
 frametype    NUMBER(1,0),         OG_FRAMETYPE_FRAMEA
 ftempct      NUMBER(5,0),         OG_FTEMPCT_FRAMEA
 root         OG_OBJECT,           OG_ROOT_FRAMEA
 depthsize    NUMBER(1,0),         OG_DEPTHSIZE_FRAMEA
 shadowsize   NUMBER(1,0),         OG_SHADOWSIZE_FRAMEA
 shadowdir    NUMBER(1,0),         OG_SHADOWDIR_FRAMEA
 plotframe    BOOLEAN,             OG_PLOTFRAME_FRAMEA
 legend       BOOLEAN,             OG_LEGEND_FRAMEA
 legendcolct  NUMBER(3,0)          OG_LEGENDCOLCT_FRAMEA
);
                                   OG_ALL_FRAMEA
                                   OG_NONE_FRAMEA

	Attribut	Beschreibung
SG	name	Name der Diagrammvorlage.
G	frametype	Typ des Diagramms, der mit dieser Vorlage dargestellt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_AXIS_FRAMETYPE
		OG_PIE_FRAMETYPE
		OG_TABLE_FRAMETYPE
G	ftempct	Anzahl von Feldvorlagen, die zu der Diagrammvorlage gehören.
G	root	Handle zu der Diagrammvorlage.
SG	depthsize	Gibt die Tiefe an, mit der der Diagrammrahmen und die Elemente gezeichnet werden, damit diese ein dreidimensionales Aussehen erhalten. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NONE_DEPTHSIZE
		OG_SMALL_DEPTHSIZE
		OG_MEDIUM_DEPTHSIZE
		OG_LARGE_NONE_DEPTHSIZE
		OG_XLARGE_DEPTHSIZE
SG	shadowsize	Gibt die Größe der Schattierung an, mit der der Diagrammrahmen und die Elemente gezeichnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NONE_SHADOWSIZE
		OG_SMALL_SHADOWSIZE
		OG_MEDIUM_SHADOWSIZE
		OG_LARGE_SHADOWSIZE
		OG_XLARGE_SHADOWSIZE
SG	shadowdir	Gibt die Richtung der Schattierung an, mit der der Diagrammrahmen und die Elemente gezeichnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_UPPERRIGHT_SHADOWDIR
		OG_UPPERLEFT_SHADOWDIR
		OG_LOWERRIGHT_SHADOWDIR
		OG_LOWERLEFT_SHADOWDIR
SG	plotframe	Gibt an, ob das Rechteck, das das Diagramm einrahmt, dargestellt werden soll oder nicht. (Bei Kreisdiagrammen nicht anwendbar.)
SG	legend	Gibt an, ob die Diagrammlegende angezeigt werden soll oder nicht. (Bei Tabellendiagrammen nicht anwendbar.)
SG	legendcolct	Anzahl von Spalten, die zur Anzeige der Beschriftungen in der Legende benutzt werden.


Kombinierter Kreisrahmen-Attributsatz

TYPE og_pieframe_ca IS RECORD
(ca_frame  og_frame_attr,     /* generic frame */
 ca_pie   og_pieframe_attr   /* pie frame */
);


Kreisrahmen-Attributsatz

TYPE og_pieframe_attr IS RECORD   Maskenkonstanten:
(mask        NUMBER(3,0),
 usage       NUMBER(1,0),         OG_USAGE_PIEFRAMEA
 usagevalue  NUMBER(6),           OG_USAGE_PIEFRAMEA
 plotorder   NUMBER(1,0),         OG_PLOTORDER_PIEFRAMEA
 categs      BOOLEAN,             OG_CATEGS_PIEFRAMEA
 datavals    BOOLEAN,             OG_DATAVALS_PIEFRAMEA
 pctvalues   BOOLEAN,             OG_PCTVALUES_PIEFRAMEA
 ticks       BOOLEAN,             OG_TICKS_PIEFRAMEA
 other       NUMBER(3),           OG_OTHER_PIEFRAMEA
 nooverlap   BOOLEAN,             OG_NOOVERLAP_PIEFRAMEA
 catnumfmt   VARCHAR2(255),       OG_CATNUMFMT_PIEFRAMEA
 catdatefmt  VARCHAR2(255),       OG_CATDATEFMT_AXSFRAMEA
 valuefmt    VARCHAR2(255),       OG_VALUEFMT_PIEFRAMEA
 pctfmt      VARCHAR2(255)        OG_PCTFMT_PIEFRAMEA
);
                                  OG_ALL_PIEFRAMEA
                                  OG_NONE_PIEFRAMEA

	Attribut	Beschreibung
SG	usage	Gibt die Beziehung zwischen den einzelnen Kreissegmenten und dem vollständigen Diagramm an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_TOTALVALUE_USAGE
		OG_PCT_USAGE
SG	usagevalue	Jedes Kreissegment wird so dargestellt, als wäre der Datenwert ein Prozentsatz des hier angegebenen Gesamtwertes. (Ist nur gültig, wenn für usage OG_TOTALVALUE_USAGE eingestellt wurde.)
SG	plotorder	Gibt die Richtung an, in der die Datenwerte dargestellt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CCW_PLOTORDER
		OG_CW_PLOTORDER
SG	categs	Gibt an, ob jedes Kreissegment mit dem Namen der Kategorie beschriftet wird, die es darstellt.
SG	datavals	Gibt an, ob jedes Kreissegment mit dem entsprechenden Datenwert beschriftet wird.
SG	pctvalues	Gibt an, ob jedes Kreissegment mit dem Prozentsatz des vollständigen Diagramms beschriftet wird, den es darstellt.
SG	ticks	Gibt an, ob die Teilungen, die jedes Kreissegment mit der Beschriftung verbinden, dargestellt werden.
SG	other	Gibt an, ob Kreissegmente, die einzeln Prozentsätze darstellen, die niedriger sind als die hier eingegebene Zahl, zu einem einzigen Kreissegment mit der Beschriftung "Other" kombiniert werden.
SG	nooverlap	Gibt an, daß sich die Beschriftungen für die Kreissegmente nicht überlappen dürfen.
SG	catnumfmt	Gibt das Zahlenformat für die Kategorienbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
SG	catdatefmt	Gibt das Datumsformat für die Kategorienbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
SG	valuefmt	Gibt das Zahlenformat für die Datenwertbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
SG	pctfmt	Gibt das Zahlenformat für die Prozentwertbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.


Kombinierter Tabellenrahmen-Attributsatz

TYPE og_tableframe_ca IS RECORD
(ca_frame  og_frame_attr,       /* generic frame */
 ca_table  og_tableframe_attr   /* table frame */
);


Tabellenrahmen-Attributsatz

TYPE og_tableframe_attr IS RECORD   Maskenkonstanten:
(mask     NUMBER(3,0),
 automin  BOOLEAN,                  OG_MIN_TABLEFRAMEA
 minrows  NUMBER(10,0),             OG_MIN_TABLEFRAMEA
 automax  BOOLEAN,                  OG_MAX_TABLEFRAMEA
 maxrows  NUMBER(10,0),             OG_MAX_TABLEFRAMEA
 cname    BOOLEAN,                  OG_CNAME_TABLEFRAMEA
 vgrid    BOOLEAN,                  OG_VGRID_TABLEFRAMEA
 hgrid    BOOLEAN,                  OG_HGRID_TABLEFRAMEA
 gridct   NUMBER(10,0)              OG_GRIDCT_TABLEFRAMEA
);
                                    OG_ALL_TABLEFRAMEA
                                    OG_NONE_TABLEFRAMEA

	Attribut	Beschreibung
SG	automin	Gibt an, ob die Mindestanzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.
SG	minrows	Gibt die Mindestzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn automin FALSE ist).
SG	automax	Gibt an, ob die Höchstzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.
SG	maxrows	Gibt die Höchstzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn automax FALSE ist).
SG	colnames	Gibt an, ob die Namen der Spalten als erste Zeile in dem Diagramm angezeigt werden.
SG	vgrid	Gibt an, ob zwischen den Spalten vertikale Rasterlinien angezeigt werden.
SG	hgrid	Gibt an, ob zwischen den Zeilen horizontale Rasterlinien angezeigt werden.
SG	gridct	Anzahl von Datenzeilen, die dargestellt werden, bevor jede horizontale Rasterlinie gezeichnet wird (wenn hgrid auf TRUE eingestellt ist).


Allgemeiner Attributsatz

Der allgemeine Attributsatz enthält Attribute, die mit jedem Objekt benutzt werden können.

TYPE og_generic_attr IS RECORD    Maskenkonstanten:
(mask       NUMBER(6,0),
 name       VARCHAR2(255),          OG_NAME_GENERICA
 parent     og_object,              OG_PARENT_GENERICA
 ibbox      og_rectangle,           OG_IBBOX_GENERICA
 obbox      og_rectangle,           OG_OBBOX_GENERICA
 objtype    NUMBER(2,0),            OG_OBJTYPE_GENERICA
 button     og_buttonproc,          OG_BUTTON_GENERICA
 events     NUMBER(2,0),            OG_EVENTS_GENERICA
 keycol     VARCHAR2(255,           OG_KEYCOL_GENERICA
 execquery  og_query,               OG_EXECQUERY_GENERICA
 setparam   VARCHAR2(255),          OG_SETPARAM_GENERICA
 fmttrig    VARCHAR2(255),          OG_FMTTRIG_GENERICA
 hide       BOOLEAN                 OG_HIDE_GENERICA
);
                                    OG_ALL_GENERICA
                                    OG_NONE_GENERICA

	Attribut	Beschreibung
CSG	name	Objektname.
CG	parent	Handle zu dem übergeordneten Objekt des Objekts.
G	ibbox	Innere Umrandung des Objekts. Dies ist das Rechteck, das die Idealform des Objekts darstellt (d.h. die vier Steuerungspunkte des Objekts verbindet) unabhängig von Randstärke und anderen Attributeinstellungen.
G	obbox	Äußere Umrandung des Objekts. Dies ist das kleinste Rechteck, das das Objekt vollständig einschließt. Diese Umrandung kann sich von der inneren Umrandung unterscheiden, wenn das Objekt einen dicken Rand hat. Während die innere Umrandung nur die Idealform des Objektes darstellt, umschließt die äußere Umrandung das ganze Objekt.
G	objtype	Objekttyp. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_ARC_OBJTYPE   Bedeutet, daß das Objekt ein Bogen ist.
		OG_CHART_OBJTYPE   Bedeutet, daß das Objekt ein Diagramm ist.
		OG_GROUP_OBJTYPE   Bedeutet, daß das Objekt eine Gruppe ist.
		OG_IMAGE_OBJTYPE   Bedeutet, daß das Objekt ein Bild ist.
		OG_LINE_OBJTYPE   Bedeutet, daß das Objekt eine Linie ist.
		OG_POLY_OBJTYPE   Bedeutet, daß das Objekt ein Polygon oder ein Polygonzug ist.
		OG_RECT_OBJTYPE   Bedeutet, daß das Objekt ein Rechteck ist.
		OG_RRECT_OBJTYPE   Bedeutet, daß das Objekt ein abgerundetes Rechteck ist.
		OG_SYMBOL_OBJTYPE   Bedeutet, daß das Objekt ein Symbol ist.
		OG_TEXT_OBJTYPE   Bedeutet, daß das Objekt ein Textobjekt ist.
CSG	button	Handle zu der Schaltflächenprozedur, die mit diesem Objekt verknüpft werden soll. Beachten Sie, daß die Ereignisattribute richtig eingestellt werden müssen, um sicherzustellen, daß diese Prozedur die gewünschten Mausereignisse empfängt.
CSG	events	Typ der Mausereignisse, die die mit dem Schaltflächenattribut angegebene Prozedur empfangen soll. Der Wert dieses Attributs kann einer der unten aufgeführten vordefinierten Konstanten entsprechen. Damit die Prozedur mehrere Ereignistypen empfangen kann, stellen Sie dieses Attribut so ein, daß es der Summe der Konstanten für die gewünschten Ereignisse entspricht.
		OG_NO_EVENTS   Bedeutet, daß die Prozedur keine Mausereignisse empfängt.
		OG_MOUSE_DOWN   Bedeutet, daß die Prozedur nur Maustaste-gedrückt-Ereignisse empfängt.
		OG_MOUSE_UP   Bedeutet, daß die Prozedur nur Maustaste-losgelassen-Ereignisse empfängt.
		OG_MOUSE_MOVE_UP   Bedeutet, daß die Prozedur nur Mausbewegung-losgelassen-Ereignisse empfängt.
CSG	keycol	Spalte, die in einem Aufgliederungsdiagramm eingestellt werden muß. Dieses Attribut gilt nur für Diagrammelemente.
CSG	execquery	Gibt die Abfrage an, die ausgeführt werden muß, wenn das Objekt ausgewählt wird.
CSG	setparam	Parameter, dessen Wert eingestellt wird, wenn das Objekt ausgewählt wird.
CSG	fmttrig	Format-Trigger. Dieses Attribut gilt nur für Diagrammelemente.
SG	hide	Verbirgt das angegebene Graphics Builder-Objekt.


Kombinierter grafischer Attributsatz

Der kombinierte grafische Attributsatz besteht aus einem allgemeinen Attributsatz und einem grafischen Attributsatz:

TYPE og_graphic_ca IS RECORD
(graphic_caob  og_generic_attr,   /* generic */
 graphic_caoh  og_graphic_attr    /* graphic */
);


Grafischer Attributsatz

Der grafische Attributsatz enthält Attribute, die nur mit grafischen Objekten benutzt werden können.

TYPE og_graphic_attr IS RECORD     Maskenkonstanten:
(mask        NUMBER(4,0),
 ewidth      NUMBER(10,0),         OG_EWIDTH_GRAPHICA
 rotang      NUMBER(5,2),          OG_ROTANG_GRAPHICA
 fecolor     VARCHAR2(255),        OG_FECOLOR_GRAPHICA
 becolor     VARCHAR2(255),        OG_BECOLOR_GRAPHICA
 edgepatt    VARCHAR2(255),        OG_EDGEPATT_GRAPHICA
 ffcolor     VARCHAR2(255),        OG_FFCOLOR_GRAPHICA
 bfcolor     VARCHAR2(255),        OG_BFCOLOR_GRAPHICA
 fillpatt    VARCHAR2(255),        OG_FILLPATT_GRAPHICA
 dashstyle   NUMBER(1,0),          OG_DASHSTYLE_GRAPHICA
 capstyle    NUMBER(2,0),          OG_CAPSTYLE_GRAPHICA
 joinstyle   NUMBER(2,0),          OG_JOINSTYLE_GRAPHICA
 transfer    NUMBER(1,0)           OG_TRANSFER_GRAPHICA
 bevelstyle  NUMBER(2,0)           OG_BEVELSTYLE_GRAPHICA
);
                                   OG_ALL_GRAPHICA
                                   OG_NONE_GRAPHICA

	Attribut	Beschreibung
CSG	ewidth	Breite des Objektrandes (in Layouteinheiten).
CSG	rotang	Drehwinkel des Objekts. Der Winkel, mit dem das Objekt anfänglich erstellt wird, wird als 0 betrachtet, und dieses Attribut entspricht der Anzahl von Grad im Uhrzeigersinn, um die das Objekt momentan von diesem Anfangswinkel abweicht. Sie können ein Objekt mit einem absoluten Winkel drehen, indem Sie dieses Attribut einstellen. Sie können aber auch die Prozedur OG_ROTATE verwenden, um ein Objekt um einen relativen Betrag zu drehen. (Wenn Sie OG_ROTATE benutzen, um ein Objekt zu drehen, wird das Attribut rotang automatisch entsprechend dem neuen absoluten Winkel aktualisiert).
CSG	fecolor	Vordergrund-Randfarbe des Objekts. Weitere Informationen über gültige Farbpaletten finden Sie unter Standardfarbpaletten.
CSG	becolor	Hintergrund-Randfarbe des Objekts. Weitere Informationen über gültige Farbnamen finden Sie unter Standardfarbpaletten.
CSG	edgepatt	Randmuster des Objekts. Weitere Informationen über gültige Randnamen finden Sie unter Musterpalette.
CSG	ffcolor	Vordergrund-Füllfarbe des Objekts. Weitere Informationen über gültige Farbnamen finden Sie unter Standardfarbpaletten.
CSG	bfcolor	Hintergrund-Füllfarbe des Objekts. Weitere Informationen über gültige Farbnamen finden Sie unter Standardfarbpaletten.
CSG	fillpatt	Füllmuster des Objekts. Weitere Informationen über gültige Musternamen finden Sie unter Musterpalette.
CSG	dashstyle	Linienstil für den Objektrand. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_SOLID_DSTYLE   Bedeutet, daß die Linie durchgezogen ist.
		OG_DOT_DSTYLE   Bedeutet, daß die Linie gepunktet ist.
		OG_LONG_DSTYLE   Bedeutet, daß die Linie aus einer Folge von langen Strichen besteht.
		OG_DASHDOT_DSTYLE   Bedeutet, daß die Linie aus einer Folge von Strichen gefolgt von Punkten besteht.
		OG_DOTDOT_DSTYLE   Bedeutet, daß die Linie aus einer Folge von zwei aufeinanderfolgenden Punkten besteht.
		OG_SHORT_DSTYLE   Bedeutet, daß die Linie aus einer Folge von kurzen Strichen besteht.
		OG_DASHDOTDOT_DSTYLE   Bedeutet, daß die Linie aus einer Folge von einem Strich gefolgt von zwei Punkten besteht.
CSG	capstyle	Linienendstil des Objektrandes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_BUTT_CSTYLE   Bedeutet, daß das Linienende verkürzt ist.
		OG_PROJECTING_CSTYLE   Bedeutet, daß das Linienende verlängert ist.
		OG_ROUND_CSTYLE   Bedeutet, daß das Linienende abgerundet ist.
CSG	joinstyle	Join-Stil des Objektrandes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_MITRE_JSTYLE   Bedeutet, daß der Join-Stil eckig ist.
		OG_BEVEL_JSTYLE   Bedeutet, daß der Join-Stil abgerundet ist.
		OG_ROUND_JSTYLE   Bedeutet, daß der Join-Stil rund ist.
CSG	transfer	Transfermodus des Objekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_COPY_TRANSFER   Bedeutet, daß der Transfermodus copy ist.
		OG_REVCOPY_TRANSFER   Bedeutet, daß der Transfermodus reverse copy ist.
		OG_OR_TRANSFER   Bedeutet, daß der Transfermodus or ist.
		OG_REVOR_TRANSFER   Bedeutet, daß der Transfermodus reverse or ist.
		OG_CLEAR_TRANSFER   Bedeutet, daß der Transfermodus clear ist.
		OG_REVCLEAR_TRANSFER   Bedeutet, daß der Transfermodus reverse clear ist.
		OG_INVERT_TRANSFER   Bedeutet, daß der Transfermodus invert ist.
		OG_BACKINVERT_TRANSFER   Bedeutet, daß der Transfermodus background invert ist.
CSG	bevelstyle	Umrißstil des Objekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_INSET_BSTYLE   Bedeutet, daß der Umriß vertieft ist.
		OG_LOWERED_BSTYLE   Bedeutet, daß der Umriß einen Schatten oben hat.
		OG_OUTSET_BSTYLE   Bedeutet, daß der Umriß erhöht ist.
		OG_PLAIN_BSTYLE   Bedeutet, daß das Objekt keinen Umriß hat.
		OG_RAISED_BSTYLE   Bedeutet, daß der Umriß einen Schatten unten hat.


Kombinierter Gruppen-Attributsatz

Der kombinierte Gruppen-Attributsatz besteht aus einem allgemeinen Attributsatz und einem Gruppen-Attributsatz.

TYPE og_group_ca IS RECORD
(group_caob  og_generic_attr,   /* generic */
 group_caog  og_group_attr      /* group */
);


Gruppen-Attributsatz

Der Gruppen-Attributsatz enthält Attribute, die nur mit Gruppenobjekten benutzt werden können:

TYPE og_group_attr IS RECORD        Maskenkonstanten:
(mask        NUMBER(1,0),
 childcount  NUMBER(10,0),          OG_CHILDCOUNT_GROUPA
 clipflag    BOOLEAN                OG_CLIPFLAG_GROUPA
);
                                    OG_ALL_GROUPA
                                    OG_NONE_GROUPA

	Attribut	Beschreibung
G	childcount	Anzahl von untergeordneten Objekten, die zu dem Gruppenobjekt gehören. Wenn ein anderes Gruppenobjekt ein untergeordnetes Objekt der geprüften Gruppe ist, wird dieses Objekt nur als ein Objekt gezählt.
CSG	clipflag	Gibt an, ob das erste Objekt in der Gruppe ein Rechteckobjekt ist, das als Begrenzungsrechteck benutzt werden soll. Wenn dieses Attribut TRUE ist, sind die einzigen Mitglieder der Gruppe, die in dem Layout angezeigt werden, die Objekte - oder Teile dieser Objekte -, die innerhalb der Grenzen des Begrenzungsrechtecks stehen. Das Rechteckobjekt selbst wird ebenfalls angezeigt. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß das erste Objekt in der Gruppe als Begrenzungsrechteck behandelt wird.
		FALSE   Bedeutet, daß das erste Objekt in der Gruppe nicht als Begrenzungsrechteck behandelt wird.


Kombinierter Bild-Attributsatz

Der kombinierte Bild-Attributsatz besteht aus einem allgemeinen Attributsatz und einem Bild-Attributsatz:

TYPE og_image_ca IS RECORD
(image_caob  og_generic_attr,   /* generic */
 image_caoi  og_image_attr      /* image */
);


Bild-Attributsatz

Der Bild-Attributsatz enthält Attribute, die nur mit Bildobjekten benutzt werden können:

TYPE og_image_attr IS RECORD          Maskenkonstanten:
(mask        NUMBER(3,0),
 cliprect    og_rectangle,            OG_CLIPRECT_IMAGEA
 upperleft   og_point,                OG_UPPERLEFT_IMAGEA
 width       NUMBER(10,0),            OG_SIZE_IMAGEA
 height      NUMBER(10,0),            OG_SIZE_IMAGEA
 query       og_query,                OG_DATA_IMAGEA
 which_data  NUMBER(1,0),             OG_DATA_IMAGEA
 colname     VARCHAR2(255),           OG_DATA_IMAGEA
 quality     NUMBER(5,0),             OG_QUALITY_IMAGEA
 dither      BOOLEAN                  OG_DITHER_IMAGEA
);
                                      OG_ALL_IMAGEA
                                      OG_NONE_IMAGEA

	Attribut	Beschreibung
SG	cliprect	x- und y-Koordinaten, Höhe und Breite des Begrenzungsrechtecks des Bildes (in Layouteinheiten). Nur der Teil des Bildes, der in diesem Begrenzungsrechteck liegt, wird angezeigt. Wenn dieses Attribut nicht angegeben wird, entspricht das Begrenzungsrechteck den vollen Abmessungen des Bildes.
SG	upperleft	x- und y-Koordinaten der oberen linken Ecke des Bildes (in Layouteinheiten).
SG	width	Bildbreite (in Layouteinheiten). Wenn Sie dieses Attribut auf einen anderen Wert als den Standardwert des Bildes einstellen, wird das Bild so skaliert, daß es in die neue Breite paßt.
SG	height	Bildhöhe (in Layouteinheiten). Wenn Sie dieses Attribut auf einen anderen Wert als die Standardhöhe des Bildes einstellen, wird das Bild so skaliert, daß es in die neue Höhe paßt.
C	query	Handle zu der Abfrage, die das Bild aus der Tabelle in einer Datenbank abruft. Beachten Sie, daß diese Tabelle eine Benutzertabelle und nicht eine der privaten Tabellen sein muß, die von Graphics Builder benutzt werden, wenn Sie grafische Anwendungen, Zeichnungen, Diagrammvorlagen, Farbpaletten, Bilder oder Klänge in die Datenbank speichern oder exportieren. Nur Oracle Format-Bilder können in der Datenbank gespeichert werden.
C	which_data	Gibt an, ob das zu erstellende Bild in der neuen oder alten Datengruppe einer Abfrage enthalten ist. Graphics Builder verfügt über zwei vordefinierte numerische Konstanten, die als Werte für dieses Attribut benutzt werden können:
		OG_NEWDATA   Bedeutet, daß das Bild in der neuen Datengruppe der Abfrage enthalten ist.
		OG_OLDDATA   Bedeutet, daß das Bild in der alten Datengruppe der Abfrage enthalten ist.
C	colname	Name der Abfragespalte, die die Bilddaten enthält. Das erstellte Bild ist das Bild, das in der Abfragezelle bei dem Schnittpunkt zwischen der von diesem Attribut angegebenen Spalte und der Zeile enthalten ist, auf die der Cursor der Abfrage zeigt.
CSG	quality	Gibt an, mit welcher Qualität das Bild gezeichnet wird. Bilder mit höherer Qualität sehen besser aus, sind jedoch, was die Bearbeitung betrifft (z.B. Zeichnen, Verschieben, Skalieren usw.), zeitaufwendiger. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_HIGH_IQUALITY   Gibt eine hohe Qualität an.
		OG_MED_IQUALITY   Gibt eine mittlere Qualität an.
		OG_LOW_IQUALITY   Gibt eine niedrige Qualität an.
CSG	dither	Gibt an, ob Graphics Builder bei der Anzeige ein Bild-Dithering vornimmt. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß ein Bild-Dithering vorgenommen wird.
		FALSE   Bedeutet, daß kein Bild-Dithering vorgenommen wird.


Kombinierter Linien-Attributsatz

Der kombinierte Linien-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Linien-Attributsatz:

TYPE og_line_ca IS RECORD
(line_caob  og_generic_attr,   /* generic */
 line_caoh  og_graphic_attr,   /* graphic */
 line_caol  og_line_attr       /* line */
);


Linien-Attributsatz

Der Linien-Attributsatz enthält Attribute, die nur mit Linienobjekten benutzt werden können:

TYPE og_line_attr IS RECORD           Maskenkonstanten:
(mask        NUMBER(1,0),
 startpt     og_point,                OG_STARTPT_LINEA
 endpt       og_point,                OG_ENDPT_LINEA
 arrowstyle  NUMBER(1,0)              OG_ARROWSTYLE_LINEA
);
                                      OG_ALL_LINEA
                                      OG_NONE_LINEA

	Attribut	Beschreibung
CSG	startpt	x- und y-Koordinaten des Anfangspunkts der Linie (in Layouteinheiten).
CSG	endpt	x- und y-Koordinaten des Endpunktes der Linie (in Layouteinheiten).
CSG	arrowstyle	Pfeilstil der Linie. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_NOARROW_ASTYLE   Bedeutet, daß die Linie keinen Pfeil hat.
		OG_START_ASTYLE   Bedeutet, daß die Linie einen Pfeil am Anfangspunkt hat.
		OG_END_ASTYLE   Bedeutet, daß die Linie einen Pfeil am Endpunkt hat.
		OG_BOTH_ASTYLE   Bedeutet, daß die Linie einen Pfeil an beiden Enden hat.
		OG_MIDTOSTART_ASTYLE   Bedeutet, daß die Linie einen Pfeil in der Mitte hat, der zum Anfangspunkt zeigt.
		OG_MIDTOEND_ASTYLE   Bedeutet, daß die Linie einen Pfeil in der Mitte hat, der zum Endpunkt zeigt.


Kombinierter Polygon-Attributsatz

Der kombinierte Polygon-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Polygon-Attributsatz:

TYPE og_poly_ca IS RECORD
(poly_caob  og_generic_attr,   /* generic */
 poly_caoh  og_graphic_attr,   /* graphic */
 poly_caop  og_poly_attr       /* polygon */
);


Polygon-Attributsatz

Der Polygon-Attributsatz enthält Attribute, die nur mit Polygonobjekten benutzt werden können:

TYPE og_poly_attr IS RECORD               Maskenkonstanten:
(mask     NUMBER(1,0),
 pointct  NUMBER(10,0),                   OG_POINTCT_POLYA
 closed   BOOLEAN                         OG_CLOSED_POLYA
);
                                          OG_ALL_POLYA
                                          OG_NONE_POLYA

	Attribut	Beschreibung
G	pointct	Anzahl von Punkten, aus denen das Polygonobjekt besteht.
CSG	closed	Schließung des Polygons. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß das Polygon geschlossen ist.
		FALSE   Bedeutet, daß das Polygon offen ist.


Drucker-Attributsatz

TYPE og_printer_attr IS RECORD      Maskenkonstanten:
(mask       NUMBER(3,0),
 name       VARCHAR2(255),          OG_NAME_PRINTERA
 landscape  BOOLEAN,                OG_LANDSCAPE_PRINTERA
 startpage  NUMBER(5,0),            OG_STARTPAGE_PRINTERA
 endpage    NUMBER(5,0),            OG_ENDPAGE_PRINTERA
 width      NUMBER(10,0),           OG_WIDTH_PRINTERA
 height     NUMBER(10,0),           OG_HEIGHT_PRINTERA
 copies     NUMBER(5,0),            OG_COPIES_PRINTERA
 printfile  VARCHAR2(255)           OG_PRINTFILE_PRINTERA
);
                                    OG_ALL_PRINTERA
                                    OG_NONE_PRINTERA

	Attribut	Beschreibung
SG	name	Name des aktuellen Druckers.
SG	landscape	Gibt an, ob die grafische Anwendung im Quer- oder Hochformat gedruckt wird.
SG	startpage	Erste zu druckende Seite.
SG	endpage	Letzte zu druckende Seite.
S	width	Seitenbreite.
S	height	Seitenhöhe.
SG	copies	Anzahl zu druckender Kopien.
SG	printfile	Name der PostScript-Datei, in die gedruckt wird. Wenn dieses Attribut NULL ist, wird die Ausgabe an den Drucker gesendet.


Abfrage-Attributsatz

Der Abfrage-Attributsatz enthält Attribute, die nur mit Abfragen benutzt werden können:

TYPE og_query_attr IS RECORD       Maskenkonstanten:
(mask         NUMBER(4,0),
 name         VARCHAR2(255),       OG_NAME_QUERYA
 dateformat   VARCHAR2(255),       OG_DATEFORMAT_QUERYA
 querysource  VARCHAR2(2000),      OG_QUERYSOURCE_QUERYA
 querytype    NUMBER(1,0),         OG_QUERYTYPE_QUERYA
 cachetype    NUMBER(1,0),         OG_CACHETYPE_QUERYA
 maxflag      BOOLEAN,             OG_MAXFLAG_QUERYA
 maxrows      NUMBER(10,0),        OG_MAXROWS_QUERYA
 execopen     BOOLEAN,             OG_EXECOPEN_QUERYA
 exectimer    VARCHAR2(255),       OG_EXECTIMER_QUERYA
 execalert    VARCHAR2(255),       OG_EXECALERT_QUERYA
 customproc   VARCHAR2(255),       OG_CUSTOMPROC_QUERYA
 postproc     VARCHAR2(255)        OG_POSTPROC_QUERYA
);
                                   OG_ALL_QUERYA
                                   OG_NONE_QUERYA

	Attribut	Beschreibung
CSG	name	Name der Abfrage.
CSG	dateformat	Datums-Formatmaske für die Abfrage.
CSG	querysource	Quelle der Abfragedaten. Wenn die Daten aus einer Datenbank stammen, muß dieses Attribut den Text der SQL SELECT-Anweisung enthalten. Wenn die Daten im Dateisystem gespeichert sind, muß dieses Attribut den Pfad und Namen der Datendatei enthalten.
CSG	querytype	Abfragetyp. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_CUSTOM_QTYPE   Bedeutet, daß die Abfrage eine benutzerdefinierte Abfrage ist.
		OG_EXSQL_QTYPE   Bedeutet, daß die Abfrage ihre Daten aus einer Textdatei abruft, die eine SQL SELECT-Anweisung enthält.
		OG_PRN_QTYPE   Bedeutet, daß die Abfrage auf einer PRN-Datei basiert.
		OG_SQL_QTYPE   Bedeutet, daß die Abfrage eine SQL SELECT-Anweisung ist.
		OG_SYLK_QTYPE   Bedeutet, daß die Abfrage auf einer SYLK-Datei basiert.
		OG_WKS_QTYPE   Bedeutet, daß die Abfrage auf einer WKS-Datei basiert.
CSG	cachetype	Bestimmt, wie die neu aus einer Abfrageausführung abgerufenen Daten behandelt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_APPEND_CACHETYPE   Bedeutet, daß alle bestehenden Datenzeilen beibehalten werden und daß die neuen Datenzeilen am Ende der bestehenden Datengruppe hinzugefügt werden.
		OG_COPY_CACHETYPE   Bedeutet, daß alle Daten aus der vorherigen Ausführung in einen Spezialpuffer kopiert und durch die neu abgerufenen Daten ersetzt werden.
		OG_NONE_CACHETYPE   Bedeutet, daß alle Daten aus der vorherigen Ausführung verworfen und durch die neu abgerufenen Daten ersetzt werden.
CSG	maxflag	Gibt an, ob für die Anzahl von Zeilen in der Datengruppe ein Grenzwert festgelegt wird.
CSG	maxrows	Gibt die maximale Anzahl von Datenzeilen an, die in der Datengruppe der Abfrage behalten werden.
CSG	execopen	Gibt an, ob die Abfrage automatisch ausgeführt wird, wenn die grafische Anwendung zur Laufzeit geöffnet wird.
CSG	exectimer	Name des Timers, für den die Abfrage ausgeführt wird.
CSG	execalert	Für den späteren Gebrauch reserviert.
CSG	customproc	PL/SQL-Prozedur, die aufgerufen wird, wenn eine Benutzerdefinierte Abfrage ausgeführt wird.
CSG	postproc	PL/SQL-Prozedur, die nach Ausführung der Abfrage aufgerufen wird.


Kombinierter Rechteck-Attributsatz

Der kombinierte Rechteck-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Rechteck-Attributsatz:

TYPE og_rect_ca IS RECORD
(rect_caob  og_generic_attr,   /* generic */
 rect_caoh  og_graphic_attr,   /* graphic */
 rect_caor  og_rect_attr       /* rectangle */
);


Rechteck-Attributsatz

Der Rechteck-Attributsatz enthält Attribute, die nur mit Rechteckobjekten benutzt werden können:

TYPE og_rect_attr IS RECORD              Maskenkonstanten:
(mask      NUMBER(1,0),
 baserect  og_rectangle                  OG_BASERECT_RECTA
);
                                         OG_ALL_RECTA
                                         OG_NONE_RECTA

	Attribut	Beschreibung
CSG	baserect	x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).


Referenzlinien-Attributsatz

TYPE og_refline_attr IS RECORD           Maskenkonstanten:
(mask       NUMBER(2,0),
 numvalue   NUMBER(6),                   OG_VALUE_REFLINEA
 datevalue  DATE,                        OG_VALUE_REFLINEA
 label      VARCHAR2(255),               OG_LABEL_REFLINEA
 axis       NUMBER(1,0)                  OG_AXIS_REFLINEA
);
                                         OG_ALL_REFLINEA
                                         OG_NONE_REFLINEA

	Attribut	Beschreibung
SG	numvalue	Zahlenwert, bei dem die Referenzlinie angezeigt wird.
SG	datevalue	Datumswert, bei dem die Referenzlinie angezeigt wird.
SG	label	Textbeschriftung, die die Referenzlinie in der Legende angibt.
SG	axis	Gibt an, mit welcher Achse der Referenzwert verglichen wird, um die Position zu bestimmen.


Kombinierter Abgerundeter Rechteck-Attributsatz

Der kombinierte Abgerundete Rechteck-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem abgerundeten Rechteck-Attributsatz:

TYPE og_rrect_ca IS RECORD
(rrect_caob  og_generic_attr,   /* generic */
 rrect_caoh  og_graphic_attr,   /* graphic */
 rrect_caor  og_rrect_attr      /* rounded rectangle */
);


Abgerundeter Rechteck-Attributsatz

Der abgerundete Rechteck-Attributsatz enthält Attribute, die nur mit abgerundeten Rechteckobjekten benutzt werden können:

TYPE og_rrect_attr IS RECORD            Maskenkonstanten:
(mask      NUMBER(1,0),
 baserect  og_rectangle,                OG_BASERECT_RRECTA
 corner    og_point                     OG_CORNER_RRECTA
);
                                        OG_ALL_RRECTA
                                        OG_NONE_RRECTA

	Attribut	Beschreibung
CSG	baserect	x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).
CSG	corner	x- und y-Radii (in Layouteinheiten) der Ellipse, die entstehen würde, wenn die Bogen, die die abgerundeten Ecken bilden, auf eine Bahn von vollen 360 Grad verlängert würden.


Klang-Attributsatz

Der Klang-Attributsatz enthält Attribute, die nur mit Klängen benutzt werden können:

TYPE og_sound_attr IS RECORD              Maskenkonstanten:
(mask        NUMBER(1,0),
 query       og_query,                    OG_DATA_SOUNDA
 which_data  NUMBER(1,0),                 OG_DATA_SOUNDA
 colname     VARCHAR2(255),               OG_DATA_SOUNDA
 name        VARCHAR2(255),               OG_NAME_SOUNDA
);
                                          OG_ALL_SOUNDA
                                          OG_NONE_SOUNDA

	Attribut	Beschreibung
C	query	Handle zu der Abfrage, die den Klang aus einer Tabelle in einer Datenbank abruft. Beachten Sie, daß diese Tabelle eine Benutzertabelle und keine der privaten Tabellen sein muß, die von Graphics Builder verwendet werden, wenn Sie grafische Anwendungen, Zeichnungen, Diagrammvorlagen, Farbpaletten, Bilder oder Klänge in die Datenbank speichern oder exportieren.
C	which_data	Gibt an, ob der zu erstellende Klang in der neuen oder alten Datengruppe einer Abfrage enthalten ist. Graphics Builder verfügt über zwei vordefinierte numerische Konstanten, die als Werte für dieses Attribut benutzt werden können:
		OG_NEWDATA   Bedeutet, daß der Klang in der neuen Datengruppe der Abfrage enthalten ist.
		OG_OLDDATA   Bedeutet, daß der Klang in der alten Datengruppe der Abfrage enthalten ist.
C	colname	Name der Abfragespalte, die die Klangdaten enthält. Der erstellte Klang ist der Klang, der in der Abfragezelle bei dem Schnittpunkt zwischen der von diesem Attribut angegebenen Spalte und der Zeile enthalten ist, auf die der Cursor der Abfrage zeigt.
CSG	name	Name des Klangs.


Kombinierter Symbol-Attributsatz

Der kombinierte Symbol-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Symbol-Attributsatz:

TYPE og_symbol_ca IS RECORD
(symbol_caob  og_generic_attr,   /* generic */
 symbol_caoh  og_graphic_attr,   /* graphic */
 symbol_caos  og_symbol_attr     /* symbol */
);


Symbol-Attributsatz

Der Symbol-Attributsatz enthält Attribute, die nur mit Symbolobjekten benutzt werden können:

TYPE og_symbol_attr IS RECORD          Maskenkonstanten:
(mask     NUMBER(1,0),
 center   og_point,                    OG_CENTER_SYMBOLA
 indx     NUMBER(3,0),                 OG_INDX_SYMBOLA
 symsize  NUMBER(1,0)                  OG_SYMSIZE_SYMBOLA
);
                                       OG_ALL_SYMBOLA
                                       OG_NONE_SYMBOLA

	Attribut	Beschreibung
CSG	center	x- und y-Koordinaten des Symbolmittelpunkts (in Layouteinheiten).
CSG	indx	Index (oder Nummer) der Symbolposition, so wie sie in der Symbolpalette im Designer angezeigt wird.
CSG	symsize	Größe des Symbols. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_LARGE_SYMSIZE   Bedeutet, daß das Symbol groß ist.
		OG_MEDIUM_SYMSIZE   Bedeutet, daß das Symbol mittelgroß ist.
		OG_SMALL_SYMSIZE   Bedeutet, daß das Symbol klein ist.


Überblick über Textattribute

Der Text-Attributsatz enthält nicht den Text, der in dem Textobjekt angezeigt wird. Statt dessen müssen Sie zuerst ein Textobjekt erstellen und dann die Prozedur OG_INSERT_CMPTEXT verwenden, um ein "zusammengesetztes Textelement" in das Textobjekt einzufügen. Sie können mehrere zusammengesetzte Textelemente in ein Textobjekt einfügen, wobei jedes Element eine Textzeile in dem Objekt darstellt. Außerdem kann jedes zusammengesetzte Textelement ein oder mehrere "einfache Textelemente" enthalten. Ein einfaches Textelement enthält eine konkrete Textfolge und muß mit der Prozedur OG_INSERT_SMPTEXT in ein zusammengesetztes Textelement eingefügt werden.

Die Attributsätze für zusammengesetzten und einfachen Text werden als nächstes aufgeführt.


Kombinierter Text-Attributsatz

Der kombinierte Text-Attributsatz besteht aus einem allgemeinen Attributsatz, einem grafischen Attributsatz und einem Text-Attributsatz:

TYPE og_text_ca IS RECORD
(text_caob  og_generic_attr,   /* generic */
 text_caoh  og_graphic_attr,   /* graphic */
 text_caot  og_text_attr       /* text */
);


Text-Attributsatz

Der Text-Attributsatz enthält Attribute, die nur mit Textobjekten benutzt werden können:

TYPE og_text_attr IS RECORD            Maskenkonstanten:
(mask       NUMBER(6,0),
 origin     og_point,                  OG_ORIGIN_TEXTA
 ctcount    NUMBER(10,0),              OG_CTCOUNT_TEXTA
 gfont      og_font_attr,              OG_GFONT_TEXTA
 gcolor     VARCHAR2(255),             OG_GCOLOR_TEXTA
 spacing    NUMBER(1,0),               OG_SPACING_TEXTA
 custom     NUMBER(10,0),              OG_SPACING_TEXTA
 horigin    NUMBER(1,0),               OG_HORIGIN_TEXTA
 vorigin    NUMBER(1,0),               OG_VORIGIN_TEXTA
 halign     NUMBER(2,0),               OG_HALIGN_TEXTA
 valign     NUMBER(3,0),               OG_VALIGN_TEXTA
 fixed      BOOLEAN,                   OG_FIXED_TEXTA
 wrap       BOOLEAN,                   OG_WRAP_TEXTA
 bbscale    BOOLEAN,                   OG_BBSCALE_TEXTA
 fontscale  BOOLEAN,                   OG_FONTSCALE_TEXTA
 invisible  BOOLEAN,                   OG_INVISIBLE_TEXTA
 width      NUMBER(10,0),              OG_FIXEDWH_TEXTA
 height     NUMBER(10,0)               OG_FIXEDWH_TEXTA
);
                                       OG_ALL_TEXTA
                                       OG_NONE_TEXTA

	Attribut	Beschreibung
CSG	origin	x- und y-Koordinaten der oberen linken Ecke des Textobjekts (in Layouteinheiten).
G	ctcount	Anzahl von zusammengesetzten Textelementen, aus denen das Textobjekt besteht.
S	gfont	Globale Schriftart des Textobjekts. Wenn dieses Attribut eingestellt ist, wird das Attribut font für jedes einfache Textelement in dem Textobjekt auf diese Schriftart eingestellt. Beachten Sie, daß die Einstellung dieses Attributs sich nur auf bestehende einfache Textelemente auswirkt; später hinzugefügte einfache Textelemente werden in der Schriftart angezeigt, die in deren einfachen Text-Attributsätzen angegeben ist.
S	gcolor	Globale Farbe des Textobjekts. Wenn dieses Attribut eingestellt ist, wird das Attribut color für jedes einfache Textelement in dem Textobjekt auf diese Farbe eingestellt. Beachten Sie, daß sich die Einstellung dieses Attributs nur auf bestehende einfache Textelemente auswirkt; später hinzugefügte einfache Textelemente werden in der Farbe angezeigt, die in deren einfachen Text-Attributsätzen angegeben ist.
CSG	spacing	Zeilenabstand für das Textobjekt. Der Wert dieses Attributs kann einer der unten aufgeführten vordefinierten Konstanten entsprechen. Wenn ein benutzerdefinierter Zeilenabstand eingestellt wird, muß mit dem Wert des Attributs custom der genaue Zeilenabstand angegeben werden.
		OG_SINGLE_SPACE   Bedeutet, daß der Text den einfachen Zeilenabstand benutzt.
		OG_ONEHALF_SPACE   Bedeutet, daß der Text den 1 1/2fachen Zeilenabstand benutzt.
		OG_DOUBLE_SPACE   Bedeutet, daß der Text den doppelten Zeilenabstand benutzt.
		OG_CUSTOM_SPACE   Bedeutet, daß der Text den benutzerdefinierten Zeilenabstand benutzt. Der tatsächlich benutzte Zeilenabstand wird in dem Attribut custom definiert.
CSG	custom	Benutzerdefinierter Zeilenabstand für das Textobjekt (in Layouteinheiten). Dieses Attribut wird nur dann zur Angabe des Zeilenabstands benutzt, wenn das Attribut gspacing auf den benutzerdefinierten Zeilenabstand eingestellt wurde.
CSG	horigin	Horizontalposition des Textobjektes relativ zum Ursprung. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_LEFT_HORIGIN   Bedeutet, daß der Ursprung am linken Rand der Umrandung liegt.
		OG_CENTER_HORIGIN   Bedeutet, daß der Ursprung genau in der Mitte zwischen dem linken und rechten Rand der Umrandung liegt.
		OG_RIGHT_HORIGIN   Bedeutet, daß der Ursprung am rechten Rand der Umrandung liegt.
CSG	vorigin	Vertikalposition des Textobjektes relativ zum Ursprung. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_TOP_VORIGIN   Bedeutet, daß der Ursprung am oberen Rand der Umrandung liegt.
		OG_MIDDLE_VORIGIN   Bedeutet, daß der Ursprung genau in der Mitte zwischen dem oberen und unteren Rand der Umrandung liegt.
		OG_BOTTOM_VORIGIN   Bedeutet, daß der Ursprung am unteren Rand der Umrandung liegt.
CSG	halign	Horizontale Ausrichtung des Textobjektes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_LEFT_HALIGN   Bedeutet, daß der Text linksbündig ausgerichtet ist.
		OG_CENTER_HALIGN   Bedeutet, daß der Text zentriert ist.
		OG_RIGHT_HALIGN   Bedeutet, daß der Text rechtsbündig ausgerichtet ist.
CSG	valign	Vertikale Ausrichtung des Textobjektes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_TOP_VALIGN   Bedeutet, daß der Text am oberen Rand ausgerichtet ist.
		OG_MIDDLE_VALIGN   Bedeutet, daß der Text an der Mitte ausgerichtet ist.
		OG_BOTTOM_VALIGN   Bedeutet, daß der Text am unteren Rand ausgerichtet ist.
CSG	wrap	Gibt an, ob der Text umbrochen werden soll, damit er in die Umrandung des Textobjekts paßt. Wie unten beschrieben, stellt ein zusammengesetztes Textelement eine Textzeile dar und besteht aus einfachen Textelementen. Dieses Attribut kann einen der folgenden Werte haben:
		TRUE   Bedeutet, daß der Text umbrochen wird.
		FALSE   Bedeutet, daß der Text nicht umbrochen wird.
CSG	bbscale	Gibt an, ob die Umrandung des Textobjekts skaliert werden soll, wenn das Textobjekt skaliert wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß die Umrandung skaliert wird.
		FALSE   Bedeutet, daß die Umrandung nicht skaliert wird.
CSG	fontscale	Gibt an, ob die Punktgröße der Schriftart skaliert werden soll, wenn das Textobjekt skaliert wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß die Punktgröße skaliert wird.
		FALSE   Bedeutet, daß die Punktgröße nicht skaliert wird.
CSG	fixed	Gibt an, ob die Umrandung des Textobjekts eine feste Größe behalten soll. Wenn für dieses Attribut TRUE angegeben wird, müssen die Werte der Attribute width und height die Größe der Umrandung angeben. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß die Umrandung fest ist. Die Abmessungen der Umrandung werden mit den Attributen width und height definiert.
		FALSE   Bedeutet, daß die Umrandung nicht fest ist.
CSG	width	Breite der Umrandung (in Layouteinheiten). Wenn sich die Umrandung ändert, wird dieses Attribut automatisch entsprechend der neuen Breite aktualisiert. Mit diesem Attribut wird die Breite nur eingestellt, wenn für das Attribut fixed TRUE angegeben wurde.
CSG	height	Höhe der Umrandung (in Layouteinheiten). Wenn sich die Umrandung ändert, wird dieses Attribut automatisch entsprechend der neuen Höhe aktualisiert. Dieses Attribut wird nur zur Einstellung der Höhe benutzt, wenn für das Attribut fixed TRUE angegeben wurde.
CSG	invisible	Gibt an, ob der Text in dem Textobjekt unsichtbar sein soll. Dies wird besonders bei Textfeldern benutzt, in die ein Benutzer ein Kennwort eingibt, wenn das Kennwort nicht sichtbar sein soll. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		TRUE   Bedeutet, daß der Text unsichtbar ist.
		FALSE   Bedeutet, daß der Text sichtbar ist.


Schriftart-Attributsatz

Der Schriftart-Attributsatz wird zur Angabe der Attribute einer Schriftart benutzt, wie z.B. Schrift und Punktgröße.

TYPE og_font_attr IS RECORD           Maskenkonstanten:
(mask         NUMBER(3,0),
 typeface     VARCHAR2(255),          OG_TYPEFACE_FONTA
 ptsize       NUMBER(10,2),           OG_PTSIZE_FONTA
 style        NUMBER(5,0),            OG_STYLE_FONTA
 weight       NUMBER(5,0),            OG_WEIGHT_FONTA
 width        NUMBER(5,0),            OG_WIDTH_FONTA
 kerning      BOOLEAN,                OG_KERNING_FONTA
 nearest      BOOLEAN,                OG_NEAREST_FONTA
 synthesize   BOOLEAN,                OG_SYNTHESIZE_FONTA
 charset      NUMBER(5,0)             OG_CHARSET_FONTA
);
                                      OG_ALL_FONTA
                                      OG_NONE_FONTA

	Attribut	Beschreibung
CG	typeface	Schriftstil. Mit den Werten für dieses Feld werden Stile angegeben, wie z.B. Kursivschrift, Schattierung und Unterstreichung. Sie sind systemspezifisch. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation.
CG	ptsize	Punktgröße der Schriftart. Die Werte für dieses Feld sind systemspezifisch. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation.
CG	style	Schriftstil. Nicht alle Stile sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_BLINK_FONTSTYLE   Bedeutet, daß der blinkende Stil benutzt wird.
		OG_INVERTED_FONTSTYLE   Bedeutet, daß der inverse Stil benutzt wird.
		OG_ITALIC_FONTSTYLE   Bedeutet, daß die Kursivschrift benutzt wird.
		OG_OBLIQUE_FONTSTYLE   Bedeutet, daß die Schrägschrift benutzt wird.
		OG_OUTLINE_FONTSTYLE   Bedeutet, daß die Konturschrift benutzt wird.
		OG_OVERSTRIKE_FONTSTYLE   Bedeutet, daß der durchgestrichene Stil benutzt wird.
		OG_PLAIN_FONTSTYLE   Bedeutet, daß der normale Stil benutzt wird.
		OG_SHADOW_FONTSTYLE   Bedeutet, daß der Schattenstil benutzt wird.
		OG_UNDERLINE_FONTSTYLE   Bedeutet, daß die Unterstreichung benutzt wird.
		OG_UNKNOWN_FONTSTYLE   Bedeutet, daß der Stil unbekannt ist. Sie können einen Stil nicht auf diesen Wert einstellen; wenn Sie jedoch eine Schriftart einlesen und Graphics Builder den Stil nicht erkennen kann, wird dieser Wert zurückgegeben.
CG	weight	Schriftstärke. Nicht alle Schriftstärken sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_BOLD_FONTWEIGHT   Bedeutet, daß die Schriftstärke fett ist.
		OG_DEMIBOLD_FONTWEIGHT   Bedeutet, daß die Schriftstärke halbfett ist.
		OG_DEMILIGHT_FONTWEIGHT   Bedeutet, daß die Schriftstärke halbmager ist.
		OG_EXTRABOLD_FONTWEIGHT   Bedeutet, daß die Stärke extrafett ist.
		OG_EXTRALIGHT_FONTWEIGHT   Bedeutet, daß die Stärke extramager ist.
		OG_LIGHT_FONTWEIGHT   Bedeutet, daß die Stärke mager ist.
		OG_MEDIUM_FONTWEIGHT   Bedeutet, daß die Stärke mittel ist.
		OG_ULTRABOLD_FONTWEIGHT   Bedeutet, daß die Stärke ultrafett ist.
		OG_ULTRALIGHT_FONTWEIGHT   Bedeutet, daß die Stärke ultramager ist.
		OG_UNKNOWN_FONTWEIGHT   Bedeutet, daß die Stärke unbekannt ist. Sie können eine Stärke nicht auf diesen Wert einstellen. Wenn Sie jedoch eine Schriftart einlesen und Graphics Builder deren Stärke nicht bestimmen kann, wird dieser Wert zurückgegeben.
CG	width	Schriftbreite. Nicht alle Breiten sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:
		OG_DENSE_FONTWIDTH   Bedeutet, daß die Breite schmal ist.
		OG_EXPAND_FONTWIDTH   Bedeutet, daß die Breite erweitert ist.
		OG_EXTRADENSE_FONTWIDTH   Bedeutet, daß die Breite extra schmal ist.
		OG_EXTRAEXPAND_FONTWIDTH   Bedeutet, daß die Breite extra erweitert ist.
		OG_NORMAL_FONTWIDTH   Bedeutet, daß die Breite normal ist.
		OG_SEMIDENSE_FONTWIDTH   Bedeutet, daß die Breite halbschmal ist.
		OG_SEMIEXPAND_FONTWIDTH   Bedeutet, daß die Breite halb erweitert ist.
		OG_ULTRADENSE_FONTWIDTH   Bedeutet, daß die Breite ultraschmal ist.
		OG_ULTRAEXPAND_FONTWIDTH   Bedeutet, daß die Breite ultraerweitert ist.
		OG_UNKNOWN_FONTWIDTH   Bedeutet, daß die Breite unbekannt ist. Sie können eine Breite nicht auf diesen Wert einstellen. Wenn Sie jedoch eine Schriftart einlesen und Graphics Builder die Breite nicht bestimmen kann, wird dieser Wert zurückgegeben.
CG	kerning	Gibt an, ob für die Schriftart ein Kerning benutzt werden soll. Mit Kerning wird die Anpassung des Abstandes zwischen nebeneinanderstehenden Buchstaben bezeichnet, um den Text leserlicher zu gestalten. Dieses Feld kann einen der folgenden Werte haben:
		TRUE   Bedeutet, daß für die Schriftart ein Kerning benutzt wird.
		FALSE   Bedeutet, daß kein Kerning benutzt wird.
C	nearest	Gibt an, ob Graphics Builder die nächste übereinstimmende Schriftart benutzen soll, wenn die angegebene genaue Schriftart nicht gefunden werden kann. Die Priorität bei der Suche nach der nächsten Schriftart ist Schrift, Punktgröße, Stil, Stärke und Breite (d.h. daß Graphics Builder zuerst versucht, die angegebene Schrift zu finden, danach die angegebene Größe usw.). Dieses Attribut kann einen der folgenden Werte haben:
		TRUE   Bedeutet, daß die nächste verfügbare Schriftart benutzt werden soll.
		FALSE   Bedeutet, daß die nächste verfügbare Schriftart nicht benutzt werden soll.
C	synthesize	Gibt an, ob Graphics Builder die gewünschte Schriftart synthetisch herstellen soll (wenn die angegebene Schriftart nicht gefunden werden kann), indem die nächste übereinstimmende Schriftart umgewandelt wird. Dieses Feld kann einen der folgenden Werte haben:
		TRUE   Bedeutet, daß die Schriftart synthetisch hergestellt werden soll.
		FALSE   Bedeutet, daß die Schriftart nicht synthetisch hergestellt werden soll.
CG	charset	Zeichensatz der Schriftart. Die Werte für dieses Feld geben Zeichensätze an, wie z.B. U.S. ASCII, Kanji und Arabisch. Eine Liste der gültigen Werte für dieses Feld finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.
		OG_US7ASCII_CHARSET
		OG_WE8DEC_CHARSET
		OG_WE8HP_CHARSET
		OG_US8PC437_CHARSET
		OG_WE8EBCDIC37_CHARSET
		OG_WE8EBCDIC500_CHARSET
		OG_WE8PC850_CHARSET
		OG_D7DEC_CHARSET
		OG_F7DEC_CHARSET
		OG_S7DEC_CHARSET
		OG_E7DEC_CHARSET
		OG_SF7ASCII_CHARSET
		OG_NDK7DEC_CHARSET
		OG_I7DEC_CHARSET
		OG_NL7DEC_CHARSET
		OG_CH7DEC_CHARSET
		OG_SF7DEC_CHARSET
		OG_WE8ISO8859P1_CHARSET
		OG_EE8ISO8859P2_CHARSET
		OG_SE8ISO8859P3_CHARSET
		OG_NEE8ISO8859P4_CHARSET
		OG_CL8ISO8859P5_CHARSET
		OG_AR8ISO8859P6_CHARSET
		OG_EL8ISO8859P7_CHARSET
		OG_IW8ISO8859P8_CHARSET
		OG_WE8ISO8859P9_CHARSET
		OG_AR8ASMO708PLUS_CHARSET
		OG_AR7ASMO449PLUS_CHARSET
		OG_WE8MACROMAN8_CHARSET
		OG_JVMS_CHARSET
		OG_JEUC_CHARSET
		OG_JDEC_CHARSET
		OG_SJIS_CHARSET
		OG_JDBCS_CHARSET
		OG_JHP_CHARSET
		OG_KSC5601_CHARSET
		OG_KIBM5540_CHARSET
		OG_KDBCS_CHARSET
		OG_CGB231380_CHARSET
		OG_CDBCS_CHARSET
		OG_BIG5_CHARSET
		OG_CNS1164386_CHARSET


Zusammengesetzter Textelement-Attributsatz

Der zusammengesetzte Textelement-Attributsatz enthält Attribute, die nur mit zusammengesetzten Textelementen benutzt werden können:

TYPE og_cmptext_attr IS RECORD	   Maskenkonstanten:
(mask     NUMBER(1,0),
 stcount  NUMBER(10,0)               OG_STCOUNT_CMPTEXTA
);
                                     OG_ALL_CMPTEXTA
                                     OG_NONE_CMPTEXTA

	Attribut	Beschreibung
G	stcount	Anzahl von einfachen Textelementen, aus denen das zusammengesetzte Textelement besteht.


Einfacher Textelement-Attributsatz

Der einfache Textelement-Attributsatz enthält Attribute, die nur mit einfachen Textelementen benutzt werden können:

TYPE og_smptext_attr IS RECORD    Maskenkonstanten:
(mask   NUMBER(1,0),
 str    VARCHAR2(2000)            OG_STR_SMPTEXTA
 font   og_font_attr,             OG_FONT_SMPTEXTA
 color  VARCHAR2(255)             OG_COLOR_SMPTEXTA
);
                                  OG_ALL_SMPTEXTA
                                  OG_NONE_SMPTEXTA

	Attribut	Beschreibung
CSG	str	Zeichenfolge, die den konkreten Text für das einfache Textelement enthält.
CSG	font	Schriftart, in der der Text der Zeichenfolge angezeigt werden soll. Die einzigen Schriftartattribute, die benutzt werden, sind die mit dem Wert der Maskenattribute im Schriftart-Attributsatz angegebenen Attribute. Die Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, bleiben unbetroffen.
CSG	color	Farbe, in der der Text der Zeichenfolge angezeigt werden soll. Beachten Sie, daß dies die Farbe für den Text selbst ist. Um die Rand- oder Füllfarben des Textobjekts einzustellen, ändern Sie die grafischen Attribute des Textobjekts.
Beispiel

Diese Prozedur erstellt ein Textobjekt mit der Bezeichnung "Message" bei dem Ursprung (1", 1") und enthält die beiden folgenden Textzeilen in einer Times 12 Punkt Schriftart.

Dies ist Zeile 1.

Und jetzt Zeile 2.

Denken Sie daran, daß jedes zusammengesetzte Textelement genau eine Textzeile in dem Textobjekt darstellt.

PROCEDURE make_text IS
   text_obj   og_object;
   text_rec   og_text_ca;
   smp_rec    og_smptext_attr;
   font_rec   og_font_attr;
BEGIN
/* Set text object's name and origin attributes */
   text_rec.text_caob.name:='Message';
   text_rec.text_caot.origin.x:=OG_INCH;
   text_rec.text_caot.origin.y:=OG_INCH;
   text_rec.text_caob.mask:=OG_NAME_GENERICA;
   text_rec.text_caoh.mask:=OG_NONE_GRAPHICA;
   text_rec.text_caot.mask:=OG_ORIGIN_TEXTA;
/* Make the text object */
   text_obj:=og_make(text_rec);
/* Insert new compound text element into the text object at
      index 0 */
   og_insert_cmptext(text_obj, 0);
/* Set font record's typeface and point size attributes */
   font_rec.typeface:='times';
   font_rec.ptsize:=12;
   font_rec.mask:=OG_TYPEFACE_FONTA+
                  OG_PTSIZE_FONTA;
/* Set simple text record for text string and font */
   smp_rec.str:='Dies ist Zeile 1.';
   smp_rec.font:=font_rec;
   smp_rec.mask:=OG_STR_SMPTEXTA+
                 OG_FONT_SMPTEXTA;
/* Insert a new simple text element at index 0 in text
      object's compound text element at index 0, using
      defined simple text record */
   og_insert_smptext(text_obj, smp_rec, 0, 0);
/* Insert new compound text element into the text object at
      index 1 */
   og_insert_cmptext(text_obj, 1);
/* Change the simple text record's text string */
   smp_rec.str:='Und jetzt';
/* Insert a new simple text element at index 0 in text
      object's compound text element at index 1, using
      defined simple text record */
   og_insert_smptext(text_obj, smp_rec, 1, 0);
/* Change the simple text record's text string */
   smp_rec.str:=' Zeile 2.';
/* Insert a new simple text element at index 1 in text
      object's compound text element at index 1, using
      defined simple text record */
   og_insert_smptext(text_obj, smp_rec, 1, 1);
END;

Beispiel

Diese Funktion benutzt ein Handle zu einem Textfeldobjekt als Argument und gibt den in diesem Feld enthaltenen Text zurück. Beachten Sie, daß nur die erste Textzeile des Textfeldes abgerufen wird, weil nur auf das zusammengesetzte Textelement zugegriffen wird.

FUNCTION get_text(text_obj IN og_object) RETURN VARCHAR2 IS
   smp_rec   og_smptext_attr;
BEGIN
   /* Set the simple text record's mask, indicating that the text string is the only attribute to get */
   smp_rec.mask:=OG_STR_SMPTEXTA;
   /* Get the 0th simple text element in the text object's
      0th compound text element, and store the results in
      the simple text record */
   og_get_smptext(text_obj, 0, 0, smp_rec);
   /* Return the text string attribute of the simple text
      record */
   RETURN(smp_rec.str);
END;


Timer-Attributsatz

Der Timer-Attributsatz enthält Attribute, die nur mit Timern benutzt werden können:

TYPE og_timer_attr IS RECORD          Maskenkonstanten:
(mask       NUMBER(2,0),
 name       VARCHAR2(255),            OG_NAME_TIMERA
 interval   NUMBER(10,3),             OG_INTERVAL_TIMERA
 timerproc  VARCHAR2(255),            OG_TIMERPROC_TIMERA
 active     BOOLEAN                   OG_ACTIVE_TIMERA
);
                                      OG_ALL_TIMERA
                                      OG_NONE_TIMERA

	Attribut	Beschreibung
CSG	name	Name des Timers.
CSG	interval	Anzahl von Sekunden, die zwischen jeder Ausführung der Timer-Prozedur ablaufen.
CSG	timerproc	Name der Prozedur, die beim Auslösen des Timers ausgeführt wird.


Fenster-Attributsatz

Die Position und Abmessungen von Fenstern werden in "Bildschirmauflösungseinheiten" ausgedrückt, die im allgemeinen als Pixel bezeichnet werden. Sowohl die Horizontal- als auch die Vertikalwerte der Bildschirmauflösung werden in einem vordefinierten globalen Satz mit der Bezeichnung OG_APP angegeben. Dieser Satz hat den Typ OG_APP_ATTR, der vollständig in dem Abschnitt "Anwendung-Attributsatz" in diesem Kapitel definiert wird.

Sie sollten diese globale Variable anstelle eines konkreten numerischen Wertes benutzen, damit Ihre Anwendung auf Systemen mit anderen Bildschirmauflösungen weiter ein konsistentes Aussehen hat.

Der Fenster-Attributsatz enthält Attribute, die nur mit Fenstern benutzt werden können.

TYPE og_window_attr is RECORD      Maskenkonstanten:
(mask        NUMBER(2,0),
 position    og_point,             OG_POSITION_WINDOWA
 width       NUMBER(5,0),          OG_SIZE_WINDOWA
 height      NUMBER(5,0),          OG_SIZE_WINDOWA
 name        VARCHAR2(255),        OG_NAME_WINDOWA
 scrollbars  BOOLEAN,              OG_SCROLLBARS_WINDOWA
 helptarget  VARCHAR2(255)         OG_HELPTARGET_WINDOWA
);
                                   OG_ALL_WINDOWA
                                   OG_NONE_WINDOWA

	Attribut	Beschreibung
CSG	position	x- und y-Koordinaten der oberen linken Ecke des Fensters (in Bildschirmauflösungseinheiten).
CSG	width	Breite des Fensters (in Bildschirmauflösungseinheiten).
CSG	height	Höhe des Fensters (in Bildschirmauflösungseinheiten).
CSG	name	Fenstername. Zur Laufzeit ist der Standardname des Layoutfensters "Hauptlayout".
C	scrollbars	Gibt an, ob Bildlaufleisten in dem Fenster angezeigt werden. Dieses Attribut kann einen der folgenden Werte haben:
		TRUE   Bedeutet, daß das Fenster Bildlaufleisten hat.
		FALSE   Bedeutet, daß das Fenster keine Bildlaufleisten hat.
CSG	helptarget	Hypertext-Ziel in dem Laufzeit-Hilfedokument, das angezeigt wird, wenn das Hilfesystem aufgerufen wird, während das Fenster aktiv ist.


Über vordefinierte PL/SQL-Unterprogramme

In diesem Abschnitt werden alle vordefinierten Graphics Builder-Unterprogramme beschrieben. Diese Unterprogramme sind Erweiterungen der PL/SQL-Sprache und können in Ihren eigenen Unterprogrammen benutzt werden, um auf Funktionen und Funktionalität von Graphics Builder zuzugreifen.

Weitere Informationen über die Benutzung dieser Unterprogramme finden Sie in Graphics Builder Developer's Guide.

Veränderungsmarken benutzen

Änderungsmarke der Umrandung benutzen

Mit Objektlisten arbeiten

Beschreibung der vordefinierten Unterprogramme


Über die Benutzung von Veränderungsmarken

Viele der folgenden Prozeduren und Funktionen akzeptieren ein Boolesches Argument, das als "Veränderungsmarke" bezeichnet wird. Das Veränderungsargument ist immer optional. Wenn keine anderen Angaben gemacht werden, ist der Standardwert immer TRUE.

Wenn die Veränderungsmarke auf TRUE eingestellt ist, werden die Teile des Layouts, die von der Prozedur oder Funktion betroffen sind, als "verändert" markiert. Diese Bereiche werden als "Veränderungsbereich" bezeichnet. Wenn Sie z.B. Farbe oder Größe eines Objekts ändern, werden die Bereiche der grafischen Anwendung, in denen das Objekt angezeigt wird, verändert.

Veränderungsbereiche sind immer rechteckig. Wenn das betroffene Objekt nicht rechteckig ist, entspricht der Veränderungsbereich dem kleinsten rechteckigen Bereich, der das Objekt vollständig umschließt.

Veränderungsbereiche werden automatisch neu gezeichnet, wenn die Prozedur oder Funktion der höchsten Ebene endet, in der diese verändert wurden, oder wenn Sie die vordefinierte Prozedur OG_SYNCHRONIZE explizit aufrufen. Nachdem ein Bildschirmbereich neu gezeichnet wurde, ist er nicht mehr verändert (bis er durch einen anderen Prozeduraufruf erneut verändert wird).

Wenn die Veränderungsmarke auf FALSE eingestellt ist, werden die Teile des Layouts, die von dem Unterprogrammaufruf betroffen sind, nicht verändert und somit in keiner der obigen Situationen neu gezeichnet.

Berücksichtigen Sie, daß selbst, wenn die Veränderungsmarke beim Ändern eines Objekts auf FALSE eingestellt ist, die vorgenommenen Änderungen dennoch für die interne Beschreibung dieses Objekts angewendet werden. Wenn Sie später versuchen, die Attribute eines derartigen Objektes programmgesteuert zu überprüfen (z.B. mit der vordefinierten Prozedur OG_GET_ATTR), werden Sie feststellen, daß es nicht mit dem Objekt in der grafischen Anwendung übereinstimmt.

Wenn Sie z.B. die Größe eines Objekts ändern, die Veränderungsmarke jedoch auf FALSE einstellen, sehen Sie keine Änderung in der Objektgröße wie in dem Layout angezeigt. Die interne Darstellung des Objektes wird jedoch geändert. Wenn Sie die Objektgröße später mit OG_GET_ATTR bestimmen, werden Sie feststellen, daß Graphics Builder von der Größe ausgeht, in die Sie das Objekt geändert haben, und nicht von der Größe, die es in dem Layout hat.

Gehen Sie mit Vorsicht vor, wenn Sie eine FALSE-Veränderungsmarke angeben. In diesem Fall ist es nicht schwierig zu veranlassen, daß Erscheinungsbild und interne Beschreibung der Objekte der grafischen Anwendung nicht mehr synchron sind.

Um einen Bereich des Layouts explizit zu verändern, verwenden Sie die vordefinierte Prozedur OG_DAMAGE.


Über die Benutzung von Änderungsmarken der Umrandung

Viele der folgenden Prozeduren und Funktionen akzeptieren ein Boolesches Argument mit der Bezeichnung "Änderungsmarke der Umrandung". Die Änderungsmarke der Umrandung ist immer optional. Wenn keine anderen Angaben gemacht werden, ist der Standardwert immer TRUE.

Sie können viele Änderungen an einem Objekt vornehmen, die sich auf die innere und/oder äußere Umrandung des Objekts auswirken. Wenn Sie z.B. die Randbreite eines Objekts ändern, bleibt die innere Umrandung dieselbe, die äußere Umrandung kann jedoch möglicherweise an die neue Größe des Objekts angepaßt werden. Wenn Sie ein Objekt verschieben, ändern sich beide Umrandungen.

Bei jeder Ausführung eines derartigen Vorgangs aktualisiert Graphics Builder die Umrandungen des Objekts intern. (Umrandungen werden mit den Attributen obbox und ibbox des allgemeinen Attributsatzes dargestellt.)

Wenn die Änderungsmarke der Umrandung TRUE ist, aktualisiert Graphics Builder die Umrandungen des Objekts normal nach jedem Vorgang, der sich auf diese auswirken kann. Außerdem aktualisiert Graphics Builder die Umrandungen aller übergeordneten Objekte bis zu - und einschließlich - der Ebene, auf der das Objekt steht.

Wenn die Änderungsmarke der Umrandung FALSE ist, aktualisiert Graphics Builder keine Umrandungen.

Wenn Sie viele Objekte ändern - oder einige Objekte häufig ändern -, kann sich die Zeit, die Graphics Builder für das Aktualisieren aller Umrandungen aufwendet, negativ auf die Leistung Ihrer Anwendung auswirken. Um die Leistung zu verbessern, warten Sie möglicherweise, bis alle Änderungen durchgeführt wurden, bevor Sie die Umrandungen aktualisieren. Wenn Sie z.B. mehrere Änderungen an einem Objekt vornehmen, werden die Umrandungen standardmäßig nach jeder Änderung aktualisiert. Sie können sich jedoch dafür entscheiden, diese mehrfachen automatischen Aktualisierungen der Umrandungen nicht durchzuführen und die Umrandungen dann mit einem einzigen Aufruf der vordefinierten Prozedur OG_UPDATE_BBOX auf den aktuellen Stand bringen.

Wenn sich jedoch die Änderungen, die Sie an einem Objekt durchführen, nicht auf die Umrandungen auswirken (wie z.B. die Änderung der Farbe), spielt es keine Rolle, ob diese richtig aktualisiert werden. In diesem Fall können Sie die automatische Aktualisierung der Umrandungen nicht durchführen und diese sogar zu einem späteren Zeitpunkt nicht aktualisieren.

Um die Umrandungen eines Objekts explizit zu aktualisieren, verwenden Sie die vordefinierte Prozedur OG_UPDATE_BBOX.

Wenn Sie ein Objekt ändern und die Änderungsmarke der Umrandung auf FALSE einstellen, wird empfohlen, daß Sie die Veränderungsmarke ebenfalls auf FALSE einstellen. Graphics Builder benutzt die Umrandungen des Objekts, um den neu zu zeichnenden Veränderungsbereich zu bestimmen. Wenn die Umrandungen nicht akkurat sind, wird das Layout wahrscheinlich nicht richtig verändert.


Über das Arbeiten mit Objektlisten

Viele der in diesem Abschnitt aufgeführten Prozeduren und Funktionen werden benutzt, um eine "Liste" mit Objekten zu erstellen oder zu ändern. So bestehen z.B. alle folgenden Objekte aus einer Liste:

•	Ein Gruppenobjekt enthält eine Liste mit untergeordneten Objekten.

•	Ein Polygonobjekt enthält eine Liste mit Punkten.

•	Ein Textobjekt enthält eine Liste mit zusammengesetzten Textelementen.

•	Ein zusammengesetztes Textelement enthält eine Liste mit einfachen Textelementen.

•	Ein Diagrammobjekt enthält eine Liste mit Feldern.

Jedem Objekt in einer Liste wird ein "Index" bzw. eine Zahl zugewiesen, die dessen Position in der Liste darstellt. Listen sind null-orientiert, d.h. das erste Objekt in einer Liste hat einen Index von 0, das zweite Objekt einen Index von 1 usw.

Als nächstes sehen Sie z.B. eine grafische Darstellung eines Gruppenobjekts (einen Tennisschläger) und die Liste der untergeordneten Objekte, aus denen das Gruppenobjekt besteht (Schlägerkopf, Bespannung und Griff):

Listenvorgänge

Mit diesen Listen können Sie drei Vorgänge durchführen:

•	Objekte einfügen

•	Objekte löschen

•	Objekte einlesen (um deren Wert zu überprüfen)

Für jedes Objekt, das eine Liste benutzt, enthält Graphics Builder vordefinierte Unterprogramme, mit denen Sie diese Vorgänge ausführen können. Die mit einem Gruppenobjekt und den untergeordneten Objekten verknüpften Unterprogramme sind z.B. OG_INSERT_CHILD, OG_DELETE_CHILD und OG_GET_CHILD.

Bei all diesen Unterprogrammen müssen Sie den Index des Objektes angeben, das Sie bearbeiten möchten.

Angenommen, Sie haben das folgende Textobjekt erstellt, das aus einem zusammengesetzten Textelement und drei einfachen Textelementen besteht:

Um das zweite einfache Textelement aus dem ersten zusammengesetzten Textelement zu löschen, könnten Sie das Textobjekt an diese Prozedur übergeben:

PROCEDURE delete_second_word(textobj og_object) IS
BEGIN
   og_delete_smptext(textobj, 0, 1, 1);
END;

Bei einem anderen Beispiel wird davon ausgegangen, daß Sie ein Objekt zu einer Gruppe hinzufügen möchten, indem Sie dieses Objekt am Ende der Liste mit untergeordneten Objekten der Gruppe einfügen. Um z.B. einen Index anzugeben, der dem letzten Objekt in der Liste entspricht, müßten Sie wissen, wie viele Objekte die Liste enthält. Graphics Builder verfügt jedoch über eine vordefinierte numerische Konstante, die Sie als Index zur Angabe des letzten Objekts in der Liste benutzen können: OG_LAST. (Graphics Builder enthält außerdem die Konstante OG_FIRST zur Angabe des ersten Objekts in einer Liste.)

Die folgende Prozedur akzeptiert ein Gruppenobjekt und ein anderes Objekt als Argumente und hängt das andere Objekt am Ende der Gruppe an:

PROCEDURE stick_at_end(groupobj og_object, childobj og_object) IS
BEGIN
   og_insert_child(groupobj, childobj, OG_LAST);
END;

Beachten Sie, daß der Index OG_LAST nur benutzt werden kann, um ein Objekt am Ende einer Liste einzufügen. Um ein Objekt vom Ende einer Liste zu löschen bzw. einzulesen, müssen Sie den konkreten Indexwert dieses Objekts angeben. Um ein Objekt in eine leere Liste einzufügen, können Sie einen Index von OG_FIRST oder OG_LAST benutzen.

Wenn Sie ein Objekt mit einem Index einfügen, der schon von einem anderen Objekt belegt wird, wird das neue Objekt vor dem alten Objekt eingefügt (d.h. das neue Objekt belegt die angegebene Indexposition).

Weitere Informationen finden Sie in der vollständigen Beschreibung des gewünschten listenorientierten Unterprogramms.


Beschreibung der vordefinierten Unterprogramme

Beschreibung:

Gibt den Zweck und die Benutzung des Unterprogramms an.

Syntax:

Syntax für den Aufruf des Unterprogramms. Wenn es mehrere Möglichkeiten für den Aufruf des Unterprogramms gibt, werden alle Möglichkeiten dargestellt.

Parameter:

Beschreibt die Parameter des Unterprogramms.

Rückgabewert:

Beschreibt den Rückgabewert des Unterprogramms (nur bei Funktionen).

Kommentar:

Beschreibt Verwendungsregeln und Einschränkungen.

Beispiel:

Enthält ein Arbeitsbeispiel für die Benutzung des Unterprogramms.


Exceptions nach Name

  Verwandte Themen

Syntax

Exceptions nach Name EXCEPTION;


OG_Active_Layer_Del

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn die gerade aktive Ebene als Argument für OG_Destroy benutzt wird.

Syntax

OG_Active_Layer_Del EXCEPTION;

Fehlercode	 102034


 OG_Append_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Fehler auftritt, während versucht wird, Daten an eine benutzerdefinierte Abfrage anzuhängen.

Syntax

OG_Append_Failure EXCEPTION;

Fehlercode	 102166


  OG_Column_Not_Settable

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, das Schema einer Abfragespalte zu ändern, die Abfrage jedoch keine benutzerdefinierte Abfrage ist.

Syntax

OG_Column_Not_Settable EXCEPTION;

Fehlercode	 102167


OG_Colors_Not_Writable

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie den Aufruf von OG_Import_Image festlegen und für das Argument use_colors TRUE angeben, die Farbpalette der grafischen Anwendung jedoch nicht editierbar ist.

Syntax

OG_Colors_Not_Writable EXCEPTION;

Fehlercode	 102097


OG_Column_Type_Mismatch

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn die von OG_Get_Charcell, OG_Get_Datecell oder OG_Get_Numcell zurückgegebenen Daten nicht den Typ aufweisen, der von dieser Funktion erwartet wird.

Syntax

OG_Column_Type_Mismatch EXCEPTION;

Fehlercode	 102043


OG_Date_Overflow

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Update_Chart aufrufen und das Diagramm eine Datumsachse enthält, der Datenbereich jedoch zu groß ist. Wenn die Daten z.B. viele Jahre umfassen und die Schrittgröße der Achse in Sekunden angegeben wird, wird diese Exception ausgelöst.

Syntax

OG_Date_Overflow EXCEPTION;

Fehlercode	 102074


OG_Delete_Column_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine Spalte aus einer Abfrage zu löschen. Sie können nur Spalten aus benutzerdefinierten Abfragen löschen.

Syntax

OG_Delete_Column_Failure EXCEPTION;

Fehlercode	 102169


OG_Delete_Object_Prop_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Attribut aus einem Objekt zu löschen.

Syntax

OG_Delete_Object_Prop_Failure EXCEPTION;

Fehlercode	 102164


OG_Delete_Param_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen Parameter zu löschen.

Syntax

OG_Delete_Param_Error EXCEPTION;

Fehlercode	 102176


OG_Delete_Property_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Attribut aus einem Objekt zu löschen.

Syntax

OG_Delete_Property_Error EXCEPTION;

Fehlercode	 102181


OG_Display_Closed

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen Vorgang bei einer grafischen Anwendung durchzuführen, nachdem diese mit einem Aufruf von OG_Close_Display geschlossen wurde.

Syntax

OG_Display_Closed EXCEPTION;

Fehlercode	 102115


OG_Drawing_Export_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Export_Drawing bei dem Versuch, eine Zeichnung zu exportieren, auf einen Fehler stößt.

Syntax

OG_Drawing_Export_Failure EXCEPTION;

Fehlercode	 102091


OG_Drawing_Import_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Import_Drawing bei dem Versuch, eine Zeichnung zu importieren, auf einen Fehler stößt.

Syntax

OG_Drawing_Import_Failure EXCEPTION;

Fehlercode	 102095


OG_Duplicate_Column_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Spalte in einer benutzerdefinierten Abfrage definieren, der Spaltenname jedoch schon von einer anderen Spalte benutzt wird.

Syntax

OG_Duplicate_Column_Name EXCEPTION;

Fehlercode	 102172


OG_Duplicate_Display_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Save_Display aufrufen und für das Argument name denselben Namen wie für eine andere geöffnete grafische Anwendung angeben.

Syntax

OG_Duplicate_Display_Name EXCEPTION;

Fehlercode	 102106


OG_Duplicate_Ftemp_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Feldvorlage erstellen, jedoch schon eine andere Feldvorlage mit diesem Namen vorhanden ist.

Syntax

OG_Duplicate_Ftemp_Name EXCEPTION;

Fehlercode	 102156


OG_Duplicate_Query_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Abfrage erstellen, jedoch schon eine andere Abfrage mit diesem Namen vorhanden ist.

Syntax

OG_Duplicate_Query_Name EXCEPTION;

Fehlercode	 102171


OG_Duplicate_Template_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Diagrammvorlage erstellen, jedoch schon eine andere Diagrammvorlage mit diesem Namen vorhanden ist.

Syntax

OG_Duplicate_Template_Name EXCEPTION;

Fehlercode	 102157


OG_Env_Var_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Translate_Envvar bei dem Versuch, eine Umgebungsvariable auszuwerten, auf einen Fehler stößt.

Syntax

OG_Env_Var_Error EXCEPTION;

Fehlercode	 102102


OG_Env_Var_Notfound

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Translate_Envvar versucht, eine Umgebungsvariable zu übersetzen, diese Variable jedoch für Ihr System nicht definiert wurde.

Syntax

OG_Env_Var_Notfound EXCEPTION;

Fehlercode	 102103


OG_Font_Not_Found

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine Schriftart mit einem Schriftartnamen einzustellen, der in Ihrem System nicht gefunden wird.

Syntax

OG_Font_Not_Found EXCEPTION;

Fehlercode	 102098


OG_Generate_Display_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Generate_Display bei dem Versuch, eine grafische Anwendung zu generieren, auf einen Fehler stößt.

Syntax

OG_Generate_Display_Failure EXCEPTION;

Fehlercode	 102105


OG_Get_Object_Prop_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei dem Versuch, den Wert eines Objektattributs einzulesen, ein Fehler auftritt.

Syntax

OG_Get_Object_Prop_Failure EXCEPTION;

Fehlercode	 102163


OG_Get_Param_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei dem Versuch, einen Parameterwert einzulesen, ein Fehler auftritt.

Syntax

OG_Get_Param_Error EXCEPTION;

Fehlercode	 102175


OG_Get_Printer_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, zu drucken, Graphics Builder den Drucker jedoch nicht finden kann.

Syntax

OG_Get_Printer_Failure EXCEPTION;

Fehlercode	 102160


OG_Get_Property_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei dem Versuch, den Wert eines Objektattributs einzulesen, ein Fehler auftritt.

Syntax

OG_Get_Property_Error EXCEPTION;

Fehlercode	 102179


OG_Hide_Active_Layer

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn die gerade aktive Ebene als Argument für OG_Hide_Layer verwendet wird. Um eine Ebene zu deaktivieren, machen Sie eine andere Ebene mit OG_Activate_Layer aktiv.

Syntax

OG_Hide_Active_Layer EXCEPTION;

Fehlercode	 102013


OG_Host_Failure_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn die vordefinierte Prozedur OG_Host bei dem Versuch, einen Befehl auf dem Hostsystem auszuführen, auf einen Fehler stößt.

Syntax

OG_Host_Failure_Error EXCEPTION;

Fehlercode	 102059


OG_Image_Creation_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei dem Versuch, ein Bild zu erstellen, ein Fehler auftritt.

Syntax

OG_Image_Creation_Failure EXCEPTION;

Fehlercode	 102083


OG_Image_Export_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Export_Image bei dem Versuch, ein Bild zu exportieren, auf einen Fehler stößt.

Syntax

OG_Image_Export_Failure EXCEPTION;

Fehlercode	 102087


OG_Image_Import_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Import_Image bei dem Versuch, ein Bild zu importieren, auf einen Fehler stößt.

Syntax

OG_Image_Import_Failure EXCEPTION;

Fehlercode	 102093


OG_Incompatible_Pos_Dir

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Achsenrichtung oder -position angeben.

Syntax

OG_Incompatible_Pos_Dir EXCEPTION;

Fehlercode	 102141


OG_Insert_Column_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine Spalte in eine Abfrage einzufügen. Sie können Spalten nur in benutzerdefinierte Abfragen einfügen.

Syntax

OG_Insert_Column_Failure EXCEPTION;

Fehlercode	 102168


OG_Internal_OG_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein schwerwiegender interner Fehler auftritt. Nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

Syntax

OG_Internal_OG_Error EXCEPTION;

Fehlercode	 102000


OG_Internal_Tk_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein schwerwiegender interner Fehler auftritt. Nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

Syntax

OG_Internal_Tk_Error EXCEPTION;

Fehlercode	 102001


OG_Invalid_Arc_Fill

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie beim Einstellen des Füllstils eines Bogens einen ungültigen Wert benutzen.

Syntax

OG_Invalid_Arc_Fill EXCEPTION;

Fehlercode	 102066


OG_Invalid_Arrowstyle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie beim Einstellen des Pfeilstils einer Linie einen ungültigen Wert angeben.

Syntax

OG_Invalid_Arrowstyle EXCEPTION;

Fehlercode	 102022


OG_Invalid_Axis

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Achsenwert angeben. Gültige Werte sind nur OG_X_Axis, OG_Y1_Axis und OG_Y2_Axis.

Syntax

OG_Invalid_Axis EXCEPTION;

Fehlercode	 102140


OG_Invalid_Axis_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein ungültiges Achsen-Handle zu referenzieren.

Syntax

OG_Invalid_Axis_Handle EXCEPTION;

Fehlercode	 102122


OG_Invalid_Axis_Mapping

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Diagramm mit einer ungültigen Achsenzuordnung zu aktualisieren.

Syntax

OG_Invalid_Axis_Mapping EXCEPTION;

Fehlercode	 102134


OG_Invalid_Baselinetype

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Basislinientyp angeben.

Syntax

OG_Invalid_Baselinetype EXCEPTION;

Fehlercode	 102132


OG_Invalid_Baseline_Value

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert der Basislinie angeben.

Syntax

OG_Invalid_Baseline_Value EXCEPTION;

Fehlercode	 102153


OG_Invalid_Bbox

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert für das Argument which_bbox in der vordefinierten Prozedur OG_Update_Bbox angeben.

Syntax

OG_Invalid_Bbox EXCEPTION;

Fehlercode	 102060


OG_Invalid_Buttonproc_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Attributsatz, der als Argument für eine Prozedur benutzt wird, einen ungültigenWert für das Attribut der Schaltflächenprozedur enthält.

Syntax

OG_Invalid_Buttonproc_Handle EXCEPTION;

Fehlercode	 102006


OG_Invalid_Cachetype

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Cache-Typ angeben. Gültige Werte sind nur OG_Append_Cachetype, OG_Copy_Cachetype und OG_None_Cachetype.

Syntax

OG_Invalid_Cachetype EXCEPTION;

Fehlercode	 102170


OG_Invalid_Cap_Style

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert für das Linienende angeben.

Syntax

OG_Invalid_Cap_Style EXCEPTION;

Fehlercode	 102018


OG_Invalid_Catwidth

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Kategorienbreite angeben.

Syntax

OG_Invalid_Catwidth EXCEPTION;

Fehlercode	 102135


OG_Invalid_Chart_Creation_Attr

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein kombinierter Diagramm-Attributsatz, der als Argument für OG_Make benutzt wird, einen Diagramm-Attributsatz enthält, dessen Attribute nicht gültig sind. Wenn ein Diagramm das erste Mal erstellt wird, müssen Sie eine Vorlage und eine Abfrage angeben, die dem Diagramm zugeordnet werden soll.

Syntax

OG_Invalid_Chart_Creation_Attr EXCEPTION;

Fehlercode	 102054


OG_Invalid_Chart_Update_Mask

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Update_Chart benutzte Maskenwert ungültig ist.

Syntax

OG_Invalid_Chart_Update_Mask EXCEPTION;

Fehlercode	 102052


OG_Invalid_Child_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Child benutzte Wert, der der die Gesamtanzahl von zu löschenden untergeordneten Objekten angibt, größer ist als die Anzahl von untergeordneten Objekten, die nach (und einschließlich) dem zu löschenden angegebenen ersten Unterobjekt tatsächlich in der Gruppe vorhanden sind.

Syntax

OG_Invalid_Child_Del_Total EXCEPTION;

Fehlercode	 102032


OG_Invalid_Child_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Child, OG_Get_Child oder OG_Insert_Child benutzte Indexwert größer ist als die Anzahl von untergeordneten Objekten in der Gruppe minus eins.

Syntax

OG_Invalid_Child_Index EXCEPTION;

Fehlercode	 102031


OG_Invalid_Child_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Insert_Child aufrufen und das Argument child_hdl auf ein Objekt einstellen, das nicht in eine Gruppe eingefügt werden kann.

Syntax

OG_Invalid_Child_Object EXCEPTION;

Fehlercode	 102116


OG_Invalid_Cmptext_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Cmptext benutzte Wert, der die Gesamtanzahl von zu löschenden zusammengesetzten Textelementen angibt, größer ist als die Anzahl von zusammengesetzten Textelementen, die nach (und einschließlich) dem ersten angegebenen zu löschenden Element in dem Textobjekt vorhanden sind.

Syntax

OG_Invalid_Cmptext_Del_Total EXCEPTION;

Fehlercode	 102037


OG_Invalid_Cmptext_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen zusammengesetzten Textindex angeben, der größer ist als die Anzahl von zusammengesetzten Textelementen in dem Textobjekt minus eins.

Syntax

OG_Invalid_Cmptext_Index EXCEPTION;

Fehlercode	 102036


OG_Invalid_Color_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie für eines der Farbattribute einen ungültigen Wert angeben.

Syntax

OG_Invalid_Color_Name EXCEPTION;

Fehlercode	 102015


OG_Invalid_Column_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert für das Argument col_num in der vordefinierten Funktion OG_Get_Schema benutzen.

Syntax

OG_Invalid_Column_Index EXCEPTION;

Fehlercode	 102099


OG_Invalid_Column_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn:

•	Ein Feldsatz, der einen ungültigen Spaltennamen enthält (mit OG_Insert_Field) in ein Diagramm eingefügt wurde und das Diagramm dann durch einen Aufruf von OG_Update_Chart aktualisiert wird.

•	Ein ungültiger Spaltenname als Argument für OG_Set_Attr (bei der Einstellung der Attribute von einem der Elemente eines Diagramms) benutzt wird und das Diagramm dann durch einen Aufruf von OG_Update_Chart aktualisiert wird.

•	Ein ungültiger Spaltenname als Argument für OG_Get_Charcell, OG_Get_Datecell oder OG_Get_Numcell verwendet wird.

 Syntax

OG_Invalid_Column_Name EXCEPTION;

Fehlercode	 102044


OG_Invalid_Compression_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Konstante zur Bildkomprimierung angeben.

Syntax

OG_Invalid_Compression_Type EXCEPTION;

Fehlercode	 102121


OG_Invalid_Cursor_Offset

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der Offset-Wert, der als Argument für OG_Start_From benutzt wird, größer ist als die Anzahl von Zeilen, die für die angegebene Abfrage vorhanden sind, minus eins.

Syntax

OG_Invalid_Cursor_Offset EXCEPTION;

Fehlercode	 102047


OG_Invalid_Curvefit

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Kurventyp angeben.

Syntax

OG_Invalid_Curvefit EXCEPTION;

Fehlercode	 102158


OG_Invalid_Dash_Style

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Attributsatz, der als Argument für OG_Make oder OG_Set_Attr benutzt wird, einen ungültigen Wert für das Strichart-Attribut enthält.

Syntax

OG_Invalid_Dash_Style EXCEPTION;

Fehlercode	 102019


OG_Invalid_Data_File

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder bei dem Versuch, eine PRN-, SYLK- oder WKS-Datei zu öffnen bzw. aus dieser zu lesen, auf einen Fehler stößt.

Syntax

OG_Invalid_Data_File EXCEPTION;

Fehlercode	 102077


OG_Invalid_Data_Flag

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Daten-Flag angeben. Gültige Werte sind nur die vordefinierten Konstanten OG_Newdata und OG_Olddata.

Syntax

OG_Invalid_Data_Flag EXCEPTION;

Fehlercode	 102042


OG_Invalid_Data_Value

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Update_Chart aufrufen und die Abfrage, auf der das Diagramm basiert, Daten enthält, die für diesen Diagrammtyp ungültig sind (z.B. wenn der Diagrammtyp ein Kreis ist und die Abfrage negative Daten enthält).

Syntax

OG_Invalid_Data_Value EXCEPTION;

Fehlercode	 102070


OG_Invalid_Date_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Datumsformat angeben.

Syntax

OG_Invalid_Date_Format EXCEPTION;

Fehlercode	 102108


OG_Invalid_Datevalue

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Datumswert angeben.

Syntax

OG_Invalid_Datevalue EXCEPTION;

Fehlercode	 102133


OG_Invalid_Depthsize

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige 3D-Tiefe angeben.

Syntax

OG_Invalid_Depthsize EXCEPTION;

Fehlercode	 102129


OG_Invalid_Direction

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Achsenrichtung angeben.

Syntax

OG_Invalid_Direction EXCEPTION;

Fehlercode	 102143


OG_Invalid_Display_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein ungültiges Handle der grafischen Anwendung als Argument für OG_Close_Display benutzt wird.

Syntax

OG_Invalid_Display_Handle EXCEPTION;

Fehlercode	 102011


OG_Invalid_Drawing_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert für das Argument format in den vordefinierten Prozeduren OG_Export_Drawing oder OG_Import_Drawing verwenden.

Syntax

OG_Invalid_Drawing_Format EXCEPTION;

Fehlercode	 102089


OG_Invalid_External_Location

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Speicherort angeben. Gültige Werte sind nur die vordefinierten Konstanten OG_Db und OG_Filesystem.

Syntax

OG_Invalid_External_Location EXCEPTION;

Fehlercode	 102056


OG_Invalid_Event_Mask

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen ungültigen Wert für das Ereignisattribut anzugeben.

Syntax

OG_Invalid_Event_Mask EXCEPTION;

Fehlercode	 102058


OG_Invalid_Field_Datatype

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Update_Chart aufrufen und die Abfrage, auf der das Diagramm basiert, Daten enthält, deren Typ für dieses Diagramm ungültig sind. So können z.B. die abhängigen Felder eines Kreisdiagramms nicht den Datentyp CHAR aufweisen. Sonst wird diese Exception ausgelöst.

Syntax

OG_Invalid_Field_Datatype EXCEPTION;

Fehlercode	 102069


OG_Invalid_Field_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Field benutzte Wert, der die Gesamtanzahl von Feldern angibt, die aus einem Diagramm gelöscht werden sollen, größer ist als die Anzahl von Feldern, die tatsächlich nach (und einschließlich) dem ersten angegebenen zu löschenden Feld vorhanden sind.

Syntax

OG_Invalid_Field_Del_Total EXCEPTION;

Fehlercode	 102041


OG_Invalid_Field_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Field, OG_Get_Field oder OG_Insert_Field benutzte Indexwert größer ist als die Anzahl von Feldern in dem Diagramm minus eins.

Syntax

OG_Invalid_Field_Index EXCEPTION;

Fehlercode	 102040


OG_Invalid_Field_Template

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Namen einer Feldvorlage angeben.

Syntax

OG_Invalid_Field_Template EXCEPTION;

Fehlercode	 102067


OG_Invalid_Field_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Feldsatz, der einen ungültigen Feldtyp enthält (mit OG_Insert_Field) in ein Diagramm eingefügt wurde und das Diagramm dann durch einen Aufruf von OG_Update_Chart aktualisiert wird. Gültige Werte für Feldtypen umfassen die vordefinierten Konstanten OG_Dependent und OG_Independent.

Syntax

OG_Invalid_Field_Type EXCEPTION;

Fehlercode	 102045


OG_Invalid_Ftemp_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, mehr Feldvorlagen zu löschen, als in einer Diagrammvorlage vorhanden sind.

Syntax

OG_Invalid_Ftemp_Del_Total EXCEPTION;

Fehlercode	 102125


OG_Invalid_Ftemp_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Feldvorlage, die aus einer Diagrammvorlage gelöscht werden soll, angeben.

Syntax

OG_Invalid_Ftemp_Index EXCEPTION;

Fehlercode	 102124


OG_Invalid_Gridct

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Rasterzähler angeben.

Syntax

OG_Invalid_Gridct EXCEPTION;

Fehlercode	 102155


OG_Invalid_Image_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert für das Argument format in den vordefinierten Prozeduren OG_Export_Image oder OG_Import_Image benutzen.

Syntax

OG_Invalid_Image_Format EXCEPTION;

Fehlercode	 102082


OG_Invalid_Join_Style

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Join-Stil angeben.

Syntax

OG_Invalid_Join_Style EXCEPTION;

Fehlercode	 102017


OG_Invalid_Labelrot

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Beschriftungsdrehung angeben.

Syntax

OG_Invalid_Labelrot EXCEPTION;

Fehlercode	 102150


OG_Invalid_Layer_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein ungültiges Ebenen-Handle als Argument für OG_Activate_Layer, OG_Hide_Layer oder OG_Show_Layer benutzt wird.

Syntax

OG_Invalid_Layer_Handle EXCEPTION;

Fehlercode	 102009


OG_Invalid_Linestyle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Linienstil angeben.

Syntax

OG_Invalid_Linestyle EXCEPTION;

Fehlercode	 102159


OG_Invalid_Min_Max

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Achsen-Mindestwert oder -Höchstwert angeben.

Syntax

OG_Invalid_Min_Max EXCEPTION;

Fehlercode	 102139


OG_Invalid_Minimum

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Achsen-Mindestwert angeben.

Syntax

OG_Invalid_Minimum EXCEPTION;

Fehlercode	 102154


OG_Invalid_Month

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Monat angeben.

Syntax

OG_Invalid_Month EXCEPTION;

Fehlercode	 102149


OG_Invalid_Number_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Zahlenformat angeben.

Syntax

OG_Invalid_Number_Format EXCEPTION;

Fehlercode	 102138


OG_Invalid_Object_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Objekt-Handle als Argument für ein Unterprogramm benutzen.

Syntax

OG_Invalid_Object_Handle EXCEPTION;

Fehlercode	 102003


OG_Invalid_Object_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Attributsatz, der als Argument für OG_Make oder OG_Set_Attr benutzt wird, einen ungültigen Wert für das Objekttyp-Attribut enthält.

Syntax

OG_Invalid_Object_Type EXCEPTION;

Fehlercode	 102020


OG_Invalid_Overlap

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Überlappungswert angeben.

Syntax

OG_Invalid_Overlap EXCEPTION;

Fehlercode	 102152


OG_Invalid_Pattern_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Musternamen angeben.

Syntax

OG_Invalid_Pattern_Name EXCEPTION;

Fehlercode	 102016


OG_Invalid_Pct_By

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert Prozent mit angeben.

Syntax

OG_Invalid_Pct_By EXCEPTION;

Fehlercode	 102148


OG_Invalid_Pct_Of

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Prozentsatz eines Wertes angeben.

Syntax

OG_Invalid_Pct_Of EXCEPTION;

Fehlercode	 102147


OG_Invalid_Pie_Usage

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Prozentsatz eines Wertes angeben.

Syntax

OG_Invalid_Pie_Usage EXCEPTION;

Fehlercode	 102136


OG_Invalid_Pie_Usagevalue

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Benutzungswert angeben.

Syntax

OG_Invalid_Pie_Usagevalue EXCEPTION;

Fehlercode	 102137


OG_Invalid_Plotpos

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Darstellungsposition angeben.

Syntax

OG_Invalid_Plotpos EXCEPTION;

Fehlercode	 102151


OG_Invalid_Point_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Point benutzte Wert, der die Gesamtanzahl von zu löschenden Punkten angibt, größer ist als die Anzahl von Punkten, die tatsächlich in dem Objekt nach (und einschließlich) dem eingegebenen ersten zu löschenden Punkt vorhanden sind.

Syntax

OG_Invalid_Point_Del_Total EXCEPTION;

Fehlercode	 102035


OG_Invalid_Point_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Point, OG_Get_Point oder OG_Insert_Point benutzte Indexwert größer ist als die Anzahl von Punkten in dem Objekt minus eins.

Syntax

OG_Invalid_Point_Index EXCEPTION;

Fehlercode	 102033


OG_Invalid_Position

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Achsenposition angeben.

Syntax

OG_Invalid_Position EXCEPTION;

Fehlercode	 102142


OG_Invalid_Prn_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Abfrage ausführen, die eine PRN-Datei referenziert, die Datei jedoch kein gültiges PRN-Format hat.

Syntax

OG_Invalid_Prn_Format EXCEPTION;

Fehlercode	 102079


OG_Invalid_Query_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Abfrage-Handle angeben.

Syntax

OG_Invalid_Query_Handle EXCEPTION;

Fehlercode	 102004


OG_Invalid_Query_Source

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige SQL-Anweisung oder einen ungültigen Dateinamen für eine Abfrage angeben.

Syntax

OG_Invalid_Query_Source EXCEPTION;

Fehlercode	 102107


OG_Invalid_Query_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Abfragetyp angeben.

Syntax

OG_Invalid_Query_Type EXCEPTION;

Fehlercode	 102109


OG_Invalid_Refline_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, mehr Referenzlinien zu löschen als in einer Diagrammvorlage vorhanden sind.

Syntax

OG_Invalid_Refline_Del_Total EXCEPTION;

Fehlercode	 102128


OG_Invalid_Refline_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige zu löschende Referenzlinie angeben.

Syntax

OG_Invalid_Refline_Index EXCEPTION;

Fehlercode	 102127


OG_Invalid_Refline_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Referenzlinien-Handle referenzieren.

Syntax

OG_Invalid_Refline_Handle EXCEPTION;

Fehlercode	 102123


OG_Invalid_Row_Number

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn (bei der Einstellung der Attribute von einem der Elemente eines Diagramms) eine ungültige Zeilennummer als Argument für OG_Set_Attr benutzt wird und das Diagramm danach durch einen Aufruf von OG_Update_Chart aktualisiert wird.

Syntax

OG_Invalid_Row_Number EXCEPTION;

Fehlercode	 102053


OG_Invalid_Scale

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Skalierungswert angeben.

Syntax

OG_Invalid_Scale EXCEPTION;

Fehlercode	 102146


OG_Invalid_Shadowdir

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Schattenrichtung angeben.

Syntax

OG_Invalid_Shadowdir EXCEPTION;

Fehlercode	 102131


OG_Invalid_Shadowsize

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Schattengröße angeben.

Syntax

OG_Invalid_Shadowsize EXCEPTION;

Fehlercode	 102130


OG_Invalid_Smptext_Del_Total

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Smptext benutzte Wert, der die Gesamtanzahl von zu löschenden einfachen Textelementen angibt, größer ist als die Anzahl von einfachen Textelementen, die tatsächlich in dem zusammengesetzten Textelement nach (und einschließlich) dem angegebenen ersten zu löschenden Element vorhanden sind.

Syntax

OG_Invalid_Smptext_Del_Total EXCEPTION;

Fehlercode	 102039


OG_Invalid_Smptext_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn der als Argument für OG_Delete_Smptext, OG_Get_Smptext oder OG_Insert_Smptext benutzte Indexwert größer ist als die Anzahl von einfachen Textelementen in dem zusammengesetzten Textelement minus eins.

Syntax

OG_Invalid_Smptext_Index EXCEPTION;

Fehlercode	 102038


OG_Invalid_Sound_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Klangformat angeben.

Syntax

OG_Invalid_Sound_Format EXCEPTION;

Fehlercode	 102084


OG_Invalid_Sound_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein ungültiges Klang-Handle als Argument für OG_Play_Sound benutzt wird.

Syntax

OG_Invalid_Sound_Handle EXCEPTION;

Fehlercode	 102007


OG_Invalid_Step

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Schrittwert angeben.

Syntax

OG_Invalid_Step EXCEPTION;

Fehlercode	 102145


OG_Invalid_Sylk_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Abfrage ausführen, die eine SYLK-Datei referenziert, die Datei jedoch kein gültiges SYLK-Format hat.

Syntax

OG_Invalid_Sylk_Format EXCEPTION;

Fehlercode	 102078


OG_Invalid_Symbol_Index

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Symbolindex angeben.

Syntax

OG_Invalid_Symbol_Index EXCEPTION;

Fehlercode	 102023


OG_Invalid_Symbol_Size

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Symbolgröße angeben.

Syntax

OG_Invalid_Symbol_Size EXCEPTION;

Fehlercode	 102024


OG_Invalid_Template_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein ungültiges Vorlagen-Handle zu benutzen.

Syntax

OG_Invalid_Template_Handle EXCEPTION;

Fehlercode	 102005


OG_Invalid_Template_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Vorlagentyp angeben.

Syntax

OG_Invalid_Template_Type EXCEPTION;

Fehlercode	 102126


OG_Invalid_Text_Horalign

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Ausrichtungswert angeben.

Syntax

OG_Invalid_Text_Horalign EXCEPTION;

Fehlercode	 102026


OG_Invalid_Text_Horjust

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Justierungswert angeben.

Syntax

OG_Invalid_Text_Horjust EXCEPTION;

Fehlercode	 102027


OG_Invalid_Text_Spacing

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Zeilenabstandswert angeben.

Syntax

OG_Invalid_Text_Spacing EXCEPTION;

Fehlercode	 102025


OG_Invalid_Text_Vertalign

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Ausrichtungswert angeben.

Syntax

OG_Invalid_Text_Vertalign EXCEPTION;

Fehlercode	 102028


OG_Invalid_Text_Vertjust

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Justierungswert angeben.

Syntax

OG_Invalid_Text_Vertjust EXCEPTION;

Fehlercode	 102029


OG_Invalid_Tickpos

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Teilungsposition angeben.

Syntax

OG_Invalid_Tickpos EXCEPTION;

Fehlercode	 102144


OG_Invalid_Timer_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Timer-Handle angeben.

Syntax

OG_Invalid_Timer_Handle EXCEPTION;

Fehlercode	 102010


OG_Invalid_Timer_Procedure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine ungültige Trigger-Prozedur angeben.

Syntax

OG_Invalid_Timer_Procedure EXCEPTION;

Fehlercode	 102112


OG_Invalid_Timer_Interval

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein ungültiges Zeitintervall angeben.

Syntax

OG_Invalid_Timer_Interval EXCEPTION;

Fehlercode	 102113


OG_Invalid_Transfer_Mode

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Transfermodus festlegen.

Syntax

OG_Invalid_Transfer_Mode EXCEPTION;

Fehlercode	 102057


OG_Invalid_Userexit_Invocation

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder einen angegebenen User Exit nicht aufrufen kann.

Syntax

OG_Invalid_Userexit_Invocation EXCEPTION;

Fehlercode	 102048


OG_Invalid_Window_Dimensions

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ungültige Fensterabmessungen angeben.

Syntax

OG_Invalid_Window_Dimensions EXCEPTION;

Fehlercode	 102002


OG_Invalid_Window_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein ungültiges Fenster-Handle als Argument für ein Unterprogramm benutzt wird.

Syntax

OG_Invalid_Window_Handle EXCEPTION;

Fehlercode	 102008


OG_Invalid_Wks_Format

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Abfrage ausführen, die eine WKS-Datei referenziert, die Datei jedoch kein gültiges WKS-Format hat.

Syntax

OG_Invalid_Wks_Format EXCEPTION;

Fehlercode	 102080


OG_Layer_Not_Child_Of_Root

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Attributsatz, der als Argument für OG_Make benutzt wird, einen ungültigen Wert für das übergeordnete Attribut enthält.

Syntax

OG_Layer_Not_Child_Of_Root EXCEPTION;

Fehlercode	 102012


OG_Login_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, sich mit OG_Connect oder OG_Logon bei einer Datenbank anzumelden, die Anmeldung jedoch nicht erfolgreich war.

Syntax

OG_Login_Failure EXCEPTION;

Fehlercode	 102085


OG_Logoff_Disallowed

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Logoff aufrufen, Graphics Builder die Datenbankverbindung jedoch nicht schließen kann, weil Ihre grafische Anwendung geöffnete SQL-Cursor enthält.

Syntax

OG_Logoff_Disallowed EXCEPTION;

Fehlercode	 102101


OG_Logon_Disallowed

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Logon aufrufen, Graphics Builder die vorherige Datenbankverbindung jedoch nicht schließen kann, weil Ihre grafische Anwendung geöffnete SQL-Cursor enthält.

Syntax

OG_Logon_Disallowed EXCEPTION;

Fehlercode	 102100


OG_Logoff_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Logoff bei dem Versuch, die Datenbankverbindung zu schließen, auf einen Fehler stößt.

Syntax

OG_Logoff_Failure EXCEPTION;

Fehlercode	 102086


OG_Main_Window_Destruction

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn das Hauptfenster der grafischen Anwendung als Argument für OG_Destroy benutzt wird. Um das Hauptfenster zu schließen, ohne es zu zerstören, benutzen Sie OG_Hide_Window.

Syntax

OG_Main_Window_Destruction EXCEPTION;

Fehlercode	 102046


OG_Missing_Chart_Field

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Update_Chart aufrufen, die Abfrage, auf der das Diagramm basiert, jedoch nicht ein oder mehrere Felder enthält, wie vom Diagramm erwartet. Wenn Sie z.B ein Diagramm erstellen, um Werte für ENAME, SAL und COMM darzustellen, die Abfrage jedoch nur ENAME und SAL zurückgibt, wird diese Exception ausgelöst.

Syntax

OG_Missing_Chart_Field EXCEPTION;

Fehlercode	 102068


OG_No_Chart_Data

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Update_Chart aufrufen, die mit dem Diagramm verknüpfte Abfrage jedoch noch nicht ausgeführt wurde.

Syntax

OG_No_Chart_Data EXCEPTION;

Fehlercode	 102114


OG_No_Database_Connection

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn versucht wird, auf eine Datenbank zuzugreifen, die noch nicht erfolgreich angemeldet wurde. Sie kann von OG_Execute_Query oder OG_Open_Display ausgelöst werden.

Syntax

OG_No_Database_Connection EXCEPTION;

Fehlercode	 102055


OG_No_Dependent_Fields

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Diagramm zu aktualisieren, das keine abhängigen Felder enthält.

Syntax

OG_No_Dependent_Fields EXCEPTION;

Fehlercode	 102072


OG_No_Independent_Fields

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Diagramm zu aktualisieren, das keine unabhängigen Felder enthält.

Syntax

OG_No_Independent_Fields EXCEPTION;

Fehlercode	 102186


OG_No_Query_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Abfragenamen angeben.

Syntax

OG_No_Query_Name EXCEPTION;

Fehlercode	 102173


OG_No_Schema

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine benutzerdefinierte Abfrage auszuführen, die kein Schema hat.

Syntax

OG_No_Schema EXCEPTION;

Fehlercode	 102165


OG_Not_Chart_Element

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Objekt als Diagrammelement zu behandeln, dieses jedoch kein Diagrammelement ist.

Syntax

OG_Not_Chart_Element EXCEPTION;

Fehlercode	 102184


OG_Not_Supported_In_Designer

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine PL/SQL-Anweisung auszuführen, die nicht für Graphics Builder Designer anwendbar ist. Wahrscheinlich sollten Sie die Anweisung nur zur Laufzeit ausführen.

Syntax

OG_Not_Supported_In_Designer EXCEPTION;

Fehlercode	 102183


OG_Sound_Conversion_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen Klang importieren, Graphics Builder jedoch nicht von der anfänglichen Abtastrate oder dem Codierungsschema des Klangs konvertieren konnte. Im allgemeinen bedeutet dies, daß der Klang zu groß ist.

Syntax

OG_Sound_Conversion_Failure EXCEPTION;

Fehlercode	 102120


OG_No_Sound_Input_Device

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie mit OG_Play_Sound einen Klang wiedergeben, jedoch kein Klangausgabegerät für die Wiedergabe vorhanden ist.

Syntax

OG_No_Sound_Input_Device EXCEPTION;

Fehlercode	 102118


OG_No_Sound_Output_Device

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie mit OG_Record_Sound einen Klang aufzeichnen, jedoch kein Klangeingabegerät für die Aufzeichnung vorhanden ist.

Syntax

OG_No_Sound_Output_Device EXCEPTION;

Fehlercode	 102117


OG_Not_Chart_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein vordefiniertes Unterprogramm aufrufen, das für ein Diagramm ausgeführt werden soll, das übergebene Argument jedoch kein gültiges Handle für ein Diagrammobjekt ist.

Syntax

OG_Not_Chart_Object EXCEPTION;

Fehlercode	 102061


OG_Not_Group_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein vordefiniertes Unterprogramm aufrufen, das für eine Gruppe ausgeführt werden soll, das übergebene Argument jedoch kein gültiges Handle für ein Gruppenobjekt ist.

Syntax

OG_Not_Group_Object EXCEPTION;

Fehlercode	 102062


OG_Not_Image_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein vordefiniertes Unterprogramm aufrufen, das für ein Bild ausgeführt werden soll, das übergebene Argument jedoch kein gültiges Handle für ein Bildobjekt ist.

Syntax

OG_Not_Image_Object EXCEPTION;

Fehlercode	 102064


OG_Not_Polygon_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein vordefiniertes Unterprogramm aufrufen, das für einen Polygonzug oder ein Polygon ausgeführt werden soll, das übergebene Argument jedoch kein gültiges Handle zu einem Polygonzug- oder Polygonobjekt ist.

Syntax

OG_Not_Polygon_Object EXCEPTION;

Fehlercode	 102063


OG_Not_Text_Object

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein vordefiniertes Unterprogramm aufrufen, das für Textobjekte ausgeführt werden soll, das übergebene Argument jedoch kein gültiges Handle für ein Textobjekt ist.

Syntax

OG_Not_Text_Object EXCEPTION;

Fehlercode	 102065


OG_Null_Chart_Element

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie OG_Get_Chart_Element aufrufen und das Diagrammelement NULL ist.

Syntax

OG_Null_Chart_Element EXCEPTION;

Fehlercode	 102187


OG_Null_Module_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen NULL-Modulnamen als Argument für ein vordefiniertes Unterprogramm angeben, das ein Modul aus dem Dateisystem oder der Datenbank exportiert, importiert oder öffnet.

Syntax

OG_Null_Module_Name EXCEPTION;

Fehlercode	 102110


OG_Open_Display_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Open_Display bei dem Versuch, eine grafische Anwendung zu öffnen, auf einen Fehler stößt.

Syntax

OG_Open_Display_Failure EXCEPTION;

Fehlercode	 102030


OG_Parent_Not_Group

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn das übergeordnete Attribut in einem Attributsatz, der als Argument für OG_Make benutzt wird, kein gültiges Handle zu einem Gruppenobjekt enthält.

Syntax

OG_Parent_Not_Group EXCEPTION;

Fehlercode	 102014


OG_Pctchart_Zero

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen ungültigen Wert Prozent von für ein Diagramm angeben.

Syntax

OG_Pctchart_Zero EXCEPTION;

Fehlercode	 102071


OG_Piechart_Sum_Overflow

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie ein Kreisdiagramm aktualisieren, für das Sie einen Gesamtwert (im Attributblatt Kreisrahmen) angegeben haben, der kleiner ist als die tatsächliche Summe der Daten, die von der Abfrage zurückgegeben werden.

Syntax

OG_Piechart_Sum_Overflow EXCEPTION;

Fehlercode	 102073


OG_Print_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder bei dem Versuch, die grafische Anwendung auszudrucken, auf einen Fehler stößt.

Syntax

OG_Print_Failure EXCEPTION;

Fehlercode	 102111


OG_Query_Execution_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder bei dem Versuch, eine Abfrage auszuführen, auf einen Fehler stößt.

Syntax

OG_Query_Execution_Error EXCEPTION;

Fehlercode	 102075


OG_Recursive_Chart_Update

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein Prozeß, der ein Diagramm aktualisiert, einen Trigger aufruft, der dasselbe Diagramm explizit aktualisiert.

Syntax

OG_Recursive_Chart_Update EXCEPTION;

Fehlercode	 102185


OG_Root_Object_Destruction

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn das als Argument für OG_Destroy benutzte Objekt das Hauptobjekt in der Gruppenstruktur des Layouts ist.

Syntax

OG_Root_Object_Destruction EXCEPTION;

Fehlercode	 102021


OG_Row_Retrieval_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Get_Charcell, OG_Get_Datecell oder OG_Get_Numcell die aktuelle Zeile mit Daten nicht finden kann.

Syntax

OG_Row_Retrieval_Failure EXCEPTION;

Fehlercode	 102081


OG_Save_Display_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Save_Display bei dem Versuch, eine grafische Anwendung zu speichern, auf einen Fehler stößt.

Syntax

OG_Save_Display_Failure EXCEPTION;

Fehlercode	 102104


OG_Set_Object_Prop_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn beim Einstellen eines Objektattributs ein Fehler auftritt.

Syntax

OG_Set_Object_Prop_Failure EXCEPTION;

Fehlercode	 102162


OG_Set_Param_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei der Einstellung eines Parameters ein Fehler auftritt.

Syntax

OG_Set_Param_Error EXCEPTION;

Fehlercode	 102174


OG_Set_Printer_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei der Einstellung des Druckernamens ein Fehler auftritt.

Syntax

OG_Set_Printer_Failure EXCEPTION;

Fehlercode	 102161


OG_Set_Property_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn bei der Einstellung eines Objektattributs ein Fehler auftritt.

Syntax

OG_Set_Property_Error EXCEPTION;

Fehlercode	 102180


OG_Sound_Export_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Export_Sound bei dem Versuch, einen Klang zu exportieren, auf einen Fehler stößt.

Syntax

OG_Sound_Export_Failure EXCEPTION;

Fehlercode	 102088


OG_Sound_Import_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Import_Sound bei dem Versuch, einen Klang zu importieren, auf einen Fehler stößt.

Syntax

OG_Sound_Import_Failure EXCEPTION;

Fehlercode	 102094


OG_Sql_Execution_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder bei dem Versuch, eine auf einer SQL-Anweisung basierende Abfrage auszuführen, auf einen Fehler stößt.

Syntax

OG_Sql_Execution_Error EXCEPTION;

Fehlercode	 102076


OG_Template_Export_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Export_Template bei dem Versuch, eine Vorlage zu exportieren, auf einen Fehler stößt.

Syntax

OG_Template_Export_Failure EXCEPTION;

Fehlercode	 102092


OG_Template_Import_Failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn OG_Import_Template bei dem Versuch, eine Vorlage zu importieren, auf einen Fehler stößt.

Syntax

OG_Template_Import_Failure EXCEPTION;

Fehlercode	 102096


OG_Too_Many_Data_Rows

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie eine Abfrage ausführen, die mehr Datenzeilen zurückgibt, als Graphics Builder in Ihrem System verarbeiten kann.

Syntax

OG_Too_Many_Data_Rows EXCEPTION;

Fehlercode	 102119


OG_Undefined_Param

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen undefinierten Parameter zu referenzieren.

Syntax

OG_Undefined_Param EXCEPTION;

Fehlercode	 102178


OG_Undefined_Property

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein Objektattribut zu referenzieren, das undefiniert ist.

Syntax

OG_Undefined_Property EXCEPTION;

Fehlercode	 102182


OG_Userexit_Failure_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein User Exit den entsprechenden Fehlercode an Graphics Builder zurückgibt.

Syntax

OG_Userexit_Failure_Error EXCEPTION;

Fehlercode	 102049


OG_Userexit_Fatal_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein User Exit den entsprechenden Fehlercode an Graphics Builder zurückgibt.

Syntax

OG_Userexit_Fatal_Error EXCEPTION;

Fehlercode	 102050


OG_Userexit_Unknown_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein User Exit einen unbekannten Fehlercode an Graphics Builder zurückgibt.

Syntax

OG_Userexit_Unknown_Error EXCEPTION;

Fehlercode	 102051


Tool_Int.Duplicate_Parameter_Key

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen Parameter zu einer Parameterliste hinzuzufügen, ein Parameter mit diesem Namen jedoch schon definiert ist.

Syntax

Tool_Int.Duplicate_Parameter_Key EXCEPTION;

Fehlercode	 104508


Tool_Int.Duplicate_Parameter_List_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine Parameterliste mit einem Namen zu erstellen, der schon von einer anderen Parameterliste benutzt wird.

Syntax

Tool_Int.Duplicate_Parameter_List_Name EXCEPTION;

Fehlercode	 104504


Tool_Int.Internal_Tools_Error

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn ein schwerwiegender interner Fehler auftritt.  Nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

Syntax

Tool_Int.Internal_Tools_Error EXCEPTION;

Fehlercode	 104500


Tool_Int.Invalid_Communication_Mode

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, Tool_Int.Run_Product mit einem ungültigen Kommunikationsmodus aufzurufen. Gültige Werte sind ausschließlich die Paketkonstanten Tool_Int.Synchronous und Tool_Int.Asynchronous.

Syntax

Tool_Int.Invalid_Communication_Mode EXCEPTION;

Fehlercode	 104511


Tool_Int.Invalid_Execution_Mode

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, Tool_Int.Run_Product mit einem ungültigen Ausführungsmodus aufzurufen. Gültige Werte sind ausschließlich die Paketkonstanten Tool_Int.Batch und Tool_Int.Runtime.

Syntax

Tool_Int.Invalid_Execution_Mode EXCEPTION;

Fehlercode	 1045010


Tool_Int.Invalid_Location

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, Tool_Int.Run_Product mit einem ungültigen Speicherort für das angegebene Modul aufzurufen. Gültige Werte sind ausschließlich die Paketkonstanten Tool_Int.Db und Tool_Int.Filesystem.

Syntax

Tool_Int.Invalid_Location EXCEPTION;

Fehlercode	 104503


Tool_Int.Invalid_Parameter_List_Handle

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, ein ungültiges Parameterlisten-Handle zu referenzieren.

Syntax

Tool_Int.Invalid_Parameter_List_Handle EXCEPTION;

Fehlercode	 104506


Tool_Int.Invalid_Parameter_Key

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, einen Parameter mit einem ungültigen Namen zu referenzieren.

Syntax

Tool_Int.Invalid_Parameter_Key EXCEPTION;

Fehlercode	 104507


Tool_Int.Invalid_Parameter_List_Name

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, eine Parameterliste mit einem ungültigen Namen zu referenzieren.

Syntax

Tool_Int.Invalid_Parameter_List_Name EXCEPTION;

Fehlercode	 104505


Tool_Int.Invalid_Parameter_Type

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie einen Parametertyp auf einen anderen Wert als CHAR, DATE oder NUMBER einstellen.

Syntax

Tool_Int.Invalid_Parameter_Type EXCEPTION;

Fehlercode	 104501


Tool_Int.Invalid_Product

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Sie versuchen, Tool_Int.Run_Product mit einem ungültigen Produkt aufzurufen. Gültige Werte sind ausschließlich die Paketkonstanten Tool_Int.Book, Tool_Int.Forms und Tool_Int.Reports.

Syntax

Tool_Int.Invalid_Product EXCEPTION;

Fehlercode	 104502


Tool_Int..Run_Product_Failure
Tool_Int.run_product_failure

  Verwandte Themen

Beschreibung	Diese Exception wird ausgelöst, wenn Graphics Builder das von einem Aufruf von Tool_Int.Run_Product angegebene Produkt nicht ausführen kann. Informationen über die Vorbereitung des anderen Produkts zur Benutzung mit Graphics Builder finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem oder in der Produktdokumentation.

Syntax

Tool_Int..Run_Product_Failure EXCEPTION;

Fehlercode	 104509


Über vordefinierte PL/SQL-Exceptions

In diesem Abschnitt werden alle vordefinierten Exceptions von Graphics Builder beschrieben. Die Exceptions werden mit ihrem Fehlercode aufgeführt. Danach wird jede der Exceptions im einzelnen beschrieben. Für jede der Exceptions werden Syntax, Beschreibung und Fehlermeldung angegeben.

Wenn Exceptions nicht behandelt werden, stoppen sie vorübergehend die Ausführung der grafischen Anwendung und lösen die aufgeführte Fehlermeldung aus. Nachdem die Meldung ausgelöst wurde und Sie sie akzeptiert haben, wird die Ausführung der grafischen Anwendung fortgesetzt.

Informationen über den Geltungsbereich von Regeln und die Weiterleitung von Exceptions finden Sie in PL/SQL User's Guide and Reference.


Exceptions nach Fehlercode

Beschreibung

Fehlercode	Exception-Name
102000	OG_Internal_OG_Error
102001	OG_Internal_Tk_Error
102002	OG_Invalid_Window_Dimensions
102003	OG_Invalid_Object_Handle
102004	OG_Invalid_Query_Handle
102005	OG_Invalid_Template_Handle
102006	OG_Invalid_Buttonproc_Handle
102007	OG_Invalid_Sound_Handle
102008	OG_Invalid_Window_Handle
102009	OG_Invalid_Layer_Handle
102010	OG_Invalid_Timer_Handle
102011	OG_Invalid_Display_Handle
102012	OG_Layer_Not_Child_Of_Root
102013	OG_Hide_Active_Layer
102014	OG_Parent_Not_Group
102015	OG_Invalid_Color_Name
102016	OG_Invalid_Pattern_Name
102017	OG_Invalid_Join_Style
102018	OG_Invalid_Cap_Style
102019	OG_Invalid_Dash_Style
102020	OG_Invalid_Object_Type
102021	OG_Root_Object_Destruction
102022	OG_Invalid_Arrowstyle
102023	OG_Invalid_Symbol_Index
102024	OG_Invalid_Symbol_Size
102025	OG_Invalid_Text_Spacing
102026	OG_Invalid_Text_Horalign
102027	OG_Invalid_Text_Horjust
102028	OG_Invalid_Text_Vertalign
102029	OG_Invalid_Text_Vertjust
102030	OG_Open_Display_Failure
102031	OG_Invalid_Child_Index
102032	OG_Invalid_Child_Del_Total
102033	OG_Invalid_Point_Index
102034	OG_Active_Layer_Del
102035	OG_Invalid_Point_Del_Total
102036	OG_Invalid_Cmptext_Index
102037	OG_Invalid_Cmptext_Del_Total
102038	OG_Invalid_Smptext_Index
102039	OG_Invalid_Smptext_Del_Total
102040	OG_Invalid_Field_Index
102041	OG_Invalid_Field_Del_Total
102042	OG_Invalid_Data_Flag
102043	OG_Column_Type_Mismatch
102044	OG_Invalid_Column_Name
102045	OG_Invalid_Field_Type
102046	OG_Main_Window_Destruction
102047	OG_Invalid_Cursor_Offset
102048	OG_Invalid_Userexit_Invocation
102049	OG_Userexit_Failure_Error
102050	OG_Userexit_Fatal_Error
102051	OG_Userexit_Unknown_Error
102052	OG_Invalid_Chart_Update_Mask
102053	OG_Invalid_Row_Number
102054	OG_Invalid_Chart_Creation_Attr
102055	OG_No_Database_Connection
102056	OG_Invalid_External_Location
102057	OG_Invalid_Transfer_Mode
102058	OG_Invalid_Event_Mask
102059	OG_Host_Failure_Error
102060	OG_Invalid_Bbox
102061	OG_Not_Chart_Object
102062	OG_Not_Group_Object
102063	OG_Not_Polygon_Object
102064	OG_Not_Image_Object
102065	OG_Not_Text_Object
102066	OG_Invalid_Arc_Fill
102067	OG_Invalid_Field_Template
102068	OG_Missing_Chart_Field
102069	OG_Invalid_Field_Datatype
102070	OG_Invalid_Data_Value
102071	OG_Pctchart_Zero
102072	OG_No_Dependent_Fields
102073	OG_Piechart_Sum_Overflow
102074	OG_Date_Overflow
102075	OG_Query_Execution_Error
102076	OG_Sql_Execution_Error
102077	OG_Invalid_Data_File
102078	OG_Invalid_Sylk_Format
102079	OG_Invalid_Prn_Format
102080	OG_Invalid_Wks_Format
102081	OG_Row_Retrieval_Failure
102082	OG_Invalid_Image_Format
102083	OG_Image_Creation_Failure
102084	OG_Invalid_Sound_Format
102085	OG_Login_Failure
102086	OG_Logoff_Failure
102087	OG_Image_Export_Failure
102088	OG_Sound_Export_Failure
102089	OG_Invalid_Drawing_Format
102091	OG_Drawing_Export_Failure
102092	OG_Template_Export_Failure
102093	OG_Image_Import_Failure
102094	OG_Sound_Import_Failure
102095	OG_Drawing_Import_Failure
102096	OG_Template_Import_Failure
102097	OG_Colors_Not_Writable
102098	OG_Font_Not_Found
102099	OG_Invalid_Column_Index
102100	OG_Logon_Disallowed
102101	OG_Logoff_Disallowed
102102	OG_Env_Var_Error
102103	OG_Env_Var_Notfound
102104	OG_Save_Display_Failure
102105	OG_Generate_Display_Failure
102106	OG_Duplicate_Display_Name
102107	OG_Invalid_Query_Source
102108	OG_Invalid_Date_Format
102109	OG_Invalid_Query_Type
102110	OG_Null_Module_Name
102111	OG_Print_Failure
102112	OG_Invalid_Timer_Procedure
102113	OG_Invalid_Timer_Interval
102114	OG_No_Chart_Data
102115	OG_Display_Closed
102116	OG_Invalid_Child_Object
102117	OG_No_Sound_Output_Device
102118	OG_No_Sound_Input_Device
102119	OG_Too_Many_Data_Rows
102120	OG_Sound_Conversion_Failure
102121	OG_Invalid_Compression_Type
102122	OG_Invalid_Axis_Handle
102123	OG_Invalid_Refline_Handle
102124	OG_Invalid_Ftemp_Index
102125	OG_Invalid_Ftemp_Del_Total
102126	OG_Invalid_Template_Type
102127	OG_Invalid_Refline_Index
102128	OG_Invalid_Refline_Del_Total
102129	OG_Invalid_Invalid_Depthsize
102130	OG_Invalid_Shadowsize
102131	OG_Invalid_Shadowdir
102132	OG_Invalid_Baselinetype
102133	OG_Invalid_Datevalue
102134	OG_Invalid_Axis_Mapping
102135	OG_Invalid_Catwidth
102136	OG_Invalid_Pie_Usage
102137	OG_Invalid_Pie_Usagevalue
102138	OG_Invalid_Number_Format
102139	OG_Invalid_Min_Max
102140	OG_Invalid_Axistype
102141	OG_Incompatible_Pos_Dir
102142	OG_Invalid_Position
102143	OG_Invalid_Direction
102144	OG_Invalid_Tickpos
102145	OG_Invalid_Step
102146	OG_Invalid_Scale
102147	OG_Invalid_Pct_Of
102148	OG_Invalid_Pct_By
102149	OG_Invalid_Month
102150	OG_Invalid_Labelrot
102151	OG_Invalid_Plotpos
102152	OG_Invalid_Overlap
102153	OG_Invalid_Baseline_Value
102154	OG_Invalid_Minimum
102155	OG_Invalid_Gridct
102156	OG_Duplicate_Ftemp_Name
102157	OG_Duplicate_Template_Name
102158	OG_Invalid_Curvefit
102159	OG_Invalid_Linestyle
102160	OG_Get_Printer_Failure
102161	OG_Set_Printer_Failure
102162	OG_Set_Object_Prop_Failure
102163	OG_Get_Object_Prop_Failure
102164	OG_Delete_Object_Prop_Failure
102165	OG_No_Schema
102166	OG_Get_Append_Failure
102167	OG_Column_Not_Settable
102168	OG_Insert_Column_Failure
102169	OG_Delete_Column_Failure
102170	OG_Invalid_Cachetype
102171	OG_Duplicate_Query_Name
102172	OG_Duplicate_Column_Name
102173	OG_No_Query_Name
102174	OG_Set_Param_Error
102175	OG_Get_Param_Error
102176	OG_Delete_Param_Error
102178	OG_Undefined_Param
102179	OG_Get_Property_Error
102180	OG_Set_Property_Error
102181	OG_Delete_Property_Error
102182	OG_Undefined_Property
102183	OG_Not_Supported_In_Designer
102184	OG_Not_Chart_Element
102185	OG_Recursive_Chart_Update
102186	OG_No_Independent_Fields
102187	OG_Null_Chart_Element
104500	Tool_Int.Internal_Tools_Error
104501	Tool_Int.Invalid_Parameter_Type
104502	Tool_Int.Invalid_Product
104503	Tool_Int.Invalid_Location
104504	Tool_Int.Duplicate_Parameter_List_Name
104505	Tool_Int.Invalid_Parameter_List_Name
104506	Tool_Int.Invalid_Parameter_List_Handle
104507	Tool_Int.Invalid_Parameter_Key
104508	Tool_Int.Duplicate_Parameter_Key
104509	Tool_Int.Run_Product_Failure
104510	Tool_Int.Invalid_Execution_Mode
104511	Tool_Int.Invalid_Communication_Mode


Vordefinierte Datentypen

OG_Arc

OG_Axis

OG_Buttonproc

OG_Colschema

OG_Display

OG_Event

OG_Field

OG_Ftemp

OG_Layer

OG_Object

OG_Point

OG_Query

OG_Rectangle

OG_Refline

OG_Sound

OG_Template

OG_Timer

OG_Window

Tool_Int.Param_Attr

Tool_Int.Paramlist


 OG_Arc

Beschreibung  Definiert den Pfad eines Bogens. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Arc IS RECORD
(x       NUMBER(10,0),
 y       NUMBER(10,0),
 height  NUMBER(10,0),
 width   NUMBER(10,0),
 sangle  NUMBER(5,0),
 eangle  NUMBER(5,0)
);

wobei: x	x-Koordinate (in Layouteinheiten) der oberen linken Ecke des Rechtecks, das als Basis für den Bogen benutzt wird (d.h. das Rechteck, das die vier Steuerungspunkte des Bogens verbinden würde).
y	y-Koordinate der oberen linken Ecke des Rechtecks, das als Basis für den Bogen benutzt wird (in Layouteinheiten).
height	Höhe des Rechtecks, das als Basis für den Bogen benutzt wird (in Layouteinheiten).
width	Breite des Rechtecks, das als Basis für den Bogen benutzt wird (in Layouteinheiten).
sangle	Anfangswinkel des Bogens (in Grad).
eangle	Endwinkel des Bogens (in Grad).


OG_Axis

Beschreibung  Handle zu einer Diagrammachse.


OG_Buttonproc

Beschreibung  Handle zu einer Schaltflächenprozedur.


OG_Colschema

Beschreibung  Beschreibt das Schema einer Spalte in einer Abfrage. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Colschema IS RECORD
(colname     VARCHAR2(255),
 coltype     NUMBER(3,0),
 not_null    BOOLEAN,
 precision   NUMBER(3,0),
 scale       NUMBER(3,0),
 maxlen      NUMBER(10,0),
 dateformat  VARCHAR2(255)
);

wobei: colname	Name der Spalte.
Coltype	Spaltentyp. Der Wert dieses Datensatzfeldes kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Char_Coltype   Bedeutet, daß der Spaltentyp CHAR, VARCHAR2 oder ROWID ist. OG_Number_Coltype   Bedeutet, daß der Spaltentyp NUMBER ist. OG_Long_Coltype   Bedeutet, daß der Spaltentyp LONG ist. OG_Date_Coltype   Bedeutet, daß der Spaltentyp DATE ist. OG_Raw_Coltype   Bedeutet, daß der Spaltentyp RAW ist. OG_Longraw_Coltype   Bedeutet, daß der Spaltentyp LONGRAW ist. OG_Mlslabel_Coltype   Bedeutet, daß der Spaltentyp MLSLABEL ist.
Not_null	Gibt an, ob die Spalte auf NOT NULL eingeschränkt ist. Dieses Datensatzfeld kann einen der folgenden Werte haben. TRUE   Bedeutet, daß die Spalte auf NOT NULL beschränkt ist. FALSE   Bedeutet, daß die Spalte nicht auf NOT NULL beschränkt ist.
Precision	Genauigkeitswert für eine Spalte vom Typ NUMBER. Weitere Informationen finden Sie in Oracle7 Server SQL Reference. Dieses Datensatzfeld ist nur bei SQL-Abfragen aus einer Datenbank sinnvoll.
Scale	Skalierungswert für eine Spalte vom Typ NUMBER. Weitere Informationen finden Sie in Oracle7 Server SQL Reference. Dieses Datensatzfeld ist nur bei SQL-Abfragen aus einer Datenbank sinnvoll.
Maxlen	Maximale Länge (in Byte) der Daten, die die Spalte enthalten kann. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.
Dateformat	Datumsformatmaske, die für das Erkennen von Spaltenwerten als Datumsangaben benutzt wird.


OG_Display

Beschreibung  Handle zu einer grafischen Anwendung.


 OG_Event

Beschreibung  Beschreibt Informationen über ein Mausereignis, das eine Schaltflächenprozedur aufgerufen hat. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Event IS RECORD
(event_type      NUMBER(1,0),
 mouse_position  OG_Point,
 click_count     NUMBER(5,0),
 constrained     BOOLEAN,
 mouse_button    NUMBER(1,0)
);

wobei: event_type	Typ des Mausereignisses, das von der Schaltflächenprozedur empfangen wurde. Der Wert dieses Datensatzfeldes kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Mouse_Down   Bedeutet, daß die Prozedur ein Maustaste-gedrückt-Ereignis empfangen hat. OG_Mouse_Move_Down   Bedeutet, daß die Prozedur ein Mausbewegung-gedrückt-Ereignis empfangen hat. OG_Mouse_Up   Bedeutet, daß die Prozedur ein Maustaste-losgelassen-Ereignis empfangen hat. OG_Mouse_Move_Up   Bedeutet, daß die Prozedur ein Mausbewegung-losgelassen-Ereignis empfangen hat.
mouse_position	x- und y-Koordinaten der Mausposition in dem Layout zu dem Zeitpunkt, an dem das Ereignis empfangen wurde.
click_count	Anzahl erkannter Mausklicks, nur wenn das Ereignis ein Maustaste-gedrückt-Ereignis war. Hinweis:  Wenn ein Doppelklick erkannt wurde, empfängt die Prozedur außerdem alle Ereignisse, aus denen der Doppelklick besteht: zuerst ein Maustaste-gedrückt-Ereignis mit einem Klickzähler von 1, danach ein Maustaste-losgelassen-Ereignis, danach ein Maustaste-gedrückt-Ereignis mit einem Klickzähler von 2 und schließlich ein weiteres Maustaste-losgelassen-Ereignis. Berücksichtigen Sie dies, wenn Sie die Logik Ihrer Prozeduren definieren.
Constrained	Gibt an, ob die Umschalttaste gedrückt ist. Dieses Datensatzfeld kann einen der folgenden Werte enthalten: TRUE   Bedeutet, daß die Umschalttaste gedrückt ist. FALSE   Bedeutet, daß die Umschalttaste nicht gedrückt ist.
mouse_button	Gibt an, welche Taste gedrückt wurde. Dieses Datensatzfeld kann einen der folgenden Werte haben: OG_Left_Mouse_Button OG_Center_Mouse_Button OG_Right_Mouse_Button


OG_Field

Beschreibung  Gibt Attribute eines Feldes in einem Diagramm an. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Field IS RECORD
(field_type  NUMBER(1,0),
 colname     VARCHAR2(255),
 ftname      VARCHAR2(255)
);

wobei field_type	Feldtyp. Der Wert dieses Datensatzfeldes kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Category   Bedeutet, daß das Feld in dem Diagramm als Kategorie dargestellt wird. OG_Dependent   Ist ein Synonym für OG_Value. OG_Subcategory   Bedeutet, daß das Feld als Unterkategorie in einem Gruppenwechseldiagramm benutzt wird. OG_Independent   Ist ein Synonym für OG_Category. OG_Value   Bedeutet, daß das Feld in dem Diagramm als Wert dargestellt wird.
Colname	Name der Spalte in der Abfrage des Diagramms, die dieses Feld in einem Diagramm darstellen soll.
Ftname	Name der Feldvorlage, die mit dem Feld verknüpft ist. Beachten Sie, daß es keinen Sinn hat, eine Feldvorlage mit einer Kategorie zu verknüpfen. Bei der Definition eines derartigen Feldes sollten Sie keine Vorlage zuweisen.


OG_Ftemp

Beschreibung  Handle zu einer Feldvorlage.


OG_Layer

Beschreibung  Handle zu einer Ebene.


OG_Object

Beschreibung  Handle zu einem grafischen Objekt.


OG_Point

Beschreibung  Gibt die x- und y-Werte für Vorgänge an, bei denen Koordinaten- oder Größeninformationen erforderlich sind. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Point IS RECORD
(x  NUMBER(10,0),
 y  NUMBER(10,0)
);

wobei: x	Wert für die x-Komponente. Dieser Wert wird im allgemeinen in Layouteinheiten ausgedrückt.
y	Wert für die y-Komponente. Dieser Wert wird im allgemeinen in Layouteinheiten ausgedrückt.


OG_Query

Beschreibung  Handle zu einer Abfrage.


OG_Rectangle

Beschreibung  Definiert einen rechteckigen Bereich. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE OG_Rectangle IS RECORD
(x       NUMBER(10,0),
 y       NUMBER(10,0),
 height  NUMBER(10,0),
 width   NUMBER(10,0)
);

wobei: x	x-Koordinate der oberen linken Ecke des Rechtecks (in Layouteinheiten).
y	y-Koordinate der oberen linken Ecke des Rechtecks (in Layouteinheiten).
height	Höhe des Rechtecks (in Layouteinheiten).
width	Breite des Rechtecks (in Layouteinheiten).


OG_Refline

Beschreibung  Handle zu einer Referenzlinie.


OG_Sound

Beschreibung  Handle zu einem Klang.


OG_Template

Beschreibung  Handle zu einer Diagrammvorlage.


OG_Timer

Beschreibung  Handle zu einem Timer.


OG_Window

Beschreibung  Handle zu einem Fenster.


TOOL_INT.PARAMLIST

Beschreibung  Handle zu einer Parameterliste.


TOOL_INT.PARAM_ATTR

Beschreibung  Definiert einen Parameter. Dieser Datentyp ist ein Datensatz wie unten definiert:

Syntax

TYPE TOOL_INT.param_attr IS RECORD
(mask       NUMBER(1,0),
 paramtype  NUMBER(1,0),
 value      VARCHAR2(255))
);

wobei: mask	Maske für den Attributsatz.
Paramtype	Parametertyp. Der Wert dieses Datensatzfeldes  kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.DATA_PARAMETER TOOL_INT.TEXT_PARAMETER
value	Parameterwert.


Vordefinierte Globale Variablen

OG_App

OG_Inch

OG_Null_Axis

OG_Null_Buttonproc

OG_Null_Display

OG_Null_Ftemp

OG_Null_Layer

OG_Null_Object

OG_Null_Query

OG_Null_Refline

OG_Null_Sound

OG_Null_Template

OG_Null_Timer

OG_Null_Window


OG_App

Beschreibung  Enthält einen Snapshot der Anwendungs-Attributwerte zu dem Zeitpunkt, bei dem das erste vordefinierte PL/SQL-Konstrukt von Graphics Builder ausgeführt wird.

Syntax

OG_App  OG_App_Attr;

Hinweis:  Da diese globale Variable ein Snapshot von Werten zu einem bestimmten Zeitpunkt ist, werden Änderungen, die Sie an den Attributen der Anwendung vornehmen, in dieser Variablen nicht berücksichtigt. So werden z.B. die Attribute Benutzername, Kennwort und Anmeldung nicht automatisch aktualisiert, wenn die Datenbankverbindung geändert wird.


OG_Inch

Beschreibung  Enthält die Anzahl von Layouteinheiten in einem Zoll.

Syntax

OG_Inch  NUMBER;


 OG_Null_Axis

Beschreibung  Null-Handle zu einer Diagrammachse.

Syntax

OG_Null_Axis  OG_Axis;


OG_Null_Buttonproc

Beschreibung  Null-Handle zu einer Schaltflächenprozedur.

Syntax

OG_Null_Buttonproc  OG_Buttonproc;


OG_Null_Display

Beschreibung  Null-Handle zu einer grafischen Anwendung.

Syntax

OG_Null_Display  OG_Display;


OG_Null_Ftemp

Beschreibung  Null-Handle zu einer Feldvorlage.

Syntax

OG_Null_Ftemp  OG_Ftemp;


OG_Null_Layer

Beschreibung  Null-Handle zu einer Ebene.

Syntax

OG_Null_Layer  OG_Layer;


OG_Null_Object

Beschreibung  Null-Handle zu einem grafischen Objekt.

Syntax

OG_Null_Object  OG_Object;


OG_Null_Query

Beschreibung  Null-Handle zu einer Abfrage.

Syntax

OG_Null_Query  OG_Query;


OG_Null_Refline

Beschreibung  Null-Handle zu einer Referenzlinie.

Syntax

OG_Null_Refline  OG_Refline;


OG_Null_Sound

Beschreibung  Null-Handle zu einem Klang.

Syntax

OG_Null_Sound  OG_Sound;


OG_Null_Template

Beschreibung  Null-Handle zu einer Diagrammvorlage.

Syntax

OG_Null_Template  OG_Template;


OG_Null_Timer

Beschreibung  Null-Handle zu einem Timer.

Syntax

OG_Null_Timer  OG_Timer;


OG_Null_Window

Beschreibung  Null-Handle zu einem Fenster.

Syntax

OG_Null_Window  OG_Window;


Alphabetische Liste der vordefinierten Unterprogramme

OG_Activate_Layer

OG_Activate_Timer

OG_Append_Directory

OG_Append_File

OG_Append_Row

OG_Center

OG_Clear_Query

OG_Clone (Object)

OG_Clone (Template)

OG_Close_Display

OG_Connect

OG_Damage (Object)

OG_Damage (Region)

OG_Data_Changed

OG_Data_Queried

OG_Deactivate_Timer

OG_Delete_Child

OG_Delete_Cmptext

OG_Delete_Column

OG_Delete_Field

OG_Delete_Ftemp

OG_Delete_Param

OG_Delete_Point

OG_Delete_Property

OG_Delete_Refline

OG_Delete_Smptext

OG_Destroy (Object)

OG_Destroy (Query)

OG_Destroy (Sound)

OG_Destroy (Template)

OG_Destroy (Timer)

OG_Destroy (Window)

Do_Sql

OG_Draw

OG_Execute_Query

OG_Export_Drawing (Display)

OG_Export_Drawing (Object/Layer)

OG_Export_Drawing (Window)

OG_Export_Image

OG_Export_Sound

OG_Export_Template

OG_Generate_Display

OG_Get_Attr (Application)

OG_Get_Attr (Axis)

OG_Get_Attr (Display)

OG_Get_Attr (Field Template)

OG_Get_Attr (Frame Template)

OG_Get_Attr (Object)

OG_Get_Attr (Printer)

OG_Get_Attr (Query)

OG_Get_Attr (Reference Line)

OG_Get_Attr (Sound)

OG_Get_Attr (Timer)

OG_Get_Attr (Window)

OG_Get_Axis

OG_Get_Buttonproc

OG_Get_Char_Param

OG_Get_Char_Property

OG_Get_Charcell

OG_Get_Chart_Element

OG_Get_Child

OG_Get_Cmptext

OG_Get_Column

OG_Get_Date_Param

OG_Get_Date_Property

OG_Get_Datecell

OG_Get_Display

OG_Get_Field

OG_Get_Ftemp

OG_Get_Layer

OG_Get_Newrows

OG_Get_Num_Param

OG_Get_Num_Property

OG_Get_Numcell

OG_Get_Object

OG_Get_Param_Type

OG_Get_Point

OG_Get_Query

OG_Get_Refline

OG_Get_Row

OG_Get_Schema

OG_Get_Smptext

OG_Get_Sound

OG_Get_Template

OG_Get_Timer

OG_Get_Window

OG_Help

OG_Hide_Layer

OG_Hide_Window

OG_Host

OG_Import_Drawing

OG_Import_Image

OG_Import_Sound

OG_Import_Template

OG_Insert_Child

OG_Insert_Cmptext

OG_Insert_Column

OG_Insert_Field

OG_Insert_Ftemp

OG_Insert_Point

OG_Insert_Refline

OG_Insert_Smptext

OG_Isnull

OG_Logged_On

OG_Logoff

OG_Logon

OG_Make_Chart

OG_Make_Ellipse

OG_Make_Group

OG_Make_Image

OG_Make_Line

OG_Make_Poly

OG_Make_Query

OG_Make_Rect

OG_Make_Rrect

OG_Make_Sound

OG_Make_Symbol

OG_Make_Template

OG_Make_Text

OG_Make_Timer

OG_Make_Window

OG_Move

OG_Next_Row

OG_Numcols

OG_Numrows

OG_Open_Display

OG_Param_Exists

OG_Pause

OG_Play_Sound

OG_Point_In

OG_Point_Near

OG_Print

OG_Property_Exists

OG_Quit

OG_Record_Sound

OG_Root_Object

OG_Rotate

OG_Same

OG_Save_Display

OG_Scale

OG_Set_Edgecolor

OG_Set_Fillcolor

OG_Set_Attr (Application)

OG_Set_Attr (Axis)

OG_Set_Attr (Chart Element)

OG_Set_Attr (Display)

OG_Set_Attr (Field Template)

OG_Set_Attr (Frame Template)

OG_Set_Attr (Object)

OG_Set_Attr (Printer)

OG_Set_Attr (Query)

OG_Set_Attr (Reference Line)

OG_Set_Attr (Sound)

OG_Set_Attr (Timer)

OG_Set_Attr (Window)

OG_Set_Charcell

OG_Set_Datecell

OG_Set_Numcell

OG_Set_Schema

OG_Set_Param

OG_Set_Property

OG_Show_Layer

OG_Show_Window

OG_Start_From

OG_Stop_Sound

OG_Synchronize

Tool_Int.Add_Parameter

Tool_Int.Create_Parameter_List

Tool_Int.Delete_Parameter

Tool_Int.Destroy_Parameter_List

Tool_Int.Get_Parameter_Attr

Tool_Int.Get_Parameter_List

Tool_Int.Isnull

Tool_Int.Run_Product

Tool_Int.Set_Parameter_Attr

OG_Translate_Envvar

OG_Update_Chart

OG_Update_Bbox

OG_User_Exit


Mit diesem Buchstaben beginnen keine vordefinierte Unterprogramme.


Vordefinierte Diagramm-Prozeduren

OG_Delete_Column

OG_Delete_Field

OG_Get_Chart_Element

OG_Get_Column

OG_Get_Field

OG_Get_Row

OG_Insert_Field

OG_Make_Chart

OG_Update_Chart


OG_Delete_Column

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht eine Spalte aus einer benutzerdefinierten Abfrage.

Syntax

PROCEDURE OG_Delete_Column
  (query_hdl  OG_Query,
   indx       NUMBER,
   total      NUMBER);

Parameter

query_hdl	Handle zu der Abfrage, aus der die Spalte gelöscht werden soll.
indx	Index der ersten Spalte, die aus der Abfrage gelöscht werden soll.
total	Gesamtanzahl von zu löschenden Spalten.


Beispiele für OG_Delete_Column

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* The following procedure deletes a column
 ** from the query 'query0':
 */

PROCEDURE example(col_num number) IS
   query   OG_Query;
BEGIN
   query:=OG_Get_Query('query0');
   OG_Delete_Column(query, col_num, 1);
END;


OG_Delete_Field

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht ein oder mehrere Felder aus dem angegebenen Diagrammobjekt.

Syntax

PROCEDURE OG_Delete_Field
  (chart_hdl  OG_Object,
   indx       NUMBER,
   total      NUMBER);

Parameter

chart_hdl	Handle zu dem Diagrammobjekt.
indx	Index des ersten Feldes, das aus der Feldliste gelöscht werden soll.
total	Gesamtanzahl von zu löschenden Feldern.

Verwendungshinweise  Wenn Sie ein Feld löschen, wird es nur aus dem angegebenen Diagramm entfernt. Dadurch wird die Feldvorlage, die das Feld möglicherweise referenziert, nicht gelöscht (oder anderweitig geändert). Außerdem werden Änderungen, die Sie an der Feldliste des Diagramms vornehmen, erst angewendet, wenn das Diagramm über einen Aufruf von OG_Update_Chart aktualisiert wird.


Beispiele für OG_Delete_Field

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* Suppose one chart currently displays plots for both salary
 ** and commission data, and you want to remove the
 ** commission plot from that chart and plot it on another one.
 */

PROCEDURE transfer_comm(chart1 IN OG_Object, chart2 IN
OG_Object, field_index in number) IS
   the_field   OG_Field;
BEGIN
   the_field:=OG_Get_Field(Chart1, field_index);
   OG_Delete_Field(Chart1, field_index, 1);
   OG_Insert_Field(Chart2, the_field, OG_Last);
   OG_Update_Chart(Chart1, OG_All_Chupda);
   OG_Update_Chart(Chart2, OG_All_Chupda);
END;


OG_Get_Chart_Element

  Beispiele	  Verwandte Themen

Beschreibung  Wenn das Handle zu einer Gruppe mit Diagrammelementen (Balken, Kreissegmenten usw.) und eine Zeilennummer vorhanden ist, gibt diese Funktion das individuelle Element zurück, das dieser Zeilennummer entspricht.

Syntax

FUNCTION OG_Get_Chart_Element
  (group_hdl  OG_Object,
   row_num    NUMBER)
RETURN OG_Object;

Parameter

group_hdl	Handle zu der Gruppe, die das Diagrammelement enthält.
row_num	Zeilennummer, die dem einzulesenden Diagrammelement entspricht.

Rückgabewert  Das individuelle Diagrammelement für die angegebene Zeilennummer.

Verwendungshinweise  Das Gruppenhandle kann aus dem Diagrammobjekt abgerufen werden, indem OG_Get_Object mit dem entsprechenden Namen verwendet wird.


Beispiele für OG_Get_Chart_Element

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* The following procedure changes the color of the first:
 ** bar in a column chart, regardless of its value:
 */

PROCEDURE example(chart OG_Object) IS
  bars_group  OG_Object;
  elem        OG_Object;
BEGIN
  bars_group := OG_Get_Object('Sal_Bars', chart);
  elem := OG_Get_Chart_Element(Bars_Group, 0);
  OG_Set_Fillcolor(Elem, 'red');
END;


OG_Get_Column

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt den Namen der Abfragespalte zurück, die von einem bestimmten Diagrammelement dargestellt wird.

Syntax

FUNCTION OG_Get_Column
  (chelement_hdl  OG_Object)
RETURN VARCHAR2;

Parameter

chelement_hdl	Handle zu dem Diagrammelement.

Rückgabewert  Name der Spalte, die mit dem Diagrammelement verknüpft ist.


Beispiele für OG_Get_Column

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* The following function returns the query column represented by
 ** the first bar in a column chart:
*/

FUNCTION example(chart OG_Object) RETURN CHAR IS
  bars  OG_Object;
  elem  OG_Object;
  col   VARCHAR2(15);
BEGIN
  bars := OG_Get_Object('Sal_Bars', chart);
  elem := OG_Get_Chart_Element(Bars, 0);
  col := OG_Get_Column(Elem);
  RETURN(col);
END;


 OG_Get_Field

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt einen Datensatz zurück, der die Attributwerte des Feldes in dem angegebenen Diagramm enthält.

Syntax

FUNCTION OG_Get_Field
  (chart_hdl  OG_Object,
   indx       NUMBER)
RETURN OG_Field;

Parameter

chart_hdl	Handle zu dem Diagrammobjekt.
indx	Index des zurückzugebenden Feldes in der Feldliste des Diagramms.

Rückgabewert  Attribute des angegebenen Feldes.


Beispiele für OG_Get_Field

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* Suppose one chart currently displays plots for both salary
 ** and commission data, and you want to remove the
 ** commission plot from that chart and plot it on another one:
 */

PROCEDURE transfer_comm(chart1 IN OG_Object, chart2 IN
  OG_Object, field_index IN NUMBER) IS
   the_field   OG_Field
BEGIN
   the_field:=OG_Get_Field(The_Chart, field_index);
   OG_Delete_Field(Chart1, field_index, 1);
   OG_Insert_Field(Chart2, the_field, OG_Last);
END;


OG_Get_Row

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt die Abfrage-Zeilennummer zurück, die von einem bestimmten Diagrammelement dargestellt wird.

Syntax

FUNCTION OG_Get_Row
  (chelement_hdl  OG_Object,
RETURN NUMBER;

Parameter

chelement_hdl	Handle zu dem Diagrammelement.

Rückgabewert  Mit dem Diagrammelement verknüpfte Zeilennummer.


Beispiele für OG_Get_Row

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* The following format trigger explodes the pie slice
 ** representing SAL for employee 'SMITH':
 */

PROCEDURE OGFORMATTRIG0(elem IN OG_Object,
                        query IN OG_Query) IS
  ename    VARCHAR2(10);
  chart    OG_Object;
  row_num  NUMBER;
BEGIN
  ename := OG_Get_Charcell(Query, 'ENAME');
  IF ename = 'SMITH' THEN
    chart := OG_Get_Object('Chart0');
    row_num := OG_Get_Row(Elem);
    OG_Set_Explosion(Chart, row_num, 'SAL', 25);
  END IF;
END;


 OG_Insert_Field

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt ein neues Feld in das angegebene Diagramm ein.

Syntax

PROCEDURE OG_Insert_Field
  (chart_hdl  OG_Object,
   field_rec  OG_Field,
   indx       NUMBER);

Parameter

chart_hdl	Handle zu dem Diagrammobjekt.
field_rec	Datensatz, der die Feldattribute enthält.
indx	Index, bei dem das neue Feld in die Feldliste des Diagramms eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von Feldern in dem Diagramm vor dem Einfügen ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß das neue Feld am Anfang der Feldliste des Diagramms eingefügt werden soll (Index = 0). OG_Last   Bedeutet, daß das neue Feld am Ende der Feldliste des Diagramms eingefügt werden soll (Index = Anzahl von Feldern in dem Diagramm vor dem Einfügenvorgang).
Verwendungshinweise  Änderungen, die Sie an der Feldliste des Diagramms vornehmen, werden erst angewendet, wenn das Diagramm über einen Aufruf von OG_Update_Chart aktualisiert wird.


Beispiele für OG_Insert_Field

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* Suppose one chart currently displays plots for both
 ** salary and commission data, and you want to remove
 ** the commission plot from that chart and plot it on another one:
 */

PROCEDURE transfer_comm (chart1 IN OG_Object, chart2 IN
OG_Object, field_index IN NUMBER) IS
   the_field   OG_Field;
BEGIN
   the_field:=OG_Get_Field(The_Chart, field_index);
   OG_Delete_Field(Chart1, field_index, 1);
   OG_Insert_Field(Chart2, the_field, OG_Last);
END;


 OG_Make_Chart

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Diagramm.

Syntax

FUNCTION OG_Make_Chart
  (position  OG_Point,
   height    NUMBER,
   width     NUMBER,
   template  OG_Template,
   query     OG_Query)
RETURN OG_Object;

Parameter

position	x- und y-Koordinaten des Diagrammrahmens.
height	Diagrammhöhe.
width	Diagrammbreite.
template	Für das Diagramm zu benutzende Vorlage.
query	Für das Diagramm zu benutzende Abfrage.

Rückgabewert  Ein Handle zu dem neu erstellten Diagramm.

Verwendungshinweise  Das Diagramm ist erst fertig, wenn Sie die Felder mit OG_Insert_Field hinzufügen und das Diagramm mit OG_Update_Chart aktualisieren.


Beispiele für OG_Make_Chart

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* The following function creates a chart using
 ** the specified template and query:
 */

FUNCTION example(template OG_Template, query OG_Query) RETURN OG_Object IS
  chart   OG_Object;
  pos     OG_Point;
  height  NUMBER;
  width   NUMBER;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;
  height := 4* OG_Inch;
  width := 4* OG_Inch;

  chart := OG_Make_Chart(Pos, height, width, template, query);
  RETURN(chart);
END;


OG_Update_Chart

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur aktualisiert das bzw. die angegebenen Teile des angegebenen Diagramms, um neue Abfrageergebnisse oder neue Attribute zu berücksichtigen, die für Diagrammelemente angewandt wurden. Sie müssen die Abfrage mindestens einmal ausgeführt haben, bevor Sie ein Diagramm aktualisieren können, das auf der Abfrage basiert.

Syntax

PROCEDURE OG_Update_Chart
  (chart_hdl    OG_Object,
   chart_mask   NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

chart_hdl	Handle zu dem zu aktualisierenden Diagramm.
chart_mask	Gibt an, welcher bzw. welche Teile des Diagramms aktualisiert werden sollen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_All_Chupda   Bedeutet, daß das ganze Diagramm aktualisiert wird. OG_Dep1axis_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die mit der ersten abhängigen Achse verknüpft sind. OG_Dep2axis_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die mit der zweiten abhängigen Achse verknüpft sind. OG_Frame_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die mit dem Rahmen verknüpft sind. OG_Indaxis_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die mit der unabhängigen Achse verknüpft sind. OG_Inframe_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die innerhalb des Rahmens angezeigt werden. OG_Legend_Chupda   Bedeutet, daß nur die Teile des Diagramms aktualisiert werden, die mit der Legende verknüpft sind. OG_None_Chupda   Bedeutet, daß keine Teile des Diagramms aktualisiert werden. OG_Title_Chupda   Bedeutet, daß nur der Diagrammtitel aktualisiert wird.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn diese Prozedur aufgerufen wird, zerstört Graphics Builder das aktuelle Diagramm und generiert es basierend auf den aktualisierten Abfrageergebnissen und Attributeinstellungen neu. Deshalb sind Änderungen an den Attributeinstellungen eines Diagrammelements seit dem letzten Aufruf von OG_Update_Chart verloren. Wenn Sie z.B. mit OG_Set_Attr die Attribute für einen bestimmten Balken in dem Diagramm festlegen und dieses dann aktualisieren, sehen Sie die gewünschten Ergebnisse. Wenn Sie OG_Update_Chart erneut aufrufen, sind die Änderungen jedoch verloren, und der Balken wird mit den Standardeinstellungen angezeigt.

Denken Sie daran, daß Sie bei jedem Aktualisieren des Diagramms zuerst die Änderungen an den Diagrammelementen vornehmen müssen. In vielen Fällen werden Sie feststellen, daß dieser zusätzliche Schritt wünschenswert ist, da sich die Kriterien für die Änderung der Diagrammelemente möglicherweise mit den Daten ändern.


Beispiele für OG_Update_Chart

  Alphabetic List          [image]  Alle Beispiele    [image]  Verwandte Themen

 /* Suppose you want to update a chart periodically.
 ** You could write the following timer trigger:
 */

PROCEDURE my_timer IS+
   my_query   OG_Query;
   my_chart   OG_Object;
BEGIN
   my_query:=OG_Get_Query('Emp_Query');
   my_chart:=OG_Get_Object('Emp_Chart');
   OG_Execute_Query(My_Query);
   OG_Update_Chart(My_Chart, OG_All_Chupda);
END;


Vordefinierte Datenbank-Prozeduren

OG_Connect

OG_Logged_On

OG_Logoff

OG_Logon


 OG_Connect

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion zeigt das Dialogfeld Anmelden an.

Syntax

FUNCTION OG_Connect
RETURN BOOLEAN;

Parameter:

Keine.


Beispiele für OG_Connect

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your application requires the
** user to be connected to a database.  The
** following procedure checks if a connection
** exists and, if not, prompts the user to
** connect by showing the Connect dialog box:
*/

PROCEDURE ensure_connection IS
BEGIN
   IF NOT OG_Logged_On THEN
   status:=OG_Connect;
   END IF;
END;


OG_Logged_On

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt TRUE zurück, wenn der Benutzer momentan bei einer Datenbank angemeldet ist, und FALSE, wenn er nicht angemeldet ist.

Syntax

FUNCTION OG_Logged_On
RETURN BOOLEAN;

Parameter:

Keine.

Rückgabewert TRUE	Wenn der Benutzer bei einer Datenbank angemeldet ist.
FALSE	Wenn der Benutzer nicht bei einer Datenbank angemeldet ist.


Beispiele für OG_Logged_On

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your application requires the user to be
** connected to a database.  The following procedure
** checks if a connection exists and, if not, prompts the
** user to connect by showing the Connect dialog box:
*/

PROCEDURE ensure_connection IS
BEGIN
   IF NOT OG_Logged_On THEN
      OG_Connect;
   END IF;
END;


OG_Logoff

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur schließt die bestehende Datenbankverbindung.

Syntax

PROCEDURE OG_Logoff;

Parameter:

Keine.


Beispiele für OG_Logoff

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to disconnect from a database when the display is closed.
** You could write the following Close Display trigger:
*/

PROCEDURE close_trig IS
BEGIN
   IF OG_Logged_On THEN
      OG_Logoff;
   END IF;
END;


OG_Logon

  Beispiele	  Verwandte Themen

Beschreibung Diese Prozedur stellt die Verbindung zu der angegebenen Datenbank her.

Syntax

PROCEDURE OG_Logon
  (username        VARCHAR2  :=  NULL,
   password        VARCHAR2  :=  NULL,
   connect_string  VARCHAR2  :=  NULL);

Parameter

username	Zu verwendender Benutzername.
password	Zu verwendendes Kennwort.
connect_string	Zu verwendende DB-Adresse. Damit Sie sich bei einer entfernten Datenbank anmelden können, müssen Sie die entsprechende SQL*Net DB-Adresse angeben. Weitere Informationen finden Sie im Oracle Network Manager Administrator's Guide.

Verwendungshinweise  Wenn schon eine Verbindung besteht, wird die erste Verbindung unabhängig davon unterbrochen, ob die von dieser Prozedur eingeleitete Anmeldung erfolgreich ist.


Beispiele für OG_Logon

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your application requires the user to be connected to a database.
** The following procedure checks if a connection exists and, if not,
**automatically establishes a connection:
*/

PROCEDURE ensure_connection IS
BEGIN
   IF NOT OG_Logged_On THEN
      OG_Logon('Scott', 'tiger', 't:london:MY_DB');
   END IF;
END;


Vordefinierte Grafische Anwendungs-Prozeduren

OG_Close_Display

OG_Generate_Display

OG_Get_Display

OG_Isnull

OG_Open_Display

OG_Save_Display


OG_Close_Display

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur schließt die angegebene grafische Anwendung und verwirft alle von dieser grafischen Anwendung benutzten Fenster. Außerdem veranlaßt sie, daß der Close-Display-Trigger für die angegebene grafische Anwendung ausgeführt wird.

Syntax

PROCEDURE OG_Close_Display
  (display_hdl  OG_Display);

Parameter

display_hdl	Handle zu der zu schließenden grafischen Anwendung.

Verwendungshinweise  Wenn Sie eine Prozedur aufrufen, die die aktuelle grafische Anwendung schließt (d.h. die grafische Anwendung, in der die ausführende Prozedur definiert ist), beachten Sie, daß OG_Close_Display auf der letzten Zeile dieser Prozedur stehen muß. Anders ausgedrückt, Sie können keine weiteren PL/SQL-Anweisungen in einer grafischen Anweisung ausführen, nachdem Sie diese geschlossen haben.


Beispiele für OG_Close_Display

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the user is through with one display,
** and you want to close it and open another one.
*/

PROCEDURE continue (old_disp_name, new_disp_name) IS
   old_disp   OG_Display;


OG_Generate_Display

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion generiert die aktuelle Version der grafischen Anwendung. Die generierte grafische Anwendung kann von den ausführbaren Graphics Builder Runtime- und Batch-Dateien ausgeführt werden.

Syntax

PROCEDURE OG_Generate_Display;

PROCEDURE OG_Generate_Display
  (name        VARCHAR2,
   repository  OG_Number);

Parameter

name	Name, mit dem die grafische Anwendung generiert wird. Wenn die grafische Anwendung in der Datenbank gespeichert werden muß, darf dieses Argument nur den Namen der grafischen Anwendung enthalten. Wenn die grafische Anwendung im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der grafischen Anwendungsdatei enthalten.
repository	Gibt an, ob die grafische Anwendung in dem Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die grafische Anwendung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die grafische Anwendung im Dateisystem gespeichert werden soll.
Verwendungshinweise  Wenn Sie name und repository weglassen, wird die grafische Anwendung mit dem Namen und Repository generiert, aus dem sie zuletzt geöffnet wurde.


Beispiele für OG_Generate_Display

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your display allows the user to interactively specify
**which queries to view, and what chart types to use.
**When the user selects a `generate' button, you may want to
**generate a runtime version of the display
** that the user can use in the future.
*/

PROCEDURE gen(buttonobj IN OG_Object, hitobj IN OG_Object,
  win IN OG_Window, eventinfo IN OG_Event) IS


OG_Get_Display

  Beispiele	  Verwandte Themen

Beschreibung  Beachten Sie, daß display_name schon in der aktuellen Graphics Builder-Sitzung geöffnet sein muß. Um eine andere grafische Anwendung als die gerade ausgeführte grafische Anwendung zu öffnen, verwenden Sie OG_Open_Display.

Syntax

FUNCTION OG_Get_Display
RETURN OG_Display;

FUNCTION OG_Get_Display
  (display_name  VARCHAR2,
   repository    NUMBER)
RETURN OG_Display;

Parameter

display_name	Name der grafischen Anwendung. Wenn die grafische Anwendung in der Datenbank gespeichert ist, darf dieses Argument nur den Namen der grafischen Anwendung enthalten. Wenn die grafische Anwendung im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen zu der grafischen Anwendungsdatei enthalten.
repository	Gibt an, ob die grafische Anwendung im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die grafische Anwendung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die grafische Anwendung im Dateisystem gespeichert werden soll.
Rückgabewert  Ein Handle zu der angegebenen grafischen Anwendung. Wenn die grafische Anwendung nicht vorhanden oder nicht geöffnet ist, gibt diese Funktion ein Null-Handle zurück.

Verwendungshinweise  Wenn display_name und repository weggelassen werden, gibt diese Funktion ein Handle zu der aktuellen grafischen Anwendung zurück.


Beispiele für OG_Get_Display

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the user is through with one display,
** and you would like to close it and open another one.
*/
.

PROCEDURE continue(old_disp_name, new_disp_name) IS
   old_disp   OG_Display;
   new_disp   OG_Display;
BEGIN
   old_dispb:=OG_Get_Display(Old_Disp_Name, OG_Filesystem);
   OG_Close_Display(Old_Disp);
   new_dispb:=OG_Open_Display(New_Disp_Name, OG_Filesystem);
END;


OG_Isnull

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt an, ob es sich bei dem angegebenen Handle um ein Null-Handle handelt.

Syntax

FUNCTION OG_Isnull                           Abfrage
  (handle  OG_Query)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Objekt
  (handle  OG_Object)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Diagrammvorlage
  (handle  OG_Template)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Schaltflächenprozedur
  (handle  OG_Buttonproc)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Klang
  (handle  OG_Sound)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Fenster
  (handle  OG_Window)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Ebene
  (handle  OG_Layer)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Timer
  (handle  OG_Timer)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Grafische Anwendung
  (handle  OG_Display)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Achse
  (handle  OG_Axis)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Feldvorlage
  (handle  OG_Ftemp)
RETURN BOOLEAN;

FUNCTION OG_Isnull                           Referenzlinie
  (handle  OG_Refline)
RETURN BOOLEAN;

Parameter

handle	Auszuwertendes Handle.
Rückgabewert TRUE	Wenn das Handle ein Null-Handle ist.
FALSE	Wenn das Handle kein Null-Handle ist.


Beispiele für OG_Isnull

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your display occasionally creates a text object that contains a warning message.  At times you
** may want to remove the warning message before continuing with the execution of the display.  Rather
** than keeping track of whether a warning has been generated, you can check for the existence of the
** text object before deleting it.
*/

PROCEDURE remove_warning IS
   warning_obj   OG_Object;
BEGIN
   warning_obj:=OG_Get_Object('warning');
   IF NOT (OG_Isnull(warning_obj)) THEN;
      OG_Destroy(warning_obj);
   END IF;
END;


OG_Open_Display

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion öffnet die angegebene grafische Anwendung und führt deren Open-Display-Trigger aus. Sie gibt ein Handle zu der grafischen Anwendung zurück, das Sie später als Argument für OG_Close_Display verwenden können. Wenn die grafische Anwendung nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.

Syntax

FUNCTION OG_Open_Display
  (display_name  VARCHAR2,
   repository    NUMBER)
RETURN OG_Display;

Parameter

display_name	Name der grafischen Anwendung. Wenn die grafische Anwendung in der Datenbank gespeichert ist, darf dieses Argument nur deren Namen enthalten. Wenn die grafische Anwendung im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der grafischen Anwendungsdatei enthalten.
repository	Gibt an, ob die grafische Anwendung im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die grafische Anwendung in der Datenbank gespeichert ist. OG_Filesystem   Bedeutet, daß die grafische Anwendung im Dateisystem gespeichert ist.
Rückgabewert  Handle zu der neu geöffneten grafischen Anwendung.

Verwendungshinweise  Beachten Sie, daß diese Funktion kein Handle zu einer grafischen Anwendung als Argument akzeptiert. Dies ist darauf zurückzuführen, daß das Vorhandensein der grafischen Anwendung im Dateisystem oder der Datenbank geprüft werden muß, bevor die grafische Anwendung geöffnet werden kann. Angenommen, Sie haben OG_Get_Display benutzt, um das Handle für die grafische Anwendung einzulesen. Danach haben Sie die grafische Anwendung aus dem Dateisystem oder der Datenbank gelöscht. Wenn Sie versucht haben, das Handle der grafischen Anwendung an OG_Open_Display zu übergeben, könnte die Prozedur die grafische Anwendung nicht finden, die das Handle referenziert. Deshalb muß der Name der grafischen Anwendung erneut benutzt werden.


Beispiele für OG_Open_Display

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the user is through with one display,
** and you would like to close it and open another one.
*/
.

PROCEDURE continue(old_display_name IN CHAR,
new_display_name IN CHAR) IS
   old_display   OG_Display;
   new_display   OG_Display;
BEGIN
   old_display:=OG_Get_Display(old_display_name, OG_Filesystem);
   new_display:=OG_Open_Display(new_display_name, OG_Filesystem);
   OG_Close_Display(old_display);
END;


OG_Save_Display

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion speichert den aktuellen Status der grafischen Anwendung. Die gespeicherte grafische Anwendung ist vollständig und kann in Graphics Builder geöffnet und bearbeitet werden.

Syntax

PROCEDURE OG_Save_Display;

PROCEDURE OG_Save_Display
  (name        VARCHAR2,
   repository  OG_Number);

Parameter

name	Name, mit dem die grafische Anwendung gespeichert wird. Wenn die grafische Anwendung in der Datenbank gespeichert werden muß, darf dieses Argument nur den Namen der grafischen Anwendung enthalten. Wenn die grafische Anwendung im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der grafischen Anwendungsdatei enthalten.
repository	Gibt an, ob die grafische Anwendung im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die grafische Anwendung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die grafische Anwendung im Dateisystem gespeichert werden soll.
Verwendungshinweise  Wenn Sie name und repository weglassen, wird die grafische Anwendung mit dem Namen und in dem Repository gespeichert, aus dem sie zuletzt geöffnet wurde.


Beispiele für OG_Save_Display

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to import 100 TIFF images.  Doing this
**manually is tedious and would take a long time.
**The solution is to write the following procedure,
**which imports images from the files named `image00'
**through `image99'.  When finished, it saves the display
**so that you can open it again in the Builder.
*/

PROCEDURE import_100 IS
   the_image   OG_Image;
   file_name   VARCHAR2(7);
BEGIN
   FOR i IN 0..99 LOOP
      file_name:='image'||SUBSTR(TO_CHAR(i, `09'), 2);
      the_image:=OG_Import_Image(File_Name, OG_Filesystem, OG_Tiff_Iformat);
   END LOOP;
   OG_Save_Display;
END;


Vordefinierte Ebenen-Prozeduren

OG_Activate_Layer

OG_Get_Layer

OG_Hide_Layer

OG_Show_Layer


OG_Activate_Layer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur aktiviert die angegebene Ebene im angegebenen Fenster.

Syntax

PROCEDURE OG_Activate_Layer
  (layer_hdl   OG_Layer,
   window_hdl  OG_Window
   damage      BOOLEAN   :=  TRUE);

PROCEDURE OG_Activate_Layer
  (layer_hdl   OG_Layer,
   damage      BOOLEAN   :=  TRUE);

Parameter

layer_hdl	Handle zu der aktivierten Ebene.
window_hdl	Handle zu dem Fenster, in dem die Ebene aktiviert wird. Wenn keine Angaben gemacht werden, wird die Ebene in allen Fenstern aktiviert.
damage	Veränderungsmarke.

Verwendungshinweise  Wenn eine verborgene Ebene aktiviert wird, wird diese angezeigt. Es kann immer nur eine Ebene gleichzeitig aktiv sein. Wenn Sie eine Ebene aktivieren, wird die vorher aktive Ebene deaktiviert.

Wenn Sie ein Gruppenobjekt als untergeordnetes Objekt des übergeordneten Objekts der grafischen Anwendung einfügen, können Sie OG_Get_Layer benutzen, um ein Ebenen-Handle zu dieser Gruppe zu erhalten. Wenn Sie ein derartiges Gruppenobjekt aktivieren, erkennt Graphics Builder dieses als Ebene.


Beispiele für OG_Activate_Layer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your layout contains several layers,
**each of which contains a set of buttons.
**If you want certain buttons to be active at
**a specific time, you can activate the layer
**that contains those buttons.  If the user
**selects a button object that is not in the active
**layer, nothing will happen.
*/

PROCEDURE activate_a_layer(layer_num NUMBER, the_window OG_Window) IS
   layer_name   VARCHAR2(6);
   the_layer    OG_Layer;
BEGIN
   layer_name:='layer'||TO_CHAR(layer_num);
   the_layer:=OG_Get_Layer(Layer_Name);
   OG_Activate_Layer(The_Layer, the_window);
END;


OG_Get_Layer

  Beispiele	  Verwandte Themen

Beschreibung  Beachten Sie, daß Sie eine Ebene auch als Gruppenobjekt behandeln können, indem Sie deren Name an OG_Get_Object übergeben.

Syntax

FUNCTION OG_Get_Layer
  (layer_name  VARCHAR2)
RETURN OG_Layer;

Parameter

layer_name	Name der Ebene, deren Handle zurückgegeben werden muß.

Rückgabewert  Ein Handle zu der angegebenen Ebene. Wenn die Ebene nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.

Verwendungshinweise  Sie können OG_Get_Layer auch benutzen, um ein Ebenen-Handle zu einem Gruppenobjekt zu erhalten, und dann erzwingen, daß diese Gruppe eine Ebene wird, indem Sie sie anzeigen oder aktivieren.


Beispiele für OG_Get_Layer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to hide "layer1".
*/

PROCEDURE make_layer1_invis (the_window) IS
   my_layer   OG_Layer;
BEGIN
   my_layer:=OG_Get_Layer('Layer1');
   OG_Hide_Layer(My_Layer, the_window);
END;


OG_Hide_Layer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur verbirgt die angegebene Ebene.

Syntax

PROCEDURE OG_Hide_Layer
  (layer_hdl   OG_Layer);

PROCEDURE OG_Hide_Layer
  (layer_hdl   OG_Layer,
   window_hdl  OG_Window);

Parameter

layer_hdl	Handle zu der verborgenen Ebene.
window_hdl	Handle zu dem Fenster, in dem die Ebene verborgen ist. Wenn keine Angaben gemacht werden, ist die Ebene in allen Fenstern verborgen.

Verwendungshinweise  Wenn die Ebene in mehr als einem Fenster angezeigt wird, wird sie nur in dem angegebenen Fenster verborgen. Die aktive Ebene kann nicht verborgen werden. Hierzu muß zuerst eine andere Ebene aktiviert werden.


Beispiele für OG_Hide_Layer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose "layer1" contains information that is no longer useful to view.
**The following procedure will hide it:
*/

PROCEDURE make_layer1_invis(the_window) IS
   my_layer   OG_Layer;
BEGIN
   my_layer:=OG_Get_Layer('Layer1');
   OG_Hide_Layer(My_Layer, the_window);
END;


OG_Show_Layer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zeigt die angegebene Ebene an.

Syntax

PROCEDURE OG_Show_Layer
  (layer_hdl   OG_Layer,
   window_hdl  OG_Window);

Parameter

layer_hdl	Handle zu der angezeigten Ebene.
window_hdl	Handle zu dem Fenster, in dem die Ebene angezeigt wird. Wenn keine Angaben gemacht werden, wird die Ebene in allen Fenstern angezeigt.

Verwendungshinweise  Wenn die Ebene in mehr als einem Fenster verborgen ist, wird sie nur im angegebenen Fenster angezeigt.

Wenn Sie ein Gruppenobjekt als untergeordnetes Objekt des übergeordneten Objekts der grafischen Anwendung einfügen, können Sie mit OG_Get_Layer ein Ebenen-Handle zu dieser Gruppe erhalten. Wenn Sie ein derartiges Gruppenobjekt anzeigen, muß Graphics Builder es als Ebene erkennen.


Beispiele für OG_Show_Layer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to show "layer1".
*/

PROCEDURE make_layer_visible (the_window) IS
   my_layer   OG_Layer;
BEGIN
   my_layer:=OG_Get_Layer('Layer1');
   OG_Show_Layer(My_Layer, the_window);
END;


Diverse vordefinierte Prozeduren

Do_Sql

OG_Append_Directory

OG_Append_File

OG_Center

OG_Damage (Bereich)

OG_Get_Attr (Anwendung)

OG_Get_Attr (Achse)

OG_Get_Attr (Grafische Anwendung)

OG_Get_Attr (Feldvorlage)

OG_Get_Attr (Rahmenvorlage)

OG_Get_Attr (Objekt)

OG_Get_Attr (Drucker)

OG_Get_Attr (Abfrage)

OG_Get_Attr (Referenzlinie)

OG_Get_Attr (Klang)

OG_Get_Attr (Timer)

OG_Get_Attr (Fenster)

OG_Get_Buttonproc

OG_Help

OG_Host

OG_Pause

OG_Print

OG_Quit

OG_Root_Object

OG_Set_Attr (Anwendung)

OG_Set_Attr (Achse)

OG_Set_Attr (Diagrammelement)

OG_Set_Attr (Grafische Anwendung)

OG_Set_Attr (Feldvorlage)

OG_Set_Attr (Rahmenvorlage)

OG_Set_Attr (Objekt)

OG_Set_Attr (Drucker)

OG_Set_Attr (Abfrage)

OG_Set_Attr (Referenzlinie)

OG_Set_Attr (Klang)

OG_Set_Attr (Timer)

OG_Set_Attr (Fenster)

OG_Translate_Envvar

OG_User_Exit


DO_SQL

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur führt die angegebene SQL-Anweisung aus.

Syntax

PROCEDURE do_sql
  (sql_stmt  VARCHAR2);

Parameter

sql_stmt	Beliebige gültige SQL-Anweisung. Dies umfaßt DML (Data Manipulation Language)- oder DDL (Data Definition Language)-Anweisungen.

Verwendungshinweise  Da bei dem standardmäßigen PL/SQL die Ausführung von DDL-Anweisungen nicht zulässig ist, benutzen Sie statt dessen diese Prozedur, um DDL-Anweisungen auszuführen. Sie können jedoch DML-Anweisungen in Ihren PL/SQL-Programmblöcken aufnehmen. Im allgemeinen werden DML-Anweisungen effizienter innerhalb von Programmblöcken als mit einer DO_SQL-Prozedur ausgeführt.


Beispiele für Do_Sql

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a table from within Graphics Builder:
*/

PROCEDURE create_table(table_name VARCHAR2) IS
BEGIN
  do_sql('create table' || table_name ||
         '  (empno  number(4),' ||
         '   ename  varchar2(10));');
END;


OG_Append_Directory

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion generiert eine Zeichenfolge, die einen Pfadnamen in Ihrem Dateisystem angibt.

Syntax

FUNCTION OG_Append_Directory
  (dir     VARCHAR2,
   subdir  VARCHAR2)
RETURN VARCHAR2;

Parameter

dir	Zeichenfolge, die den Ordner angibt, an den subdir angehängt wird. Dieses Argument muß den vollständigen Namen eines gültigen Ordners enthalten.
subdir	Zeichenfolge, die einen Unterordner angibt, der an dir angehängt wird.

Rückgabewert  Eine Zeichenfolge, die den vollständigen Ordnerpfad enthält.

Verwendungshinweise  Sie geben die Namen des Ordners und Unterordners an, und diese Funktion verkettet diese mit dem bei Ihrem System gültigen Trennzeichen für Ordner.


Beispiele für OG_Append_Directory

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you create a display that is run on several different systems,
**and one function of that display is to import an image from the file
**`my_image'.  Assume the identical directory structure exists on all systems
**on which the display is run; however, each system requires a different
**directory separator.  The following procedure creates a valid directory
**string for each system:
*/

PROCEDURE import_my_image(file_path VARCHAR2) IS
   the_image   OG_Object;
BEGIN
   file_path:=OG_Append_Directory(File_Path, 'home');
   file_path:=OG_Append_Directory(File_Path, 'smith');
   file_path:=OG_Append_Directory(File_Path, 'images');
   file_path:=OG_Append_File(File_Path, 'my_image');
   the_image:=OG_Import_Image(File_Path, OG_Filesystem,
OG_Tiff_Iformat);
END;

 /*Assume the intial value of file_path is `C:\'.  On MS-DOS systems,
**the value of **file_path that is passed to OG_Import_Image is:
**C:\home\smith\images\my_image.
*/

 /*Assume the initial value of file_path is `disk$ic1[]'.  On VMS systems,
**the value of file_path that is passed to OG_Import_Image is:
**disk$ic1:[home.smith.images]my_image.
*/


OG_Append_File

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion generiert eine Zeichenfolge, die den Pfadnamen einer Datei in Ihrem Dateisystem angibt.

Syntax

FUNCTION OG_Append_File
  (dir       VARCHAR2,
   filename  VARCHAR2)
RETURN VARCHAR2;

Parameter

dir	Zeichenfolge, die den Ordner angibt, an den filename angehängt wird. Dieses Argument muß den vollständigen Namen eines gültigen Ordners enthalten.
filename	Zeichenfolge, die einen Dateinamen angibt, der an dir angehängt wird.

Rückgabewert  Eine Zeichenfolge, die den vollständigen Dateipfad enthält.

Verwendungshinweise  Sie geben die Namen des Ordners und der Datei an, und diese Funktion verkettet Sie mit dem bei Ihrem System gültigen Trennzeichen für Ordner.


Beispiele für OG_Append_File

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you create a display that is run on several different systems,
**and one function of that display is to import an image from the file `my_image'.
**Assume the identical directory structure exists on all systems on which the display
**is run; however, each system requires a different directory separator.
**The following procedure creates a valid directory string for each system:
*/

PROCEDURE import_my_image(file_path VARCHAR2) IS
   the_image   OG_Object;
BEGIN
   file_path:=OG_Append_Directory(File_Path, 'home');
   file_path:=OG_Append_Directory(File_Path, 'smith');
   file_path:=OG_Append_Directory(File_Path, 'images');
   file_path:=OG_Append_File(File_Path, 'my_image');
   the_image:=OG_Import_Image(File_Path, OG_Filesystem,
     OG_Tiff_Iformat);
END;

 /*Assume the intial value of file_path is `C:\'.  On MS-DOS systems, the value of
**file_path that is passed to OG_Import_Image is:  C:\home\smith\images\my_image.
*/

 /*Assume the initial value of file_path is `disk$ic1[]'.  On VMS systems, the value of
**file_path that is passed to OG_Import_Image is:  disk$ic1:[home.smith.images]my_image.
*/


OG_Center

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zeichnet die grafische Anwendung in dem angegebenen Fenster so neu, daß der mit center_pt dargestellte Punkt in der grafischen Anwendung in der Mitte des Fensters angezeigt wird.

Syntax

PROCEDURE OG_Center
  (window_hdl  OG_Window,
   center_pt   OG_Point);

Parameter

window_hdl	Handle zu dem Fenster.
center_pt	Punkt in der grafischen Anwendung, um den das Fenster zentriert werden soll.


Beispiele für OG_Center

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a chart that you want to appear in the center of a window.
**To do this, you need to get the location and dimensions of the chart's outer
**bounding box, calculate its center point, then use center_pt to place this
**point in the center of the window.
*/

PROCEDURE center_chart (my_window IN og_window, my_chart IN
og_object) IS
   center_point   og_point;
   chart_record   og_chart_ca;
BEGIN
   chart_record.chart_caob.mask:=OG_OBBOX_GENERICA;
   chart_record.chart_caog_mask:=OG_NONE_GROUPA;
   chart_record.chart_caoc_mask:=OG_NONE_CHARTA;
   og_get_attr (my_chart, chart_record);
   center_pt.x:=chart_record.chart_caob.obbox.x +
(chart_record.chart_caob.obbox.width / 2);
   center_pt.y:=chart_record.chart_caob.obbox.y +
(chart_record.chart_caob.obbox.height / 2);
   og_center (my_window, center_point);
END;


OG_Damage (Bereich)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur verändert einen rechteckigen Bereich in dem Layout.

Syntax

PROCEDURE OG_Damage
  (region  OG_Rectangle);

PROCEDURE OG_Damage
  (region     OG_Rectangle,
   layer_hdl  OG_Layer);

Parameter

region	Ein zu verändernder rechteckiger Bereich.
layer_hdl	Die Ebene, in der der rechteckige Bereich verändert wird. Wenn layer_hdl nicht angegeben wird, wird der Bereich auf allen Ebenen verändert.

Verwendungshinweise  Weitere Informationen finden Sie unter "Veränderungsmarke".


Beispiele für OG_Damage (Bereich)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure damages a 3"x2"
** area in the upper-left corner of the layout:
*/

PROCEDURE example IS
  damage_region  OG_Rectangle;
BEGIN
  damage_region.x := 0;
  damage_region.y := 0;
  damage_region.width := 3 * OG_Inch;
  damage_region.height := 2 * OG_Inch;

  OG_Damage(Damage_Region);
END;


OG_Get_Attr (Anwendung)

  Beispiele	  Verwandte Themen

Beschreibung

Syntax

PROCEDURE OG_Get_Attr
  (attr  IN OUT  OG_App_Attr);

Parameter

attr	Attributsatz, der mit den Attributen der Anwendung aufgefüllt werden soll.

Verwendungshinweise  Diese Prozedur liest die Attributwerte der gerade ausgeführten ausführbaren Graphics Builder-Datei ein.

Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Anwendung)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the number of screen resolution units
**(i.e., pixels) for the current display device:
*/

FUNCTION example RETURN NUMBER IS
  rec  OG_App_Attr;
BEGIN
  rec.mask := OG_Screen_Res_Appa;
  OG_Get_Attr(Rec);
  RETURN(rec.hscreen_res);
END;


OG_Get_Attr (Achse)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der angegebenen Achse ein.

Syntax

PROCEDURE OG_Get_Attr                        Allgemein
  (axis_hdl  IN      OG_Axis,
   attr      IN OUT  OG_Axis_Attr);

PROCEDURE OG_Get_Attr                        Werte
  (axis_hdl  IN      OG_Axis,
   attr      IN OUT  OG_Contaxis_Ca);

PROCEDURE OG_Get_Attr                        Datum
  (axis_hdl  IN      OG_Axis,
   attr      IN OUT  OG_Dateaxis_Ca);

PROCEDURE OG_Get_Attr                        Kategorien
  (axis_hdl  IN      OG_Axis,
   attr      IN OUT  OG_Discaxis_Ca);

Parameter

axis_hdl	Handle zu der Achse, deren Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen der Achse aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Achse)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the custom label for the specified axis:
*/

FUNCTION example(axis OG_Axis) RETURN CHAR IS
  rec  OG_Contaxis_Ca;
BEGIN
  rec.ca_axis.mask := OG_Custlabel_Axisa;
  rec.ca_cont.mask := OG_None_Contaxisa;
  OG_Get_Attr(Axis, rec);
  RETURN(rec.ca_axis.custlabel);
END;


OG_Get_Attr (Grafische Anwendung)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der aktuellen grafischen Anwendung ein.

Syntax

PROCEDURE OG_Get_Attr
  (attr  IN OUT  OG_Display_Attr);

Parameter

attr	Attributsatz, der mit den Attributen der grafischen Anwendung aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Grafische Anwendung)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the display width:
*/

FUNCTION example RETURN NUMBER IS
  rec  OG_Display_Attr;
BEGIN
  rec.mask := OG_Size_Displaya;
  OG_Get_Attr(Rec);
  RETURN(rec.width);
END;


OG_Get_Attr (Feldvorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der angegebenen Feldvorlage ein.

Syntax

PROCEDURE OG_Get_Attr                        Allgemein
  (ftemp_hdl  IN      OG_Ftemp,
   attr       IN OUT  OG_Ftemp_Attr);

PROCEDURE OG_Get_Attr                        Achse
  (ftemp_hdl  IN      OG_Ftemp,
   attr       IN OUT  OG_Axisftemp_Ca);

Parameter

ftemp_hdl	Handle zu der Feldvorlage, deren Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen der Feldvorlage aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Feldvorlage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the number format mask for the specified field template:
*/

FUNCTION example(ftemp OG_Ftemp) RETURN CHAR IS
  rec  OG_Axisftemp_Ca;
BEGIN
  rec.ca_ftemp.mask := OG_Numfmt_Ftempa;
  rec.ca_aftemp.mask := OG_None_Axisftempa;
  OG_Get_Attr(Ftemp, rec);
  RETURN(rec.ca_ftemp.numfmt);
END;


OG_Get_Attr (Rahmenvorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der angegebenen Rahmenvorlage ein.

Syntax

PROCEDURE OG_Get_Attr                        Allgemeiner Rahmen
  (template_hdl  IN      OG_Template,
   attr          IN OUT  OG_Frame_Attr);

PROCEDURE OG_Get_Attr                        Achsenrahmen
  (template_hdl  IN      OG_Template,
   attr          IN OUT  OG_Axisframe_Ca);

PROCEDURE OG_Get_Attr                        Kreisrahmen
  (template_hdl  IN      OG_Template,
   attr          IN OUT  OG_Pieframe_Ca);

PROCEDURE OG_Get_Attr                        Tabellenrahmen
  (template_hdl  IN      OG_Template,
   attr          IN OUT  OG_Tableframe_Ca);

Parameter

template_hdl	Handle zu der Diagrammvorlage, deren Rahmenattribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen der Rahmenvorlage aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Rahmenvorlage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the depth size for the specified template frame:
*/

FUNCTION example(temp OG_Template) RETURN NUMBER IS
  rec  OG_Axisframe_Ca;
BEGIN
  rec.ca_frame.mask := OG_Depthsize_Framea;
  rec.ca_axis.mask := OG_None_Framea;
  OG_Get_Attr(Temp, rec);
  RETURN(rec.ca_frame.depthsize);
END;


OG_Get_Attr (Objekt)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen Objekts ein.

Syntax

PROCEDURE OG_Get_Attr                        Bogen
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Arc_Ca);

PROCEDURE OG_Get_Attr                        Diagramm
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Chart_Ca);

PROCEDURE OG_Get_Attr                        Allgemein
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Generic_Attr);

PROCEDURE OG_Get_Attr                        Grafik
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Graphic_Ca);

PROCEDURE OG_Get_Attr                        Gruppe
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Group_Ca);

PROCEDURE OG_Get_Attr                        Bild
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Image_Ca);

PROCEDURE OG_Get_Attr                        Linie
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Line_Ca);

PROCEDURE OG_Get_Attr                        Polygon/Polygonzug
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Poly_Ca);

PROCEDURE OG_Get_Attr                        Rechteck
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Rect_Ca);

PROCEDURE OG_Get_Attr                        Abgerundetes Rechteck
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Rrect_Ca);

PROCEDURE OG_Get_Attr                        Symbol
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Symbol_Ca);

PROCEDURE OG_Get_Attr                        Text/Textfeld
  (object_hdl  IN      OG_Object,
   attr        IN OUT  OG_Text_Ca);

Parameter

object_hdl	Handle zu dem Objekt, dessen Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen des Objekts aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Objekt)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the user selects an object whose color determines what information
**the user is interested in viewing.  The following function will take an object
**as its **argument and return the name of its foreground fill color.  The color
**can then be determined, and the appropriate information displayed.
*/

FUNCTION get_color(the_object IN OG_Object) RETURN VARCHAR2
IS
   obj_record   OG_Graphic_Ca;
BEGIN
   obj_record.graphic_caoh.mask:=OG_Ffcolor_Graphica;
   obj_record.generic_caob.mask:=OG_None_Generica;
   OG_Get_Attr(The_Object, obj_record);
   RETURN(obj_record.graphic_caoh.ffcolor);
END;


OG_Get_Attr (Drucker)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des aktuellen Druckers ein.

Syntax

PROCEDURE OG_Get_Attr
  (attr  IN OUT  OG_Printer_Attr);

Parameter

attr	Attributsatz, der mit den Attributen des Druckers aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Drucker)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the name of the current printer:
*/

FUNCTION example RETURN CHAR IS
  rec  OG_Printer_Attr;
BEGIN
  rec.mask := OG_Name_Printera;
  OG_Get_Attr(Rec);
  RETURN(rec.name);
END;


OG_Get_Attr (Abfrage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der angegebenen Abfrage ein.

Syntax

PROCEDURE OG_Get_Attr
  (query_hdl  IN      OG_Query,
   attr       IN OUT  OG_Query_Attr);

Parameter

query_hdl	Handle zu der Abfrage, deren Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen der Abfrage aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Abfrage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the SQL statement that defines the specified query:
*/

FUNCTION example(query OG_Query) RETURN CHAR IS
  rec  OG_Query_Attr;
BEGIN
  rec.mask := OG_Querysource_Querya;
  OG_Get_Attr(Query, rec);
  RETURN(rec.querysource);
END;


OG_Get_Attr (Referenzlinie)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte der angegebenen Referenzlinie ein.

Syntax

PROCEDURE OG_Get_Attr
  (refline_hdl  IN      OG_Refline,
   attr         IN OUT  OG_Refline_Attr);

Parameter

refline_hdl	Handle zu der Referenzlinie, deren Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen der Referenzlinie aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Referenzlinie)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the label for the specified reference line.
*/

FUNCTION example(refline OG_Refline) RETURN CHAR IS
  rec  OG_Refline_Attr;
BEGINH
  rec.mask := OG_Label_Reflinea;
  OG_Get_Attr(Refline, rec);
  RETURN(rec.label);
END;


OG_Get_Attr (Klang)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen Klangs ein.

Syntax

PROCEDURE OG_Get_Attr
  (sound_hdl  IN      OG_Sound,
   attr       IN OUT  OG_Sound_Attr);

Parameter

sound_hdl	Handle zu dem Klang, dessen Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen des Klangs aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Klang)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the name of the specified sound:
*/

FUNCTION example(sound OG_Sound) RETURN CHAR IS
  rec  OG_Sound_Attr;
BEGIN
  rec.mask := OG_Name_Sounda;
  OG_Get_Attr(Sound, rec);
  RETURN(rec.name);
END;


OG_Get_Attr (Timer)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen Timers ein.

Syntax

PROCEDURE OG_Get_Attr
  (timer_hdl  IN      OG_Timer,
   attr       IN OUT  OG_Timer_Attr);

Parameter

timer_hdl	Handle zu dem Timer, dessen Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen des Timers aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Timer)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the procedure name assigned to the specified timer:
*/

FUNCTION example(timer OG_Timer) RETURN CHAR IS
  rec  OG_Timer_Attr;
BEGIN
  rec.mask := OG_Timerproc_Timera;
  OG_Get_Attr(Timer, rec);
  RETURN(rec.timerproc);
END;


OG_Get_Attr (Fenster)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen Fensters ein.

Syntax

PROCEDURE OG_Get_Attr
  (window_hdl  IN      OG_Window,
   attr        IN OUT  OG_Window_Attr);

Parameter

window_hdl	Handle zu dem Fenster, dessen Attribute eingelesen werden sollen.
attr	Attributsatz, der mit den Attributen des Fensters aufgefüllt werden soll.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert der Masken-Attribute in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Get_Attr (Fenster)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the specified window's position:
*/

FUNCTION example(window OG_Window) RETURN OG_Point IS
  rec  OG_Window_Attr;
BEGIN
  rec.mask := OG_Position_Windowa;
  OG_Get_Attr(Window, rec);
  RETURN(rec.position);
END;


OG_Get_Buttonproc

  Beispiele	  Verwandte Themen

Beschreibung  Die Schaltflächenprozedur muß schon definiert sein. Sie darf jedoch nicht in einem PL/SQL-Paket vorhanden sein.

Syntax

FUNCTION OG_Get_Buttonproc
  (proc_name  VARCHAR2)
RETURN OG_Buttonproc;

Parameter

proc_name	Name der PL/SQL-Schaltflächenprozedur, deren Handle zurückgegeben werden soll.

Rückgabewert  Ein Handle zu der angegebenen Schaltflächenprozedur. Wenn die angegebene Schaltflächenprozedur nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Buttonproc

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have written a button procedure named `show_sales_data'
**and you want to assign that procedure to an object; then, when the user
**selects the object, the procedure will be executed.
*/

PROCEDURE make_object_button(my_obj IN OG_Object) IS
   obj_rec         OG_Generic_Attr;
   my_buttonproc   OG_Buttonproc;
BEGIN
   my_buttonproc:=OG_Get_Buttonproc('Show_Sales_Data');
   obj_rec.mask:=OG_Button_Generica;
   obj_rec.button:=my_buttonproc;
   obj_rec.events:=OG_Mouse_Down;
   OG_Set_Attr(My_Obj, obj_rec);
END;


OG_Help

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur ruft das Hilfesystem auf und zeigt das Laufzeit-Hilfedokument bei dem angegebenen Hypertext-Ziel an.

Syntax

PROCEDURE OG_Help
  (target  VARCHAR2);

Parameter

target	Hypertext-Ziel in dem angezeigten Laufzeit-Hilfedokument.


Beispiele für OG_Help

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want the user to be able to click on a button and invoke
**the Help system.  You could write the following button procedure:
*/

PROCEDURE get_help (buttonobj IN OG_Object, hitobj IN
OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
BEGIN
   IF eventinfo.event_type=OG_Mouse_Up THEN
      OG_Help('Topic_1');
   END IF;
END;


OG_Host

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur übergibt den angegebenen Befehl an das Betriebssystem.

Syntax

PROCEDURE OG_Host
  (command  VARCHAR2);

Parameter

command	Textfolge, die den auszuführenden Befehl enthält.


Beispiele für OG_Host

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to be notified via electronic mail when a user closes a display.
**You could create a script named `mail_me' in your file system that sends you mail,
**and then invoke it with the following Close Display trigger:
*/

PROCEDURE send_me_mail IS
BEGIN
   OG_Host('Mail_Me');
END;


OG_Pause

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur unterbricht die Ausführung der grafischen Anwendung während der angegebenen Anzahl von Sekunden.

Syntax

PROCEDURE OG_Pause
  (secs  NUMBER);

Parameter

secs	Anzahl von zu pausierenden Sekunden.


Beispiele für OG_Pause

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure suspends display execution for seven seconds:
*/

PROCEDURE example IS
BEGIN
  OG_Pause(7);
END;


OG_Print

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur druckt den Inhalt des Layouts auf dem gerade ausgewählten Drucker aus.

Syntax

PROCEDURE OG_Print;

PROCEDURE OG_Print
  (window_hdl  OG_Window);

Parameter

window_hdl	Handle zu dem auszudruckenden Fenster.

Verwendungshinweise  Wenn ein Fenster-Handle angegeben ist, werden nur die Ebenen, die in diesem Fenster angezeigt werden, gedruckt. Sonst werden alle Ebenen in der grafischen Anwendung gedruckt, unabhängig davon, in welchem Fenster sie stehen oder ob sie verborgen sind bzw. angezeigt werden.


Beispiele für OG_Print

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to print the contents of the main layout window.
*/

PROCEDURE print_main_window IS
   the_window   OG_Window;
BEGIN
   the_window:=OG_Get_Window('Main Layout');
   OG_Print(The_Window);
END;


OG_Quit

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur beendet die aktuelle Graphics Builder-Sitzung.

Syntax

PROCEDURE OG_Quit;

Parameter:

Keine.


Beispiele für OG_Quit

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to provide the user with a button that-when selected -
**commits database changes and quits Graphics Builder.  You could write the
**following button procedure:
*/

PROCEDURE commit_and_quit (hitobj IN OG_Object, buttonobj
  IN OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
BEGIN
   COMMIT;
   OG_Quit;
END;


OG_Root_Object

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu dem Hauptobjekt der grafischen Anwendung zurück.

Syntax

FUNCTION OG_Root_Object
RETURN OG_Object;

Parameter

Keine.

Rückgabewert  Handle zu dem Hauptobjekt der grafischen Anwendung.

Verwendungshinweise  Das Hauptobjekt ist das oberste Objekt in der grafischen Anwendung. Die unmittelbar untergeordneten Objekte sind die Ebenen der grafischen Anwendung.


Beispiele für OG_Root_Object

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure moves the topmost layer in the display to the bottom of the layer list:
*/

PROCEDURE example IS
  root   OG_Object;
  layer  OG_Object;
BEGIN
  root := OG_Root_Object;
  layer := OG_Get_Child(Root, 0);
  OG_Insert_Child(Root, layer, OG_Last);
END;


OG_Set_Attr (Anwendung)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute der gerade ausgeführten ausführbaren Graphics Builder-Datei ein.

Syntax

PROCEDURE OG_Set_Attr
  (attr  OG_App_Attr);

Parameter

attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Anwendung)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the cursor to 'busy':
*/

PROCEDURE example IS
  attr  OG_App_Attr;
BEGIN
  attr.cursor := 'busy';
  attr.mask := OG_Cursor_Appa;
  OG_Set_Attr(Attr);
END;


OG_Set_Attr (Achse)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attributwerte der angegebenen Achse ein.

Syntax

PROCEDURE OG_Set_Attr                        Allgemein
  (axis_hdl  OG_Axis,
   attr      OG_Axis_Attr);

PROCEDURE OG_Set_Attr                        Werte
  (axis_hdl  OG_Axis,
   attr      OG_Contaxis_Ca);

PROCEDURE OG_Set_Attr                        Datum
  (axis_hdl  OG_Axis,
   attr      OG_Dateaxis_Ca);

PROCEDURE OG_Set_Attr                        Kategorien
  (axis_hdl  OG_Axis,
   attr      OG_Discaxis_Ca);

Parameter

axis_hdl	Handle zu der Achse, deren Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Achse)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the custom label for the specified axis:
*/

PROCEDURE example(axis OG_Axis, label VARCHAR2) IS
  rec  OG_Contaxis_Ca;
BEGIN
  rec.ca_axis.custlabel := 'New Label';
  rec.ca_axis.mask := OG_Custlabel_Axisa;
  rec.ca_cont.mask := OG_None_Contaxisa;
  OG_Set_Attr(Axis, rec);
END;


OG_Set_Attr (Diagrammelement)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute eines Diagrammelements ein, wie z.B. eines Balkens oder Kreissegments.

Syntax

PROCEDURE OG_Set_Attr
  (chart_hdl  OG_Object,
   row_num    NUMBER,
   col_name   VARCHAR2,
   attr       OG_Chelement_Ca);

Parameter

chart_hdl	Handle zu dem Diagramm, das den Datenwert enthält, dessen Attribute eingestellt werden sollen.
row_num	Zeilennummer des Datenwerts, dessen Attribute eingestellt werden sollen.
col_name	Spaltenname des Datenwertes, dessen Attribute eingestellt werden sollen.
attr	Attributsatz mit den neuen Attributwerten.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Sie müssen das Diagramm, die Zeile und die Spalte des entsprechenden Datenwertes angeben sowie einen Attributsatz einer Diagrammgruppe. Der Attributsatz enthält die grafischen und andere Attribute, die für das Diagramm angewendet werden, das den angegebenen Datenwert darstellt. Sie können z.B. die Farbe eines Balkens in einem Balkendiagramm einstellen, indem Sie einen Attributsatz für den Datenwert angeben, der diesem Balken entspricht.

Beachten Sie, daß Änderungen, die an einem Diagrammelement vorgenommen werden, erst angewendet werden, wenn das Diagramm über einen Aufruf von OG_Update_Chart aktualisiert wird.

Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Diagrammelement)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure loops through all rows in a chart's query,
**and then sets the color of each bar in the chart based on its value:
*/

PROCEDURE OGTRIGGERPROC0 IS
chart og_object;
query og_query;
rec og_chelement_ca;
total number;
bar_val number;

BEGIN
  chart := og_get_object ('Employees');
  query:= og_get_query ('query0');
  og_execute_query (Abfrage);
  og_start_from(query, OG_NEWDATA);
  total := og_numrows (query, OG_NEWDATA);
for i in 0..total-1 loop
  bar_val:=og_get_numcell (query, OG_NEWDATA,'SAL');
   IF bar_val>2000 THEN^M
   rec.chelement_cagr.mask :=OG_BFCOLOR_GRAPHICA;
   rec.chelement_cace.mask :=OG_NONE_CHELEMENTA;
   rec.chelement_cagr.bfcolor := 'cyan';
og_set_attr (chart, i, 'SAL', rec);
   END; IF;
  og_next_row(query, OG_NEWDATA);
 END LOOP;
 og_update_chart (chart, OG_ALL_CHUPDA);
END;


OG_Set_Attr (Grafische Anwendung)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute der aktuellen grafischen Anwendung ein.

Syntax

PROCEDURE OG_Set_Attr
  (attr  OG_Display_Attr);

Parameter

attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Grafische Anwendung)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the display width:
*/

PROCEDURE example IS
  rec  OG_Display_Attr;
BEGIN
  rec.width := 4 * OG_Inch;
  rec.height := 5 * OG_Inch;
  rec.mask := OG_Size_Displaya;
  OG_Set_Attr(Rec);
END;


 OG_Set_Attr (Feldvorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attributwerte der angegebenen Feldvorlage ein.

Syntax

PROCEDURE OG_Set_Attr                        Allgemein
  (ftemp_hdl  OG_Ftemp,
   attr       OG_Ftemp_Attr);

PROCEDURE OG_Set_Attr                        Achse
  (ftemp_hdl  OG_Ftemp,
   attr       OG_Axisftemp_Ca);

Parameter

ftemp_hdl	Handle zu der Feldvorlage, deren Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Feldvorlage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the number format mask for the specified field template:
*/

PROCEDURE example(ftemp OG_Ftemp) IS
  rec  OG_Axisftemp_Ca;
BEGIN
  rec.ca_ftemp.numfmt := '9,990';
  rec.ca_ftemp.mask := OG_Numfmt_Ftempa;
  rec.ca_aftemp.mask := OG_None_Axisftempa;
  OG_Set_Attr(Ftemp, rec);
END;


OG_Set_Attr (Rahmenvorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Attributwerte der angegebenen Rahmenvorlage.

Syntax

PROCEDURE OG_Set_Attr                        Allgemeiner Rahmen
  (template_hdl  OG_Template,
   attr          OG_Frame_Attr);

PROCEDURE OG_Set_Attr                        Achsenrahmen
  (template_hdl  OG_Template,
   attr          OG_Axisframe_Ca);

PROCEDURE OG_Set_Attr                        Kreisrahmen
  (template_hdl  OG_Template,
   attr          OG_Pieframe_Ca);

PROCEDURE OG_Set_Attr                        Tabellenrahmen
  (template_hdl  OG_Template,
   attr          OG_Tableframe_Ca);

Parameter

template_hdl	Handle zu der Diagrammvorlage, deren Rahmenattribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Rahmenvorlage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the depth size for the specified template frame:
*/

PROCEDURE example(temp OG_Template) IS
  rec  OG_Axisframe_Ca;
BEGIN
  rec.ca_frame.depthsize := OG_Large_Depthsize;
  rec.ca_frame.mask := OG_Depthsize_Framea;
  rec.ca_axis.mask := OG_None_Framea;
  OG_Set_Attr(Temp, rec);
END;


OG_Set_Attr (Objekt)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute des angegebenen Objekts ein.

Syntax

PROCEDURE OG_Set_Attr                        Bogen
  (object_hdl   OG_Object,
   attr         OG_Arc_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Diagramm
  (object_hdl   OG_Object,
   attr         OG_Chart_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Allgemein
  (object_hdl   OG_Object,
   attr         OG_Generic_Attr,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Grafik
  (object_hdl   OG_Object,
   attr         OG_Graphic_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Gruppe
  (object_hdl   OG_Object,
   attr         OG_Group_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Bild
  (object_hdl   OG_Object,
   attr         OG_Image_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Linie
  (object_hdl   OG_Object,
   attr         OG_Line_Ca,
   damage       BOOLEAN          := TRUE,
   update_bbox  BOOLEAN          := TRUE);

PROCEDURE OG_Set_Attr                        Polygon/Polygonzug
  (object_hdl   OG_Object,
   attr         OG_Poly_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Rechteck
  (object_hdl   OG_Object,
   attr         OG_Rect_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Abgerundetes Rechteck
  (object_hdl   OG_Object,
   attr         OG_Rrect_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Symbol
  (object_hdl   OG_Object,
   attr         OG_Symbol_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

PROCEDURE OG_Set_Attr                        Text/Textfeld
  (object_hdl   OG_Object,
   attr         OG_Text_Ca,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

Parameter

object_hdl	Handle zu dem Objekt, dessen Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Objekt)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a map of the world and you want to change the
**color of one of the countries.  First, you would get the handle to the
**country object, then you would change its color.
*/

PROCEDURE color_country (country_name) IS
   my_object    OG_Object;
   obj_record   OG_Graphic_Ca;
BEGIN
   my_object:=OG_Get_Object(Country_Name);
   obj_record.graphic_caob.mask:=OG_None_Generica;
   obj_record.graphic_caoh.mask:=OG_Ffcolor_Graphica;
   obj_record.graphic_caoh.ffcolor:='red';
   OG_Set_Attr(My_Object, obj_record);
END;


OG_Set_Attr (Drucker)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attributwerte des aktuellen Druckers ein.

Syntax

PROCEDURE OG_Set_Attr
  (attr  OG_Printer_Attr);

Parameter

attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Drucker)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure tells sets the number of copies to print:
*/

PROCEDURE example IS
  rec  OG_Printer_Attr;
BEGIN
  rec.copies := 2;
  rec.mask := OG_Copies_Printera;
  OG_Set_Attr(Rec);
END;


OG_Set_Attr (Abfrage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Attribute der angegebenen Abfrage.

Syntax

PROCEDURE OG_Set_Attr
  (query_hdl  OG_Query,
   attr       OG_Query_Attr);

Parameter

query_hdl	Handle zu der Abfrage, deren Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Abfrage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the SQL statement that defines the specified query:
*/

PROCEDURE example(query OG_Query) IS
  rec  OG_Query_Attr;
BEGIN
  rec.querysource := 'select ename, sal from emp';
  rec.mask := OG_Querysource_Querya;
  OG_Set_Attr(Query, rec);
END;


OG_Set_Attr (Referenzlinie)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute der angegebenen Referenzlinie ein.

Syntax

PROCEDURE OG_Set_Attr
  (refline_hdl  OG_Refline,
   attr         OG_Refline_Attr);

Parameter

refline_hdl	Handle zu der Referenzlinie, deren Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Referenzlinie)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the label for the specified reference line.
*/

PROCEDURE example(refline OG_Refline) IS
  rec  OG_Refline_Attr;
BEGIN
  rec.label := 'Average';
  rec.mask := OG_Label_Reflinea;
  OG_Set_Attr(Refline, rec);
END;


OG_Set_Attr (Klang)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute des angegebenen Klangs ein.

Syntax

PROCEDURE OG_Set_Attr
  (sound_hdl  OG_Sound,
   attr       OG_Sound_Attr);

Parameter

sound_hdl	Handle zu dem Klang, dessen Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Klang)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the name of the specified sound:
*/

PROCEDURE example(sound OG_Sound) IS
  rec  OG_Sound_Attr;
BEGIN
  rec.name := 'Alert';
  rec.mask := OG_Name_Sounda;
  OG_Set_Attr(Sound, rec);
END;


OG_Set_Attr (Timer)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Attribute des angegebenen Timers.

Syntax

PROCEDURE OG_Set_Attr
  (timer_hdl  OG_Timer,
   attr       OG_Timer_Attr);

Parameter

timer_hdl	Handle zu dem Timer, dessen Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Timer)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the procedure name assigned to the specified timer:
*/

PROCEDURE example(timer OG_Timer) IS
  rec  OG_Timer_Attr;
BEGIN
  rec.timerproc := 'update_proc';
  rec.mask := OG_Timerproc_Timera;
  OG_Set_Attr(Timer, rec);
END;


OG_Set_Attr (Fenster)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt die Attribute des angegebenen Fensters ein.

Syntax

PROCEDURE OG_Set_Attr
  (window_hdl  OG_Window,
   attr        OG_Window_Attr);

Parameter

window_hdl	Handle zu dem Fenster, dessen Attribute eingestellt werden sollen.
attr	Attributsatz, der die neuen Attributwerte enthält.

Verwendungshinweise  Es werden nur die Attributwerte eingestellt, die mit dem Wert der Masken-Attribute im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt wird, sind von dem Aufruf dieser Prozedur nicht betroffen.


Beispiele für OG_Set_Attr (Fenster)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the specified window's size:
*/

PROCEDURE example(window OG_Window) IS
  rec  OG_Window_Attr;
BEGIN
  rec.width := 4 * OG_Get_Ap_Hscreen_Res;
  rec.height := 5 * OG_Get_Ap_Vscreen_Res;
  rec.mask := OG_Size_Windowa;
  OG_Set_Attr(Window, rec);
END;


OG_Translate_Envvar

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt den Wert der angegebenen Umgebungsvariablen zurück.

Syntax

FUNCTION OG_Translate_Envvar
  (envvar  VARCHAR2)
RETURN VARCHAR2;

Parameter

envvar	Zu übersetzende Umgebungsvariable.

Rückgabewert  Zeichenfolge, die den Wert der Umgebungsvariablen enthält.

Verwendungshinweise  Die Behandlung (und sogar das Vorhandensein) von Umgebungsvariablen ist systemspezifisch. Weitere Informationen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

Bei der Suche nach der Umgebungsvariablen prüft Graphics Builder zuerst im Betriebssystem, ob diese definiert ist. Wenn nicht, wird in Ihren Voreinstellungsdateien gesucht.


Beispiele für OG_Translate_Envvar

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your system has an environment variable named IMAGE_DIR
**that specifies the directory path of the image file `my_image'.  The following
**procedure imports that image:
*/

PROCEDURE import_my_image IS
   the_image   OG_Object;
   file_path   VARCHAR2(50);
BEGIN
   file_path:=OG_Translate_Envvar('Image_Dir');
   file_path:=OG_Append_File(File_Path, 'my_image');
   the_image:=OG_Import_Image(File_Path, OG_Filesystem,
     OG_Tiff_Iformat);
END;


OG_User_Exit

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur führt eine benutzerdefinierte ausführbare Datei aus.

Syntax

PROCEDURE OG_User_Exit
  (command  VARCHAR2);

Parameter

command	Name des User Exits zusammen mit Argumenten, die Sie an den User Exit übergeben möchten.


Beispiele für G_User_Exit
Beispiele für OG_User_Exit

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your display controls the operation of hardware
**components connected to your system.  When the user selects
**a button, you may want to invoke the hardware controller
**routine, which you have linked in as a user exit.  In addition,
**you may want to pass an argument to this user exit.  The following
**procedure invokes the user exit `hw_ctrl' with the parameter `signal':
*/

PROCEDURE control_hw(buttonobj IN OG_Object, hitobj IN OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
BEGIN
   OG_User_Exit('Hw_Ctrl' || :signal);
END;


Type Caption for New Topic Right Here
Mit diesem Buchstaben beginnen keine vordefinierten Unterprogramme.


Vordefinierte Parameter-Prozeduren

OG_Delete_Param

OG_Get_Char_Param

OG_Get_Date_Param

OG_Get_Num_Param

OG_Get_Param_Type

OG_Param_Exists

OG_Set_Param


OG_Delete_Param

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht den angegebenen Parameter.

Syntax

PROCEDURE OG_Delete_Param
  (param_name  VARCHAR2);

Parameter

param_name	Name des zu löschenden Parameters.


Beispiele für OG_Delete_Param

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure deletes the parameter 'param0':
*/

PROCEDURE example IS
BEGIN
  OG_Delete_Parameter('Param0');
END;


OG_Get_Char_Param

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion liest den Wert des angegebenen CHAR-Parameters ein. Sie ist gleichbedeutend mit der Benutzung einer Bindereferenz zu dem Parameter.

Syntax

FUNCTION OG_Get_Char_Param
  (param_name  VARCHAR2)
RETURN VARCHAR2;

Parameter

param_name	Name des Parameters, dessen Wert eingelesen werden soll.

Rückgabewert  Wert des angegebenen Parameters.

Verwendungshinweise  Diese Funktion wird besonders dann benutzt, wenn Sie den Parameter innerhalb eines Programmblocks referenzieren möchten, der in einer Bibliothek steht. Bindereferenzen werden nicht innerhalb des Kontextes einer Bibliothek kompiliert. Diese Funktion kompiliert die Bindereferenzen jedoch.


Beispiele für OG_Get_Char_Param

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the parameter 'status',
**and changes the color of the specified object based on its value:
*/

PROCEDURE example(object OG_Object) IS
  stat  VARCHAR2(10);
BEGIN
  stat := OG_Get_Char_Param('Status');
  IF stat = 'obsolete' THEN
    OG_Set_Fillcolor(Object, 'red');
  END IF;
END;


OG_Get_Date_Param

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion liest den Wert des angegebenen DATE-Parameters ein. Sie ist gleichbedeutend mit der Benutzung einer Bindereferenz zu dem Parameter.

Syntax

FUNCTION OG_Get_Date_Param
  (param_name  VARCHAR2,
   fmt         VARCHAR2)
RETURN DATE;

Parameter

param_name	Name des Parameters, dessen Wert eingelesen werden soll.

Rückgabewert  Wert des angegebenen Parameters.

Verwendungshinweise  Diese Funktion wird besonders dann benutzt, wenn Sie den Parameter innerhalb eines Programmblocks referenzieren möchten, der in einer Bibliothek steht. Bindereferenzen werden innerhalb des Kontextes einer Bibliothek nicht kompiliert. Mit dieser Funktion werden sie jedoch kompiliert.


Beispiele für OG_Get_Date_Param

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the parameter 'due_date',
**and changes the color of the specified object based on its value:
*/

PROCEDURE example(object OG_Object) IS
  due  DATE;
BEGIN
  due := OG_Get_Date_Param('Due_Date');
  IF due < sysdate THEN
    OG_Set_Fillcolor(Object, 'red');
  END IF;
END;


OG_Get_Num_Param

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion liest den Wert des angegebenen NUMBER-Parameters ein. Sie ist gleichbedeutend mit der Benutzung einer Bindereferenz zu dem Parameter.

Syntax

FUNCTION OG_Get_Num_Param
  (param_name  VARCHAR2)
RETURN NUMBER;

Parameter

param_name	Name des Parameters, dessen Wert eingelesen werden soll.

Rückgabewert  Wert des angegebenen Parameters.

Verwendungshinweise  Diese Funktion wird besonders dann benutzt, wenn Sie den Parameter innerhalb eines Programmblocks referenzieren möchten, der in einer Bibliothek steht. Bindereferenzen werden innerhalb des Kontextes einer Bibliothek nicht kompiliert, mit dieser Funktion werden sie jedoch kompiliert.


Beispiele für OG_Get_Num_Param

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the parameter 'priority', and increases it by 1:
*/

PROCEDURE example IS
  val  NUMBER;
BEGIN
  val := OG_Get_Num_Param('Priority');
  OG_Set_Param('Priority', val + 1);
END;


OG_Get_Param_Type

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt den Datentyp eines Parameters zurück.

Syntax

FUNCTION OG_Get_Param_Type
  (param_name  VARCHAR2)
RETURN NUMBER;

Parameter

param_name	Name des Parameters.

Rückgabewert  Diese Funktion gibt eine der folgenden vordefinierten Konstanten zurück:

•	OG_Char_Paramtype

•	OG_Date_Paramtype

•	OG_Num_Paramtype


Beispiele für OG_Get_Param_Type

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure retrieves the datatype of the parameter 'param0',
**then increases it by one if the type is NUMBER:
*/

PROCEDURE example IS
  dtype  NUMBER;
BEGIN
  dtype := OG_Get_Param_Type('Param0');
  IF dtype = OG_Num_Paramtype THEN
    :param0 := :param0 + 1;
  END IF;
END;


OG_Param_Exists

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt, ob ein Parameter erstellt wurde.

Syntax

FUNCTION OG_Param_Exists
  (param_name  VARCHAR2)
RETURN BOOLEAN;

Parameter

param_name	Name des Parameters.
Rückgabewert TRUE	Wenn der Parameter vorhanden ist.
FALSE	Wenn der Parameter nicht vorhanden ist.


Beispiele für OG_Param_Exists

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure assigns drill-down behavior to a chart, but first verifies
**that the parameter it sets exists (and creates it if it doesn't exist):
*/

PROCEDURE example(chart OG_Object, param_name VARCHAR2) IS
  chelement_group  OG_Object;
BEGIN
  IF NOT OG_Param_Exists(Param_Name) THEN
    OG_Set_Param(Param_Name, 10);
  END IF;

  chelement_group := OG_Get_Object('Sal_Bars', chart);
  OG_Set_Setparam(Chelement_Group, param_name);
  OG_Set_Keycol(Chelement_Group, 'DEPTNO');
END;


OG_Set_Param

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt den Wert des angegebenen Parameters. Wenn der Parameter nicht vorhanden ist, wird er erstellt.

Syntax

PROCEDURE OG_Set_Param                       Datum
  (param_name    VARCHAR2,
   param_value   DATE,
   param_format  VARCHAR2  :=  'DD-MON-YY');

PROCEDURE OG_Set_Param                       Zahl
  (param_name   VARCHAR2,
   param_value  NUMBER);

PROCEDURE OG_Set_Param                       Char
  (param_name   VARCHAR2,
   param_value  VARCHAR2);

Parameter

param_name	Name des Parameters, dessen Wert eingestellt werden soll.
param_value	Wert, auf den der Parameter eingestellt wird.
param_format	Formatmaske, mit der param_value auf Datumsparameter interpretiert wird.

Verwendungshinweise  Diese Prozedur wird besonders dann benutzt, wenn Sie den Parameter innerhalb eines Programmblocks referenzieren möchten, der in einer Bibliothek steht. Bindereferenzen werden innerhalb des Kontextes einer Bibliothek nicht kompiliert. Mit dieser Prozedur werden sie jedoch kompiliert.


Beispiele für OG_Set_Param

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the parameter
**'priority', and increases it by 1:
*/

PROCEDURE example IS
  val  NUMBER;
BEGIN
  val := OG_Get_Num_Param('Priority');
  OG_Set_Param('Priority', val + 1);
END;


Vordefinierte Abfrage-Prozeduren

OG_Append_Row

OG_Clear_Query

OG_Data_Changed

OG_Data_Queried

OG_Destroy (Abfrage)

OG_Execute_Query

OG_Get_Charcell

OG_Get_Datecell

OG_Get_Newrows

OG_Get_Numcell

OG_Get_Query

OG_Get_Schema

OG_Insert_Column

OG_Make_Query

OG_Next_Row

OG_Numcols

OG_Numrows

OG_Set_Charcell

OG_Set_Datecell

OG_Set_Numcell

OG_Set_Schema

OG_Start_From


OG_Append_Row

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt den aktuellen Zeilenpuffer am Ende einer benutzerdefinierten Abfrage hinzu.

Syntax

PROCEDURE OG_Append_Row
  (query_hdl  OG_Query);

Parameter

query_hdl	Handle zu der Abfrage, an der der Zeilenpuffer angehängt wird.

Verwendungshinweise  Geben Sie den Inhalt des Zeilenpuffers mit OG_Set_Charcell, OG_Set_Datecell und OG_Set_Numcell an.


Beispiele für OG_Append_Row

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a custom query using the ENAME, SAL, and
**HIREDATE columns in the existing query 'query0' as a basis.  However, in the
**new query, you want to double every SAL value.  The following procedure
**is a custom query procedure you could use:
*/

PROCEDURE OGQUERYPROC0(query IN OG_Query) IS
  other_ename     VARCHAR2(10);
  other_sal       NUMBER(7,2);
  other_query     OG_Query;
  other_hiredate  DATE;
  row_count       NUMBER;
BEGIN
  OG_Clear_Query(Query);

  other_query := OG_Get_Query('Query0');
  row_count := OG_Numrows(Other_Query, OG_Newdata);
  OG_Start_From(Other_Query, OG_Newdata, 0);

  FOR i IN 0..row_count loop
    other_ename := OG_Get_Charcell(Other_Query, 'ENAME');
    other_sal := OG_Get_Numcell(Other_Query, 'SAL');
    other_hiredate := OG_Get_Numcell(Other_Query, 'HIREDATE');
    OG_Set_Charcell(Query, 'ENAME', other_ename);
    OG_Set_Numcell(Query, 'SAL', other_sal * 2);
    OG_Set_Datecell(Query, 'HIREDATE', other_hiredate);
    OG_Append_Row(Query);
    OG_Next_Row(Other_Query, OG_Newdata);
  END LOOP;

END;


OG_Clear_Query

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur entfernt alle Datenzeilen aus der angegebenen Abfrage.

Syntax

PROCEDURE OG_Clear_Query
  (query_hdl  OG_Query);

Parameter

query_hdl	Handle zu der zu löschenden Abfrage.


Beispiele für OG_Clear_Query

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a custom query using the ENAME, SAL, and
**HIREDATE columns in the existing query 'query0' as a basis.  However, in the
**new query, you want to double every SAL value.  The following procedure
**is a custom query procedure you could use:
*/

PROCEDURE OGQUERYPROC0(query IN OG_Query) IS
  other_ename     VARCHAR2(10);
  other_sal       NUMBER(7,2);
  other_query     OG_Query;
  other_hiredate  DATE;
  row_count       NUMBER;
BEGIN
  OG_Clear_Query(Query);

  other_query := OG_Get_Query('Query0');
  row_count := OG_Numrows(Other_Query, OG_Newdata);
  OG_Start_From(Other_Query, OG_Newdata, 0);

  FOR i IN 0..row_count loop
    other_ename := OG_Get_Charcell(Other_Query, 'ENAME');
    other_sal := OG_Get_Numcell(Other_Query, 'SAL');
    other_hiredate := OG_Get_Numcell(Other_Query, 'HIREDATE');
    OG_Set_Charcell(Query, 'ENAME', other_ename);
    OG_Set_Numcell(Query, 'SAL', other_sal * 2);
    OG_Set_Datecell(Query, 'HIREDATE', other_hiredate);
    OG_Append_Row(Query);
    OG_Next_Row(Other_Query, OG_Newdata);
  END LOOP;

END;


OG_Data_Changed

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion vergleicht die alten und neuen Daten, die sich aus dem letzten Aufruf von OG_Execute_Query für die angegebene Abfrage ergeben. Sie gibt TRUE zurück, wenn sich die Datengruppen unterscheiden, und FALSE, wenn sie sich nicht unterscheiden.

Syntax

FUNCTION OG_Data_Changed
  (query_hdl  OG_Query)
RETURN BOOLEAN;

Parameter

query_hdl	Handle zu der Abfrage.
Rückgabewert TRUE	Wenn die Daten geändert wurden.
FALSE	Wenn die Daten nicht geändert wurden.

Verwendungshinweise  Diese Funktion vergleicht folgende Angaben für die alten und neuen Daten, wobei gestoppt wird, sobald eine Diskrepanz entdeckt wird:

1	Anzahl zurückgegebener Zeilen

2	Schema der Abfrage

3	Zellenweiser Vergleich der Daten (Beachten Sie, daß dieser Vergleich bei umfangreichen Datengruppen zeitaufwendig sein kann.)


Beispiele für OG_Data_Changed

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to update a chart periodically, but only if the
**data has changed.  You could write the following timer trigger:
*/

PROCEDURE my_timer IS
   my_query   OG_Query;
   my_chart   OG_Object;
BEGIN
   my_query:=OG_Get_Query('Emp_Query');
   OG_Execute_Query(My_Query);
   IF OG_Data_Changed(My_Query) THEN
      my_chart:=OG_Get_Object('Emp_Chart');
      OG_Update_Chart(My_Chart, OG_All_Chupda);
   END IF;
END;


OG_Data_Queried

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt, ob die angegebene Datenkategorie von dem letzten Aufruf von OG_Execute_Query für die angegebene Abfrage abgefragt wurde.

Syntax

FUNCTION OG_Data_Queried
  (query_hdl   OG_Query,
   which_data  NUMBER)
RETURN BOOLEAN;

Parameter

query_hdl	Handle zu der Abfrage.
which_data	Gibt an, ob der Status der alten oder neuen Daten überprüft werden soll. Graphics Builder verfügt über zwei vordefinierte numerische Konstanten, die als Werte für dieses Argument benutzt werden können: OG_Newdata und OG_Olddata.
Rückgabewert TRUE	Wenn die Daten abgefragt wurden.
FALSE	Wenn die Daten nicht abgefragt wurden.

Verwendungshinweise  Wenn die Abfrage nicht von OG_Execute_Query ausgeführt wurde, wurde keine Datenkategorie abgefragt, und diese Funktion gibt FALSE zurück. Wenn die Abfrage genau einmal ausgeführt wurde, gibt diese Funktion TRUE für die neuen Daten und FALSE für die alten Daten zurück. Wenn die Abfrage mehr als einmal ausgeführt wurde, gibt diese Funktion immer TRUE zurück.


Beispiele für OG_Data_Queried

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to use OG_Data_Changed to check if a query's
**data has changed, and then update a chart that uses that query.
**Before you do so, you may want to make sure that both the old and
**new data for the query have been queried.
*/

PROCEDURE check_and_update IS
   my_query   OG_Query;
   my_chart   OG_Object;
BEGIN
   my_query:=OG_Get_Query('Sales Query');
   IF OG_Data_Queried(My_Query, OG_Olddata) AND
OG_Data_Queried(My_Query, OG_Newdata) THEN
      IF data_changed(my_query) THEN
         my_chart:=OG_Get_Object('Sales Chart');
         OG_Update_Chart(My_Chart, OG_All_Chupda);
      END IF;
   END IF;
END;


OG_Destroy (Abfrage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört die angegebene Abfrage.

Syntax

PROCEDURE OG_Destroy
  (query_hdl  OG_Query);

Parameter

query_hdl	Handle zu der zu zerstörenden Abfrage.


Beispiele für OG_Destroy (Abfrage)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure destroys the specified query:
*/

PROCEDURE destroy_query(query_name VARCHAR2) IS
  query  OG_Query;
BEGIN
  query := OG_Get_Query(Query_Name);
  OG_Destroy(Query);
END;


OG_Execute_Query

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur führt die angegebene Abfrage aus und speichert die Ergebnisse intern.

Syntax

PROCEDURE OG_Execute_Query
  (query_hdl  OG_Query);

Parameter

query_hdl	Handle zu der auszuführenden Abfrage.

Verwendungshinweise  Die Abfrage muß im Builder definiert werden. Wenn die Abfrage einen Zugriff zu der Datenbank erfordert und die Datenbank nicht verbunden ist, wird die Exception OG_No_Database_Connection ausgelöst. Beachten Sie, daß diese Prozedur nur Daten abruft. Sie wendet die Daten für ein Diagramm nicht an und bearbeitet die Daten auch anderweitig nicht.

Für jede Abfrage werden zwei Datengruppen gespeichert: die aktuellen Ergebnisse der Abfrage ("neue" Daten) und die vorherigen Ergebnisse der Abfrage ("alte" Daten). Auf diese Weise können Vorgänge ausgeführt werden, die von der Änderung von Daten abhängen, wie z.B. das Aktualisieren eines Diagramms nur, wenn die Daten seit der letzten Ausführung der Abfrage geändert wurden. Mit anderen vordefinierten Prozeduren und Funktionen, mit denen Sie Daten bearbeiten und überprüfen können, können Sie angeben, welche Datengruppe benutzt werden soll.

Wenn eine Abfrage nicht über einen Aufruf dieser Prozedur ausgeführt wurde, sind weder die alten noch die neuen Daten für die Abfrage vorhanden. Wenn die Abfrage das erste Mal ausgeführt wird, werden die Ergebnisse als neue Daten gespeichert, die alten Daten sind jedoch immer noch nicht vorhanden. Danach werden bei jeder Ausführung der Abfrage die alten Daten verworfen, die bestehenden neuen Daten werden zu den alten Daten, und die letzten Ergebnisse der Abfrage werden als neue Daten gespeichert.

Bei jeder Ausführung einer Abfrage wird ein impliziter Cursor für die neuen Daten erstellt. (Mit verschiedenen anderen Prozeduren und Funktionen können Sie diesen Cursor bearbeiten und die Daten überprüfen.) Wenn neue Daten als alte Daten eingeordnet werden, bleibt deren Cursor (und die aktuelle Position des Cursors in der Datenliste) bei diesen Daten. Beachten Sie jedoch, daß ein neuer Cursor nicht automatisch auf eine gültige Datenzeile zeigt. Um den Cursor zur Benutzung vorzubereiten, verwenden Sie OG_Start_From.


Beispiele für OG_Execute_Query

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to update a chart periodically.
**You could write the following timer trigger:
*/

PROCEDURE every_30_secs IS
   the_query   OG_Query;
   the_chart   OG_Object;
BEGIN
   the_query:=OG_Get_Query('Emp_Query');
   the_chart:=OG_Get_Object('Emp_Chart');
   OG_Execute_Query(The_Query);
   OG_Update_Chart(The_Chart, OG_All_Chupda);
END;


OG_Get_Charcell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt einen Zeichen-Datenwert für die angegebene Abfrage in der aktuellen Datenzeile für die angegebene Spalte zurück.

Syntax

FUNCTION OG_Get_Charcell
  (query_hdl   OG_Query,
   col_name    VARCHAR2)
RETURN VARCHAR2;

FUNCTION OG_Get_Charcell
  (query_hdl   OG_Query,
   which_data  NUMBER,
   col_name    VARCHAR2)
RETURN VARCHAR2;

Parameter

query_hdl	Handle zu der Abfrage, die die zurückzugebenden Daten enthält.
col_name	Spaltenname, der die zurückzugebenden Daten enthält.
which_data	Gibt an, ob der Zellwert von den alten oder neuen Daten abgerufen wird. Wenn keine Angaben gemacht werden, entspricht der Wert dieses Arguments standardmäßig OG_Newdata. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Newdata   Bedeutet, daß der Zellwert aus den neuen Daten abgerufen wird. OG_Olddata   Bedeutet, daß der Zellwert aus den alten Daten abgerufen wird.
Rückgabewert  Inhalt der angegebenen Datenzelle.

Verwendungshinweise  Die aktuelle Zeile wird von dem impliziten Cursor der Abfrage bestimmt, der anfänglich erstellt wird, wenn die Abfrage mit OG_Execute_Query ausgeführt wird.

Wenn Sie die Abfrageergebnisse grafisch darstellen, die in der Datentabelle angezeigt werden, gibt diese Funktion die Daten zurück, die in der Zelle bei dem Schnittpunkt zwischen der aktuellen Zeile und der angegebenen Spalte enthalten sind.

Mit dieser Funktion können Sie Datenwerte aus Spalten vom Typ CHAR, VARCHAR2 oder RAW zurückgeben.


Beispiele für OG_Get_Charcell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose that you have a chart that
**displays employee salaries. The following
**procedure uses a format trigger to paint
**a specific employee's salary column
**yellow (in this case, "Scott’s").
*/

PROCEDURE CharCell (elem IN og_object,

                        query IN og_query) IS

  ename varchar2(10);

BEGIN

  ename := og_get_charcell(query, OG_NEWDATA, 'ename');

  if ename = 'SCOTT' then

     og_set_bfcolor(elem, 'yellow');

  end if;

END;


OG_Get_Datecell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt den Datums-Datenwert für die angegebene Abfrage in der aktuellen Datenzeile für die angegebene Spalte zurück.

Syntax

FUNCTION OG_Get_Datecell
  (query_hdl   OG_Query,
   which_data  NUMBER,
   col_name    VARCHAR2)
RETURN DATE;

Parameter

query_hdl	Handle zu der Abfrage, die die zurückzugebenden Daten enthält.
col_name	Spaltenname, der die zurückzugebenden Daten enthält.
which_data	Gibt an, ob der Zellwert aus den alten oder neuen Daten abgerufen wird. Wenn keine Angaben gemacht werden, entspricht der Wert dieses Arguments standardmäßig OG_Newdata.  Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß der Zellwert aus den neuen Daten abgerufen wird. OG_Olddata   Bedeutet, daß der Zellwert aus den alten Daten abgerufen wird.
Rückgabewert  Inhalt der angegebenen Datenzelle.

Verwendungshinweise  Die aktuelle Zeile wird von dem impliziten Cursor der Abfrage bestimmt, der anfänglich erstellt wurde, als OG_Execute_Query zur Ausführung der Abfrage benutzt wurde.

Wenn Sie die Abfrageergebnisse bildhaft darstellen, die in einer Datentabelle angezeigt werden, gibt diese Funktion die Daten zurück, die in der Zelle bei dem Schnittpunkt zwischen der aktuellen Zeile und der angegebenen Spalte enthalten sind.


Beispiele für OG_Get_Datecell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/* Suppose you have a bar chart that
**shows the hire dates of several employees.
**The following format trigger changes the
**column color for employees with
**a HireDate prior to '28-SEP-81'
**to green.
*/

 PROCEDURE DateCell (elem IN og_object,
                        query IN og_query) IS
  HireDate date;
BEGIN
  HireDate := og_get_datecell(query, OG_NEWDATA, 'HIREDATE');
  if HireDate < '28-SEP-81' then
     og_set_bfcolor(elem, 'green');
  end if;
END;


OG_Get_Newrows

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt die Anzahl von neuen Datenzeilen, die an eine Abfrage angehängt werden.

Syntax

FUNCTION OG_Get_Newrows
  (query  OG_Query)
RETURN NUMBER;

Parameter

query	Handle zu der Abfrage.

Rückgabewert  Die Anzahl von Zeilen, die an die Abfrage angehängt wurden, als diese das letzte Mal ausgeführt wurde.

Verwendungshinweise  Diese Funktion wird besonders dann benutzt, wenn mit den Abfrageattributen angegeben wird, daß neue Daten an den alten Daten angehängt werden. Wenn die neuen Daten die alten Daten ersetzen, gibt diese Funktion dasselbe Ergebnis wie OG_Numrows zurück.


Beispiele für OG_Get_Newrows

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a query that appends new data old data, but you want to
**know a cell value for the first new row returned.  The following function sets the
**query's cursor to start at the first new row returned:
*/

FUNCTION example(query OG_Query) RETURN CHAR IS
  total_rows  NUMBER;
  new_rows    NUMBER;
  new_name    VARCHAR2(10);
BEGIN
  OG_Execute_Query(Query);
  total_rows := OG_Numrows(Query, OG_Newdata);
  new_rows := OG_Get_Newrows(Query);
  OG_Start_From(Query, OG_Newdata, total_rows - new_rows);

  new_name := OG_Get_Charcell(Query, 'ENAME');
  RETURN(new_name);
END;


OG_Get_Numcell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt den numerischen Datenwert für die angegebene Abfrage in der aktuellen Datenzeile für die angegebene Spalte zurück.

Syntax

FUNCTION OG_Get_Numcell
  (query_hdl   OG_Query,
   col_name    VARCHAR2)
RETURN NUMBER;

FUNCTION OG_Get_Numcell
  (query_hdl   OG_Query,
   which_data  NUMBER,
   col_name    VARCHAR2)
RETURN NUMBER;

Parameter

query_hdl	Handle zu der Abfrage, die die zurückzugebenden Daten enthält.
col_name	Name der Spalte, die die zurückzugebenden Daten enthält.
which_data	Gibt an, ob der Zellwert aus den alten oder neuen Daten abgerufen wird. Wenn keine Angaben gemacht werden, entspricht der Wert dieses Arguments standardmäßig OG_Newdata.  Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß der Zellwert aus den neuen Daten abgerufen wird. OG_Olddata   Bedeutet, daß der Zellwert aus den alten Daten abgerufen wird.
Rückgabewert  Inhalt der angegebenen Datenzelle.

Verwendungshinweise  Die aktuelle Zeile wird von dem impliziten Cursor der Abfrage bestimmt, der anfänglich erstellt wird, wenn die Abfrage mit OG_Execute_Query ausgeführt wird.

Wenn Sie die Abfrageergebnisse bildhaft darstellen, die in einer Datentabelle angezeigt werden, gibt diese Funktion die Daten zurück, die in der Zelle bei dem Schnittpunkt zwischen der aktuellen Zeile und der angegebenen Spalte stehen.


Beispiele für OG_Get_Numcell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following is an example of a
**format trigger that changes the color
**of the chosen chart element (e.g. pie
**slice or bar) to red if its value is
**greater than 200.
/*

PROCEDURE format_point (elem IN og_object, query IN
    og_query) IS
  st_price NUMBER;
BEGIN
  st_price:=OG_GET_NUMCELL (query, OG_NEWDATA, 'sell_pr');
IF st_price > 200 THEN
  OG_SET_BFCOLOR (elem,'red');
END IF;
END;


OG_Get_Query

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu der angegebenen Abfrage zurück.

Syntax

FUNCTION OG_Get_Query
  (query_name  VARCHAR2)
RETURN OG_Query;

Parameter

query_name	Name der Abfrage, deren Handle zurückgegeben wird. Hinweis:  Bei QUERY_NAME muß die Schreibweise berücksichtigt werden.

Rückgabewert  Handle zu der angegebenen Abfrage.

Verwendungshinweise  Wenn die Abfrage nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Query

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to update a chart periodically.
**You could write the following timer trigger:
*/

PROCEDURE every_30_secs IS
   the_query   OG_Query;
   the_chart   OG_Object;
BEGIN
   the_query:=OG_Get_Query('Emp_Query');
   the_chart:=OG_Get_Object('Emp_Chart');
   OG_Execute_Query(The_Query);
   OG_Update_Chart(The_Chart, OG_All_Chupda);


OG_Get_Schema

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt Informationen über das Schema einer bestimmten Spalte in einer Abfrage zurück.

Syntax

FUNCTION OG_Get_Schema
  (query_hdl   OG_Query,
   which_data  NUMBER,
   col_num     NUMBER)
RETURN OG_Colschema;

Parameter

query_hdl	Handle zu der Abfrage, die die Spalte enthält.
which_data	Gibt an, ob die Spalte, deren Schema abgerufen wird, in den alten oder neuen Daten der Abfrage vorhanden ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Newdata   Bedeutet, daß die Spalte in den neuen Daten der Abfrage vorhanden ist. OG_Olddata   Bedeutet, daß die Spalte in den alten Daten der Abfrage vorhanden ist.
col_num	Gibt an, welches Spaltenschema abgerufen wird. Die Nummer der ersten Spalte ist 0, die zweite Spalte hat die Nummer 1 usw.

Rückgabewert  Schema der Spalte in der angegebenen Abfrage.


Beispiele für OG_Get_Schema

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to query a database table, and then use the name
**of the first column elsewhere in your application.  Assume you have
**defined a parameter named `my_query' that is of type CHAR,
**and that you have defined the following SQL query named `query0':
*/

&my_query

/* The following function takes a table name as an argument and
**returns the name of the table's first column:
*/

FUNCTION get_col_name (table_name IN VARCHAR2) RETURN VARCHAR2 IS
   my_schema    OG_Colschema;
   star_query   OG_Query;
BEGIN
   :my_query:='select * from ' || table_name;
   star_query:=OG_Get_Query('Query0');
   OG_Execute_Query(Star_Query);
   my_schema:=OG_Get_Schema(Star_Query, OG_Newdata, 0);
   RETURN(my_schema.colname);
END;


OG_Insert_Column

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt eine Spalte in eine benutzerdefinierte Abfrage ein.

Syntax

PROCEDURE OG_Insert_Column
  (query_hdl  OG_Query,
   indx       NUMBER,
   schema     OG_Colschema);

Parameter

query_hdl	Handle zu der Abfrage, in die die Spalte eingefügt werden soll.
indx	Index, bei dem die neue Spalte in die Spaltenliste der Abfrage eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von Spalten in der Abfrage vor dem Einfügenvorgang ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß die neue Spalte am Anfang der Spaltenliste einer Abfrage eingefügt wird (Index = 0). OG_Last   Bedeutet, daß die neue Spalte am Ende der Spaltenliste der Abfrage eingefügt wird (Index = Anzahl von Spalten in der Abfrage vor dem Einfügenvorgang).
schema	Schema der einzufügenden Spalte.


Beispiele für OG_Insert_Column

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates 'query0', containing the columns ENAME and SAL:
*/

PROCEDURE example IS
  query  OG_Query;
  col    OG_Colschema;
BEGIN
  query := OG_Make_Query('Query0', NULL);
  OG_Set_Querytype(Query, OG_Custom_Qtype);

  col.colname := 'ENAME';
  col.coltype := OG_Char_Coltype;
  col.maxlen := 10;

  OG_Insert_Column(Query, OG_Last, col);

  col.colname := 'SAL';
  col.coltype := OG_Number_Coltype;
  col.precision := 7;
  col.scale := 2;

  OG_Insert_Column(Query, OG_Last, col);

END;


OG_Make_Query

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine Abfrage.

Syntax

FUNCTION OG_Make_Query
  (querytype    NUMBER,
   querysource  VARCHAR2
RETURN OG_Query;

Parameter

querytype	Abfragetyp. Dieser Wert kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Custom_Qtype   Bedeutet, daß die Abfrage eine Benutzerdefinierte Abfrage ist. OG_Exsql_Qtype   Bedeutet, daß  die Abfrage ihre Daten aus einer Textdatei abruft, die eine SQL SELECT-Anweisung enthält. OG_Prn_Qtype   Bedeutet, daß die Abfrage auf einer PRN-Datei basiert. OG_Sql_Qtype   Bedeutet, daß die Abfrage eine SQL SELECT-Anweisung ist. OG_Sylk_Qtype   Bedeutet, daß die Abfrage auf einer SYLK-Datei basiert. OG_Wks_Qtype   Bedeutet, daß die Abfrage auf einer WKS-Datei basiert.
querysource	Quelle der Daten der Abfrage. Wenn die Daten aus einer Datenbank stammen, muß dieses Attribut den Text der SQL SELECT-Anweisung der Abfrage enthalten. Wenn die Daten im Dateisystem gespeichert sind, muß dieses Attribut Pfad und Namen der Datendatei enthalten.

Rückgabewert  Handle zu der neu erstellten Abfrage.


Beispiele für OG_Make_Query

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a SQL query:
*/

FUNCTION example(query_name VARCHAR2) RETURN OG_Query IS
  query   OG_Query;
  qtype   NUMBER;
  qsource VARCHAR2(2000);
BEGIN
  qtype := OG_Sql_Qtype;
  qsource := 'select ename, sal from emp';

  query := OG_Make_Query(Qtype, qsource);

  OG_Set_Name(Query, query_name);
  OG_Execute_Query(Query);
  RETURN(Query);
END;


OG_Next_Row

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur setzt den impliziten Cursor, der mit der angegebenen Abfrage verknüpft ist, in die nächste Datenzeile.

Syntax

PROCEDURE OG_Next_Row
  (query_hdl   OG_Query,
   which_data  NUMBER);

Parameter

query_hdl	Handle zu der Abfrage.
which_data	Gibt an, ob die alten oder neuen Daten verarbeitet werden sollen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß der Cursor für die neuen Daten der Abfrage versetzt wird. OG_Olddata   Bedeutet, daß der Cursor für die alten Daten der Abfrage versetzt wird.
Verwendungshinweise  Wenn der Cursor auf die letzte Datenzeile in der Abfrage zeigt, beläßt der nächste Aufruf von OG_Next_Row den Cursor an der Stelle, an der er steht. Der Cursor wird nicht zu einer nicht vorhandenen Zeile versetzt, und kein Fehler bzw. keine Exception wird ausgelöst. Um zu erkennen, daß der Cursor auf die letzte Datenzeile zeigt, müssen Sie mit OG_Numrows die genaue Anzahl von Zeilen bestimmen und dann festhalten, wie oft Sie OG_Next_Row benutzt haben, um den Cursor zu versetzen.


Beispiele für OG_Next_Row

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to name each bar in a bar chart so that when
**the user selects one of the bars you can determine which one it is
**by checking its name.  For this example, assume the query for the chart is:
*/

SELECT ENAME, SAL FROM EMP

 /*The following procedure gives each bar the name of its category,
**which in this case is its associated ENAME:
*/

PROCEDURE name_the_bars (my_chart IN OG_Object, my_query IN
  OG_Query) IS
   bar_rec    OG_Chelement_Ca;
   curr_row   NUMBER;
   total      NUMBER;
   bar_name   VARCHAR2(15);
BEGIN
   OG_Execute_Query(My_Query);
   OG_Start_From(My_Query, OG_Newdata, 0);
   total:=OG_Numrows(My_Query, OG_Newdata);
   FOR curr_row IN 0..total-1 LOOP
      bar_name:=OG_Get_Charcell(My_Query,
        OG_Newdata, 'ENAME');
      bar_rec.chelement_cagr.mask:=OG_None_Graphica;
      bar_rec.chelement_cace.mask:=OG_Name_Chelementa;
      bar_rec.chelement_cace.name:=bar_name;
      OG_Set_Attr(My_Chart, curr_row, 'ENAME', bar_rec);
      OG_Next_Row(My_Query, OG_Newdata);
   END LOOP;
   OG_Update_Chart(My_Chart, OG_All_Chupda);
END;


OG_Numcols

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt die Anzahl von Spalten zurück, die in einer Abfrage vorhanden sind.

Syntax

FUNCTION OG_Numcols
  (query_hdl   OG_Query,
   which_data  NUMBER)
RETURN NUMBER;

Parameter

query_hdl	Handle zu der Abfrage.
which_data	Gibt an, ob die alten oder neuen Daten geprüft werden sollen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß die Anzahl von Spalten in den neuen Daten zurückgegeben wird. OG_Olddata   Bedeutet, daß die Anzahl von Spalten in den alten Daten der Abfrage zurückgegeben wird.
Rückgabewert  Anzahl von Spalten in der angegebenen Abfrage.


Beispiele für OG_Numcols

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose Reports will pass data to your display, and you want to chart it.
**Since you may not be sure what columns your display will receive,
**you can make your charting procedure generic.  You can write one
**procedure that creates an chart, then pass the query and chart to
**another procedure that inserts the query's columns as fields.  The following
**procedure inserts the columns (it assumes the first column is the independent
**field, and the rest are dependent fields):
*/

PROCEDURE add_columns(the_query OG_Query, the_chart OG_Object) IS
   num_of_cols   NUMBER(1);
   the_field     OG_Field;
   the_column    OG_Colschema;
BEGIN
   OG_Execute_Query(The_Query);
   num_of_cols:=OG_Numcols(The_Query, OG_Newdata);
   FOR i IN 0..num_of_cols-1 LOOP
      the_column:=OG_Get_Schema(The_Query, OG_Newdata, i);
      the_field.colname:=the_column.colname;
      IF i=0 THEN
         the_field.field_type:=OG_Independent;
      ELSE
         the_field.field_type:=OG_Dependent;
         the_field.ftname:='line';
      END IF;
      OG_Insert_Field(The_Chart, the_field, i);
   END LOOP;
   OG_Update_Chart(The_Chart, OG_All_Chupda);
END;


OG_Numrows

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt die Anzahl von Zeilen zurück, die in einer Abfrage vorhanden sind.

Syntax

FUNCTION OG_Numrows
  (query_hdl   OG_Query,
   which_data  NUMBER)
RETURN NUMBER;

Parameter

query_hdl	Handle zu der Abfrage.
which_data	Gibt an, ob die alten oder neuen Daten überprüft werden sollen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß die Anzahl von Zeilen in den neuen Daten der Abfrage zurückgegeben wird. OG_Olddata   Bedeutet, daß die Anzahl von Zeilen in den alten Daten der Abfrage zurückgegeben wird.
Rückgabewert  Anzahl von Datenzeilen in der angegebenen Abfrage.


Beispiele für OG_Numrows

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to name each bar in a bar chart so that when
**the user selects one of the bars you can determine which one it is
**by checking its name.  For this example, assume the query for the chart is:
*/

SELECT ENAME, SAL FROM EMP

 /*The following procedure gives each bar the name of its category,
**which in this case is its associated ENAME:
*/

PROCEDURE name_the_bars(my_chart IN OG_Object, my_query IN
  OG_Query) IS
   bar_rec    OG_Chelement_Ca;
   curr_row   NUMBER;
   total      NUMBER;
   bar_name   VARCHAR2(15);
BEGIN
   OG_Execute_Query(My_Query);
   OG_Start_From(My_Query, OG_Newdata, 0);
   total:=OG_Numrows(My_Query, OG_Newdata);
   FOR curr_row IN 0..total-1 LOOP
      bar_name:=OG_Get_Charcell(My_Query, OG_Newdata,
        'ENAME');
      bar_rec.chelement_cagr.mask:=OG_None_Graphica;
      bar_rec.chelement_cace.mask:=OG_Name_Chelementa;
      bar_rec.chelement_cace.name:=bar_name;
      OG_Set_Attr(My_Chart, curr_row, 'ENAME', bar_rec);
      OG_Next_Row(My_Query, OG_Newdata);
   END LOOP;
   OG_Update_Chart(My_Chart, OG_All_Chupda);
END;


OG_Set_Charcell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt den Wert einer CHAR-Zelle im Zeilenpuffer.

Syntax

PROCEDURE OG_Set_Charcell
  (query_hdl   OG_Query,
   col_name    VARCHAR2
   cell_value  VARCHAR2);

Parameter

query_hdl	Handle zu der Abfrage, in der der Zellwert eingestellt werden soll.
Col_name	Name der Spalte, die die einzustellende Zelle enthält.
Cell_value	Wert, den die Zelle enthalten wird.

Verwendungshinweise  Nachdem Sie die Werte für alle Zellen in dem Puffer festgelegt haben, benutzen Sie OG_Append_Row, um den Puffer als neue Zeile am Ende einer benutzerdefinierten Abfrage hinzuzufügen.


Beispiele für OG_Set_Charcell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a custom query using the ENAME, SAL,
**and HIREDATE columns in the existing query 'query0' as a basis.
**However, in the new query, you want to double every SAL value.
**The following procedure is a custom query procedure you could use:
*/

PROCEDURE OGQUERYPROC0(query IN OG_Query) IS
  other_ename     VARCHAR2(10);
  other_sal       NUMBER(7,2);
  other_query     OG_Query;
  other_hiredate  DATE;
  row_count       NUMBER;
BEGIN
  OG_Clear_Query(Query);

  other_query := OG_Get_Query('Query0');
  row_count := OG_Numrows(Other_Query, OG_Newdata);
  OG_Start_From(Other_Query, OG_Newdata, 0);

  FOR i IN 0..row_count-1 loop
    other_ename := OG_Get_Charcell(Other_Query, 'ENAME');
    other_sal := OG_Get_Numcell(Other_Query, 'SAL');
    other_hiredate := OG_Get_Numcell(Other_Query, 'HIREDATE');
    OG_Set_Charcell(Query, 'ENAME', other_ename);
    OG_Set_Numcell(Query, 'SAL', other_sal * 2);
    OG_Set_Datecell(Query, 'HIREDATE', other_hiredate);
    OG_Append_Row(Query);
    OG_Next_Row(Other_Query, OG_Newdata);
  END LOOP;

END;


OG_Set_Datecell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt den Wert einer DATE-Zelle im Zeilenpuffer.

Syntax

PROCEDURE OG_Set_Datecell
  (query_hdl   OG_Query,
   col_name    VARCHAR2
   cell_value  DATE);

Parameter

query_hdl	Handle zu der Abfrage, in der der Zellwert eingestellt werden soll.
col_name	Name der Spalte, die die einzustellende Zelle enthält.
cell_value	Wert, den die Zelle enthalten wird.

Verwendungshinweise  Nachdem Sie die Werte für alle Zellen in dem Puffer festgelegt haben, benutzen Sie OG_Append_Row, um den Puffer als neue Zeile am Ende einer benutzerdefinierten Abfrage hinzuzufügen.


Beispiele für OG_Set_Datecell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a custom query using the ENAME, SAL,
**and HIREDATE columns in the existing query 'query0' as a basis.
**However, in the new query, you want to double every SAL value.
**The following procedure is a custom query procedure you could use:
*/

PROCEDURE OGQUERYPROC0(query IN OG_Query) IS
  other_ename     VARCHAR2(10);
  other_sal       NUMBER(7,2);
  other_query     OG_Query;
  other_hiredate  DATE;
  row_count       NUMBER;
BEGIN
  OG_Clear_Query(Query);

  other_query := OG_Get_Query('Query0');
  row_count := OG_Numrows(Other_Query, OG_Newdata);
  OG_Start_From(Other_Query, OG_Newdata, 0);

  FOR i IN 0..row_count-1 loop
    other_ename := OG_Get_Charcell(Other_Query, 'ENAME');
    other_sal := OG_Get_Numcell(Other_Query, 'SAL');
    other_hiredate := OG_Get_Numcell(Other_Query, 'HIREDATE');
    OG_Set_Charcell(Query, 'ENAME', other_ename);
    OG_Set_Numcell(Query, 'SAL', other_sal * 2);
    OG_Set_Datecell(Query, 'HIREDATE', other_hiredate);
    OG_Append_Row(Query);
    OG_Next_Row(Other_Query, OG_Newdata);
  END LOOP;

END;


OG_Set_Numcell

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt den Wert einer NUMBER-Zelle im Zeilenpuffer ein.

Syntax

PROCEDURE OG_Set_Numcell
  (query_hdl   OG_Query,
   col_name    VARCHAR2,
   cell_value  NUMBER);

Parameter

query_hdl	Handle zu der Abfrage, in der der Zellwert eingestellt werden soll.
col_name	Name der Spalte, die die einzustellende Zelle enthält.
cell_value	Wert, den die Zelle enthalten wird.

Verwendungshinweise  Nachdem Sie die Werte für alle Zellen in dem Puffer eingestellt haben, benutzen Sie OG_Append_Row, um den Puffer als neue Zeile am Ende einer benutzerdefinierten Abfrage hinzuzufügen.


Beispiele für OG_Set_Numcell

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a custom query using the ENAME, SAL,
**and HIREDATE columns in the existing query 'query0' as a basis.
**However, in the new query, you want to double every SAL value.
**The following procedure is a custom query procedure you could use:
*/

PROCEDURE OGQUERYPROC0(query IN OG_Query) IS
  other_ename     VARCHAR2(10);
  other_sal       NUMBER(7,2);
  other_query     OG_Query;
  other_hiredate  DATE;
  row_count       NUMBER;
BEGIN
  OG_Clear_Query(Query);

  other_query := OG_Get_Query('Query0');
  row_count := OG_Numrows(Other_Query, OG_Newdata);
  OG_Start_From(Other_Query, OG_Newdata, 0);
  FOR i IN 0..row_count-1 loop
    other_ename := OG_Get_Charcell(Other_Query, 'ENAME');
    other_sal := OG_Get_Numcell(Other_Query, 'SAL');
    other_hiredate := OG_Get_Numcell(Other_Query, 'HIREDATE');
    OG_Set_Charcell(Query, 'ENAME', other_ename);
    OG_Set_Numcell(Query, 'SAL', other_sal * 2);
    OG_Set_Datecell(Query, 'HIREDATE', other_hiredate);
    OG_Append_Row(Query);
    OG_Next_Row(Other_Query, OG_Newdata);
  END LOOP;

END;


OG_Set_Schema

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur stellt das Schema einer Spalte in einer benutzerdefinierten Abfrage ein.

Syntax

PROCEDURE OG_Set_Schema
  (query_hdl  OG_Query,
   col_num    NUMBER,
   schema     OG_Colschema);

Parameter

query_hdl	Handle zu der Abfrage, deren Schema eingestellt werden soll.
col_num	Index der Spalte, die eingestellt werden soll.
schema	Neues Schema, auf das die Spalte eingestellt werden soll.


Beispiele für OG_Set_Schema

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure changes the name of the fist column
**in a custom query from ENAME to EMPLOYEE:
*/

PROCEDURE example(query OG_Query) IS
  schema  OG_Colschema;
BEGIN
  schema.colname := 'EMPLOYEE';
  schema.coltype := OG_Char_Coltype;
  schema.maxlen := 10;

  OG_Set_Schema(Query, 0, schema);

END;


OG_Start_From

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur veranlaßt, daß der mit der angegebenen Abfrage verknüpfte implizite Cursor auf die angegebene Datenzeile zeigt.

Syntax

PROCEDURE OG_Start_From
  (query_hdl   OG_Query,
   which_data  NUMBER,
   start_row   NUMBER);

Parameter

query_hdl	Handle zu der Abfrage.
which_data	Gibt an, ob die alten oder neuen Daten verarbeitet werden sollen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Newdata   Bedeutet, daß der Cursor für die neuen Daten der Abfrage eingestellt wird. OG_Olddata   Bedeutet, daß der Cursor für die alten Daten der Abfrage eingestellt wird.
start_row	Zeilennummer, auf der der Cursor positioniert werden soll.

Verwendungshinweise  Um auf die allererste Datenzeile zu zeigen, benutzen Sie einen Offset-Wert von 0. Der Offset der letzten Datenzeile entspricht dem Wert, der von OG_Numrows zurückgegeben wird, minus eins. Beachten Sie, daß bei jeder Benutzung von OG_Execute_Query zur Ausführung der Abfrage die Cursorposition verworfen wird und neu eingestellt werden muß. Beachten Sie außerdem, daß sich die Anzahl von Zeilen, die von einer Abfrage abgerufen wird, bei jeder Ausführung der Abfrage ändern kann.


Beispiele für OG_Start_From

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to name each bar in a bar chart so that
**when the user selects one of the bars you can determine
**which one it is by checking its name.  For this example,
**assume the query for the chart is:
*/

SELECT ENAME, SAL FROM EMP

 /*The following procedure gives each bar the name of its
**category, which in this case is its associated ENAME:
*/

PROCEDURE name_the_bars (my_chart IN OG_Object, my_query IN
  OG_Query) IS
   bar_rec    OG_Chelement_Ca;
   curr_row   NUMBER;
   total      NUMBER;
   bar_name   VARCHAR2(15);
BEGIN
   OG_Execute_Query(My_Query);
   OG_Start_From(My_Query, OG_Newdata, 0);
   total:=OG_Numrows(My_Query, OG_Newdata);
   FOR curr_row IN 0..total-1 LOOP
      bar_name:=OG_Get_Charcell(My_Query, OG_Newdata,
        'ENAME');
      bar_rec.chelement_cagr.mask:=OG_None_Graphica;
      bar_rec.chelement_cace.mask:=OG_Name_Chelementa;
      bar_rec.chelement_cace.name:=bar_name;
      OG_Set_Attr(My_Chart, curr_row, 'ENAME', bar_rec);
      OG_Next_Row(My_Query, OG_Newdata);
   END LOOP;
   OG_Update_Chart(My_Chart, OG_All_Chupda);
END;


Mit diesem Buchstaben beginnen keine neuen vordefinierten Unterprogramme.


Vordefinierte Klang-Prozeduren

OG_Destroy (Klang)

OG_Export_Sound

OG_Get_Sound

OG_Import_Sound

OG_Make_Sound

OG_Play_Sound

OG_Record_Sound

OG_Stop_Sound


OG_Destroy (Klang)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört den angegebenen Klang.

Syntax

PROCEDURE OG_Destroy
  (sound_hdl  OG_Sound);

Parameter

sound_hdl	Handle zu dem zu zerstörenden Klang.


Beispiele für OG_Destroy (Klang)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure destroys the specified sound:
*/

PROCEDURE destroy_sound(sound_name VARCHAR2) IS
  sound  OG_Sound;
BEGIN
  sound := OG_Get_Sound(Sound_Name);
  OG_Destroy(Sound);
END;


OG_Export_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert einen Klang.

Syntax

PROCEDURE OG_Export_Sound
  (name        VARCHAR2,
   repository  NUMBER,
   format      NUMBER,
   sound_hdl   OG_Sound);

Parameter

name	Name, unter dem der Klang exportiert wird. Wenn der Klang in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen des Klangmoduls enthalten. Wenn der Klang im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der Klangdatei enthalten.
Repository	Gibt an, ob der Klang im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß der Klang in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß der Klang im Dateisystem gespeichert werden soll.
format	Gibt das Format an, in dem der Klang exportiert wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Aiff_Sformat   Bedeutet, daß der Klang im AIFF-Format gespeichert wird. OG_Aiffc_Sformat   Bedeutet, daß der Klang im Audio Interchange File Format-c gespeichert wird. OG_Au_Sformat   Bedeutet, daß der Klang im SUN au-Format gespeichert wird. OG_Wave_Sformat   Bedeutet, daß der Klang im PCM WAVE-Format gespeichert wird.
sound_hdl	Handle zu dem Klang, der exportiert wird.


Beispiele für OG_Export_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to export the sound named `sound0' to the AIFF-c file
**`my_sound' so that you can later import it into some other application.
**The following procedure does this:
*/

PROCEDURE export_the_sound IS
   the_sound   OG_Sound;
BEGIN
   the_sound:=OG_Get_Sound('Sound0');
   OG_Export_Sound('My_Sound', OG_Filesystem,
OG_Aiffc_Sformat, the_sound);
END;


OG_Get_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu dem angegebenen Klang zurück.

Syntax

FUNCTION OG_Get_Sound
   (sound_name  VARCHAR2)
RETURN OG_Sound;

Parameter

sound_name	Name des Klangs, dessen Handle zurückgegeben werden soll.

Rückgabewert  Handle zu dem angegebenen Klang. Wenn der Klang nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to play a warning sound, to indicate
**low inventory or an illegal action by the user.
*/

PROCEDURE warning IS
   the_sound   OG_Sound;
BEGIN
   the_sound:=OG_Get_Sound('Warning_Snd');
   OG_Play_Sound(The_Sound);
END;


OG_Import_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur importiert einen Klang aus der Datenbank oder einer Datei.

Syntax

FUNCTION OG_Import_Sound
  (name        VARCHAR2,
   repository  NUMBER,
   format      NUMBER,
   sound_name  VARCHAR2)
RETURN OG_Sound;

Parameter

name	Name des Klangs, so wie er gespeichert ist. Wenn der Klang in der Datenbank gespeichert ist, darf dieses Argument nur den Namen des Klangs enthalten. Wenn der Klang im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der Klangdatei enthalten.
repository	Gibt an, ob der Klang im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß der Klang in der Datenbank gespeichert ist. OG_Filesystem   Bedeutet, daß der Klang im Dateisystem gespeichert ist.
format	Gibt das Format an, in dem der Klang gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Aiff_Sformat   Bedeutet, daß der Klang im AIFF-Format gespeichert ist. OG_Aiffc_Sformat   Bedeutet, daß der Klang im AIFF-c-Format gespeichert ist. OG_Any_Sformat   Bedeutet, daß Graphics Builder das Klangformat automatisch bestimmt. Hinweis:  Geben Sie dieses Format an, wenn der Klang im Oracle-Format exportiert wurde (jetzt veraltet). OG_Au_Sformat   Bedeutet, daß der Klang im SUN AU-Format gespeichert ist. OG_Oracle_Sformat   Bedeutet, daß der Klang im Oracle-Format gespeichert ist, das von anderen Oracle-Produkten benutzt wird. OG_Wave_Sformat   Bedeutet, daß der Klang im WAV-Format gespeichert ist.
sound_name	Name, den Graphics Builder dem Klang zuweist. Wenn schon ein anderer Klang diesen Namen hat, ersetzt Graphics Builder ihn durch den importierten Klang.

Rückgabewert  Handle zu dem importierten Klang.


Beispiele für OG_Import_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to import the contents of the AIFF-c file
**`my_sound' into your display as the sound named `sound0'.
**The following procedure does this:
*/

PROCEDURE import_the_sound IS
   the_sound   OG_Sound;
BEGIN
   the_sound:=OG_Import_Sound('My_Sound', OG_Filesystem,
OG_Aiffc_Sformat, 'sound0');
END;


OG_Make_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt einen Klang aus Daten, die in einer Datenbanktabelle gespeichert sind.

Syntax

FUNCTION OG_Make_Sound
  (query       OG_Query,
   which_data  NUMBER,
   colname     VARCHAR2)
RETURN OG_Sound;

Parameter

query	Handle zu der Abfrage, die den Klang aus einer Tabelle in einer Datenbank abruft. Beachten Sie, daß es sich bei dieser Tabelle um eine Benutzertabelle und nicht um eine der privaten Tabellen handeln muß, die von Graphics Builder benutzt werden, wenn Sie ein Modul in die Datenbank speichern oder exportieren.
which_data	Gibt an, ob der zu erstellende Klang in der neuen oder alten Datengruppe einer Abfrage enthalten ist. Graphics Builder verfügt über zwei vordefinierte numerische Konstanten, die als Werte für dieses Attribut benutzt werden können: OG_Newdata   Bedeutet, daß der Klang in der neuen Datengruppe der Abfrage enthalten ist. OG_Olddata   Bedeutet, daß der Klang in der alten Datengruppe der Abfrage enthalten ist.
colname	Name der Abfragespalte, die die Klangdaten enthält. Der Klang, der erstellt wird, entspricht dem Klang in der Abfragezelle bei dem Schnittpunkt zwischen der Spalte, die mit diesem Attribut angegeben wird, und der Zeile, auf die der Cursor der Abfrage zeigt.

Rückgabewert  Handle zu dem neu erstellten Klang.


Beispiele für OG_Make_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a sound from data in the sixth
**row of the query 'sound_query' in the column SOUND_COLUMN:
*/

FUNCTION example(sound_name VARCHAR2) RETURN OG_Sound IS
  query  OG_Query;
  sound  OG_Sound;
BEGIN
  query := OG_Get_Query('Sound_Query');
  OG_Execute_Query(Query);
  OG_Start_From(Query, OG_Newdata, 5);
  sound := OG_Make_Sound(Query, OG_Newdata, 'SOUND_COLUMN');

  OG_Set_Name(Sound, sound_name);
  RETURN(sound);
END;


OG_Play_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur gibt den angegebenen Klang über das Klangausgabegerät wieder, das in Ihren Voreinstellungen angegeben wird.

Syntax

PROCEDURE OG_Play_Sound
  (sound_hdl  OG_Sound);

Parameter

sound_hdl	Handle zu dem wiederzugebenden Klang.


Beispiele für OG_Play_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to play a warning sound, to indicate
**low inventory or an illegal action by the user.
*/

PROCEDURE warning IS
   the_sound   OG_Sound;
BEGIN
   the_sound:=OG_Get_Sound('Warning_Snd');
   OG_Play_Sound(The_Sound);
END;


OG_Record_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zeigt das Dialogfeld Klänge an und ermöglicht dem Benutzer, einen neuen Klang aufzuzeichnen.

Syntax

PROCEDURE OG_Record_Sound
  (sound_hdl  OG_Sound);

Parameter

sound_hdl	Handle zu dem Klang.

Verwendungshinweise  Der neue Klang überschreibt den Klang, auf den sound_hdl zeigt. Außerdem muß sound_hdl auf einen Klang zeigen, der vorher entweder im Builder oder von den vordefinierten Funktionen OG_Import_Sound und OG_Make erstellt wurde.


Beispiele für OG_Record_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want the user to record a sound to be played as a warning
**when data changes.  You could write the following procedure:
*/

PROCEDURE record_warning IS
   warn_sound   OG_Sound;
BEGIN
   warn_sound:=OG_Get_Sound('Warning');
   IF not OG_Isnull(Warn_Sound) THEN
      OG_Record_Sound(Warn_Sound);
   END IF;
END;


OG_Stop_Sound

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bricht die Wiedergabe eines Klangs ab, der gerade abgespielt wird.

Syntax

PROCEDURE OG_Stop_Sound
  (sound_hdl   OG_Sound);

Parameter

sound_hdl	Handle zu dem Klang, dessen Wiedergabe gestoppt werden soll.


Beispiele für OG_Stop_Sound

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a button that the user
**can select to cancel a sound that is currently playing.
**The following button procedure does this:
*/

PROCEDURE OGBUTTONPROC0 (buttonobj IN OG_Object, hitobj IN OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
  sound  OG_Sound;
BEGIN
  sound := OG_Get_Sound('Alarm');
  OG_Stop_Sound(Sound);
END;


Vordefinierte Vorlagen-Prozeduren

OG_Clone (Vorlage)

OG_Delete_Ftemp

OG_Delete_Refline

OG_Destroy (Vorlage)

OG_Export_Template

OG_Get_Axis

OG_Get_Ftemp

OG_Get_Refline

OG_Get_Template

OG_Import_Template

OG_Insert_Ftemp

OG_Insert_Refline

OG_Make_Template


OG_Clone (Vorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine neue Diagrammvorlage, die identisch mit der angegebenen Vorlage ist.

Syntax

FUNCTION OG_Clone
  (template_hdl  OG_Template,
   name          VARCHAR2)
RETURN OG_Template;

Parameter

template_hdl	Handle zu der zu duplizierenden Diagrammvorlage.
name	Name, der der neuen Vorlage zugewiesen werden soll.

Rückgabewert  Handle zu der neu erstellten Vorlage.


Beispiele für OG_Clone (Vorlage)

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created  atemplate, and you want to create another
**identical template without having to again specify the same properties.
*/

PROCEDURE dup_template(old_template IN OG_Template) IS
   new_template   OG_Template;
BEGIN
   new_template:=OG_Clone(Old_Template);
END;


OG_Delete_Ftemp

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht eine oder mehrere Feldvorlagen aus der angegebenen Diagrammvorlage.

Syntax

PROCEDURE OG_Delete_Ftemp
  (template_hdl  OG_Template,
   indx          NUMBER,
   total         NUMBER);

Parameter

template_hdl	Handle zu der Diagrammvorlage.
indx	Index der ersten Feldvorlage, die aus der Liste mit Feldvorlagen für die Diagrammvorlage gelöscht werden soll.
total	Gesamtanzahl von zu löschenden Feldvorlagen.


Beispiele für OG_Delete_Ftemp

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure deletes a column from the template 'template0':
*/

PROCEDURE example(ft_num  NUMBER) IS
  template  OG_Template;
BEGIN
  template := OG_Get_Template('Template0');
  OG_Delete_Ftemp(Template, ft_num, 1);
END;


OG_Delete_Refline

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht eine oder mehrere Referenzlinien aus der angegebenen Diagrammvorlage.

Syntax

PROCEDURE OG_Delete_Refline
  (template_hdl  OG_Template,
   indx          NUMBER,
   total         NUMBER);

Parameter

template_hdl	Handle zu der Diagrammvorlage.
indx	Index der ersten Referenzlinie, die aus der Liste mit Referenzlinien für die Diagrammvorlage gelöscht werden soll.
total	Gesamtanzahl von zu löschenden Referenzlinien.


Beispiele für OG_Delete_Refline

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure deletes a reference line template 'template0':
*/

PROCEDURE example(rl_num  NUMBER) IS
  template  OG_Template;
BEGIN
  template := OG_Get_Template('Template0');
  OG_Delete_Refline(Template, rl_num, 1);
END;


OG_Destroy (Vorlage)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört die angegebene Diagrammvorlage.

Syntax

PROCEDURE OG_Destroy
  (template_hdl  OG_Template);

Parameter

template_hdl	Handle zu der zu zerstörenden Diagrammvorlage.


Beispiele für OG_Destroy (Vorlage)

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure destroys the specified template:
*/

PROCEDURE destroy_template(template_name VARCHAR2) IS
  template  OG_Template;
BEGIN
  template := OG_Get_Template(Template_Name);
  OG_Destroy(Template);
END;


OG_Export_Template

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert eine Diagrammvorlage.

Syntax

PROCEDURE OG_Export_Template
  (name          VARCHAR2,
   repository    NUMBER,
   template_hdl  OG_Template);

Parameter

name	Name, unter dem die Vorlage exportiert wird. Wenn die Vorlage in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen der Vorlage enthalten. Wenn die Vorlage im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der Vorlagendatei enthalten.
repository	Gibt an, ob die Vorlage im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Argumentes kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß die Vorlage in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die Vorlage im Dateisystem gespeichert werden soll.
tamplate_hdl	Handle zu der Vorlage, die exportiert wird.


Beispiele für OG_Export_Template

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to export the chart template named `template0'
**to the file `my_temp' so that you can later import it into some other
**Graphics Builder display.  The following procedure does this:
*/

PROCEDURE export_the_template IS
   the_temp   OG_Template;
BEGIN
   the_temp:=OG_Get_Template('Template0');
   OG_Export_Template('My_Temp', OG_Filesystem, the_temp);
END;


OG_Get_Axis

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu einer Achse in einer Diagrammvorlage zurück.

Syntax

FUNCTION OG_Get_Axis
  (template_hdl  OG_Template,
   which_axis    NUMBER)
RETURN OG_Axis;

Parameter

template_hdl	Handle zu der Diagrammvorlage, die die Achse enthält, deren Handle zurückgegeben werden soll.
which_axis	Gibt an, welche Achse zurückgegeben wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_X_Axis    OG_Y1_Axis    OG_Y2_Axis
Rückgabewert  Handle zu der angegebenen Achse. Wenn die angegebene Schaltflächenprozedur nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Axis

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns a handle to the specified template's X axis:
*/

FUNCTION example(template_name VARCHAR2) RETURN OG_Axis IS
  template  OG_Template;
  axis      OG_Axis;
BEGIN
  template := OG_Get_Template(Template_Name);
  axis := OG_Get_Axis(Template, OG_X_Axis);
  RETURN(axis);
END;


OG_Get_Ftemp

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu einer Feldvorlage innerhalb einer Diagrammvorlage zurück.

Syntax

FUNCTION OG_Get_Ftemp
  (template_hdl  OG_Template,
   indx          NUMBER)
RETURN OG_Ftemp;

Parameter

template_hdl	Handle zu der Diagrammvorlage, die die zurückzugebende Feldvorlage enthält.
indx	Index der zurückzugebenden Feldvorlage in der Liste mit Feldvorlagen.

Rückgabewert  Attribute der angegebenen Feldvorlage.


Beispiele für OG_Get_Ftemp

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the handle to the
**first field template in the specified chart template:
*/

FUNCTION example(temp_name VARCHAR2) RETURN OG_Ftemp IS
  template  OG_Template;
  ftemp   OG_Ftemp;
BEGIN
  template := OG_Get_Template(Temp_Name);
  ftemp := OG_Get_Ftemp(Template, 0);
  RETURN(ftemp);
END;


OG_Get_Refline

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu einer Referenzlinie in einer Diagrammvorlage zurück.

Syntax

FUNCTION OG_Get_Refline
  (template_hdl  OG_Template,
   indx          NUMBER)
RETURN OG_Refline;

Parameter

template_hdl	Handle zu der Diagrammvorlage, die die zurückzugebende Referenzlinie enthält.
indx	Index der zurückzugebenden Referenzlinie in der Liste mit Referenzlinien in der Diagrammvorlage.

Rückgabewert  Handle zu der angegebenen Referenzlinie.


Beispiele für OG_Get_Refline

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function returns the handle to the
**first reference line in the specified chart template:
*/

FUNCTION example(temp_name VARCHAR2) RETURN OG_Refline IS
  template  OG_Template;
  refline   OG_Refline;
BEGIN
  template := OG_Get_Template(Temp_Name);
  refline := OG_Get_Refline(Template, 0);
  RETURN(refline);
END;


OG_Get_Template

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu der angegebenen Vorlage zurück.

Syntax

FUNCTION OG_Get_Template
  (template_name  VARCHAR2)
RETURN OG_Template;

Parameter

template_name	Name der Diagrammvorlage, deren Handle zurückgegeben werden soll.

Rückgabewert  Handle zu der angegebenen Diagrammvorlage. Wenn die Vorlage nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Template

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a chart programmatically.  You would need to assign attribute values (including a template) to a chart combined attribute record, then pass that record to OG_Make.
*/

PROCEDURE create_emp_chart IS
   chart_rec      OG_Chart_Ca;
   the_template   OG_Template;
   the_query      OG_Query;
   the_chart      OG_Object;
BEGIN
   the_template:=OG_Get_Template('Emp_Template');
   the_query:=OG_Get_Query('Emp_Query');
   chart_rec.chart_caoc.template:=the_template;
   chart_rec.chart_caoc.query:=the_query;
   chart_rec.chart_caob.mask:=OG_None_Generica;
   chart_rec.chart_caog.mask:=OG_None_Groupa;
   chart_rec.chart_caoc.mask:=OG_Template_Charta+
                              OG_Query_Charta;
   the_chart:=OG_Make(Chart_Rec);
END;


OG_Import_Template

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur importiert eine Diagrammvorlage.

Syntax

FUNCTION OG_Import_Template
  (name           VARCHAR2,
   repository     NUMBER,
   template_name  VARCHAR2)
RETURN OG_Template;

Parameter

name	Name der Vorlage, wie gespeichert. Wenn die Vorlage in der Datenbank gespeichert wird, darf dieses Argument nur den Namen der Vorlage enthalten. Wenn die Vorlage im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der Vorlagendatei enthalten.
repository	Gibt an, ob die Vorlage im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Argumentes kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß die Vorlage in der Datenbank gespeichert ist. OG_Filesystem   Bedeutet, daß die Vorlage im Dateisystem gespeichert ist.
template_name	Name, den Graphics Builder der Vorlage zuweist. Wenn schon eine andere Vorlage mit diesem Namen vorhanden ist, ersetzt Graphics Builder sie durch die importierte Vorlage.

Rückgabewert  Handle zu der importierten Vorlage.


Beispiele für OG_Import_Template

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to import the chart template file `my_temp'
**into your display as the template named `template0'.
**The following procedure does this:
*/

PROCEDURE import_the_template IS
   the_temp   OG_Template;
BEGIN
   the_temp:=OG_Import_Template('My_Temp', OG_Filesystem,
'template0');
END;


OG_Insert_Ftemp

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt eine neue Feldvorlage in die angegebene Diagrammvorlage ein.

Syntax

PROCEDURE OG_Insert_Ftemp                    Kreis-/Tabellendiagramm
  (template_hdl  OG_Template,
   attr          OG_Ftemp_Attr,
   indx          NUMBER);

PROCEDURE OG_Insert_Ftemp                    Achsendiagramm
  (template_hdl  OG_Template,
   attr          OG_Axisftemp_Ca,
   indx          NUMBER);

Parameter

template_hdl	Handle zu der Diagrammvorlage.
attr	Datensatz, der die Attribute der Feldvorlage enthält.
indx	Index, bei dem die neue Feldvorlage in die Liste mit Feldvorlagen in der Diagrammvorlage eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von Feldvorlagen in der Diagrammvorlage vor dem Einfügenvorgang darstellt. Der Wert dieses Argumentes kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß die neue Feldvorlage am Anfang der Liste mit Feldvorlagen der Diagrammvorlage eingefügt wird (Index = 0). OG_Last   Bedeutet, daß das neue Feld am Ende der Liste mit Feldvorlagen der Diagrammvorlage eingefügt wird (Index = Anzahl von Feldvorlagen in der Diagrammvorlage vor dem Einfügenvorgang).


Beispiele für OG_Insert_Ftemp

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure inserts a new field
**template into the specified chart template.
*/

PROCEDURE example(template OG_Template) IS
  attr  OG_Axisftemp_Ca;
BEGIN
  attr.ca_aftemp.plottype := OG_Bar_Plottype;
  attr.ca_ftemp.name := 'column';
  attr.ca_aftemp.mask:= OG_Plottype_Axisftempa;
  attr.ca_ftemp.mask := OG_Name_Ftempa;

  OG_Insert_Ftemp(Template, attr, 0);
END;


OG_Insert_Refline

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt eine neue Referenzlinie in die angegebene Diagrammvorlage ein.

Syntax

PROCEDURE OG_Insert_Refline
  (template_hdl  OG_Template,
   attr          OG_Refline_Attr,
   indx          NUMBER);

Parameter

template_hdl	Handle zu der Diagrammvorlage.
attr	Datensatz, der die Attribute der Referenzlinie enthält.
indx	Index, bei dem die neue Referenzlinie in die Liste mit Referenzlinien der Diagrammvorlage eingefügt wird. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von Referenzlinien in der Diagrammvorlage vor dem Einfügenvorgang darstellt. Der Wert dieses Argumentes kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß die neue Referenzlinie am Anfang der Liste mit Referenzlinien der Diagrammvorlage eingefügt wird (Index = 0). OG_Last   Bedeutet, daß die neue Referenzlinie am Ende der Liste mit Referenzlinien der Diagrammvorlage eingefügt wird (Index = Anzahl von Referenzlinien in der Diagrammvorlage vor dem Einfügenvorgang).


Beispiele für OG_Insert_Refline

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure inserts a new refernce
**line into the specified chart template.
*/

PROCEDURE example(template OG_Template) IS
  attr  OG_Refline_Attr;
BEGIN
  attr.numvalue := 1000;
  attr.label := 'Average';
  attr.mask:= OG_Value_Reflinea+
              OG_Label_Reflinea;

  OG_Insert_Refline(Template, attr, 0);
END;


OG_Make_Template

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine Diagrammvorlage.

Syntax

FUNCTION OG_Make_Template
  (name        VARCHAR2,
   chart_type  NUMBER
RETURN OG_Template;

Parameter

name	Name der Vorlage.
chart_type	Diagrammtyp für die Vorlage. Dieser Wert kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Column OG_Column_Stacked OG_Column_Overlap OG_Column_Pct OG_Column_Zero OG_Column_Shadow OG_Column_3d OG_Column_Line OG_Bar OG_Bar_Stacked OG_Bar_Overlap OG_Bar_Pct OG_Bar_Zero OG_Bar_Shadow OG_Bar_3d OG_Bar_Line OG_Line OG_Line_Symbol OG_Line_Stacked OG_Line_Fill OG_Step OG_Step_Symbol OG_Step_Stacked OG_Step_Fill OG_Spline OG_Spline_Symbol OG_Spline_Stacked OG_Spline_Fill OG_Mixed_Line OG_Mixed_Fill OG_Mixed_Spline OG_Mixed_Spfill OG_Doubley_Column OG_Doubley_Overlap OG_Doubley_Line OG_Doubley_Symbol OG_Highlow_Symbol OG_Highlow_Spike OG_Highlow_Both OG_Highlow_Line OG_Highlow_Fill OG_Scatter_Symbol OG_Scatter_Curvefit OG_Scatter_Linear OG_Scatter_Log OG_Scatter_Loglog OG_Scatter_Connect OG_Gantt OG_Gantt_Shadow OG_Gantt_Depth OG_Pie OG_Pie_Shadow OG_Pie_Depth OG_Table OG_Table_Shadow OG_Table_Depth
Rückgabewert  Handle zu der neu erstellten Vorlage.


Beispiele für OG_Make_Template

  Alphabetic List         [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a column
**chart template with shadows on the bars:
*/

FUNCTION example RETURN OG_Template IS
  template  OG_Template;
BEGIN
  template := OG_Make_Template('Template0', OG_Column_Shadow);
  RETURN(template);
END;


 Vordefinierte Timer-Prozeduren

OG_Activate_Timer

OG_Deactivate_Timer

OG_Destroy (Timer)

OG_Get_Timer

OG_Make_Timer


OG_Activate_Timer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur aktiviert den angegebenen Timer.

Syntax

PROCEDURE OG_Activate_Timer
  (timer_hdl  OG_Timer);

Parameter

timer_hdl	Handle zu dem zu aktivierenden Timer.

Verwendungshinweise  Beachten Sie, daß alle Timer standardmäßig aktiviert werden, wenn eine grafische Anwendung geöffnet wird. Sie müssen einen Timer nur aktivieren, wenn Sie ihn ausdrücklich mit der Prozedur OG_Deactivate_Timer deaktiviert haben.


Beispiele für OG_Activate_Timer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created timers to update all of your charts
**every 30 seconds, and that you have deactivated the timers
**for charts that are not displayed.  When you display a chart,
**however, you want to re-activate its timer.
*/

PROCEDURE activate_emp_timer IS
   my_timer   OG_Timer;
BEGIN
   my_timer:=OG_Get_Timer('Emp_Timer');
   OG_Activate_Timer(My_Timer);
END;


OG_Deactivate_Timer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur deaktiviert den angegebenen Timer.

Syntax

PROCEDURE OG_Deactivate_Timer
  (timer_hdl  OG_Timer);

Parameter

timer_hdl	Handle zu dem Timer.

Verwendungshinweise  Beachten Sie, daß beim Öffnen einer grafischen Anwendung alle Timer automatisch aktiviert werden. Wenn ein Timer inaktiv sein soll, müssen Sie ihn ausdrücklich mit dieser Prozedur deaktivieren. Es ist häufig sinnvoll, Timer zu deaktivieren, wenn sie für den angezeigten Teil der grafischen Anwendung nicht erforderlich sind. Das System verschwendet dann keine Zeit mit der Verarbeitung irrelevanter Timer.


Beispiele für OG_Deactivate_Timer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created timers to update all of your
**charts every 30 seconds, and that you have deactivated
**the timers for charts that are not displayed.
*/

PROCEDURE deactivate_emp_timer IS
   my_timer   OG_Timer;
BEGIN
   my_timer:=OG_Get_Timer('Emp_Timer');
   OG_Deactivate_Timer(My_Timer);
END;


OG_Destroy (Timer)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört den angegebenen Timer.

Syntax

PROCEDURE OG_Destroy
  (timer_hdl  OG_Timer);

Parameter

timer_hdl	Handle zu dem zu zerstörenden Timer.


Beispiele für OG_Destroy (Timer)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure destroys the specified timer:
*/

PROCEDURE destroy_timer(timer_name VARCHAR2) IS
  timer  OG_Timer;
BEGIN
  timer := OG_Get_Timer(Timer_Name);
  OG_Destroy(Timer);
END;


OG_Get_Timer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu dem angegebenen Timer zurück.

Syntax

FUNCTION OG_Get_Timer
  (timer_name  VARCHAR2)
RETURN OG_Timer;

Parameter

timer_name	Name des Timers, dessen Handle zurückgegeben wird.

Rückgabewert  Handle zu dem angegebenen Timer. Wenn der Timer nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.


Beispiele für OG_Get_Timer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created timers to update all of your
**charts every 30 seconds, and that you have deactivated
**the timers for charts that are not displayed.  When you
**display a chart, however, you want to re-activate its timer.
*/

PROCEDURE activate_emp_timer IS
   my_timer   OG_Timer;
BEGIN
   my_timer:=OG_Get_Timer('Emp_Timer');
   OG_Activate_Timer(My_Timer);
END;


OG_Make_Timer

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt einen Timer.

Syntax

FUNCTION OG_Make_Timer
  (interval   OG_Point,
   timerproc  VARCHAR2
RETURN OG_Timer;

Parameter

interval	Intervall (in Sekunden), mit dem der Timer ausgelöst wird.
timerproc	Name der Prozedur, die bei dem angegebenen Intervall ausgeführt werden soll.

Rückgabewert  Handle zu dem neu erstellten Timer.


Beispiele für OG_Make_Timer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a timer that executes
**the procedure 'update_proc' every 30 seconds.
*/

PROCEDURE example(timer_name VARCHAR2) IS
  timer  OG_Timer;
BEGIN
  timer := OG_Make_Timer(30, 'update_proc');
  OG_Set_Name(Timer, timer_name);
END;


Vordefinierte TOOLS_INT-Prozeduren

Tool_Int.Add_Parameter

Tool_Int.Create_Parameter_List

Tool_Int.Delete_Parameter

Tool_Int.Destroy_Parameter_List

Tool_Int.Get_Parameter_Attr

Tool_Int.Get_Parameter_List

Tool_Int.Isnull

Tool_Int.Run_Product

Tool_Int.Set_Parameter_Attr


TOOL_INT.ADD_PARAMETER

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt einen Parameter zu der angegebenen Parameterliste hinzu.

Syntax

PROCEDURE TOOL_INT.add_parameter
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   attr        TOOL_INT.PARAM_ATTR);

PROCEDURE TOOL_INT.add_parameter
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   attr        TOOL_INT.PARAM_ATTR);

PROCEDURE TOOL_INT.add_parameter
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   param_type  NUMBER,
   value       CHAR);

Parameter

list_hdl	Handle zu der Parameterliste.
param_name	Name des hinzuzufügenden Parameters.
attr	Parameter-Attributsatz, der Typ und Wert des hinzuzufügenden Parameters enthält.
param_type	Typ des hinzuzufügenden Parameters. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.DATA_PARAMETER   Bedeutet, daß der Parameter eine Zuordnung einer Abfrage von einem Produkt zu dem anderen darstellt. TOOL_INT.TEXT_PARAMETER   Bedeutet, daß der Parameter ein einzelner Wert ist.
value	Wert des hinzuzufügenden Parameters.

Verwendungshinweise  Sie können entweder einen Parameter-Attributsatz angeben, der den Parameter-Typ und -Wert enthält, oder können den Typ und Wert direkt in diesem Prozeduraufruf angeben.


Beispiele für Tool_Int.Add_Parameter

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a parameter list and
**adds several parameters to it:
*/

PROCEDURE create_plist IS
  the_list  tool_int.paramlist;
BEGIN
  the_list:=tool_int.create_parameter_list('my_plist');
  tool_int.add_parameter(the_list, 'userid',
    TOOL_INT.TEXT_PARAMETER, 'scott/tiger');
  tool_int.add_parameter(the_list, 'destype',
    TOOL_INT.TEXT_PARAMETER, 'printer');
  tool_int.add_parameter(the_list, 'copies',
    TOOL_INT.TEXT_PARAMETER, '2');
  tool_int.add_parameter(the_list, 'my_param',
    TOOL_INT.TEXT_PARAMETER, '67');
  tool_int.add_parameter(the_list, 'Q_1',
    TOOL_INT.DATA_PARAMETER, 'query0');
END;


TOOL_INT.CREATE_PARAMETER_LIST

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine neue Parameterliste mit dem angegebenen Namen.

Syntax

FUNCTION TOOL_INT.create_parameter_list
  (name  CHAR)
RETURN TOOL_INT.PARAMLIST;

Parameter

name	Name der zu erstellenden Parameterliste.

Rückgabewert  Handle zu der neu erstellten Parameterliste.


Beispiele für Tool_Int.Create_Parameter_List

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a parameter list and
**adds several parameters to it:
*/

PROCEDURE create_plist IS
  the_list  tool_int.paramlist;
BEGIN
  the_list:=tool_int.create_parameter_list('my_plist');
  tool_int.add_parameter(the_list, 'userid',
    TOOL_INT.TEXT_PARAMETER, 'scott/tiger');
  tool_int.add_parameter(the_list, 'destype',
    TOOL_INT.TEXT_PARAMETER, 'printer');
  tool_int.add_parameter(the_list, 'copies',
    TOOL_INT.TEXT_PARAMETER, '2');
  tool_int.add_parameter(the_list, 'my_param',
    TOOL_INT.TEXT_PARAMETER, '67');
  tool_int.add_parameter(the_list, 'Q_1',
    TOOL_INT.DATA_PARAMETER, 'query0');
END;


TOOL_INT.DELETE_PARAMETER

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht den angegebenen Parameter aus der angegebenen Parameterliste.

Syntax

PROCEDURE TOOL_INT.delete_parameter
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR);

Parameter

list_hdl	Handle zu der Parameterliste, aus der der Parameter gelöscht werden soll.
param_name	Name des zu löschenden Parameters.


Beispiele für Tool_Int.Delete_Parameter

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure deletes the parameter 'username' from a parameter list:
*/

PROCEDURE example IS
  list  tool_int.paramlist;
BEGIN
  list := tool_int.get_parameter_list('list0');
  tool_int.delete_parameter(list, 'username');
END;


TOOL_INT.DESTROY_PARAMETER_LIST

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört die angegebene Parameterliste.

Syntax

PROCEDURE TOOL_INT.destroy_parameter_list
  (list_hdl  TOOL_INT.PARAMLIST);

Parameter

list_hdl	Handle zu der zu zerstörenden Parameterliste.


Beispiele für Tool_Int.Destroy_Parameter_List

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a parameter list,
**first destroying an existing list (if any):
*/

PROCEDURE example IS
  list  tool_int.paramlist;
BEGIN
  list := tool_int.get_parameter_list('list0');

  IF NOT tool_int.isnull(list) THEN
    tool_int.destroy_parameter_list(list);
  END IF;

  list := tool_int.create_parameter_list('list0');
END;


TOOL_INT.GET_PARAMETER_ATTR

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attribute des angegebenen Parameters in der angegebenen Parameterliste ein.

Syntax

PROCEDURE TOOL_INT.get_parameter_attr
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   attr        TOOL_INT.PARAM_ATTR);

PROCEDURE TOOL_INT.get_parameter_attr
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   param_type  NUMBER,
   value       CHAR);

Parameter

list_hdl	Handle zu der Parameterliste, aus der der Parameter eingelesen werden soll.
param_name	Name des einzulesenden Parameters.
attr	Attributsatz, der auf die Parameterattribute eingestellt werden soll.
param_type	Variable, auf die diese Prozedur eingestellt wird, um bei dem Aufruf dem Parametertyp zu entsprechen. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.DATA_PARAMETER   Bedeutet, daß der Parameter eine Zuordnung einer Abfrage von einem Produkt zu dem anderen darstellt. TOOL_INT.TEXT_PARAMETER   Bedeutet, daß der Parameter ein einzelner Wert ist.
value	Eine Variable, auf die diese Prozedur eingestellt wird, um beim Aufruf dem Parameterwert zu entsprechen.

Verwendungshinweise  Sie können entweder einen Parammeter-Attributsatz angeben, den diese Prozedur auf die Parameterattribute einstellt, oder können separate Variablen angeben, die eingestellt werden.


Beispiele für Tool_Int.Get_Parameter_Attr

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the 'priority' parameter,
**and increases its value by one:
*/

PROCEDURE example IS
  list    tool_int.paramlist;
  ptype   NUMBER;
  pvalue  VARCHAR2;
BEGIN
  list := tool_int.get_parameter_list('list0');
  tool_int.get_parameter_attr(list, 'priority', ptype,
    pvalue);

  pvalue := to_char(to_number(pvalue) + 1);

  tool_int.set_parameter_attr(list, 'priority',
    tool_int.TEXT_PARAMETER, pvalue);

END;


TOOL_INT.GET_PARAMETER_LIST

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt das Handle zu der Parameterliste mit dem angegebenen Namen zurück.

Syntax

FUNCTION TOOL_INT.get_parameter_list
  (list_name  CHAR)
RETURN TOOL_INT.paramlist;

Parameter

list_name	Name der einzulesenden Parameterliste.

Rückgabewert  Handle zu der benannten Parameterliste.


Beispiele für Tool_Int.Get_Parameter_List

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a parameter list,
**first destroying an existing list (if any):
*/

PROCEDURE example IS
  list  tool_int.paramlist;
BEGIN
  list := tool_int.get_parameter_list('list0');

  IF NOT tool_int.isnull(list) THEN
    tool_int.destroy_parameter_list(list);
  END IF;

  list := tool_int.create_parameter_list('list0');
END;


TOOL_INT.ISNULL

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt, ob das angegebene Handle einer Parameterliste ein Null-Handle ist.

Syntax

FUNCTION TOOL_INT.isnull
  (list_hdl  TOOL_INT.PARAMLIST)
RETURN BOOLEAN;

Parameter

list_hdl	Auszuwertendes Handle.
Rückgabewert TRUE	Wenn das Handle null ist.
FALSE	Wenn das Handle nicht null ist.

Verwendungshinweise  TOOL_INT.GET_PARAMETER_LIST gibt ein Null-Handle zurück, wenn die Parameterliste, die eingelesen werden soll, nicht vorhanden ist.


Beispiele für Tool_Int.Isnull

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure creates a parameter list,
**first destroying an existing list (if any):
*/

PROCEDURE example IS
  list  tool_int.paramlist;
BEGIN
  list := tool_int.get_parameter_list('list0');

  IF NOT tool_int.isnull(list) THEN
    tool_int.destroy_parameter_list(list);
  END IF;

  list := tool_int.create_parameter_list('list0');
END;


TOOL_INT.RUN_PRODUCT

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur ruft ein anderes unterstütztes Oracle-Produkt auf.

Syntax

PROCEDURE TOOL_INT.run_product
  (product     NUMBER,
   module      CHAR,
   comm_mode   NUMBER,
   exec_mode   NUMBER,
   repository  NUMBER,
   list_hdl    TOOL_INT.PARAMLIST);

PROCEDURE TOOL_INT.run_product
  (product     NUMBER,
   module      CHAR,
   comm_mode   NUMBER,
   exec_mode   NUMBER,
   repository  NUMBER,
   list_name   CHAR);

Parameter

product	Das Oracle-Produkt, das aufgerufen wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  TOOL_INT.BOOK   Bedeutet, daß Oracle Book aufgerufen wird. TOOL_INT.FORMS   Bedeutet, daß Forms aufgerufen wird. TOOL_INT.REPORTS   Bedeutet, daß Reports aufgerufen wird.
module	Name des Moduls, das von dem aufgerufenen Produkt ausgeführt werden soll. Wenn das Modul in der Datenbank gespeichert ist, darf dieses Argument nur den Namen des Moduls enthalten. Wenn das Modul im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der Moduldatei enthalten.
comm_mode	Kommunikationsmodus, in dem das Produkt aufgerufen wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  TOOL_INT.SYNCHRONOUS   Bedeutet, daß das Produkt synchron aufgerufen wird. TOOL_INT.ASYNCHRONOUS   Bedeutet, daß das Produkt asynchron aufgerufen wird.
exec_mode	Ausführungsmodus für das aufgerufene Produkt. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.BATCH   Bedeutet, daß das Produkt im Stapelmodus aufgerufen wird. TOOL_INT.RUNTIME   Bedeutet, daß das Produkt im Laufzeitmodus aufgerufen wird.
repository	Gibt an, ob das Modul im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.DB   Bedeutet, daß das Modul in der Datenbank gespeichert ist. TOOL_INT.FILESYSTEM   Bedeutet, daß das Modul im Dateisystem gespeichert ist.
list_hdl	Handle zu der Parameterliste, die an das aufgerufene Produkt übergeben werden soll.
list_name	Name der Parameterliste, die an das aufgerufene Produkt übergeben werden soll.

Verwendungshinweise  Weitere Informationen finden Sie in der Oracle-Produktdokumentation.


Beispiele für Tool_Int.Run_Product

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure opens the Oracle Book document named
**`catalog' and jumps to the hypertext target sailboard:
*/

PROCEDURE call_book is
  list  tool_int.paramlist;
BEGIN
  list:=tool_int.create_parameter_list('plist');

  tool_int.add_parameter(list, 'target',
    tool_int.TEXT_PARAMETER, 'sailboard');

  tool_int.RUN_PRODUCT(tool_int.BOOK, 'catalog',
    tool_int.ASYNCHRONOUS, tool_int.RUNTIME,
    tool_int.FILESYSTEM, list);

END;


TOOL_INT.SET_PARAMETER_ATTR

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Attribute des angegebenen Parameters in der angegebenen Parameterliste.

Syntax

PROCEDURE TOOL_INT.set_parameter_attr
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   attr        TOOL_INT.PARAM_ATTR);

PROCEDURE TOOL_INT.set_parameter_attr
  (list_hdl    TOOL_INT.PARAMLIST,
   param_name  CHAR,
   param_type  NUMBER,
   value       CHAR);

Parameter

list_hdl	Handle zu der Parameterliste, die den Parameter enthält.
param_name	Name des einzustellenden Parameters.
attr	Attributsatz, der die einzustellenden Attribute des Parameters enthält.
param_type	Typ, auf den der Parameter eingestellt werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: TOOL_INT.DATA_PARAMETER   Bedeutet, daß der Parameter eine Zuordnung einer Abfrage von einem Produkt zu dem anderen darstellt. TOOL_INT.TEXT_PARAMETER   Bedeutet, daß es sich bei dem Parameter um einen einzelnen Wert handelt.
value	Wert, auf den der Parameter eingestellt werden soll.

Verwendungshinweise  Sie können entweder einen Parameter-Attributsatz angeben, den diese Prozedur benutzt, um die Attribute des Parameters einzustellen. Sie können aber auch separate Variablen angeben, die die einzustellenden Attribute enthalten.


Beispiele für Tool_Int.Set_Parameter_Attr

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the value of the 'priority'
**parameter, and increases its value by one:
*/

PROCEDURE example IS
  list    tool_int.paramlist;
  ptype   NUMBER;
  pvalue  VARCHAR2;
BEGIN
  list := tool_int.get_parameter_list('list0');
  tool_int.get_parameter_attr(list, 'priority', ptype,
    pvalue);

  pvalue := to_char(to_number(pvalue) + 1);

  tool_int.set_parameter_attr(list, 'priority',
    tool_int.TEXT_PARAMETER, pvalue);

END;


Vordefinierte Fenster-Prozeduren

OG_Destroy (Fenster)

OG_Get_Window

OG_Hide_Window

OG_Make_Window

OG_Show_Window


OG_Destroy (Fenster)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört das angegebene Fenster. Durch das Zerstören eines Fensters wird dieses geschlossen, sein Inhalt ist davon jedoch nicht betroffen.

Syntax

PROCEDURE OG_Destroy
  (window_hdl  OG_Window);

Parameter

window_hdl	Handle zu dem zu zerstörenden Fenster.


Beispiele für OG_Destroy (Fenster)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose a user selects a country in a map of the world,
**and the application creates a new window to display
**information about sales in that country.  When the user selects
**another country, you may want to destroy the old window
**and create another one containing information about the new country.
*/

PROCEDURE destroy_USA IS
   the_window   OG_Window;
BEGIN
   the_window:=OG_Get_Window('Usa_Window');
   OG_Destroy(The_Window);
END;


OG_Get_Window

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu dem angegebenen Fenster zurück.

Syntax

FUNCTION OG_Get_Window
  (window_name  VARCHAR2)
RETURN OG_Window;

Parameter

window_name	Name des Fensters, dessen Handle zurückgegeben werden soll.

Rückgabewert  Handle zu dem angegebenen Fenster. Wenn das Fenster nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.

Verwendungshinweise  Das Fenster kann das Hauptfenster für die grafische Anwendung (mit der Bezeichnung "Haupt-Layout") oder ein Fenster sein, das programmgesteuert erstellt wurde.


Beispiele für OG_Get_Window

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the main window-which was previously hidden-contains information
**that is now useful to view.  The following procedure will show it:
*/

PROCEDURE show_main_window IS
   the_main_window   OG_Window;
BEGIN
   the_main_window:=OG_Get_Window('Main Layout');
   OG_Show_Window(The_Main_Window);
END;


OG_Hide_Window

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur verbirgt das angegebene Fenster.

Syntax

PROCEDURE OG_Hide_Window
  (window_hdl  OG_Window);

Parameter

window_hdl	Handle zu dem Fenster, das verborgen werden soll.

Verwendungshinweise  Beachten Sie, daß das Fenster nicht zerstört wird. Somit können Sie also das Fenster verbergen, wenn der Inhalt nicht erforderlich ist, und es dann wieder anzeigen, wenn der Inhalt benötigt wird.


Beispiele für OG_Hide_Window

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the main layout window contains a chart that the user
**no longer needs to see.  The following procedure will hide it temporarily.
**Remember that this does not destroy the window; it will still exist
**and be available to be shown again when needed.
*/

PROCEDURE hide_main_window IS
   the_main_window   OG_Window;
BEGIN
   the_main_window:=OG_Get_Window('Main Layout');
   OG_Hide_Window(The_Main_Window);
END;


OG_Make_Window

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Fenster.

Syntax

FUNCTION OG_Make_Window
  (position  OG_Point,
   height    NUMBER,
   width     NUMBER)
RETURN OG_Window;

Parameter

position	x- und y-Koordinaten der oberen linken Ecke des Fensters (in Bildschirmauflösungseinheiten).
height	Höhe des Fensters (in Bildschirmauflösungseinheiten).
width	Breite des Fensters (in Bildschirmauflösungseinheiten).

Rückgabewert  Handle zu dem neu erstellten Fenster.


Beispiele für OG_Make_Window

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a 5"x4" window
**in the upper left corner of the screen:
*/

FUNCTION example(window_name VARCHAR2) RETURN OG_Window IS
  window  OG_Window;
  pos     OG_Point;
  height  NUMBER;
  width   NUMBER;
BEGIN
  pos.x := 0;
  pos.y := 0;
  width := 5 * OG_Get_Ap_Hscreen_Res;
  height := 4 * OG_Get_Ap_Vscreen_Res;

  window := OG_Make_Window(Pos, height, width);
  OG_Set_Name(Window, window_name);
  RETURN(window);
END;


OG_Show_Window

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zeigt das angegebene Fenster an.

Syntax

PROCEDURE OG_Show_Window
  (window_hdl  OG_Window);

Parameter

window_hdl	Handle zu dem Fenster, das angezeigt werden soll.


Beispiele für OG_Show_Window

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose the main window-which was previously hidden
**contains information that is now useful to view.
**The following procedure will show it.
*/

PROCEDURE show_main_window IS
   the_main_window   OG_Window;
BEGIN
   the_main_window:=OG_Get_Window('Main Layout');
   OG_Show_Window(The_Main_Window);
END;


Vordefinierte Prozeduren für Grafikobjekte

OG_Clone (Objekt)

OG_Damage (Objekt)

OG_Delete_Child

OG_Delete_Cmptext

OG_Delete_Point

OG_Delete_Property

OG_Delete_Smptext

OG_Destroy (Objekt)

OG_Draw

OG_Export_Drawing (Grafische Anwendung)

OG_Export_Drawing (Objekt/Ebene)

OG_Export_Drawing (Fenster)

OG_Export_Image

OG_Get_Char_Property

OG_Get_Child

OG_Get_Cmptext

OG_Get_Date_Property

OG_Get_Num_Property

OG_Get_Object

OG_Get_Point

OG_Get_Smptext

OG_Import_Drawing

OG_Import_Image

OG_Insert_Child

OG_Insert_Cmptext

OG_Insert_Point

OG_Insert_Smptext

OG_Make_Ellipse

OG_Make_Group

OG_Make_Image

OG_Make_Line

OG_Make_Poly

OG_Make_Rect

OG_Make_Rrect

OG_Make_Symbol

OG_Make_Text

OG_Move

OG_Point_In

OG_Point_Near

OG_Property_Exists

OG_Rotate

OG_Same

OG_Scale

OG_Set_Edgecolor

OG_Set_Fillcolor

OG_Set_Property

OG_Synchronize

OG_Update_Bbox


OG_Clone (Objekt)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein neues Objekt, das identisch mit dem angegebenen Objekt ist.

Syntax

FUNCTION OG_Clone
  (object_hdl   OG_Object,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE)
RETURN OG_Object;

Parameter

object_hdl	Handle zu dem zu duplizierenden Objekt.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Rückgabewert  Handle zu dem neu erstellten Objekt.


Beispiele für OG_Clone (Objekt)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created an object, and you want to
** create another identical object without having to
**again specify the same properties.
*/

PROCEDURE dup_object(old_object IN OG_Object) IS
   new_object   OG_Object;
BEGIN
   new_object:=OG_Clone(Old_Object);
END;


OG_Damage (Objekt)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur verändert ein Objekt im Layout.

Syntax

PROCEDURE OG_Damage
  (object_hdl  OG_Object);

Parameter

object_hdl	Handle zu dem zu verändernden Objekt.


Beispiele für OG_Damage (Objekt)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose you want to move an object.  The default behavior of the built-in
**procedure OG_Move is to update the bounding boxes of all of the modified
**object's antecedants, including the layer on which the object resides.
**To update a layer's bounding boxes, Graphics Builder must examine every object
**on that layer.  If the layer contains a large number of objects,
**this operation can be very time-consuming.
*/

 /*To make your application more efficient, you can move the object
**while inhibiting this automatic bounding box update, then explicitly
**update only that object's bounding boxes.  (Note that since the
**automatic bounding box update does not occur, the bounding boxes
**of the object's antecedants may be inaccurate.)
*/

 /*When you modify an object with a FALSE bounding box update flag,
**you may also want to use a FALSE damage flag.  In this case,
**when you are through modifying the object, you would invoke
**OG_Damage to explicitly damage the object.
*/

PROCEDURE move_efficiently (the_object OG_Object) IS
   offset   OG_Point;
BEGIN
   offset.x:=OG_Inch;
   offset.y:=OG_Inch;
   OG_Move(The_Object, offset, FALSE, FALSE)
   OG_Update_Bbox(The_Object, OG_Bothbbox);
   OG_Damage(The_Object);
END;


OG_Delete_Child

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht ein oder mehrere untergeordnete Objekte aus dem angegebenen Gruppenobjekt.

Syntax

PROCEDURE OG_Delete_Child
  (group_hdl    OG_Object,
   indx         NUMBER,
   total        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

group_hdl	Handle zu dem Gruppenobjekt.
indx	Index des ersten Objekts, das aus der Liste mit untergeordneten Objekten der Gruppe gelöscht werden soll.
total	Gesamtanzahl von zu löschenden untergeordneten Objekten.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn ein untergeordnetes Objekt gelöscht wird, bedeutet dies nur, daß das Objekt nicht mehr mit der übergeordneten Gruppe verknüpft ist. Es bedeutet nicht, daß das untergeordnete Objekt zerstört wird. Das Attribut für das übergeordnete Objekt in dem Attributsatz für das gelöschte untergeordnete Objekt wird auf ein Null-Handle gesetzt, und das untergeordnete Objekt ist nicht mehr in der Objektliste der Gruppe vorhanden. Beachten Sie, daß ein Objekt, das ein Null-Handle für ein übergeordnetes Objekt enthält, nicht in dem Layout angezeigt wird.

Sie können eine Ebene löschen, indem Sie das Hauptobjekt der grafischen Anwendung als Gruppe behandeln und dieses sowie den Ebenenindex an diese Prozedur übergeben.


Beispiele für OG_Delete_Child

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose you have a several objects representing products
**in a warehouse, and you want to move one of the products
**from one warehouse to another.  Your display may use a group
**comprised of the products to represent the inventory for each
**warehouse.  To move a product from one warehouse to another,
**you would want to get the handle to the product object,
**delete it from one warehouse group, and add it to another
**warehouse group.
*/

 /*Note that this procedure changes only the internal composition
**of the group objects.  To move or change the appearance of the
**product object, you must use other Graphics Builder built-in procedures.
*/

PROCEDURE move_prod(warehouse1 IN OG_Object, warehouse2 IN
OG_Object, prod_index IN number) IS
   the_prod   OG_Object;
BEGIN
   the_prod:=OG_Get_Child(Warehouse1, prod_index);
   OG_Delete_Child(Warehouse1, prod_index, 1);
   OG_Insert_Child(Warehouse2, the_prod, OG_Last);
END;


OG_Delete_Cmptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht ein oder mehrere zusammengesetzte Textelemente aus dem angegebenen Textobjekt. Wie unter "Textattribute" beschrieben, stellt ein zusammengesetztes Textelement eine Textzeile in einem Textobjekt dar.

Syntax

PROCEDURE OG_Delete_Cmptext
  (text_hdl     OG_Object,
   indx         NUMBER,
   total        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text_hdl	Handle zu dem Textobjekt.
indx	Index innerhalb des Textobjekts des ersten zusammengesetzten Textelements, das aus der Liste mit zusammengesetzten Textelementen gelöscht werden soll.
total	Gesamtanzahl von zu löschenden zusammengesetzten Textelementen.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn Sie ein zusammengesetztes Textelement löschen, werden dieses Textelement und alle einfachen Textelemente, aus denen es besteht, zerstört.


Beispiele für OG_Delete_Cmptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose you use a text object to display messages to the user.
**A previous part of your application produced two-line messages,
**but the part of the display that is currently being used produces
**only one-line messages.  You may want to delete the extraneous
**compound text element.
*/

PROCEDURE delete_msg_line(msg_object IN OG_Object,
line_index IN number) IS
BEGIN
   OG_Delete_Cmptext(Msg_Object, line_index, 1);
END;


OG_Delete_Point

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht einen oder mehrere Punkte aus dem angegebenen Polygon- oder Polygonzugobjekt.

Syntax

PROCEDURE OG_Delete_Point
  (poly_hdl     OG_Object,
   indx         NUMBER,
   total        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

poly_hdl	Handle zu dem Polygon- oder Polygonzugobjekt.
indx	Index des ersten zu löschenden Punktes aus der Punkteliste.
total	Gesamtanzahl von zu löschenden Punkten.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn das Objekt im Builder erstellt wurde, entsprechen die anfänglichen Indexwerte für die Punkte der Reihenfolge, in der beim Zeichnen des Objekts mit der Maus geklickt wurde (wobei der erste Punkt einen Index 0 hat). Indexwerte für Punkte, die programmgesteuert eingefügt wurden, hängen von dem Index ab, der beim Einfügen angegeben wurde.


Beispiele für OG_Delete_Point

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*Suppose you have several polygons on a map, each of which
**connects the cities along a specific distribution route.
**If a city is transferred from one distribution route to another,
**you would want to get the point representing that city,
**delete it from one polygon, and add it to another polygon.
*/

PROCEDURE move_city(route1 IN OG_Object, route2 IN
OG_Object, city_index IN number) IS
   the_city   OG_Point;
BEGIN
   the_city:=OG_Get_Point(Route1, city_index);
   OG_Delete_Point(Route1, city_index, 1);
   OG_Insert_Point(Route2, OG_Last, the_city);
END;


OG_Delete_Property

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht ein benutzerdefiniertes Attribut eines Objekts.

Syntax

PROCEDURE OG_Delete_Property
  (object_hdl  OG_Object,
   prop_name   VARCHAR2);

Parameter

object_hdl	Handle zu dem Objekt, dessen Attribut gelöscht werden soll.
prop_name	Name des zu löschenden Attributs.


Beispiele für OG_Delete_Property

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure deletes the property 'priority'
** from every child object in a named group:
*/

PROCEDURE example(group_name VARCHAR2) IS
  group_obj    OG_Object;
  child_count  NUMBER;
  child_obj    OG_Object;
BEGIN
  group_obj := OG_Get_Object(Group_Name);
  child_count := OG_Get_Childcount(Group_Obj);

  FOR i IN 0..child_count LOOP
    child_obj := OG_Get_Child(Group_Obj, i);
    OG_Delete_Property(Child_Obj, 'priority');
  END LOOP;
END;


OG_Delete_Smptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur löscht ein oder mehrere einfache Textelemente aus dem angegebenen zusammengesetzten Textelement in dem angegebenen Textobjekt. Wie unter "Textattribute" beschrieben, stellt ein einfaches Textelement eine Textfolge in einem zusammengesetzten Textelement dar.

Syntax

PROCEDURE OG_Delete_Smptext
  (text_hdl     OG_Object,
   cmpindex     NUMBER,
   smpindex     NUMBER,
   total        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text_hdl	Handle zu dem Textobjekt.
Cmpindex	Index des zusammengesetzten Textelements, das das bzw. die zu löschenden Textelemente enthält.
smpindex	Index des ersten zu löschenden einfachen Textelements
total	Gesamtanzahl von zu löschenden einfachen Textelementen.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Das Löschen von einfachem Text wirkt sich nicht auf das Vorhandensein bzw. den Index des zusammengesetzten Textelements aus. In Wirklichkeit können alle einfachen Textelemente für ein zusammengesetztes Textelement gelöscht werden, so daß nur ein leeres zusammengesetztes Textelement übrig bleibt.


Beispiele für OG_Delete_Smptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*Suppose you have created a message text object.  To change
**the message it contains, you would delete the simple text element
**containing the current message and insert a new simple text element
**containing the new message.  To maintain the font and other attributes,
**however, you first would want to get the simple text element into an
**attribute record.  That way, you could modify only the text string,
**and leave the other attribute settings (such as font) unchanged.
*/

PROCEDURE put_msg(mess IN VARCHAR2) IS
  msgobj    OG_Object;
  msgrec    OG_Smptext_Attr;
BEGIN
  msgobj := OG_Get_Object(’msg’);
  OG_Get_Smptext(msgobj, 0, 0, msgrec);
  OG_Delete_Smptext(msgobj, 0, 0, 1);
  msgrec.mask:= OG_STR_SMPTEXTA;
  msgrec.str:= mess;
  OG_Insert_Smptext(msgobj, msgrec, 0, OG_LAST);
END;


OG_Destroy (Objekt)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur zerstört das angegebene Objekt. Wenn Sie ein Gruppenobjekt zerstören, werden alle untergeordneten Objekte dieser Gruppe ebenfalls zerstört.

Syntax

PROCEDURE OG_Destroy
  (object_hdl   OG_Object,
   recurse      BOOLEAN    :=  FALSE,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object_hdl	Handle zu dem zu zerstörenden Objekt.
recurse	Marke für das rekursive Zerstören. Dieses Argument ist optional. Sein Wert ist standardmäßig FALSE, wenn keine anderen Angaben gemacht werden. Außerdem wird dieses Argument ignoriert, wenn das zu zerstörende Objekt nicht das einzige untergeordnete Objekt einer Gruppe ist.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn das Objekt, das Sie zerstören, das einzige untergeordnete Objekt einer Gruppe ist, gibt ein recurse-Wert von TRUE an, daß diese übergeordnete Gruppe ebenfalls zerstört werden soll. Diese Aktion wird in der Gruppenstruktur des Objekts nach oben fortgesetzt (d.h. wenn die übergeordnete Gruppe des Objekts das einzige untergeordnete Objekt der wiederum übergeordneten Gruppe ist, wird diese übergeordnete Gruppe ebenfalls zerstört usw.). Wenn das letzte Objekt in einer Ebene zerstört wurde, wird die Ebene selbst schließlich ebenfalls zerstört (es sei denn, sie ist in einem Fenster aktiv).

Wenn recurse FALSE ist, wird nur das mit object_hdl angegebene Objekt zerstört.


Beispiele für OG_Destroy (Objekt)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure destroys the specified object:
*/

PROCEDURE destroy_obj(obj_name VARCHAR2) IS
  object  OG_Object;
BEGIN
  object := OG_Get_Object(Obj_Name);
  OG_Destroy(Objekt);
END;


OG_Draw

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur veranlaßt, daß das angegebene Objekt in dem Layout gezeichnet wird.

Syntax

PROCEDURE OG_Draw
  (object_hdl  OG_Object);

Parameter

object_hdl	Handle zu dem zu zeichnenden Objekt.

Verwendungshinweise  Im Gegensatz zu anderen Prozeduren, die Objekte verändern, verändert diese Prozedur einen rechteckigen Bereich im Layout nicht. Sie zeichnet nur das angegebene Objekt und wirkt sich auf keine anderen Objekte aus.

Der Vorteil dieser Prozedur besteht darin, daß ein Objekt in dem Layout angezeigt werden kann, während verhindert wird, daß Graphics Builder einen rechteckigen Veränderungsbereich neu zeichnet, der größer sein kann als erforderlich.


Beispiele für OG_Draw

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*Suppose you want to clone an object and have it appear on the
**layout smoothly, without causing a damage region to be redrawn.
**First, you would create the object by calling OG_Clone with a FALSE
**damage flag .  Then, you can make the object appear on the layout
**by calling OG_Draw.
*/

PROCEDURE clone_object IS
   the_object   OG_Object;
   new_object   OG_Object;
BEGIN
   the_object:=OG_Get_Object('My_Object');
   new_object:=OG_Clone(The_Object, FALSE);
   OG_Draw(new_object);
END;


OG_Export_Drawing (Grafische Anwendung)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert das ganze Layout (einschließlich verborgener Ebenen) als eine Zeichnung.

Syntax

PROCEDURE OG_Export_Drawing
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   compression  NUMBER    :=  OG_No_Icompression);

Parameter

name	Name, unter dem die Zeichnung exportiert wird. Wenn die Zeichnung in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen der Zeichnung enthalten. Wenn die Zeichnung im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten und relativen Pfadnamen der Zeichnungsdatei enthalten.
repository	Gibt an, ob die Zeichnung im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die Zeichnung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die Zeichnung im Dateisystem gespeichert werden soll.
format	Gibt das Format an, in dem die Zeichnung exportiert wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Cgm16_Dformat   Bedeutet, daß die Zeichnung im 2-Byte-CGM-Format gespeichert wird. OG_Cgm32_Dformat   Bedeutet, daß die Zeichnung im 4-Byte-CGM-Format gespeichert wird. OG_Oracle_Dformat   Bedeutet, daß die Zeichnung im Oracle-Format gespeichert wird, das von anderen Oracle-Produkten benutzt wird.
compression	Komprimierungsart zur Komprimierung von Bildern, die Bestandteil der Zeichnung sind. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_G3fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 3 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_G4fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 4 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_H3g_Icompression   Bedeutet, daß Bilder mit CCITT Gruppe 3 mit der Huffman-Codierung komprimiert werden. OG_Jpeg_High_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein hohes Komprimierungsverhältnis und eine niedrige Qualität ergibt. OG_Jpeg_Highest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das höchste Komprimierungsverhältnis und die niedrigste Qualität ergibt. OG_Jpeg_Low_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die zu einem niedrigen Komprimierungsverhältnis und einer hohen Qualität führt. OG_Jpeg_Lowest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das geringste Komprimierungsverhältnis und die höchste Qualität ergibt. OG_Jpeg_Medium_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein mittleres Komprimierungsverhältnis und eine mittlere Qualität ergibt. OG_Lzwhdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung mit horizontaler Differenzierung komprimiert werden. OG_Lzwnohdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung ohne horizontale Differenzierung komprimiert werden. OG_No_Icompression   Bedeutet, daß Bilder nicht komprimiert werden. OG_Pack_Icompression   Bedeutet, daß Bilder mit der PackBits-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur für Schwarz/Weiß-Tiff-Bilder gültig.


Beispiele für OG_Export_Drawing (Grafische Anwendung)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*Suppose you want to export the display contents to the CGM file
**`my_draw' so that you can later import it into some other application.
**The following procedure does this:
*/

PROCEDURE export_the_drawing IS
BEGIN
   OG_Export_Drawing('My_Draw', OG_Filesystem, OG_Cgm16_Dformat);
END;


OG_Export_Drawing (Objekt/Ebene)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert das angegebene Objekt bzw. die angegebene Ebene als Zeichnung.

Syntax

PROCEDURE OG_Export_Drawing
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   object_hdl   OG_Object,
   compression  NUMBER     :=  OG_No_Icompression);

Parameter

name	Name, unter dem die Zeichnung exportiert wird. Wenn die Zeichnung in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen der Zeichnung enthalten. Wenn die Zeichnung im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der Zeichnungsdatei enthalten.
repository	Gibt an, ob die Zeichnung im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß die Zeichnung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die Zeichnung im Dateisystem gespeichert werden soll.
format	Gibt das Format an, in dem die Zeichnung exportiert wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:                        OG_Cgm16_Dformat   Bedeutet, daß die Zeichnung im 2-Byte-CGM-Format gespeichert wird. OG_Cgm32_Dformat   Bedeutet, daß die Zeichnung im 4-Byte-CGM-Format gespeichert wird. OG_Oracle_Dformat   Bedeutet, daß die Zeichnung im Oracle-Format gespeichert wird, das von anderen Oracle-Produkten benutzt wird.
object_hdl	Handle zu dem zu exportierenden Objekt. Bei dem Objekt kann es sich entweder um eine Gruppe oder das Objekt-Handle zu einer Ebene handeln. Das Objekt und alle untergeordneten Objekte werden exportiert. Um eine zu exportierende Ebene anzugeben, geben Sie mit OG_Get_Object ein Objekt-Handle zu der Ebene an.
compression	Komprimierungsart zur Komprimierung von Bildern, die Bestandteil der Zeichnung sind. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_G3fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 3 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_G4fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 4 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_H3g_Icompression   Bedeutet, daß Bilder mit CCITT Gruppe 3 mit der Huffman-Codierung komprimiert werden. OG_Jpeg_High_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein hohes Komprimierungsverhältnis und eine niedrige Qualität ergibt. OG_Jpeg_Highest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das höchste Komprimierungsverhältnis und die niedrigste Qualität ergibt. OG_Jpeg_Low_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die zu einem niedrigen Komprimierungsverhältnis und einer hohen Qualität führt. OG_Jpeg_Lowest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das geringste Komprimierungsverhältnis und die höchste Qualität ergibt. OG_Jpeg_Medium_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein mittleres Komprimierungsverhältnis und eine mittlere Qualität ergibt. OG_Lzwhdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung mit horizontaler Differenzierung komprimiert werden. OG_Lzwnohdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung ohne horizontale Differenzierung komprimiert werden. OG_No_Icompression   Bedeutet, daß Bilder nicht komprimiert werden. OG_Pack_Icompression   Bedeutet, daß Bilder mit der PackBits-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur für Schwarz/Weiß-Tiff-Bilder gültig.


Beispiele für OG_Export_Drawing (Objekt/Ebene)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to export the contents of `layer0' to the CGM file
** `my_draw' so that you can later import it into some other application.
** The following procedure does this:
*/

PROCEDURE export_the_drawing IS
   the_layer   OG_Object;
BEGIN
   the_layer:=OG_Get_Object('Layer0');
   OG_Export_Drawing('My_Draw', OG_Filesystem,
OG_Cgm16_Dformat, the_layer);
END;


OG_Export_Drawing (Fenster)

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert den sichtbaren Inhalt des angegebenen Fensters als Zeichnung.

Syntax

PROCEDURE OG_Export_Drawing
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   window_hdl   OG_Window,
   compression  NUMBER     :=  OG_No_Icompression);

Parameter

name	Name, unter dem die Zeichnung exportiert wird. Wenn die Zeichnung in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen der Zeichnung enthalten. Wenn die Zeichnung im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der Zeichnungsdatei enthalten.
repository	Gibt an, ob die Zeichnung im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Db   Bedeutet, daß die Zeichnung in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß die Zeichnung im Dateisystem gespeichert werden soll.
format	Gibt das Format an, in dem die Zeichnung exportiert wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten ntsprechen:OG_Cgm16_Dformat   Bedeutet, daß die Zeichnung im 2-Byte-CGM-Format gespeichert wird. OG_Cgm32_Dformat   Bedeutet, daß die Zeichnung im 4-Byte-CGM-Format gespeichert wird. OG_Oracle_Dformat   Bedeutet, daß die Zeichnung im Oracle-Format gespeichert wird, das von anderen Oracle-Produkten benutzt wird.
window_hdl	Handle zu dem Fenster, das die zu exportierende Zeichnung enthält. Alle Ebenen, die in dem Fenster angezeigt werden, werden exportiert.
compression	Komprimierungsart zur Komprimierung von Bildern, die Bestandteil der Zeichnung sind. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_G3fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 3 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_G4fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 4 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_H3g_Icompression   Bedeutet, daß Bilder mit CCITT Gruppe 3 mit der Huffman-Codierung komprimiert werden. OG_Jpeg_High_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein hohes Komprimierungsverhältnis und eine niedrige Qualität ergibt. OG_Jpeg_Highest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das höchste Komprimierungsverhältnis und die niedrigste Qualität ergibt. OG_Jpeg_Low_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die zu einem niedrigen Komprimierungsverhältnis und einer hohen Qualität führt. OG_Jpeg_Lowest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das geringste Komprimierungsverhältnis und die höchste Qualität ergibt. OG_Jpeg_Medium_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein mittleres Komprimierungsverhältnis und eine mittlere Qualität ergibt. OG_Lzwhdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung mit horizontaler Differenzierung komprimiert werden. OG_Lzwnohdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung ohne horizontale Differenzierung komprimiert werden. OG_No_Icompression   Bedeutet, daß Bilder nicht komprimiert werden. OG_Pack_Icompression   Bedeutet, daß Bilder mit der PackBits-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur für Schwarz/Weiß-Tiff-Bilder gültig.


Beispiele für OG_Export_Drawing (Fenster)

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to export the contents of the `Main Layout'
** window to the CGM file `my_draw' so that you can later import it
** into some other application.  The following procedure does this:
*/

PROCEDURE export_the_drawing IS
   the_window   OG_Window;
BEGIN
   the_window:=OG_Get_Window('Main Layout');
   OG_Export_Drawing('My_Draw', OG_Filesystem,
OG_Cgm16_Dformat, the_window);
END;


OG_Export_Image

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur exportiert ein Graphics Builder-Objekt, das von einer Umrandung mit einer Breite von einem halben Zoll umschlossen wird, in ein Bild.

Syntax

PROCEDURE OG_Export_Image
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   image_hdl    OG_Object,
   compression  NUMBER     :=  OG_No_Icompression);

Parameter

name	Name, unter dem das Bild exportiert wird. Wenn das Bild in der Datenbank gespeichert werden soll, darf dieses Argument nur den Namen des Bildes enthalten. Wenn das Bild im Dateisystem gespeichert werden soll, muß dieses Argument den absoluten oder relativen Pfadnamen der Bilddatei enthalten.
repository	Gibt an, ob das Bild im Dateisystem oder der Datenbank gespeichert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß das Bild in der Datenbank gespeichert werden soll. OG_Filesystem   Bedeutet, daß das Bild im Dateisystem gespeichert werden soll.
format	Gibt das Format an, in dem das Bild exportiert werden soll. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Bmp_Iformat   Bedeutet, daß das Bild im Windows/OS2 Bitmap-Format gespeichert wird. OG_Cals_Iformat   Bedeutet, daß das Bild im CALS Type 1 Raster-Format gespeichert wird. OG_Gif_Iformat   Bedeutet, daß das Bild im CompuServe GIF-Format gespeichert wird. Sie müssen GIF-Dateien mit OG_Lzwhdiff_Icompression komprimieren. OG_Jfif_Iformat   Bedeutet, daß das Bild im JPEG File Image-Format gespeichert wird. OG_Pict_Iformat   Bedeutet, daß das Bild im Macintosh PICT-Format gespeichert wird. OG_Ras_Iformat   Bedeutet, daß das Bild im SUN Raster-Format gespeichert wird. OG_Tiff_Iformat   Bedeutet, daß das Bild im Tag Image File Format gespeichert wird.
image_hdl	Handle zu dem Bildobjekt, das exportiert wird. Hier kann es sich um ein beliebiges Graphics Builder-Objekt handeln.
compression	Komprimierungsart zur Komprimierung von Bildern, die Bestandteil der Zeichnung sind. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_G3fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 3 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_G4fax_Icompression   Bedeutet, daß Bilder mit der Gruppe 4 Fax-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur bei Schwarz-/Weiß-Bildern gültig. OG_H3g_Icompression   Bedeutet, daß Bilder mit CCITT Gruppe 3 mit der Huffman-Codierung komprimiert werden. OG_Jpeg_High_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein hohes Komprimierungsverhältnis und eine niedrige Qualität ergibt. OG_Jpeg_Highest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das höchste Komprimierungsverhältnis und die niedrigste Qualität ergibt. OG_Jpeg_Low_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die zu einem niedrigen Komprimierungsverhältnis und einer hohen Qualität führt. OG_Jpeg_Lowest_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die das geringste Komprimierungsverhältnis und die höchste Qualität ergibt. OG_Jpeg_Medium_Icompression   Bedeutet, daß Bilder mit der JPEG-Codierung komprimiert werden, die ein mittleres Komprimierungsverhältnis und eine mittlere Qualität ergibt. OG_Lzwhdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung mit horizontaler Differenzierung komprimiert werden. OG_Lzwnohdiff_Icompression   Bedeutet, daß Bilder mit der LZW-Codierung ohne horizontale Differenzierung komprimiert werden. OG_No_Icompression   Bedeutet, daß Bilder nicht komprimiert werden. OG_Pack_Icompression   Bedeutet, daß Bilder mit der PackBits-Codierung komprimiert werden. Dieser Komprimierungstyp ist nur für Schwarz/Weiß-Tiff-Bilder gültig.


Beispiele für OG_Export_Image

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to export the image named `image0' to the TIFF file
**`my_image' so that you can later import it into some other application
**The following procedure does this:
*/

 PROCEDURE export_the_image IS
   the_image   OG_Object;
BEGIN
   the_image:=OG_Get_Object('image0');
   OG_Export_Image('my_image', OG_Filesystem,
      OG_Tiff_Iformat, the_image);
END;


OG_Get_Char_Property

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest den Wert eines benutzerdefinierten CHAR-Attributs eines Objekts ein.

Syntax

FUNCTION OG_Get_Char_Property
  (object_hdl  OG_Object,
   prop_name   VARCHAR2)
RETURN VARCHAR2;

Parameter

object_hdl	Handle zu dem Objekt, das das einzulesende Attribut enthält.
prop_name	Name des Attributs, dessen Wert eingelesen werden soll.

Rückgabewert  Wert des angegebenen Attributs.


Beispiele für OG_Get_Char_Property

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the 'status' property
**in each child object in a group, and then changes
**the object’s color if the status is 'obsolete':
*/

PROCEDURE example(group_name VARCHAR2) IS
  group_obj    OG_Object;
  child_count  NUMBER;
  child_obj    OG_Object;
  stat         VARCHAR2(10);
BEGIN
  group_obj := OG_Get_Object(Group_Name);
  child_count := OG_Get_Childcount(Group_Obj);

  FOR i IN 0..child_count LOOP
    child_obj := OG_Get_Child(Group_Obj, i);
    stat := OG_Get_Char_Property(Child_Obj, 'status');
    IF stat = 'obsolete' THEN
      OG_Set_Fillcolor(Child_Obj, 'red');
    END IF;
  END LOOP;

END;


OG_Get_Child

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt ein Handle zu einem untergeordneten Objekt innerhalb eines Gruppenobjekts zurück.

Syntax

FUNCTION OG_Get_Child
  (group_hdl  OG_Object,
   indx       NUMBER)
RETURN OG_Object;

Parameter

group_hdl	Handle zu dem Gruppenobjekt, das das untergeordnete Objekt enthält.
indx	Index des Objekts in der Liste mit untergeordneten Objekten der Gruppe, dessen Handle zurückgegeben werden soll.

Rückgabewert  Ein Handle zu dem angegebenen untergeordneten Objekt innerhalb einer Gruppe.


Beispiele für OG_Get_Child

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose you have a several objects representing products
**in a warehouse, and you want to move one of the products
**from one warehouse to another.  Your display may use a group
**comprised of the products to represent the inventory for each
**warehouse.  To move a product from one warehouse to another,
**you would want to get the handle to the product object, delete it
**from one warehouse group, and add it to another warehouse group.
*/

PROCEDURE move_prod(warehouse1 IN OG_Object, warehouse2 IN
OG_Object, prod_index in number) IS
   the_prod   OG_Object;
BEGIN
   the_prod:=OG_Get_Child(Warehouse1, prod_index);
   OG_Delete_Child(Warehouse1, prod_index, 1);
   OG_Insert_Child(Warehouse2, the_prod, OG_Last);
END;

 /*Note that this procedure changes only the internal composition
**of the group objects.  To move or change the appearance of the
**product object, you must use other Graphics Builder built-in procedures.
*/


OG_Get_Cmptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen zusammengesetzten Textelements ein und weist diese den entsprechenden Feldern in dem angegebenen Attributsatz für den zusammengesetzten Text zu. Wie unter "Textattribute" beschrieben, stellt ein zusammengesetztes Textelement eine Textzeile in einem Textobjekt dar.

Syntax

PROCEDURE OG_Get_Cmptext
  (text_hdl          OG_Object,
   indx              NUMBER,
   attr      IN OUT  OG_Cmptext_Attr);

Parameter

text_hdl	Handle zu dem Textobjekt.
indx	Index des zusammengesetzten Textelements in der Liste mit zusammengesetzten Textelementen, dessen Attribute abgerufen werden sollen.
attr	Attributsatz des zusammengesetzten Textelements, der die Attribute des zusammengesetzten Textelements empfängt.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die mit dem Wert des Masken-Attributs in dem Attributsatz angegeben werden. Felder in dem Attributsatz, für die Maske nicht eingestellt ist, sind von dem Aufruf von OG_Get_Cmptext nicht betroffen.


Beispiele für OG_Get_Cmptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to determine how many simple text elements
**compose the first compound text element within a text object.
**Knowing this, you can loop through and examine each simple text element.
*/

FUNCTION how_many(my_text IN OG_Object) RETURN NUMBER IS
   ctext_rec   OG_Cmptext_Attr;
BEGIN
   ctext_rec.mask:=OG_Stcount_Cmptexta;
   OG_Get_Cmptxt(My_Text, 0, ctext_rec);
   RETURN(ctext_rec.stcount);
END;


OG_Get_Date_Property

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest den Wert eines benutzerdefinierten DATE-Attributs eines Objekts ein.

Syntax

FUNCTION OG_Get_Date_Property
  (object_hdl  OG_Object,
   prop_name   VARCHAR2,
   date_fmt    VARCHAR2   := 'DD-MON-YY')
RETURN DATE;

Parameter

object_hdl	Handle zu dem Objekt, das das einzulesende Attribut enthält.
prop_name	Name des Attributs, dessen Wert eingelesen werden soll.
date_fmt	Datumsformatmaske, die für das Einstellen des DATE-Attributs mit OG_Set_Property benutzt wird.

Rückgabewert  Wert des angegebenen Attributs.


Beispiele für OG_Get_Date_Property

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the 'due_date' property in each child object
**in a group, and then changes the object's color if the due date has past:
*/

PROCEDURE example(group_name VARCHAR2) IS
  group_obj    OG_Object;
  child_count  NUMBER;
  child_obj    OG_Object;
  due          DATE;
BEGIN
  group_obj := OG_Get_Object(Group_Name);
  child_count := OG_Get_Childcount(Group_Obj);

  FOR i IN 0..child_count-1 LOOP
    child_obj := OG_Get_Child(Group_Obj, i);
    due := OG_Get_Date_Property(Child_Obj, 'due_date');
    IF due < sysdate THEN
      OG_Set_Fillcolor(Child_Obj, 'red');
    END IF;
  END LOOP;

END;


OG_Get_Num_Property

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest den Wert eines benutzerdefinierten NUMBER-Attributs eines Objekts ein.

Syntax

FUNCTION OG_Get_Num_Property
  (object_hdl  OG_Object,
   prop_name   VARCHAR2)
RETURN NUMBER;

Parameter

object_hdl	Handle zu dem Objekt, das das einzulesende Attribut enthält.
prop_name	Name des Attributs, dessen Wert eingelesen werden soll.

Rückgabewert  Wert des angegebenen Attributs.


Beispiele für OG_Get_Num_Property

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the 'priority' property in each child object
**in a group, and then sets the priority to one greater than its current value:
*/

PROCEDURE example(group_name VARCHAR2) IS
  group_obj    OG_Object;
  child_count  NUMBER;
  child_obj    OG_Object;
  current_p    NUMBER;
BEGIN
  group_obj := OG_Get_Object(Group_Name);
  child_count := OG_Get_Childcount(Group_Obj);

  FOR i IN 0..child_count-1 LOOP
    child_obj := OG_Get_Child(Group_Obj, i);
    current_p := OG_Get_Num_Property(Child_Obj, 'priority');
    OG_Set_Property(Child_Obj, 'priority', current_p + 1);
  END LOOP;

END;


OG_Get_Object

  Beispiele	  Verwandte Themen

Beschreibung  Bei dem Objekt kann es sich um Bogen, Diagramme, Gruppen, Bilder, Linien, Polygone, Rechtecke, abgerundete Rechtecke, Symbole oder Textobjekte handeln. Das Objekt muß entweder im Builder oder programmgesteuert erstellt und benannt werden, bevor es mit dieser Funktion abgerufen wird. Wenn das angegebene Objekt nicht vorhanden ist, gibt diese Funktion ein Null-Handle zurück.

Syntax

FUNCTION OG_Get_Object
  (object_name  VARCHAR2)
RETURN OG_Object;

FUNCTION OG_Get_Object
  (object_name  VARCHAR2,
   root_hdl     OG_Object)
RETURN OG_Object;

Parameter

object_name	Name des Objekts, dessen Handle zurückgegeben werden soll. Hinweis:  Bei OBJECT_NAME muß die Schreibweise berücksichtigt werden.
root_hdl	Handle zu dem Objekt, in dessen Gruppenstruktur gesucht werden soll.

Rückgabewert  Ein Handle zu dem angegebenen Objekt.

Verwendungshinweise  Wenn Sie root_hdl nicht angeben, beginnt Graphics Builder mit der Suche im Hauptobjekt der grafischen Anwendung und durchsucht somit jedes Objekt in der grafischen Anwendung nach dem Objekt, dessen Name angegeben ist. Wenn Sie root_hdl angeben, sucht Graphics Builder nur in der Gruppenstruktur unter diesem Objekt nach dem angegebenen Objekt. Sie erhalten unvorhersehbare Ergebnisse, wenn mehrere Objekte in dem Suchpfad denselben Namen haben.

Wenn object_name der Name einer Ebene ist, behandelt diese Funktion die Ebene als Gruppenobjekt und gibt ein Handle zu dieser Gruppe zurück. Danach können Sie die gruppenbezogenen Unterprogramme (OG_Insert_Child, OG_Delete_Child usw.) benutzen, um die Objekte in der Ebene zu bearbeiten.


Beispiele für OG_Get_Object

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a map of the world and you want to change
**the color of one of the countries.  First, you would get the handle
**to the country object, then you would change its color.
*/

PROCEDURE color_country(country_name) IS
   my_object    OG_Object;
   obj_record   OG_Graphic_Ca;
BEGIN
   my_object:=OG_Get_Object(Country_Name);
   obj_record.graphic_caob.mask:=OG_None_Generica;
   obj_record.graphic_caoh.mask:=OG_Ffcolor_Graphica;
   obj_record.graphic_caoh.ffcolor:='red';
   OG_Set_Attr(My_Object, obj_record);
END;


OG_Get_Point

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion gibt einen Datensatz zurück, der die x- und y-Koordinaten eines Punktes in dem angegebenen Objekt enthält.

Syntax

FUNCTION OG_Get_Point
  (object_hdl  OG_Object,
   indx        NUMBER
   rotated     BOOLEAN    :=  FALSE)
RETURN OG_Point;

Parameter

object_hdl	Handle zu dem Objekt.
indx	Index des zurückzugebenden Punktes in der Punkteliste.
rotated	Gibt an, ob der zurückgegebene Punkt einen Drehwinkel reflektieren soll, der für das Objekt angewendet wird.

Rückgabewert  Position des angegebenen Punktes.

Verwendungshinweise

Polygon: Gibt den indx-ten Punkt des Objektes zurück.

Bogen, Diagramm, Rechteck, abgerundetes Rechteck:  0 Index gibt obere linke Ecke zurück; 1 Index gibt obere rechte Ecke zurück; 2 Index gibt untere rechte Ecke zurück; 3 Index gibt untere linke Ecke zurück.

Text:  0 Index gibt obere linke Ecke zurück; 1 Index gibt obere rechte Ecke zurück; 2 Index gibt untere rechte Ecke zurück; 3 Index gibt untere linke Ecke zurück.

Linie: 0 Index gibt Anfangspunkt zurück; 1 Index gibt Endpunkt zurück.

Bild, Gruppe, Symbol:  Nicht anwendbar.

Wenn das Objekt im Builder erstellt wurde, entsprechen die anfänglichen Indexwerte für die Punkte der Reihenfolge, in der beim Zeichnen des Objekts mit der Maus geklickt wurde (während der erste Punkt einen Index von 0 hat). Indexwerte für Punkte, die programmgesteuert eingefügt wurden, hängen von dem Index ab, der beim Einfügen angegeben wurde.


Beispiele für OG_Get_Point

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have several polygons on a map, each of which connects
**the cities within a specific distribution area.  If a city is transferred from one
**distribution area to another, you would want to get a handle to the point
**representing that city, delete it from one polygon, and add it to another polygon.
*/

PROCEDURE move_city(area1 IN OG_Object, area2 IN OG_Object,
  city_index NUMBER) IS
   the_city   OG_Point;
BEGIN
   the_city:=OG_Get_Point(Area1, city_index);
   OG_Delete_Point(Area1, city_index, 1);
   OG_Insert_Point(Area2, OG_Last, the_city);
END;


OG_Get_Smptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur liest die Attributwerte des angegebenen einfachen Textelements innerhalb des angegebenen zusammengesetzten Textelements und das angegebene Textobjekt ein. Diese Attribute werden dann den entsprechenden Feldern in dem angegebenen Attributsatz für den einfachen Text zugewiesen. Wie unter "Textattribute" beschrieben, besteht ein einfaches Textelement aus einer Textfolge in einem zusammengesetzten Textelement.

Syntax

PROCEDURE OG_Get_Smptext
  (text_hdl          OG_Object,
   cmpindex          NUMBER,
   smpindex          NUMBER,
   attr      IN OUT  OG_Smptext_Attr);

Parameter

text_hdl	Handle zu dem Textobjekt.
cmpindx	Index des zusammengesetzten Textelements innerhalb des Textobjektes, das das einfache Textelement enthält, dessen Attribute abgerufen werden sollen.
smpindex	Index des einfachen Textelements innerhalb des zusammengesetzten Textelements, dessen Attribute abgerufen werden sollen.
attr	Attributsatz, der die Attribute des einfachen Textelements empfängt.

Verwendungshinweise  Es werden nur die Attributwerte abgerufen, die von dem Wert des Masken-Attributs im Attributsatz angegeben werden. Felder in dem Attributsatz, für die die Maske nicht eingestellt ist, sind von dem Aufruf von OG_Get_Smptext nicht betroffen.


Beispiele für OG_Get_Smptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have created a message text object.  To change the
**message it contains, you would delete the simple text element containing
**the current message and insert a new simple text element containing the
**new message.  To maintain the font and other attributes, however,
**you first would want to get the simple text element into an attribute record.
**That way you could modify only the text string, and leave the other attribute
**settings (such as font) unchanged.
*/

PROCEDURE put_msg (mess IN VARCHAR2) IS
   msgobj   OG_Object;
   msgrec   OG_Smptext_Attr;
BEGIN
   msgobj:=OG_Get_Object('Msg');
   msgrec.mask:=OG_Font_Smptexta+
                OG_Color_Smptexta;
   msgrec.font.mask:=OG_All_Fonta;
   OG_Get_Smptext(Msgobj, 0, 0, msgrec);
   OG_Delete_Smptext(Msgobj, 0, 0, 1, FALSE);
   msgrec.mask:=msgrec.mask + OG_Str_Smptexta;
   msgrec.str:=mess;
   OG_Insert_Smptext(Msgobj, msgrec, 0, OG_Last);
END;


OG_Import_Drawing

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur importiert eine Zeichnung. Sie gibt ein Handle zu dem ersten Objekt in der Zeichnung zurück.

Syntax

FUNCTION OG_Import_Drawing
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   use_colors   BOOLEAN,
   damage       BOOLEAN   :=  TRUE,
   update_bbox  BOOLEAN   :=  TRUE)
RETURN OG_Object;

FUNCTION OG_Import_Drawing
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   use_colors   BOOLEAN,
   parent_hdl   OG_Object,
   damage       BOOLEAN   :=  TRUE,
   update_bbox  BOOLEAN   :=  TRUE)
RETURN OG_Object;

Parameter

name	Name der Zeichnung. Wenn die Zeichnung in der Datenbank gespeichert ist, darf dieses Argument nur den Namen der Zeichnung enthalten. Wenn die Zeichnung im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der Zeichnungsdatei enthalten.
repository	Gibt an, ob die Zeichnung im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß die Zeichnung in der Datenbank gespeichert ist. OG_Filesystem   Bedeutet, daß die Zeichnung im Dateisystem gespeichert ist.
format	Gibt das Format an, in dem die Zeichnung gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:                            OG_Cgm_Dformat   Bedeutet, daß die Zeichnung im CGM-Format gespeichert ist (entweder 2-Byte oder 4-Byte). OG_Oracle_Dformat   Bedeutet, daß die Zeichnung im Oracle-Format gespeichert ist, das von anderen Oracle-Produkten verwendet wird.
use_colors	Gibt an, ob die Farbpalette der Zeichnung benutzt werden soll. Wenn dieses Argument TRUE ist, wird die Palette der Zeichnung benutzt. Wenn es FALSE ist, wird die Standardfarbpalette von Graphics Builder verwendet.
parent_hdl	Handle zu einer Objektgruppe, in die die importierte Zeichnung als untergeordnetes Objekt eingefügt werden soll. Wenn dieses Argument nicht angegeben wird, wird die Zeichnung als untergeordnetes Objekt des Hauptobjekts eingefügt (obwohl sie erst als Ebene erkannt wird, wenn Sie sie aktivieren oder anzeigen).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Rückgabewert  Handle zu der importierten Zeichnung.


Beispiele für OG_Import_Drawing

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to import the contents of the CGM file `my_draw'
**onto the layer `layer0'.  You can get the object handle to the layer,
**then use that for parent_hdl.  The following procedure does this:
*/

PROCEDURE import_the_drawing IS
   the_layer   OG_Object;
   dummy   OG_Object;
BEGIN
   the_layer:=OG_Get_Object('Layer0');
   dummy:=OG_Import_Drawing('My_Draw', OG_Filesystem,
OG_Cgm16_Dformat, FALSE, the_layer);
END;


OG_Import_Image

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur importiert ein Bild in die aktive Ebene im aktiven Fenster.

Syntax

FUNCTION OG_Import_Image
  (name         VARCHAR2,
   repository   NUMBER,
   format       NUMBER,
   damage       BOOLEAN   :=  TRUE,
   update_bbox  BOOLEAN   :=  TRUE)
RETURN OG_Object;

Parameter

name	Name des Bildes. Wenn das Bild in der Datenbank gespeichert ist, darf dieses Argument nur den Namen des Bildes enthalten. Wenn das Bild im Dateisystem gespeichert ist, muß dieses Argument den absoluten oder relativen Pfadnamen der Bilddatei enthalten.
repository	Gibt an, ob das Bild im Dateisystem oder der Datenbank gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Db   Bedeutet, daß das Bild in der Datenbank gespeichert ist. OG_Filesystem   Bedeutet, daß das Bild im Dateisystem gespeichert ist.
format	Gibt das Format an, in dem das Bild gespeichert ist. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Any_Iformat   Bedeutet, daß Graphics Builder das Bildformat automatisch bestimmt. Hinweis:  Geben Sie dieses Format an, wenn Ihr Bild im Oracle-Format exportiert wurde (jetzt veraltet). OG_Bmp_Iformat   Bedeutet, daß das Bild im BMP-Format gespeichert ist. OG_Cals_Iformat   Bedeutet, daß das Bild im CALS-Format gespeichert ist. OG_Gif_Iformat   Bedeutet, daß das Bild im GIF-Format gespeichert ist. OG_Jfif_Iformat   Bedeutet, daß das Bild im JFIF-Format gespeichert ist. OG_Oracle_Sformat   Bedeutet, daß das Bild im Oracle-Format gespeichert ist, das von anderen Oracle-Produkten benutzt wird. OG_Pcd_Iformat   Bedeutet, daß das Bild im PCD-Format gespeichert ist. OG_Pcx_Iformat   Bedeutet, daß das Bild im PCX-Format gespeichert ist. OG_Pict_Iformat   Bedeutet, daß das Bild im PICT-Format gespeichert ist. OG_Ras_Iformat   Bedeutet, daß das Bild im Sun-raster-Format gespeichert ist. OG_Tiff_Iformat   Bedeutet, daß das Bild im TIFF-Format gespeichert ist.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Rückgabewert  Handle zu dem importierten Bild.


Beispiele für OG_Import_Image

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to import the contents of the TIFF file `my_image'
**onto the layer `layer0'.  The following procedure does this:
*/

PROCEDURE import_the_image IS
   the_image   OG_Object;
BEGIN
   OG_Activate_Layer(OG_Get_Layer('Layer0'));
   the_image:=OG_Import_Image('My_Image', OG_Filesystem,
     OG_Tiff_Iformat);
END;


OG_Insert_Child

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt ein untergeordnetes Objekt in die angegebene Objektgruppe ein. Wenn das einzufügende Objekt schon ein untergeordnetes Objekt eines anderen Gruppenobjektes ist, löscht Graphics Builder zuerst automatisch das untergeordnete Objekt aus dem aktuellen übergeordneten Objekt.

Syntax

PROCEDURE OG_Insert_Child
  (group_hdl    OG_Object,
   child_hdl    OG_Object,
   indx         NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

group_hdl	Handle zu dem Gruppenobjekt, in das das untergeordnete Objekt eingefügt werden soll.
child_hdl	Handle zu dem Objekt, das als untergeordnetes Objekt eingefügt werden soll.
indx	Index in der Liste mit untergeordneten Objekten der Gruppe, bei dem das neue untergeordnete Objekt eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von untergeordneten Objekten in der Gruppe vor dem Einfügenvorgang ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß das Objekt als erstes untergeordnetes Objekt in der Gruppe eingefügt wird (Index = 0). OG_Last   Bedeutet, daß das Objekt als letztes Objekt in der Gruppe eingefügt werden soll (Index = Anzahl von untergeordneten Objekten in der Gruppe vor dem Einfügenvorgang).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Sie können ein Objekt in eine Ebene einfügen, indem Sie die Ebene als Gruppenobjekt behandeln und das Objekthandle an diese Prozedur übergeben. Sie können auch eine neue Ebene erstellen, indem Sie ein Gruppenobjekt in das Hauptobjekt der grafischen Anwendung einfügen. Graphics Builder erkennt diese Gruppe jedoch erst als Ebene, wenn Sie sie explizit durch den Aufruf von OG_Activate_Layer oder OG_Show_Layer anzeigen.

Beachten Sie, daß Graphics Builder nicht auf Schleifen in Gruppenobjekten prüft, die entstehen würden, wenn Sie eine Gruppe als untergeordnetes Objekt von einem der untergeordneten Objekte einfügen würden. In diesem Fall geht Graphics Builder in eine Endlosschleife, wenn es die Gruppenstruktur durchsucht, um die Umrandungen der betroffenen Objekte zu aktualisieren.

Beachten Sie, daß diese Prozedur nur den internen Aufbau der Gruppenobjekte ändert. Um das Produktobjekt zu verschieben oder dessen Erscheinungsbild zu ändern, müssen Sie andere vordefinierte Prozeduren von Graphics Builder benutzen.


Beispiele für OG_Insert_Child

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a several objects representing products in a warehouse,
**and you want to move one of the products from one warehouse to another.
**Your display may use a group comprised of the products to represent the
**inventory for each warehouse.  To move a product from one warehouse to
**another, you would want to get the handle to the product object, delete it
**from one warehouse group, and add it to another warehouse group.
*/

PROCEDURE move_prod (warehouse1 IN OG_Object, warehouse2 IN
  OG_Object, prod_index IN number) IS
   the_prod   OG_Object;
BEGIN
   the_prod:=OG_Get_Child(Warehouse1, prod_index);
   OG_Delete_Child(Warehouse1, prod_index, 1);
   OG_Insert_Child(Warehouse2, the_prod, OG_Last);
END;


OG_Insert_Cmptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt ein neues zusammengesetztes Textelement in das angegebene Textobjekt ein. Wie unter "Textattribute" beschrieben, stellt ein zusammengesetztes Textelement eine Textzeile in einem Textobjekt dar.

Syntax

PROCEDURE OG_Insert_Cmptext
  (text_hdl     OG_Object,
   indx         NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text_hdl	Handle zu dem Textobjekt.
indx	Index in der Liste mit zusammengesetzten Textelementen innerhalb des Textobjekts, bei dem das neue zusammengesetzte Textelement eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von zusammengesetzten Textelementen in dem Textelement vor dem Einfügenvorgang ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß das neue zusammengesetzte Textelement am Anfang des Textobjekts eingefügt wird (Index = 0). OG_Last   Bedeutet, daß das neue zusammengesetzte Textelement am Ende des Textobjekts eingefügt wird (Index = Anzahl von zusammengesetzten Textelementen in dem Textobjekt vor dem Einfügenvorgang).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Die Attribute eines zusammengesetzten Textelements werden automatisch von Graphics Builder eingestellt. Deshalb müssen Sie keinen Attributsatz für das zusammengesetzte Textelement angeben, wenn Sie ein neues zusammengesetztes Textelement erstellen. (Wenn Sie hingegen die Elementattribute einlesen möchten, müssen Sie OG_Get_Cmptext mit einem Attributsatz für zusammengesetzte Textelemente angeben, um die Attribute zu empfangen.)


Beispiele für OG_Insert_Cmptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a text object that contains a message for
**the user.  The following function will create the object, insert a compound text
**element, then insert a simple text element that contains the text of the message.
*/

PROCEDURE make_text (the_message IN VARCHAR2) IS
   text_rec   OG_Text_Ca;
   text_obj   OG_Object;
   smp_rec    OG_Smptext_Attr;
BEGIN
   text_rec.text_caob.mask:=OG_None_Generica;
   text_rec.text_caoh.mask:=OG_None_Graphica;
   text_rec.text_caot.mask:=OG_None_Texta;
   text_obj:=OG_Make(Text_Rec);
   OG_Insert_Cmptext(Text_Obj, OG_Last);
   smp_rec.mask:=OG_Str_Smptexta;
   smp_rec.str:=the_message;
   OG_Insert_Smptext(Text_Obj, smp_rec, 0, OG_Last);
END;


OG_Insert_Point

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt einen neuen Punkt in das angegebene Poylgonobjekt ein.

Syntax

PROCEDURE OG_Insert_Point
  (poly_hdl     OG_Object,
   indx         NUMBER,
   pt           OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

poly_hdl	Handle zu dem Polygon- oder Polygonzugobjekt.
indx	Index in der Punkteliste, bei dem der neue Punkt eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von Punkten in dem Objekt vor dem Einfügenvorgang ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß der neue Punkt am Anfang der Punktliste des Objekts eingefügt wird (Index = 0). OG_Last   Bedeutet, daß der neue Punkt am Ende der Punktliste des Objekts eingefügt werden soll (Index = Anzahl von zusammengesetzten Textelementen in dem Textobjekt vor dem Einfügenvorgang).
pt	Datensatz, der die x- und y-Koordinaten des einzufügenden Punktes enthält.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Wenn das Objekt im Builder erstellt wurde, entsprechen die anfänglichen Indexwerte für die Punkte der Reihenfolge, in der beim Zeichnen des Objektes mit der Maus geklickt wurde (wobei der erste Punkt einen Index von 0 hat). Indexwerte für Punkte, die programmgesteuert eingefügt wurden, hängen von dem Index ab, der beim Einfügen angegeben wurde.


Beispiele für OG_Insert_Point

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have several polygons on a map, each of which connects
**the cities within a specific distribution area.  If a city is transferred from one
**distribution area to another, you would want to get a handle to the point
**representing that city, delete it from one polygon, and add it to another polygon.
*/

PROCEDURE move_city(area1 IN OG_Object, area2 IN OG_Object,
city_index IN NUMBER) IS
   the_city   OG_Point;
BEGIN
   the_city:=OG_Get_Point(Area1, city_index);
   OG_Delete_Point(Area1, city_index, 1);
   OG_Insert_Point(Area2, OG_Last, the_city);
END;


OG_Insert_Smptext

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur fügt ein neues einfaches Textelement in das angegebene zusammengesetzte Textelement innerhalb des angegebenen Textobjekts ein. Wie unter "Textattribute" beschrieben, stellt ein einfaches Textelement eine Textfolge in einem zusammengesetzten Textelement dar.

Syntax

PROCEDURE OG_Insert_Smptext
  (textobj      OG_Object,
   smp_attr     OG_Smptext_Attr,
   cmpindex     NUMBER,
   smpindex     NUMBER,
   damage       BOOLEAN          :=  TRUE,
   update_bbox  BOOLEAN          :=  TRUE);

Parameter

text_hdl	Handle zu dem Textobjekt.
smp_attr	Attributsatz für das einzufügende einfache Textelement.
cmpindex	Index des zusammengesetzten Textelements innerhalb des Textobjekts, in das der einfache Text eingefügt werden soll.
smpindex	Index innerhalb des zusammengesetzten Textelements, bei dem das neue einfache Textelement eingefügt werden soll. Dieses Argument muß eine Ganzzahl zwischen 0 und n (einschließlich) sein, wobei n die Anzahl von einfachen Textelementen in dem zusammengesetzten Textelement vor dem Einfügenvorgang ist. Der Wert dieses Arguments kann auch einer der folgenden vordefinierten Konstanten entsprechen: OG_First   Bedeutet, daß das neue einfache Textelement am Anfang des zusammengesetzten Textelements eingefügt wird (Index = 0). OG_Last   Bedeutet, daß das neue einfache Textelement am Ende des zusammengesetzten Textelements eingefügt werden soll (Index = Anzahl von einfachen Textelementen in dem zusammengesetzten Textelement vor dem Einfügenvorgang).
Damage	Veränderungsmarke.
Update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Der angegebene Attributsatz des einfachen Textelements (smp_attr) enthält die Attribute für das einfache Textelement, einschließlich der Textfolge. Es werden nur die Attributwerte eingestellt, die mit dem Wert des Masken-Attributs in diesem Attributsatz angegeben wurden.


Beispiele für OG_Insert_Smptext

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to create a text object that contains a message
**for the user.  The following procedure will create the object, insert a
**compound text element, then insert a simple text element that contains
**the text of the message.
*/

PROCEDURE make_text (the_message IN VARCHAR2) IS
   text_rec   OG_Text_Ca;
   text_obj   OG_Object;
   smp_rec    OG_Smptext_Attr;
BEGIN
   text_rec.text_caob.mask:=OG_None_Generica;
   text_rec.text_caoh.mask:=OG_None_Graphica;
   text_rec.text_caot.mask:=OG_None_Texta;
   text_obj:=OG_Make(Text_Rec);
   OG_Insert_Cmptext(Text_Obj, OG_Last);
   smp_rec.mask:=OG_Str_Smptxta;
   smp_rec.str:=the_message;
   OG_Insert_Smptext(Text_Obj, smp_rec, 0, OG_Last);
END;


OG_Make_Ellipse

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine Ellipse.

Syntax

FUNCTION OG_Make_Ellipse
  (position  OG_Point,
   height    NUMBER,
   width     NUMBER)
RETURN OG_Object;

Parameter

position	x- und y-Koordinaten der Ellipse.
height	Höhe der Ellipse.
width	Breite der Ellipse.

Rückgabewert  Handle zu der neu erstellten Ellipse.


Beispiele für OG_Make_Ellipse

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates an ellipse:
*/

FUNCTION example RETURN OG_Object IS
  object  OG_Object;
  pos     OG_Point;
  height  NUMBER;
  width   NUMBER;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;
  height := 4* OG_Inch;
  width := 4* OG_Inch;

  object := OG_Make_Ellipse(Pos, height, width);
  RETURN(Objekt);
END;


OG_Make_Group

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Gruppenobjekt (beachten Sie, daß die Gruppe leer ist, bis Sie untergeordnete Objekte mit OG_Insert_Child hinzufügen).

Syntax

FUNCTION OG_Make_Group
RETURN OG_Object;

Parameter

Keine.

Rückgabewert  Handle zu der neu erstellten Gruppe.


Beispiele für OG_Make_Group

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a group with the specified name:
*/

FUNCTION example(group_name VARCHAR2) RETURN OG_Object IS
  object  OG_Object;
BEGIN
  object := OG_Make_Group;
  OG_Set_Name(Object, group_name);
  RETURN(Objekt);
END;


OG_Make_Image

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Bild aus Daten, die in einer Datenbanktabelle gespeichert sind.

Syntax

FUNCTION OG_Make_Image
  (query       OG_Query,
   which_data  NUMBER,
   colname     VARCHAR2)
RETURN OG_Object;

Parameter

query	Handle zu der Abfrage, die das Bild aus einer Tabelle in einer Datenbank abruft. Beachten Sie, daß diese Tabelle eine Benutzertabelle sein muß und nicht eine der privaten Tabellen, die von Graphics Builder benutzt werden, wenn Sie ein Modul in die Datenbank speichern oder exportieren.
which_data	Gibt an, ob das zu erstellende Bild in der neuen oder alten Datengruppe der Abfrage enthalten ist. Dieser Wert kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Newdata   Bedeutet, daß das Bild in der neuen Datengruppe der Abfrage enthalten ist. OG_Olddata   Bedeutet, daß das Bild in der alten Datengruppe der Abfrage enthalten ist.
colname	Name der Abfragespalte, die die Bilddaten enthält. Das erstellte Bild ist das Bild, das in der Abfragezelle bei dem Schnittpunkt zwischen der Spalte, die mit diesem Attribut angegeben wird, und der Zeile enthalten ist, auf die der Abfragezeiger zeigt.

Rückgabewert  Handle zu dem neu erstellten Bild.


Beispiele für OG_Make_Image

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates an image from data in the sixth
**row of the query 'image_query' in the column IMAGE_COLUMN:
*/

FUNCTION example(image_name VARCHAR2) RETURN OG_Object IS
  query   OG_Query;
  object  OG_Object;
BEGIN
  query := OG_Get_Query('Image_Query');
  OG_Execute_Query(Query);
  OG_Start_From(Query, OG_Newdata, 5);
  object := OG_Make_Image(Query, OG_Newdata, 'IMAGE_COLUMN');

  OG_Set_Name(Object, image_name);
  RETURN(Objekt);
END;


OG_Make_Line

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt eine Linie.

Syntax

FUNCTION OG_Make_Line
  (startpt  OG_Point,
   endpt    OG_Point)
RETURN OG_Object;

Parameter

startpt	Anfangspunkt der Linie (in Layouteinheiten).
endpt	Endpunkt der Linie (in Layouteinheiten).

Rückgabewert  Handle zu der neu erstellten Linie.


Beispiele für OG_Make_Line

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a 2" horizontal line:
*/

FUNCTION example RETURN OG_Object IS
  object   OG_Object;
  startpt  OG_Point;
  endpt    OG_Point;
BEGIN
  startpt.x := OG_Inch;
  startpt.y := OG_Inch;
  endpt.x := 2 * OG_Inch;
  endpt.y := OG_Inch;

  object := OG_Make_Line(Startpt, endpt);
  RETURN(Objekt);
END;


OG_Make_Poly

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Polygon-/Polygonzug-Objekt (beachten Sie, daß das Objekt erst Punkte enthält, wenn Sie diese mit OG_Insert_Point hinzufügen).

Syntax

FUNCTION OG_Make_Poly
RETURN OG_Object;

Parameter

Keine.

Rückgabewert  Handle zu dem neu erstellten Polygon-/Polygonzugobjekt.


Beispiele für OG_Make_Poly

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a polygon with the specified name:
*/

FUNCTION example(poly_name VARCHAR2) RETURN OG_Object IS
  object  OG_Object;
BEGIN
  object := OG_Make_Poly;
  OG_Set_Name(Object, poly_name);
  RETURN(Objekt);
END;


OG_Make_Rect

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Rechteck.

Syntax

FUNCTION OG_Make_Rect
  (position  OG_Point,
   height    NUMBER,
   width     NUMBER)
RETURN OG_Object;

Parameter

position	x- und y-Koordinaten des Rechtecks.
height	Höhe des Rechtecks.
width	Breite des Rechtecks.

Rückgabewert  Handle zu dem neu erstellten Rechteck.


Beispiele für OG_Make_Rect

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a rectangle:
*/

FUNCTION example RETURN OG_Object IS
  object  OG_Object;
  pos     OG_Point;
  height  NUMBER;
  width   NUMBER;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;
  height := 4* OG_Inch;
  width := 4* OG_Inch;

  object := OG_Make_Rect(Pos, height, width);
  RETURN(Objekt);
END;


OG_Make_Rrect

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein abgerundetes Rechteck.

Syntax

FUNCTION OG_Make_Rrect
  (position  OG_Point,
   height    NUMBER,
   width     NUMBER)
RETURN OG_Object;

Parameter

position	x- und y-Koordinaten des abgerundeten Rechtecks.
height	Höhe des abgerundeten Rechtecks.
width	Breite des abgerundeten Rechtecks.

Rückgabewert  Handle zu dem neu erstellten abgerundeten Rechteck.


Beispiele für OG_Make_Rrect

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a rounded rectangle:
*/

FUNCTION example RETURN OG_Object IS
  object  OG_Object;
  pos     OG_Point;
  height  NUMBER;
  width   NUMBER;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;
  height := 4* OG_Inch;
  width := 4* OG_Inch;

  object := OG_Make_Rrect(Pos, height, width);
  RETURN(Objekt);
END;


OG_Make_Symbol

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Symbol.

Syntax

FUNCTION OG_Make_Symbol
  (position  OG_Point,
   indx      NUMBER,
   symsize   NUMBER)
RETURN OG_Object;

Parameter

position	Mittelpunkt des Symbols.
indx	Index (oder Nummer) der Symbolposition, wie sie in der Symbolpalette im Builder angezeigt wird.
symsize	Symbolgröße. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen: OG_Large_Symsize    OG_Medium_Symsize    OG_Small_Symsize
Rückgabewert  Handle zu dem neu erstellten Symbol.


Beispiele für OG_Make_Symbol

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a symbol:
*/

FUNCTION example RETURN OG_Object IS
  symbol  OG_Object;
  pos     OG_Point;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;

  symbol := OG_Make_Symbol(Pos, 5, OG_Large_Symsize);
  RETURN(symbol);

END;


OG_Make_Text

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion erstellt ein Textobjekt.

Syntax

FUNCTION OG_Make_Text
  (position  OG_Point,
RETURN OG_Object;

OG_Make_Text
  (position  OG_Point,
   string    VARCHAR2)
RETURN OG_Object;

OG_Make_Text
  (position  OG_Point,
   string    VARCHAR2,
   ptsize    NUMBER)
RETURN OG_Object;

Parameter

position	x- und y-Koordinaten des Textobjekts.
string	Textfolge.
ptsize	Punktgröße.

Rückgabewert  Ein Handle zu dem neu erstellten Textobjekt.


Beispiele für OG_Make_Text

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following function creates a text object:
*/

FUNCTION example RETURN OG_Object IS
  object  OG_Object;
  pos     OG_Point;
BEGIN
  pos.x := OG_Inch;
  pos.y := OG_Inch;
  object := OG_Make_Text(Pos, 'Sales Rankings');
  RETURN(Objekt);
END;


OG_Move

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur verschiebt das angegebene Objekt an eine andere Stelle in dem Layout.

Syntax

PROCEDURE OG_Move
  (object_hdl   OG_Object,
   offset       OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object_hdl	Handle zu dem zu verschiebenden Objekt.
offset	Relative Distanz, um die das Objekt von der aktuellen Position verschoben werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Beachten Sie, daß Sie das Objekt aus dem Layout heraus verschieben können, indem Sie einen Offset-Wert angeben, der zu negativen Koordinaten führt.

Bei positiven Werten für die x- und y-Komponenten von offset wird das Objekt nach rechts unten verschoben. Bei negativen Werten wird das Objekt nach links oben verschoben.

Um ein Objekt zu einer absoluten Position auf dem Layout zu verschieben, legen Sie die neue Position in dem entsprechenden Attributsatz fest.


Beispiele für OG_Move

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have an object that represents inventory in a warehouse.
**If the inventory is moved from one warehouse to another, you would
**want to move the object that represents it.
*/

PROCEDURE move_inventory(invent_obj IN OG_Object) IS
   distance   OG_Point;
BEGIN
   distance.x:=(3*OG_Inch);
   distance.y:=(3*OG_Inch);
   OG_Move(Invent_Obj, distance);
END;


OG_Point_In

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion legt fest, ob der angegebene Referenzpunkt innerhalb des Füllbereichs eines Objektes liegt.

Syntax

FUNCTION OG_Point_In
  (object_hdl  OG_Object,
   ref_pt      OG_Point,
   aperture    OG_Point)
RETURN OG_Object;

FUNCTION OG_Point_In
  (window_hdl  OG_Window,
   ref_pt      OG_Point,
   aperture    OG_Point)
RETURN OG_Object;

Parameter

object_hdl	Handle zu dem zu prüfenden Objekt.
window_hdl	Handle zu dem zu prüfenden Fenster.
ref_pt	Referenzpunkt.
aperture	Maximal zulässige Distanz vom Referenzpunkt (wird nur benutzt, wenn für object_hdl ein transparentes Füllmuster angegeben wurde).

Rückgabewert  Wenn der angegebene Referenzpunkt innerhalb des Füllbereichs eines Objektes liegt, gibt die Funktion das Handle zu diesem Objekt zurück. Wenn der Punkt nicht innerhalb des Füllbereichs eines Objekts liegt, gibt die Funktion ein Null-Handle zurück.

Verwendungshinweise  Diese Funktion wird besonders bei der Überwachung der Mausaktivitäten eines Benutzers verwendet. So könnten Sie z.B. eine Schaltflächenprozedur für ein Gruppenobjekt schreiben und den Ereignisdatensatz in der Prozedurkopfzeile verwenden, um die Position der Maus zu bestimmen, wenn mit der Maus geklickt oder die Maus bewegt wird. Danach könnten Sie OG_Point_In oder OG_Point_Near aufrufen und das Gruppenobjekt sowie die Mauskoordinaten als Argumente übergeben. Die Funktion gibt dann das einzelne Objekt in der Gruppe zurück, auf die der Benutzer geklickt hat.

Beachten Sie, daß diese Funktion nur bestimmt, ob der Punkt innerhalb des Füllbereichs eines Objekts liegt. Wenn der Punkt direkt auf dem Rand eines Objekts liegt, gibt diese Funktion ein Null-Handle zurück. (Diese Funktion geht davon aus, daß der Objektrand die kleinstmögliche Stärke hat. Der von einem dicken Rand umgebene Bereich wird ignoriert.) Wenn das Objekt ein transparentes Füllmuster hat (und somit keinen Füllbereich), entspricht diese Funktion standardmäßig dem Verhalten von OG_Point_Near. Beachten Sie, daß das Argument aperture von OG_Point_In nicht verwendet wird, sondern an OG_Point_Near übergeben wird, wenn das Objekt ein transparentes Füllmuster hat.

Wenn ein einzelnes Objekt als Argument angegeben wird, prüft diese Funktion, ob der Punkt innerhalb dieses Objektes liegt. Wenn ein Gruppenobjekt angegeben wird, prüft diese Funktion jedes Element der Gruppe (und Untergruppen) und gibt das oberste einzelne Objekt zurück, in dem der Punkt liegt (oder ein Null-Handle, wenn der Punkt nicht innerhalb eines Objekts in der Gruppe liegt). Beachten Sie, daß eine Ebene als Objektgruppe übergeben werden kann. Wenn ein Fenster anstelle eines Objekts angegeben wird, prüft diese Funktion ebenfalls jedes Objekt in dem Fenster.

Wenn der Punkt innerhalb von mehr als einem Objekt liegt, wird das Objekt zurückgegeben, das in der Gruppenstruktur an oberster Stelle steht.


Beispiele für OG_Point_In

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your application allows the user to click on an object and drag it on
**top of other objects that are within a group.  When the user releases the mouse
**button, you want to determine which object the mouse is pointing to, and destroy it.
**The following procedure could be used as a button procedure for the object that was dragged.
*/

PROCEDURE destroy_target (hitobj IN OG_Object, buttonobj IN
OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
   the_group    OG_Object;
   aper         OG_Point;
   target_obj   OG_Object;
BEGIN
   IF eventinfo.event_type=OG_Mouse_Up THEN
      the_group:=OG_Get_Object('Big_Group');
      aper.x:=3*OG_App.HSCREEN_RES;   /* three pixels */
      aper.y:=3*OG_App.VSCREEN_RES;   /* three pixels */
      target_obj:=OG_Point_In(The_Group,
        eventinfo.mouse_position, aper);
      IF not(OG_Isnull(Target_Obj)) THEN
         OG_Destroy(Target_Obj);
      END IF;
   END IF;
END;


OG_Point_Near

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt, ob der angegebene Referenzpunkt auf dem Rand eines Objektes liegt.

Syntax

FUNCTION OG_Point_Near
  (object_hdl  OG_Object,
   ref_pt      OG_Point,
   aperture    OG_Point)
RETURN OG_Object;

FUNCTION OG_Point_Near
  (window_hdl  OG_Window,
   ref_pt      OG_Point,
   aperture    OG_Point)
RETURN OG_Object;

Parameter

object_hdl	Handle zu dem zu überprüfenden Objekt.
window_hdl	Handle zu dem zu überprüfenden Fenster.
ref_pt	Referenzpunkt.
aperture	Maximal zulässige Entfernung von dem Referenzpunkt.

Rückgabewert  Wenn der angegebene Referenzpunkt auf dem Rand eines Objektes liegt, gibt die Funktion das Handle zu diesem Objekt zurück. Wenn der Punkt nicht auf dem Rand eines Objektes liegt, gibt die Funktion ein Null-Handle zurück.

Verwendungshinweise  Diese Funktion wird besonders bei der Überprüfung der Mausaktivität eines Benutzers verwendet. Sie könnten z.B. eine Schaltflächenprozedur für ein Gruppenobjekt schreiben und den Ereignisdatensatz in der Prozedurkopfzeile benutzen, um die Position der Maus zu bestimmen, wenn mit der Maus geklickt oder die Maus bewegt wird. Danach könnten Sie OG_Point_In oder OG_Point_Near aufrufen und das Gruppenobjekt sowie die Mauskoordinaten als Argumente übergeben. Die Funktion gibt dann das einzelne Objekt zurück, auf das der Benutzer geklickt hat.

Beachten Sie, daß diese Funktion ein Null-Handle zurückgibt, wenn das Objekt ein transparentes Randmuster hat.

Wenn ein einzelnes Objekt als Argument angegeben wird, prüft diese Funktion, ob der Punkt auf dem Rand dieses Objekts liegt. Wenn ein Gruppenobjekt angegeben wird, prüft diese Funktion jedes Element der Gruppe (und Untergruppen) und gibt das einzelne Objekt zurück, auf dessen Rand der Punkt liegt (oder ein Null-Handle, wenn der Punkt nicht auf dem Rand eines Objektes in der Gruppe liegt). Beachten Sie, daß eine Ebene als Gruppenobjekt übergeben werden kann. Wenn ein Fenster anstelle eines Objekts angegeben wird, prüft diese Funktion ebenfalls jedes Objekt in dem Fenster.

Das Argument aperture gibt an, wie weit der Referenzpunkt maximal vom Rand eines Objekts entfernt sein kann und dennoch das Handle zu diesem Objekt zurückgibt. Wenn der mit aperture angegebene Bereich in den Rand des Objekts reicht, gibt OG_Point_Near das Handle zu dem Objekt zurück. Beachten Sie, daß für aperture sowohl eine x- als auch eine y-Komponente angegeben wird.

Wenn der Punkt innerhalb von mehr als einem Objekt liegt, wird das Objekt zurückgegeben, das in der Gruppenstruktur an oberster Stelle steht.

Typischerweise werden Sie den aperture-Wert verwenden, um dem Benutzer eine Fehlerspanne zu gewähren, die eine ungenauere Positionierung der Maus ermöglicht. In diesem Fall würden Sie die x- und y-Komponenten des aperture-Wertes auf denselben Wert einstellen, möglicherweise dem Äquivalent von drei Bildschirmpixel.


Beispiele für OG_Point_Near

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose your application allows the user to click on an object and drag it
**to the edge of other objects that are within a group.  When the user releases
**the mouse button, you want to determine which object's edge the mouse
**is pointing to, and destroy it. The following procedure could be used as a
**button procedure for the object that was dragged.
*/

PROCEDURE destroy_target (hitobj IN OG_Object, buttonobj IN
  OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
   the_group    OG_Object;
   aper         OG_Point;
   target_obj   OG_Object;
BEGIN
   IF eventinfo.event_type=OG_Mouse_Up THEN
      the_group:=OG_Get_Object('Big_Group');
      aper.x:=3*OG_App.HSCREEN_RES;   /* three pixels */
      aper.y:=3*OG_App.VSCREEN_RES;   /* three pixels */
      target_obj:=OG_Point_Near(The_Group,
        eventinfo.mouse_position, aper);
      IF not(OG_Isnull(Target_Obj)) THEN
         OG_Destroy(Target_Obj);
      END IF;
   END IF;
END;


OG_Property_Exists

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion bestimmt, ob ein benutzerdefiniertes Attribut für ein bestimmtes Objekt erstellt wurde.

Syntax

FUNCTION OG_Property_Exists
  (object_hdl  OG_Object,
   prop_name   VARCHAR2)
RETURN BOOLEAN;

Parameter

object_hdl	Handle zu dem Objekt, das das Attribut enthält.
prop_name	Name des Attributs, dessen Vorhandensein überprüft werden soll.
Rückgabewert TRUE	Wenn das Attribut vorhanden ist.
FALSE	Wenn das Attribut nicht vorhanden ist.


Beispiele für OG_Property_Exists

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure adds the property 'priority' to an object, if it doesn't already exist:
*/

PROCEDURE example(object OG_Object) IS
BEGIN
  IF NOT OG_Property_Exists(Object, 'priority') THEN
    OG_Set_Property(Object, 'priority', 10);
  END IF;
END;


OG_Rotate

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur dreht das angegebene Objekt um die angegebene Anzahl von Grad gegen den Uhrzeigersinn.

Syntax

PROCEDURE OG_Rotate
  (object_hdl   OG_Object,
   center_pt    OG_Point,
   degrees      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object_hdl	Handle zu dem zu drehenden Objekt.
center_pt	Punkt in dem Layout, der als Drehmittelpunkt benutzt werden soll.
degrees	Anzahl von Grad gegen den Uhrzeigersinn, um die das Objekt gedreht werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für OG_Rotate

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you have a display that contains a dial.  The needle of the dial
**points at specific values along the face of the dial.  When the data changes,
**you may want to rotate the needle to point to a new value.
*/

PROCEDURE rotate_needle (degrees IN NUMBER,
  center_pt IN OG_Point) IS
   the_needle   OG_Object;
BEGIN
   the_needle:=OG_Get_Object('Needle 1');
   OG_Rotate(The_Needle, center_pt, degrees);
END;


OG_Same

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion vergleicht, ob die beiden Handles identisch sind. Wenn Sie z.B. diese Funktions-Handles an zwei Objekte übergeben, wird geprüft, ob die beiden Handles auf dasselbe Objekt zeigen.

Syntax

FUNCTION OG_Same                             Objekt
  (handle1  OG_Object,
   handle2  OG_Object)
RETURN BOOLEAN;

FUNCTION OG_Same                             Abfrage
  (handle1  OG_Query,
   handle2  OG_Query)
RETURN BOOLEAN;

FUNCTION OG_Same                             Diagrammvorlage
  (handle1  OG_Template,
   handle2  OG_Template)
   RETURN BOOLEAN;

FUNCTION OG_Same                             Schaltflächenprozedur
  (handle1  OG_Buttonproc,
   handle2  OG_Buttonproc)
RETURN BOOLEAN;

FUNCTION OG_Same                             Klang
  (handle1  OG_Sound,
   handle2  OG_Sound)
RETURN BOOLEAN;

FUNCTION OG_Same                             Fenster
  (handle1  OG_Window,
   handle2  OG_Window)
RETURN BOOLEAN;

FUNCTION OG_Same                             Ebene
  (handle1  OG_Layer,
   handle2  OG_Layer)
RETURN BOOLEAN;

FUNCTION OG_Same                             Timer
  (handle1  OG_Timer,
   handle2  OG_Timer)
RETURN BOOLEAN;

FUNCTION OG_Same                             Grafische Anwendung
  (handle1  OG_Display,
   handle2  OG_Display)
RETURN BOOLEAN;

FUNCTION OG_Same                             Achse
  (handle1  OG_Axis,
   handle2  OG_Axis)
RETURN BOOLEAN;

FUNCTION OG_Same                             Feldvorlage
  (handle1  OG_Ftemp,
   handle2  OG_Ftemp)
RETURN BOOLEAN;

FUNCTION OG_Same                             Referenzlinie
  (handle1  OG_Refline,
   handle2  OG_Refline)
RETURN BOOLEAN;

Parameter

handle1	Das erste von zwei zu vergleichenden Handles.
handle2	Das zweite von zwei zu vergleichenden Handles.

Rückgabewert

TRUE	Wenn die beiden Handles identisch sind.
FALSE	Wenn die beiden Handles nicht identisch sind.

Verwendungshinweise  Diese Funktion ist erforderlich, weil Sie "=" nicht benutzen können, um die Werte von Handles zu vergleichen. Die folgende Prozedur ist z.B. nicht zulässig:

PROCEDURE invalid (obj1 OG_Object, obj2 OG_Object) IS
BEGIN
   IF obj1 = obj2 THEN     --illegal comparison
      NULL;
   END IF;
END;


Beispiele für OG_Same

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to compare two objects to see if they are the same.
**The following function returns TRUE if they are the same and FALSE if they are not:
*/

FUNCTION compare (obj1 OG_Object, obj2 OG_Object) RETURN BOOLEAN IS
BEGIN
   IF OG_Same(Obj1, obj2) THEN
      RETURN(TRUE);
   ELSE
      RETURN(FALSE);
   END IF;
END;


OG_Scale

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur skaliert das angegebene Objekt.

Syntax

PROCEDURE OG_Scale
  (object_hdl.  OG_Object,
   anchor       OG_Point,
   oldpt        OG_Point,
   newpt        OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object_hdl	Handle zu dem zu skalierenden Objekt.
anchor	Ankerpunkt des Objekts.
oldpt	Anfangspunkt.
newpt	Endpunkt.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.

Verwendungshinweise  Der Skalierungsfaktor wird berechnet, indem die Distanz zwischen dem neuen Punkt und dem Ankerpunkt und die Distanz zwischen dem alten Punkt und dem Ankerpunkt genommen wird. Das Verhältnis dieser beiden Distanzen entspricht dem Skalierungsfaktor. Ein separater Skalierungsfaktor wird für die x- und y-Koordinaten berechnet.

Die relative Position von jedem der Steuerungspunkte des Objektes bezogen auf den Ankerpunkt wird dann um diesen Faktor skaliert. Beachten Sie, daß, wenn die x- und y-Skalierungsfaktoren identisch sind, das Objekt unter Beibehaltung des Größen-/Breiten-Verhältnisses skaliert wird (d.h. ein Quadrat bleibt ein Quadrat).

Um z.B. die Größe eines Objektes zu verdoppeln, dessen oberer linker Steuerungspunkt bei (OG_Inch, OG_Inch) liegt, können Sie die folgenden Werte benutzen:  anchor = (OG_Inch, OG_Inch), oldpt = (OG_Inch+1, OG_Inch+1), newpt = (OG_Inch+2, OG_Inch+2). Somit wäre der x-Skalierungsfaktor: (newpt.x-anchor.x) / (oldpt.x-anchor.x) = (OG_Inch+2-OG_Inch) / (OG_Inch+1-OG_Inch) = 2 / 1 = 2. Der y-Skalierungsfaktor wäre:  (newpt.y-anchor.y) / (oldpt.y-anchor.y) = (OG_Inch+2-OG_Inch) / (OG_Inch+1-OG_Inch) = 2 / 1 = 2.

Die Distanz zwischen dem Ankerpunkt und jedem der Steuerungspunkte des Objektes wird dann um diesen Faktor skaliert. Wenn der Skalierungsfaktor bei dem obigen Beispiel 2 ist und der untere rechte Steuerungspunkt des Objektes 1,5 Zoll rechts neben dem Ankerpunkt liegt, wird der Steuerungspunkt an eine Position verschoben, die 3 Zoll rechts neben dem Ankerpunkt liegt. Die anderen Steuerungspunkte des Objektes werden ähnlich verschoben.

Wenn ein Steuerungspunkt als Ankerpunkt benutzt wird, muß beachtet werden, daß sich seine Position nicht verändert (weil die Distanz zwischen dem Steuerungspunkt und dem Ankerpunkt 0 wäre).

Mit dieser Prozedur können Sie auch das angegebene Objekt skalieren, so als hätten Sie das Werkzeug Auswählen benutzt, um auf einen Steuerungspunkt zu klicken und diesen an eine andere Stelle in dem Layout zu ziehen. Der Ankerpunkt ist der Steuerungspunkt, der während des Vorgangs nicht verschoben wird (d.h. der Punkt diagonal gegenüber dem Punkt, den Sie in dem Layout ziehen). Der zu verschiebende Steuerungspunkt ist oldpt, und newpt ist die neue Stelle, an die der Steuerungspunkt verschoben werden soll.


Beispiele für OG_Scale

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to double the size of the object that the user selects.
**Assume the object's center is at (OG_Inch, OG_Inch), and use this point as
**the anchor.  The following button procedure will double the size of the object:
*/

PROCEDURE double (buttonobj IN OG_Object, hitobj IN
  OG_Object, win IN OG_Window, eventinfo IN OG_Event) IS
   anchor OG_Point;
   newpt OG_Point;
   oldpt OG_Point;
BEGIN
   anchor.x:=OG_Inch;
   anchor.y:=OG_Inch;
   oldpt.x:=OG_Inch+1;
   oldpt.y:=OG_Inch+1;
   newpt.x:=OG_Inch+2;
   newpt.y:=OG_Inch+2;
   OG_Scale(Hitobj, anchor, oldpt, newpt);
END;


OG_Set_Edgecolor

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Randfarbe des angegebenen Objektes. Sie legt das Randmuster auf 'transparent' und die Hintergrundrandfarbe auf die angegebene Farbe fest.

Syntax

PROCEDURE OG_Set_Edgecolor
  (object       OG_Object,
   color        VARCHAR2
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object	Handle zu dem zu ändernden Objekt.
color	Name der Farbe.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für OG_Set_Edgecolor

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the edge color of the specified object:
*/

PROCEDURE example(object OG_Object) IS
BEGIN
  OG_Set_Edgecolor(Object, 'red');
END;


OG_Set_Fillcolor

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt die Füllfarbe des angegebenen Objekts. Sie legt die Füllfarbe auf 'transparent' und die Hintergrundfüllfarbe auf die angegebene Farbe fest.

Syntax

PROCEDURE OG_Set_Fillcolor
  (object       OG_Object,
   color        VARCHAR2
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

object	Handle zu dem zu ändernden Objekt.
color	Name der Farbe.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für OG_Set_Fillcolor

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure sets the fill color of the specified object:
*/

PROCEDURE example(object OG_Object) IS
BEGIN
  OG_Set_Fillcolor(Object, 'red');
END;


OG_Set_Property

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur bestimmt den Wert eines benutzerdefinierten Attributs eines Objekts.

Syntax

PROCEDURE OG_Set_Property                    Datum
  (object_hdl  OG_Object,
   prop_name   VARCHAR2,
   prop_value  VARCHAR2,
   date_fmt    VARCHAR2   := 'DD-MON-YY');

PROCEDURE OG_Set_Property                    Zahl
  (object_hdl  OG_Object,
   prop_name   VARCHAR2,
   prop_value  NUMBER);

PROCEDURE OG_Set_Property                    Char
  (object_hdl  OG_Object,:
   prop_name   VARCHAR2,
   prop_value  VARCHAR2,);

Parameter

object_hdl	Handle zu dem Objekt, dessen Attribut eingestellt werden soll.
prop_name	Name des einzustellenden Attributs.
prop_value	Wert, auf den das Attribut eingestellt wird.
date_fmt	Datumsformatmaske für die Konvertierung der Zeichenfolge prop_value in ein Datum.

Verwendungshinweise  Wenn das Attribut vorhanden ist, ändert diese Prozedur dessen Wert. Wenn das Attribut nicht vorhanden ist, erstellt diese Prozedur das Attribut und legt dessen Wert fest, ohne einen Fehler auszulösen.


Beispiele für OG_Set_Property

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets the 'priority' property in each child object in a
**group, and then sets the priority to one greater than its current value:
*/

PROCEDURE example(group_name VARCHAR2) IS
  group_obj    OG_Object;
  child_count  NUMBER;
  child_obj    OG_Object;
  current_p    NUMBER;
BEGIN
  group_obj := OG_Get_Object(Group_Name);
  child_count := OG_Get_Childcount(Group_Obj);

  FOR i IN 0..child_count-1 LOOP
    child_obj := OG_Get_Child(Group_Obj, i);
    current_p := OG_Get_Num_Property(Child_Obj, 'priority');
    OG_Set_Property(Child_Obj, 'priority', current_p + 1);
  END LOOP;
END;


OG_Synchronize

  Beispiele	  Verwandte Themen

Beschreibung  Diese Prozedur erzwingt, daß die Veränderungsbereiche in allen Fenstern neu gezeichnet werden. Sie "synchronisiert" die internen Beschreibungen aller Objekte mit deren visueller Darstellung.

Syntax

PROCEDURE OG_Synchronize;

Parameter

Keine.

Verwendungshinweise  Beachten Sie, daß in Ihren eigenen PL/SQL-Programmen eine implizite Prozedur OG_Synchronize am Ende der Prozedur oder Funktion der obersten Ebene ausgeführt wird, die aufgerufen wird.


Beispiele für OG_Synchronize

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Suppose you want to move an object across the display in ten 1/4" increments.
**Instead of moving it multiple times and having it update visually only at the end
**of the procedure, you may want to "synchronize" the layout with the internal
**representation of the object after each move.
*/

PROCEDURE slide_across(the_object IN OG_Object) IS
   offset   OG_Point;
BEGIN
   offset.x:=(1/4)*OG_Inch;
   offset.y:=0;
   FOR i IN 1..10 LOOP
      move(the_object, offset);
      OG_Synchronize;
   END LOOP;
END;


OG_Update_Bbox

  Beispiele	  Verwandte Themen

Beschreibung  Diese Funktion aktualisiert die Umrandung(en) eines Objekts. Wenn das Objekt eine Gruppe ist, werden die Umrandungen aller untergeordneten Objekte ebenfalls aktualisiert.

Syntax

PROCEDURE OG_Update_Bbox
  (object_hdl  OG_Object,
   which_bbox  NUMBER);

Parameter

object_hdl	Handle zu dem zu aktualisierenden Objekt.
which_bbox	Gibt an, ob die innere oder äußere Umrandung aktualisiert wird. Der Wert dieses Arguments kann einer der folgenden vordefinierten Konstanten entsprechen:  OG_Bothbbox   Bedeutet, daß sowohl die innere als auch die äußere Umrandung aktualisiert wird. OG_Innerbbox   Bedeutet, daß nur die innere Umrandung aktualisiert wird. OG_Outerbbox   Bedeutet, daß nur die äußere Umrandung aktualisiert wird.


Beispiele für OG_Update_Bbox

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*Suppose you want to move an object.  The default behavior
**of the built-in procedure OG_Move is to update the bounding
**boxes of all of the modified object's antecedants, including
**the layer on which the object resides.  To update a layer's
**bounding boxes, Graphics Builder must examine every object on that layer.
**If the layer contains a large number of objects, this operation
**can be very time-consuming.*/

 /*To make your application more efficient, you can move the
**object while inhibiting this automatic bounding box update,
**then explicitly update only that object's bounding boxes.
**(Note that since the automatic bounding box update does not
**occur, the bounding boxes of the object's antecedants
**may be inaccurate.)
*/

/*When you modify an object with a FALSE bounding box update
**flag, you may also want to use a FALSE damage flag.  In this case,
**when you are through modifying the object, you would invoke
**OG_Damage to explicitly damage the object.
*/

PROCEDURE move_efficiently (the_object OG_Object) IS
   offset   OG_Point;
BEGIN
   offset.x:=OG_Inch;
   offset.y:=OG_Inch;
   OG_Move(The_Object, offset, FALSE, FALSE)
   OG_Update_Bbox(The_Object, OG_Bothbbox);
   OG_Damage(The_Object);

END;


Type Caption for New Topic Right Here
Mit diesem Buchstaben beginnen keine vordefinierten Unterprogramme.


Alphabetische Liste der Attribute in vordefinierten Unterprogrammen

Attribut Aktiv (Timer)

Attribut Anzahl Feldvorlagen (Rahmen, Allgemein)

Attribut Bereich (Diagramm)

Attribut Beschriftung (Referenzlinie)

Attribut Cache-Typ (Abfrage)

Attribut Grobraster (Achse, Allgemein)

Attribut Hintergrundrandfarbe (Grafik)

Attribut Höhe (Grafische Anwendung)

Attribut Index (Symbol)

Attribut Join-Stil (Grafik)

Attribut Kerning (Text)

Attribut Objekttyp (Allgemein)

Attribut Qualität (Bild)

Attribut Randmuster (Grafik)

Attribut Schriftstärke (Text)

Attribut Seitengröße (Drucker)

Attribut Skalierbare Umrandung (Text)

Attribut Strichart (Grafik)

Attribut Verwendung (Rahmen, Kreisdiagramm)

Attribut Vorlage (Diagramm)

Attribut Wertformat (Rahmen, Kreisdiagramm)

Attribut Zeilen pro horizontale Linie (Rahmen, Tabellendiagramm)

Atttribut Name (Diagrammelement)

Attribut Abfrage (Diagramm)

Attribut Abfrage ausführen (Allgemein)

Attribut Abfragequelle (Abfrage)

Attribut Abfragetyp (Abfrage)

Attribut Achse (Feldvorlage, Achsendiagramm)

Attribut Achse (Referenzlinie)

Attribut Achsenbeschriftung (Achse, Allgemein)

Attribut Achsentyp (Achse, Allgemein)

Attribut Andere (Rahmen, Kreisdiagramm)

Attribut Anfangspunkt (Linie)

Attribut Anfangsseite (Drucker)

Attribut Anfangszeile (Diagramm)

Attribut Anzahl der Spalten in der Legende (Rahmen, Allgemein)

Attribut Anzahl Punkte (Polygon)

Attribut Anzahl untergeordneter Objekte (Gruppe)

Attribut Auflösen (Diagrammelement)

Attribut Ausdruck in Datei (Drucker)

Attribut Ausführen bei Öffnen (Abfrage)

Attribut Ausführen bei Timer (Abfrage)

Attribut Äußere Umrandung (Allgemein)

Attribut Auto Maximum (Achse, Datum)

Attribut Auto Maximum (Achse, Kategorien)

Attribut Auto Maximum (Achse, Werte)

Attribut Auto Maximum (Rahmen, Tabellendiagramm)

Attribut Auto Minimum (Achse, Datum)

Attribut Auto Minimum (Achse, Kategorien)

Attribut Auto Minimum (Achse, Werte)

Attribut Auto Minimum (Rahmen, Tabellendiagramm)

Attribut Auto Schrittgröße (Achse, Datum)

Attribut Auto Schrittgröße (Achse, Werte)

Attribut Automatisch aktualisieren (Diagramm)

Attribut Basisbogen (Bogen)

Attribut Basislinie Achse (Rahmen, Achsendiagramm)

Attribut Basisrechteck (Abgerundetes Rechteck)

Attribut Basisrechteck (Rechteck)

Attribut Begrenzungslinie (Bogen)

Attribut Begrenzungslinie (Polygon)

Attribut Begrenzungsmarke (Gruppe)

Attribut Begrenzungsrechteck (Bild)

Attribut Benutzerdefinierte Abfrageprozedur (Abfrage)

Attribut Benutzerdefinierte Beschriftung (Achse, Allgemein)

Attribut Benutzerdefinierter Zeilenabstand (Text)

Attribut Benutzerdefiniertes Datumsformat (Rahmen, Achsendiagramm)

Attribut Benutzerdefiniertes Zahlenformat (Rahmen, Achsendiagramm)

Attribut Benutzername (Anwendung)

Attribut Beschriftungen (Achse, Datum)

Attribut Breite (Bild)

Attribut Breite (Fenster)

Attribut Breite (Grafische Anwendung)

Attribut Breite (Text)

Attribut Breite Umrandung (Text)

Attribut Close-Trigger (Grafische Anwendung)

Attribut Cursor (Anwendung)

Attribut Darstellungsrahmen (Rahmen, Allgemein)

Attribut Darstellungsreihenfolge (Rahmen, Kreisdiagramm)

Attribut Darstellungstyp (Feldvorlage, Achsendiagramm)

Attribut Datenwerte (Rahmen, Kreisdiagramm)

Attribut Datumsformat  (Grafische Anwendung)

Attribut Datumsformat (Abfrage)

Attribut Datumsformat (Achse, Kategorien)

Attribut Datumswert (Referenzlinie)

Attribut DB-Adresse (Anwendung)

Attribut DB-Adresse (Anwendung)

Attribut Dithering (Bild)

Attribut Drehung der Beschriftung (Feldvorlage, Achsendiagramm)

Attribut Drehung der Teilungsbeschriftung (Achse, Allgemein)

Attribut Drehwinkel (Grafik)

Attribut Einfacher Textzähler (Zusammengesetzter Text)

Attribut Endpunkt (Linie)

Attribut Endseite (Drucker)

Attribut Endzeile (Diagramm)

Attribut Ereignistypen (Allgemein)

Attribut Ereignistypen (Diagrammelement)

Attribut Erster Monat (Achse, Datum)

Attribut Farbe (Einfacher Text)

Attribut Farbe (Text)

Attribut Feinraster (Achse, Allgemein)

Attribut Feinteilungen (Achse, Allgemein)

Attribut Feinteilungen pro Intervall (Achse, Allgemein)

Attribut Feste Umrandung (Text)

Attribut Filter (Diagramm)

Attribut Format Benutzerdefiniert (Achse, Datum)

Attribut Format Monat (Achse, Datum)

Attribut Format Quartal (Achse, Datum)

Attribut Format Tag (Achse, Datum)

Attribut Format-Trigger (Allgemein)

Attribut Füllen (Bogen)

Attribut Füllmuster (Grafik)

Attribut Grobteilungen (Achse, Allgemein)

Attribut Größe und Position (Diagramm)

Attribut Hauptfenster (Feldvorlage, Allgemein)

Attribut Hauptfenster (Rahmen, Allgemein)

Attribut Hilfeziel (Fenster)

Attribut Hintergrundfüllfarbe (Grafik)

Attribut Höhe (Bild)

Attribut Höhe (Fenster)

Attribut Höhe Umrandung (Text)

Attribut Horizontal (Text)

Attribut Horizontale Ausrichtung (Text)

Attribut Horizontale Bildschirmauflösung (Anwendung)

Attribut Horizontale Layoutauflösung (Anwendung)

Attribut Horizontale Rasterlinien (Rahmen, Tabellendiagramm)

Attribut Innere Umrandung (Allgemein)

Attribut Intervall (Timer)

Attribut Kategorie Datumsformat (Rahmen, Kreisdiagramm)

Attribut Kategorie Zahlenformat (Rahmen, Kreisdiagramm)

Attribut Kategorien (Rahmen, Kreisdiagramm)

Attribut Kategorienbreite (Rahmen, Achsendiagramm)

Attribut Kennwort (Anwendung)

Attribut Kopien (Drucker)

Attribut Kurventyp (Feldvorlage, Achsendiagramm)

Attribut Legende (Rahmen, Allgemein)

Attribut Linienende (Grafik)

Attribut Linienstil (Feldvorlage, Achsendiagramm)

Attribut Maßstab  (Achse, Werte)

Attribut Max. Anzahl an Kategorien (Achse, Kategorien)

Attribut Max. Anzahl Zeilen (Abfrage)

Attribut Max. Anzahl Zeilen (Rahmen, Tabellendiagramm)

Attribut Maximum (Achse, Datum)

Attribut Maximum (Achse, Werte)

Attribut Min. Anzahl an Kategorien (Achse, Kategorien)

Attribut Min. Anzahl Zeilen (Rahmen, Tabellendiagramm)

Attribut Minimum (Achse, Datum)

Attribut Minimum (Achse, Werte)

Attribut Mitte (Symbol)

Attribut Nächste (Text)

Attribut Name (Abfrage)

Attribut Name (Allgemein)

Attribut Name (Drucker)

Attribut Name (Feldvorlage, Allgemein)

Attribut Name (Feldvorlage, Allgemein)

Attribut Name (Fenster)

Attribut Name (Klang)

Attribut Name (Rahmen, Allgemein)

Attribut Name (Timer)

Attribut Open-Trigger (Grafische Anwendung)

Attribut Parameter setzen (Allgemein)

Attribut Pfeilart (Linie)

Attribut Plattform (Anwendung)

Attribut Position (Achse, Allgemein)

Attribut Position (Bild)

Attribut Position (Fenster)

Attribut Position der Darstellung (Feldvorlage, Achsendiagramm)

Attribut Position der Teilungen (Achse, Allgemein)

Attribut Post-Query-Trigger-Prozedur (Abfrage)

Attribut Prozedur (Timer)

Attribut Prozent mit (Achse, Werte)

Attribut Prozent von (Achse, Werte)

Attribut Prozentwerte (Rahmen, Kreisdiagramm)

Attribut Punktgröße (Text)

Attribut Querformat  (Drucker)

Attribut Rahmentyp (Rahmen, Allgemein)

Attribut Randbreite (Grafik)

Attribut Referenzlinienzähler (Rahmen, Achsendiagramm)

Attribut Richtung (Achse, Allgemein)

Attribut Schaltflächenprozedur (Allgemein)

Attribut Schaltflächenprozedur(Diagrammelement)

Attribut Schattengröße (Rahmen, Allgemein)

Attribut Schattenrichtung (Rahmen, Allgemein)

Attribut Schrift (Text)

Attribut Schriftart (Einfacher Text)

Attribut Schrittgröße (Achse, Datum)

Attribut Schrittgröße (Achse, Werte)

Attribut Skalierbare Schriftart (Text)

Attribut Spalte (Allgemein)

Attribut Spaltenname (Rahmen, Tabellendiagramm)

Attribut Stil (Text)

Attribut Symbolgröße (Symbol)

Attribut Synthesize (Text)

Attribut Teilungen (Rahmen, Kreisdiagramm)

Attribut Teilungsbeschriftungen (Achse, Allgemein)

Attribut Textfolge (Einfacher Text)

Attribut Tiefe (Rahmen, Allgemein)

Attribut Titel (Diagramm)

Attribut Transfermodus (Grafik)

Attribut Übergeordnetes Objekt (Allgemein)

Attribut Überlappend (Feldvorlage, Achsendiagramm)

Attribut Überschneidung verhindern (Rahmen, Kreisdiagramm)

Attribut Umbruch (Text)

Attribut Umrißstil (Grafik)

Attribut Unsichtbar (Text)

Attribut Ursprung (Text)

Attribut Vertikal (Text)

Attribut Vertikale Ausrichtung (Text)

Attribut Vertikale Bildschirmauflösung (Anwendung)

Attribut Vertikale Layoutauflösung (Anwendung)

Attribut Vertikale Rasterlinien (Rahmen, Tabellendiagramm)

Attribut Verwendung Wert (Rahmen, Kreisdiagramm)

Attribut Vordergrundfüllfarbe (Grafik)

Attribut Vordergrundrandfarbe (Grafik)

Attribut Wert der Basislinie (Rahmen, Achsendiagramm)

Attribut Winkelradius (Abgerundetes Rechteck)

Attribut Wochenenden überspringen (Achse, Datum)

Attribut Zahlenformat (Achse, Kategorien)

Attribut Zahlenformat (Achse, Werte)

Attribut Zahlenwert (Referenzlinie)

Attribut Zeichensatz (Text)

Attribut Zeilenabstand (Text)

Attribut Zusammengesetzter Textzähler (Text)

Attribut Zweite Y-Achse (Rahmen, Achsendiagramm)


Mit diesem Buchstaben beginnen keine vordefinierten Unterprogramme.


Achsenattribute (Datum)
.Achsenattribute (Datum)

Attribut Auto Maximum

Attribut Beschriftungen

Attribut Format Benutzerdefiniert

Attribut Format Erster Monat

Attribut Format Jahr

Attribut Format Quartal

Attribut Format Tag

Attribut Maximum

Attribut Wochenenden überspringen

Attribut Auto Minimum

Attribut Auto Schrittgröße

Attribut Format Monat

Attribut Minimum

Attribut Schrittgröße


Attribut Auto Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Date_Automax
  (axis     OG_Axis,
   automax  BOOLEAN,
   maximun  DATE);

FUNCTION OG_Get_Date_Automax
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automax	Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.
maximun	Gibt den Achsenhöchstwert an (wenn automax FALSE ist).


Beispiele für das Attribut Auto Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's date maximum is set to auto. If
**the return value is TRUE, it resets the
**value to FALSE with default_max;
**if the return value is FALSE, it resets
**the value to TRUE after reading the
**specified maximum axis value.
/*

PROCEDURE datemax IS
  template	og_template;
  axis	og_axis;
  val1 	date;
  val2 	boolean;
  default_max 	date := '06-dec-99';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val2 := og_get_date_automax(axis);
  if val2 = true then
    og_set_date_automax(axis, false, default_max);
    val1 := og_get_date_maximum(axis);
  elsif val2 = false then
   og_set_date_automax(axis, true, default_max);
  end if;
END;


Attribut Auto Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenmindestwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Date_Automin
  (axis     OG_Axis,
   automin  BOOLEAN,
   minimun  DATE);

FUNCTION OG_Get_Date_Automin
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automin	Gibt an, ob der Achsenmindestwert auf Auto eingestellt ist.
minimun	Gibt den Mindestachsenwert an (wenn automin FALSE ist).


Beispiele für das Attribut Auto Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's date minimum is set to auto. If the
**return value is TRUE, it resets the value
**to FALSE with default_min; if the return
**value is FALSE, it resets the value to
**TRUE after reading the specified minimum
**axis value.
*/

PROCEDURE datemin IS
  template 	og_template;
  axis 	og_axis;
  val1 	date;
  val2 	boolean;
 default_min	date := '01-dec-79';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val2 := og_get_date_automin(axis);
  if val2 = true then
    og_set_date_automin(axis, false, default_min);
    val1 := og_get_date_minimum(axis);
  elsif val2 = false then
    og_set_date_automin(axis, true, default_min);
  end if;
END;


Attribut Auto Schrittgröße

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenschrittwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Date_Autostep
  (axis      OG_Axis,
   autostep  BOOLEAN,
   step      NUMBER);

FUNCTION OG_Get_Date_Autostep
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
autostep	Gibt an, ob der Achsenschrittwert auf Auto eingestellt ist.
step	Gibt den Achsenschrittwert an (wenn autostep FALSE ist).


Beispiele für das Attribut Auto Schrittgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's date step is set to auto. If the
**return value is TRUE, it resets the value
**to FALSE with default_step; if the return
**value is FALSE, it resets the value
**to TRUE after reading the specified step
**value.
*/

PROCEDURE datestep IS
  template 	og_template;
  axis 	og_axis;
  val 	boolean;
  num 	number;
  default_step number := og_second_step;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val:= og_get_date_autostep(axis);
  if val = true then
    og_set_date_autostep(axis, false, default_step);
    num := og_get_date_step(axis);
  elsif val = false then
    og_set_date_autostep(axis, true, default_step);
  end if;
END;


Attribut Format Benutzerdefiniert

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das benutzerdefinierte Datumsformat für Teilungsbeschriftungen auf der Datumsachse an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Custfmt
  (axis     OG_Axis,
   custfmt  VARCHAR2);

FUNCTION OG_Get_Custfmt
  (axis  OG_Axis)
RETURN VARCHAR2;

Parameter

axis	Beschriebenes Achsenobjekt.
Custfmt	Benutzerdefiniertes Datumsformat für die Achsenteilungen.


Beispiele für das Attribut Format Benutzerdefiniert

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**Custom format value and compares it
**with the variable 'default_format';
**if the two value are not equal,
**it resets the current format to the
**value of the 'default_format'.
*/

PROCEDURE customfmt IS
  template 	og_template;
  axis 	og_axis;
  val 	varchar2(10);
  default_format varchar2(10) := 'DD_YY_MM';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_custfmt(axis);
  if val != default_format then
    og_set_custfmt(axis, default_format);
  end if;
END;


Mit diesem Buchstaben beginnen keine vordefinierten Unterprogramme.


Attribut Format Tag

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt das Erscheinungsbild der Wochentagsbeschriftungen entlang der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Firstletter_Fmt

OG_Threeletter_Fmt

Syntax

PROCEDURE OG_Set_Dayfmt
  (axis    OG_Axis,
   dayfmt  NUMBER);

FUNCTION OG_Get_Dayfmt
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
dayfmt	Bestimmt das Erscheinungsbild der Wochentagsbeschriftungen entlang der Achse.


Beispiele für das Attribut Format Tag

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks the
**day-of-week format.  If the current format
**is First-Letter format, it resets the value
**to Three-Letter format, and vice versa.
*/

PROCEDURE dayfmt IS
  template og_template;
  axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  num:= og_get_dayfmt(axis);
  if num = og_firstletter_fmt then
    og_set_dayfmt(axis, og_threeletter_fmt);
  elsif num = og_threeletter_fmt then
    og_set_dayfmt(axis, og_firstletter_fmt);
  end if;
END;


Attribut Erster Monat

  Beispiele	  Verwandte Themen

Beschreibung  Der Monat, mit dem ein neues Jahr beginnt. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Jan_Month

OG_Feb_Month

OG_Mar_Month

OG_Apr_Month

OG_May_Month

OG_Jun_Month

OG_Jul_Month

OG_Aug_Month

OG_Sep_Month

OG_Oct_Month

OG_Nov_Month

OG_Dec_Month

Syntax

PROCEDURE OG_Set_Firstmon
  (axis      OG_Axis,
   firstmon  NUMBER);

FUNCTION OG_Get_Firstmon
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
firstmon	Der Monat, der als erster Monat eines neuen Jahres betrachtet wird.


Beispiele für das Attribut Erster Monat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the first month
**value and resets the value to the next
**acceptable value.
*/

PROCEDURE firstmonth IS
  template 	og_template;
  axis 	og_axis;
  num 	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  num:= og_get_firstmon(axis);
  if num = og_jan_month then
    og_set_firstmon(axis, og_feb_month);
  elsif num = og_feb_month then
    og_set_firstmon(axis, og_mar_month);
  elsif num = og_mar_month then
    og_set_firstmon(axis, og_apr_month);
  elsif num = og_apr_month then
    og_set_firstmon(axis, og_may_month);
  elsif num = og_may_month then
    og_set_firstmon(axis, og_jun_month);
  elsif num = og_jun_month then
    og_set_firstmon(axis, og_jul_month);
  elsif num = og_jul_month then
    og_set_firstmon(axis, og_aug_month);
  elsif num = og_aug_month then
    og_set_firstmon(axis, og_sep_month);
  elsif num = og_sep_month then
    og_set_firstmon(axis, og_oct_month);
  elsif num = og_oct_month then
    og_set_firstmon(axis, og_nov_month);
  elsif num = og_nov_month then
    og_set_firstmon(axis, og_dec_month);
  else og_set_firstmon(axis, og_jan_month);
  end if;
END;


Attribut Beschriftungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Grobintervall entlang der Achse an, bei dem Grobteilungen und Teilungsbeschriftungen angezeigt werden, sowie das Erscheinungsbild der Teilungsbeschriftungen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_No_Labels

OG_Second_Labels

OG_Minute_Labels

OG_Hour_Labels

OG_Ampm_Labels

OG_Day_Labels

OG_Dayofweek_Labels

OG_Week_Labels

OG_Month_Labels

OG_Quarter_Labels

OG_Year_Labels

OG_Custom_Labels   (Wenn labels auf diesen Wert eingestellt ist, müssen Sie das benutzerdefinierte Datumsformat bei dem Attribut Format Benutzerdefiniert angeben.)

Syntax

PROCEDURE OG_Set_Labels
  (axis    OG_Axis,
   labels  NUMBER);

FUNCTION OG_Get_Labels
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
labels	Gibt das Grobintervall entlang der Achse an, bei dem Grobteilungen und Teilungsbeschriftungen angezeigt werden, sowie das Erscheinungsbild der Teilungsbeschriftungen.


Beispiele für das Attribut Beschriftungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**if any label boxes are checked.
**If checked label boxes are found,
**it unchecks all labels; if no checked
**labels are found, it checks the 'Year'
**check box.
*/

PROCEDURE labels IS
  template 	og_template;
  axis 	og_axis;
  num 	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);

  num:= og_get_labels(axis);
  if num != og_no_labels then
    og_set_labels(axis, og_no_labels);
  else og_set_labels(axis, og_year_labels);
  end if;
END;


Attribut Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Achsenhöchstwert an (wenn Auto Maximum FALSE ist).

Syntax

(Siehe OG_Set_Date_Automax oben.)

FUNCTION OG_Get_Date_Maximum
  (axis  OG_Axis)
RETURN DATE;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**axis Y1's date maximum is set to auto.
**If the return value is TRUE,
**it resets the value to FALSE with
**default_max; if the return value is
**FALSE, it resets the value to
**TRUE after reading the specified
**maximum axis value.
/*

PROCEDURE datemax IS
  template	og_template;
  axis	og_axis;
  val1 	date;
  val2 	boolean;
  default_max 	date := '06-dec-99';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val2 := og_get_date_automax(axis);
  if val2 = true then
    og_set_date_automax(axis, false, default_max);
    val1 := og_get_date_maximum(axis);
  elsif val2 = false then
   og_set_date_automax(axis, true, default_max);
  end if;
END;


Attribut Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Achsenmindestwert an (wenn Auto Minimum FALSE ist).

Syntax

(Siehe OG_Set_Date_Automin.)

FUNCTION OG_Get_Date_Minimum
  (axis  OG_Axis)
RETURN DATE;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**axis Y1's date minimum is set to auto.
**If the return value is TRUE, it resets
**the value to FALSE with default_min;
**if the return value is FALSE, it resets
**the value to TRUE after reading the
**specified minimum axis value.
*/

PROCEDURE datemin IS
  template 	og_template;
  axis 	og_axis;
  val1 	date;
  val2 	boolean;
 default_min	date := '01-dec-79';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val2 := og_get_date_automin(axis);
  if val2 = true then
    og_set_date_automin(axis, false, default_min);
    val1 := og_get_date_minimum(axis);
  elsif val2 = false then
    og_set_date_automin(axis, true, default_min);
  end if;
END;


Attribut Format Monat

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt das Erscheinungsbild der Monatsbeschriftungen entlang der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Firstletter_Fmt

OG_Threeletter_Fmt

Syntax

PROCEDURE OG_Set_Monthfmt
  (axis      OG_Axis,
   monthfmt  NUMBER);

FUNCTION OG_Get_Monthfmt
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
Monthfmt	Bestimmt das Erscheinungsbild der Monatsbeschriftungen entlang der Achse.


Beispiele für das Attribut Format Monat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks the
**Month format. If the current format
**is First-Letter format, it
**resets the value to Three-Letter
**format, and vice versa.
*/

PROCEDURE monthfmt IS
  template 	og_template;
  axis 	og_axis;
  num 	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  num:= og_get_monthfmt(axis);
  if num = og_firstletter_fmt then
    og_set_monthfmt(axis, og_threeletter_fmt);
  elsif num = og_threeletter_fmt then
    og_set_monthfmt(axis, og_firstletter_fmt);
  end if;
END;


Attribut Format Quartal

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt das Erscheinungsbild der Quartalsbeschriftungen entlang der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Arabic_Fmt

OG_Roman_Fmt

Syntax

PROCEDURE OG_Set_Qtrfmt
  (axis    OG_Axis,
   qtrfmt  NUMBER);

FUNCTION OG_Get_Qtrfmt
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
qtrfmt	Bestimmt das Erscheinungsbild der Quartalsbeschriftungen entlang der Achse.


Beispiele für das Attribut Format Quartal

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks the
**Quarter format. If the current
**format is Arabic format, it resets
**the value to Roman format, and vice versa.
*/

PROCEDURE qtrfmt IS
  template 	og_template;
  axis 	og_axis;
  num 	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  num:= og_get_qtrfmt(axis);
  if num = og_arabic_fmt then
    og_set_qtrfmt(axis, og_roman_fmt);
  elsif num = og_roman_fmt then
    og_set_qtrfmt(axis, og_arabic_fmt);
  end if;
END;


Attribut Wochenenden überspringen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob bei der Berechnung der Achsenwerte Wochenenden ignoriert werden.

Syntax

PROCEDURE OG_Set_Skipwknds
  (axis       OG_Axis,
   skipwknds  BOOLEAN);

FUNCTION OG_Get_Skipwknds
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
skipwknds	Gibt an, ob bei der Berechnung der Achsenwerte Wochenenden ignoriert werden.


Beispiele für das Attribut Wochenenden überspringen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks whether
**weekends are ignored when calculating
**axis values. If the value of weekend
**is set to TRUE (ignored), the procedure
**resets the value to FALSE (include
**in the calculation) and vice versa.
*/

PROCEDURE skipwknds IS
  template 	og_template;
  axis 	og_axis;
  val 	boolean;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val:= og_get_skipwknds(axis);
  if val = true then
    og_set_skipwknds(axis, false);
  elsif val = false then
    og_set_skipwknds(axis, true);
  end if;
END;


Attribut Schrittgröße

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Schrittwert für die Achse an (wenn Auto Step FALSE ist).  Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Second_Step

OG_Minute_Step

OG_Hour_Step

OG_Day_Step

OG_Week_Step

OG_Month_Step

OG_Quarter_Step

OG_Year_Step

Syntax

(Siehe OG_Set_Date_Autostep.)

FUNCTION OG_Get_Date_Step
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Schrittgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**axis Y1's date step is set to auto.
**If the return value is TRUE, it resets
**the value to FALSE with default_step;
**if the return value is FALSE,
**it resets the value to TRUE
**after reading the specified step
**value.
*/

PROCEDURE datestep IS
  template 	og_template;
  axis 	og_axis;
  val 	boolean;
  num 	number;
  default_step number := og_second_step;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val:= og_get_date_autostep(axis);
  if val = true then
    og_set_date_autostep(axis, false, default_step);
    num := og_get_date_step(axis);
  elsif val = false then
    og_set_date_autostep(axis, true, default_step);
  end if;
END


Attribut Format Jahr

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt das Erscheinungsbild der Jahresbeschriftungen entlang der Achse. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Fourdigit_Fmt

OG_Twodigit_Fmt

Syntax

PROCEDURE OG_Set_Yearfmt
  (axis     OG_Axis,
   yearfmt  NUMBER);

FUNCTION OG_Get_Yearfmt
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
yearfmt	Bestimmt das Erscheinungsbild der Jahresbeschriftungen entlang der Achse.


Beispiele für das Attribut Format Jahr

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks the Year
**format.  If the current format is Two-Digit
**format, it resets the value to
**Four-Digit format, and vice versa.
*/

PROCEDURE yearfmt IS
  template og_template;
  axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  num:= og_get_yearfmt(axis);
  if num = og_fourdigit_fmt then
    og_set_yearfmt(axis, og_twodigit_fmt);
  elsif num = og_twodigit_fmt then
    og_set_yearfmt(axis, og_fourdigit_fmt);
  end if;
END;


Anwendungsattribute

Attribut Benutzername

Attribut Cursor

Attribut DB-Adresse

Attribut Horizontale Bildschirmauflösung

Attribut Horizontale Layoutauflösung

Attribut Kennwort

Attribut Plattform

Attribut Vertikale Bildschirmauflösung

Attribut Vertikale Layoutauflösung


Attribut DB-Adresse

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der DB-Adresse für die aktuelle Datenbankverbindung. Wenn der Benutzer nicht angemeldet ist, ist dieses Attribut NULL.

Syntax

FUNCTION OG_Get_Ap_Connection
RETURN VARCHAR2;

Parameter

Keine.


Beispiele für das Attribut DB-Adresse

  Alphabetic List      [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following open trigger procedure
**displays the connection string for
**the current database connection
**to a text object.
*/

PROCEDURE connection IS
  connstr 	varchar2(10);
BEGIN
  connstr := og_get_ap_connection;
  if connstr = NULL then
    og_set_str(og_get_object('text object'), 'NULL', true, true);
  else
    og_set_str(og_get_object('text object'), connstr, true, true);
  end if;
END;


Attribut Cursor

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Namen des zu benutzenden Mauscursors. Der Wert dieses Attributs kann eine der folgenden Zeichenfolgen darstellen:

default
insertion
crosshair
help
busy

Das Erscheinungsbild jedes Cursors ist systemspezifisch. Weitere Informationen finden Sie in der Systemdokumentation. Wenn Sie dieses Attribut auf einen ungültigen Wert einstellen, wird der Wert 'default' verwendet.

Syntax

PROCEDURE OG_Set_Ap_Cursor
  (cursor  VARCHAR2);

FUNCTION OG_Get_Ap_Cursor
RETURN VARCHAR2;

Parameter

cursor	Der zu benutzende Mauscursor.


Beispiele für das Attribut Cursor

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure changes
**the shape of the cursor depending on
**which layer the user selects.
*/

PROCEDURE ChangeCursor (buttonobj IN og_object,
 hitobj IN og_object,     win IN og_window,
                         eventinfo IN og_event) IS
  cur 	varchar2(10);
BEGIN
  mycur := og_get_ap_cursor;
  if cur = 'default' then
     og_set_ap_cursor('insertion');
  elsif cur = 'insertion' then
     og_set_ap_cursor('crosshair');
  elsif cur = 'crosshair' then
     og_set_ap_cursor('help');
  elsif cur = 'help' then
     og_set_ap_cursor('busy');
  elsif cur = 'busy' then
     og_set_ap_cursor('default');
  end if;
END;


Attribut Horizontale Layoutauflösung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die horizontale Auflösung des Layouts an. Dieser Wert entspricht der Anzahl von Layouteinheiten in einem horizontalen Zoll des Layouts.

Syntax

FUNCTION OG_Get_Ap_Hlayout_Res
RETURN NUMBER;

Parameter

Keine.


Beispiele für das Attribut Horizontale Layoutauflösung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure displays
**current horizontal layout resolution
**to a text object.
*/

PROCEDURE h_layout IS
  h_layout 	number;
BEGIN
  h_layout := og_get_ap_hlayout_res;
  og_set_str(og_get_object('text object'), h_layout, true, true);
END;


Attribut Horizontale Bildschirmauflösung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die horizontale Bildschirmauflösung an. Dieser Wert entspricht der Anzahl von Bildschirmauflösungseinheiten (d.h. Pixel) in einem horizontalen Zoll des Bildschirms.

Syntax

FUNCTION OG_Get_Ap_Hscreen_Res
RETURN NUMBER;

Parameter

Keine.


Beispiele für das Attribut Horizontale Bildschirmauflösung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure displays
**current horizontal screen
**to a text object.
*/

PROCEDURE HRES IS
  h_res 	number;
BEGIN
  h_res := og_get_ap_vscreen_res;
  og_set_str(og_get_object('text object'), h_res, true, true);
END;


Attribut Kennwort

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Kennwort für die aktuelle Datenbankverbindung an. Wenn der Benutzer nicht angemeldet ist oder für die Voreinstellung Keep_Password No angegeben wurde, ist dieses Attribut NULL.

Syntax

FUNCTION OG_Get_Ap_Password
RETURN VARCHAR2;

Parameter

Keine.


Beispiele für das Attribut Kennwort

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following open trigger procedure
** displays the password for the current
**database connection to a text object.
*/

PROCEDURE password IS
  pw 	varchar2(10);
BEGIN
  pw := og_get_ap_password;
  if pw = NULL then
    og_set_str(og_get_object('text object'), 'NULL', true, true);
  else
    og_set_str(og_get_object('text object'), pw, true, true);
  end if;
  END;


Attribut Plattform

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Plattform an, auf der Graphics Builder ausgeführt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Macintosh_Platform   Bedeutet, daß die Plattform Apple Macintosh ist.

OG_Motif_Platform   Bedeutet, daß die Plattform OSF/MOTIF ist.

OG_Mswindows_Platform   Bedeutet, daß die Plattform Microsoft Windows ist.

OG_Pm_Platform   Bedeutet, daß die Plattform Presentation Manager ist.

OG_X_Platform   Bedeutet, daß die Plattform X Window System ist.

Syntax

FUNCTION OG_Get_Ap_Platform
RETURN NUMBER;

Parameter

Keine.


Beispiele für das Attribut Plattform

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure displays
**the platform type on which Oracle
**Graphics is currently running to
**a text object.
*/

PROCEDURE platform IS
  ptform 	number;
BEGIN
  ptform := og_get_ap_platform;
  if ptform = og_macintosh_platform then
    og_set_str(og_get_object('text object'), 'og_macintosh_platform', true, true);
  elsif ptform = og_motif_platform then
    og_set_str(og_get_object('text object'), 'og_motif_platform', true, true);
  elsif ptform = og_mswindows_platform then
    og_set_str(og_get_object('text object'), 'og_mswindows_platform', true, true);
  elsif ptform = og_pm_platform  then
    og_set_str(og_get_object('text object'), 'og_pm_platform', true, true);
  elsif ptform = og_x_platform then
    og_set_str(og_get_object('text object'), 'og_x_platform', true, true);
  end if;
END;


Attribut Benutzername

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Benutzernamen für die aktuelle Datenbankverbindung an. Wenn der Benutzer nicht angemeldet ist, ist dieses Attribut NULL.

Syntax

FUNCTION OG_Get_Ap_Username
RETURN VARCHAR2;

Parameter

Keine.


Beispiele für das Attribut Benutzername

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following open trigger procedure
**displays the username for the current
**database connection to a text object.
*/

PROCEDURE username IS
  usr 	varchar2(10);
BEGIN
  usr := og_get_ap_username;
  if usr = NULL then
    og_set_str(og_get_object('text object'), 'NULL', true, true);
  else
    og_set_str(og_get_object('text object'), usr, true, true);
  end if;
END;


Attribut Vertikale Layoutauflösung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die vertikale Auflösung des Layouts an. Dieser Wert entspricht der Anzahl von Layouteinheiten in einem vertikalen Zoll des Layouts.

Syntax

FUNCTION OG_Get_Ap_Vlayout_Res
RETURN NUMBER;

Parameter

Keine.


Beispiele für das Attribut Vertikale Layoutauflösung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure displays current
**vertical layout resolution to a text object.
*/

PROCEDURE v_layout IS
  v_layout 	number;
BEGIN
  v_layout := og_get_ap_vlayout_res;
  og_set_str(og_get_object('text object'), v_layout, true, true);
END;


Attribut Vertikale Bildschirmauflösung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die vertikale Auflösung des Bildschirms an. Dieser Wert entspricht der Anzahl von Bildschirmauflösungseinheiten (d.h. Pixel) in einem vertikalen Zoll des Bildschirms.

Syntax

FUNCTION OG_Get_Ap_Vscreen_Res
RETURN NUMBER;

Parameter

Keine.


Beispiele für das Attribut Vertikale Bildschirmauflösung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure displays current
**vertical screen resolution to a text object:
/*

PROCEDURE VRES IS
  v_res	number;
BEGIN
  v_res := og_get_ap_vscreen_res;
  og_set_str(og_get_object('text object'), v_res, true, true);
END;


Bogenattribute

Attribut Basisbogen

Attribut Begrenzungslinie

Attribut Füllen


Attribut Basisbogen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks an, das als Basis für die Ellipse benutzt wird, aus der der Bogen ausgeschnitten wird.

Syntax

PROCEDURE OG_Set_Basearc
  (arc          OG_Object,
   basearc      OG_Arc,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Basearc
  (arc  OG_Object)
RETURN OG_Arc;

Parameter

arc	Gibt das beschriebene Bogenobjekt an.
basearc	Entspricht den x- und y-Koordinaten der oberen linken Ecke sowie der Höhe und Breite des Rechtecks, das als Basis für die Ellipse benutzt wird, aus der der Bogen ausgeschnitten wird.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Basisbogen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**information from an existing arc,
**reduces all data by half, and
**updates the arc object.
*/

PROCEDURE base_arc IS
  arc 	og_arc;
BEGIN
  arc := og_get_basearc(og_get_object('arc'));
  arc.x := arc.x/2;
  arc.y := arc.y/2;
  arc.height :=arc.height/2;
  arc.width := arc.width/20;
  arc.sangle := arc.sangle/2;
  arc.eangle := arc.eangle/2;
  og_set_basearc(og_get_object('arc'), arc);
END;


Attribut Begrenzungslinie

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Begrenzungslinie des Bogens. Dieses Attribut kann einen der folgenden Werte haben:

TRUE   Bedeutet, daß der Bogen geschlossen ist.

FALSE   Bedeutet, daß der Bogen offen ist.

Syntax

PROCEDURE OG_Set_Arc_Closed
  (arc          OG_Object,
   closed       BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Arc_Closed
  (arc  OG_Object)
RETURN BOOLEAN;

Parameter

arc	Bechriebenes Bogenobjekt.
closed	Begrenzungslinie des Bogens.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Begrenzungslinie

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**closure of an existing arc.  If closure
**equals TRUE, it fills the arc with red
**and sets the closure value to FALSE;
**if closure equals FALSE, it fills the
**arc with blue and sets the value to TRUE.
*/

PROCEDURE closure IS
  cls	 BOOLEAN;
  arc 	 og_object;
BEGIN
  arc := og_get_object('arc');
  cls := og_get_arc_closed(arc);
  if cls = TRUE  then
     og_set_bfcolor(arc, 'red');
     og_set_arc_closed(arc, FALSE);
  else
     og_set_bfcolor(arc, 'blue');
     og_set_arc_closed(arc, TRUE);
  end if;
END;


Attribut Füllen

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Füllform des Bogens. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Chord_Arcfill   Bedeutet, daß die Füllform des Bogens einem Bogen entspricht.

OG_Pie_Arcfill   Bedeutet, daß die Füllform des Bogens einem vollen Kreissegment entspricht.

Syntax

PROCEDURE OG_Set_Arcfill
  (arc          OG_Object,
   arcfill      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Arcfill
  (arc  OG_Object)
RETURN NUMBER;

Parameter

arc	Beschriebenes Bogenobjekt.
arcfill	Füllform des Bogens.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Füllen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**arcfill from an arc, prints the value to a
**text object, assigns a different value
** to the arcfill value.
*/

PROCEDURE fill IS

  text 	og_object;
  arc 	og_object;
  num NUMBER;
BEGIN
  text := og_get_object('text object');
  arc := og_get_object('arc');
  num := og_get_arcfill(arc);
  og_set_str(text, num);
  og_set_arcfill(arc, og_chord_arcfill);
END;


Achsenattribute (Allgemein)

Attribut Achsenbeschriftung

Attribut Achsentyp

Attribut Benutzerdefinierte Beschriftung

Attribut Drehung der Teilungsbeschriftung

Attribut Feinraster

Attribut Feinteilungen pro Intervall

Attribut Feinteilungen

Attribut Grobraster

Attribut Grobteilungen

Attribut Position der Teilungen

Attribut Position

Attribut Richtung

Attribut Teilungsbeschriftungen


Attribut Achsenbeschriftung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Beschriftungen zur Kennzeichnung der Werte auf der Achse angezeigt werden.

Syntax

PROCEDURE OG_Set_Axislabel
  (axis       OG_Axis,
   axislabel  BOOLEAN);

FUNCTION OG_Get_Axislabel
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
axislabel	Gibt an, ob Beschriftungen zur Kennzeichnung der Werte auf der Achse angezeigt werden.


Beispiele für das Attribut Achsenbeschriftung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines if
**the Axis Label checkbox is checked.
**If the box is checked, it unchecks
**it, and vice versa.
*/

PROCEDURE GenAxisLbl IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  val := og_get_axislabel(x_axis);
  if val = true then
     og_set_axislabel(x_axis, false);
  else
     og_set_axislabel(x_axis, true);
  end if;
END;


Attribut Achsentyp

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den zu benutzenden Achsentyp an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Continuous_Axistype

OG_Date_Axistype

OG_Discrete_Axistype

Syntax

PROCEDURE OG_Set_Axistype
  (axis      OG_Axis,
   axistype  NUMBER);

FUNCTION OG_Get_Axistype
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
axistype	Gibt den zu benutzenden Achsentyp an.


Beispiele für das Attribut Achsentyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**current axis type.  If the current type
**is CONTINUOUS, it resets the type
**to DISCRETE, or vice versa.  If the
**current type is DATE, it changes the
**year format.
*/

PROCEDURE GenAxisType IS
  template og_template;
  axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  num := og_get_axistype(axis);
  if num = og_discrete_axistype then
     og_set_axistype(axis,og_continuous_axistype);
  elsif num = og_continuous_axistype then
     og_set_axistype(axis, og_discrete_axistype);
  elsif num = og_date_axistype then
     og_set_yearfmt(axis, og_twodigit_fmt);
  end if;
END;


Attribut Benutzerdefinierte Beschriftung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Text der Beschriftung an, die auf der Achse angezeigt wird.

Syntax

PROCEDURE OG_Set_Custlabel
  (axis       OG_Axis,
   custlabel  VARCHAR2);

FUNCTION OG_Get_Custlabel
  (axis  OG_Axis)
RETURN VARCHAR2;

Parameter

axis	Beschriebenes Achsenobjekt.
custlabel	Gibt den Text der Beschriftung auf der Achse an.


Beispiele für das Attribut Benutzerdefinierte Beschriftung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the current
**label of the specific axis, and changes
**the name of that label.
*/

PROCEDURE CustLabel IS
  template og_template;
  axis og_axis;
  label varchar2(20);
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  label := og_get_custlabel(axis);
  og_set_custlabel(axis, 'Employee Number');
END;


Attribut Richtung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, in welcher Richtung aufsteigende Werte oder aufeinanderfolgende Kategorien auf der Achse plaziert werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Down_Direction

OG_Left_Direction

OG_Right_Direction

OG_Up_Direction

Syntax

PROCEDURE OG_Set_Direction
  (axis       OG_Axis,
   direction  NUMBER);

FUNCTION OG_Get_Direction
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
direction	Gibt an, in welcher Richtung aufsteigende Werte oder aufeinanderfolgende Kategorien auf der Achse positioniert werden.


Beispiele für das Attribut Richtung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**directions of the x and y axis and sets
**them to the opposite directions.
*/

PROCEDURE GenDirection IS
  template og_template;
  x_axis og_axis;
  y_axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);
  y_axis := og_get_axis(template, og_y1_axis);
  num := og_get_direction(x_axis);
  if num = og_left_direction then
     og_set_direction(x_axis, og_right_direction);
  elsif num = og_right_direction then
     og_set_direction(x_axis, og_left_direction);
  end if;
  num := og_get_direction(y_axis);
  if num = og_up_direction then
     og_set_direction(y_axis, og_down_direction);
  elsif num = og_down_direction then
     og_set_direction(y_axis, og_up_direction);
  end if;
END;


Attribut Grobraster

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob bei jeder Grobteilung eine Rasterlinie angezeigt wird.

Syntax

PROCEDURE OG_Set_Majorgrid
  (axis       OG_Axis,
   majorgrid  BOOLEAN);

FUNCTION OG_Get_Majorgrid
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
majorgrid	Gibt an, ob bei jeder Grobteilung eine Rasterlinie angezeigt wird.


Beispiele für das Attribut Grobraster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**Major Grid checkbox is checked.  If the
**box is checked, it unchecks it, and vice
**versa.
*/

PROCEDURE GenMajorGrids IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  val := og_get_majorgrid(x_axis);
  if val = true then
     og_set_majorgrid(x_axis, false);
  else
     og_set_majorgrid(x_axis, true);
  end if;
END;


Attribut Grobteilungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob bei jedem Grobintervall Grobteilungen angezeigt werden.

Syntax

PROCEDURE OG_Set_Majorticks
  (axis        OG_Axis,
   majorticks  BOOLEAN);

FUNCTION OG_Get_Majorticks
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
majorticks	Gibt an, ob bei jedem Grobintervall Grobteilungen angezeigt werden.


Beispiele für das Attribut Grobteilungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**Major Ticks checkbox is checked.  If
**the box is checked, it unchecks it,
**and vice versa.
*/

PROCEDURE GenMajorTicks IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  val := og_get_majorticks(x_axis);
  if val = true then
    og_set_majorticks(x_axis, false);
  else
     og_set_majorticks(x_axis, true);
  end if;
END;


Attribut Feinraster

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob bei jeder Feinteilung eine Rasterlinie angezeigt wird.

Syntax

PROCEDURE OG_Set_Minorgrid
  (axis       OG_Axis,
   minorgrid  BOOLEAN);

FUNCTION OG_Get_Minorgrid
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
minorgrid	Gibt an, ob bei jeder Feinteilung eine Rasterlinie angezeigt wird.


Beispiele für das Attribut Feinraster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**the Minor Grid checkbox is checked.
**If the box is checked, it unchecks it,
**and vice versa.
*/

PROCEDURE GenMinorGrids IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  val := og_get_minorgrid(x_axis);
  if val = true then
     og_set_minorgrid(x_axis, false);
  else
     og_set_minorgrid(x_axis, true);
  end if;
END;


Attribut Feinteilungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Feinteilungen angezeigt werden, wie mit dem Wert für Feinteilungen pro Intervall angegeben.

Syntax

PROCEDURE OG_Set_Minorticks
  (axis        OG_Axis,
   minorticks  BOOLEAN);

FUNCTION OG_Get_Minorticks
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
minorticks	Gibt an, ob Feinteilungen angezeigt werden, wie mit dem Wert für Feinteilungen pro Intervall angegeben.


Beispiele für das Attribut Feinteilungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**Minor Ticks checkbox is checked.  If
**the box is checked, it unchecks it, and
**vice versa.
*/

PROCEDURE GenMinorTicks IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  val := og_get_minorticks(x_axis);
  if val = true then
     og_set_minorticks(x_axis, false);
  else
     og_set_minorticks(x_axis, true);
  end if;
END;


Attribut Feinteilungen pro Intervall

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Anzahl von Feinteilungen an, die innerhalb jedes Grobteilungsintervalls definiert sind.

Syntax

PROCEDURE OG_Set_Minorct
  (axis     OG_Axis,
   minorct  NUMBER);

FUNCTION OG_Get_Minorct
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
minorct	Entspricht der Anzahl von Feinteilungen, die innerhalb jedes Grobteilungsintervalls definiert sind.


Beispiele für das Attribut Feinteilungen pro Intervall

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the number
**of minor ticks per interval and resets
**the value to triple the original value.
*/

PROCEDURE GenMinorCt IS
  template og_template;
  x_axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);
  num := og_get_ticklabelrot(x_axis);
  og_set_minorct(x_axis, 3*num);
END;


Attribut Position

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, an welchem Rand des Diagramms die Achse angezeigt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Bottom_Position

OG_Left_Position

OG_Right_Position

OG_Top_Position

Syntax

PROCEDURE OG_Set_Position
  (axis      OG_Axis,
   position  NUMBER);

FUNCTION OG_Get_Position
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
position	Gibt an, an welchem Rand des Diagramms die Achse angezeigt wird.


Beispiele für das Attribut Position

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**which edge of the chart the axis
**appears on, and resets the axis to
**the opposite edge.
*/

PROCEDURE GenPosition IS
  template 	og_template;
  axis 	og_axis;
  num  	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  num := og_get_position(axis);
  if num = og_bottom_position then
     og_set_position(axis, og_top_position);
  elsif num = og_left_position then
     og_set_position(axis, og_right_position);
  elsif num = og_right_position then
     og_set_position(axis, og_left_position);
  elsif num = og_top_position then
     og_set_position(axis, og_bottom_position);
  end if;
END;


Attribut Drehung der Teilungsbeschriftung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Richtung an, in der die Teilungsbeschriftungen gedreht werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Ccw_Rotation   Bedeutet Drehung entgegen dem Uhrzeigersinn.

OG_Cw_Rotation   Bedeutet Drehung im Uhrzeigersinn.

OG_No_Rotation   Bedeutet keine Drehung.

Syntax

PROCEDURE OG_Set_Ticklabelrot
  (axis          OG_Axis,
   ticklabelrot  NUMBER);

FUNCTION OG_Get_Ticklabelrot
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
ticklabelrot	Gibt die Richtung an, in der die Achsenbeschriftungen gedreht werden.


Beispiele für das Attribut Drehung der Teilungsbeschriftung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**tick label rotation and changes it
**to a different value.
*/

PROCEDURE GenTickLbl IS
  template og_template;
  x_axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);

  num := og_get_ticklabelrot(x_axis);
  if num = og_ccw_rotation then
     og_set_ticklabelrot(x_axis, og_cw_rotation);
  elsif num = og_cw_rotation then
     og_set_ticklabelrot(x_axis, og_no_rotation);
  elsif num = og_no_rotation then
     og_set_ticklabelrot(x_axis, og_ccw_rotation);
  end if;
END;


Attribut Teilungsbeschriftungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Beschriftungen zur Kennzeichnung der Werte auf der Achse angezeigt werden.

Syntax

PROCEDURE OG_Set_Ticklabels
  (axis        OG_Axis,
   ticklabels  BOOLEAN);

FUNCTION OG_Get_Ticklabels
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
ticklabels	Gibt an, ob Beschriftungen zur Kennzeichnung der Werte auf der Achse angezeigt werden.


Beispiele für das Attribut Teilungsbeschriftungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**Tick Label checkbox is checked.
**If the box is checked, it unchecks it,
**and vice versa.
*/

PROCEDURE GenTickLbl IS
  template og_template;
  x_axis og_axis;
  val boolean;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);
  val := og_get_ticklabels(x_axis);
  if val = true then
     og_set_ticklabels(x_axis, false);
  else
     og_set_ticklabels(x_axis, true);
  end if;
END;


Attribut Position der Teilungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, wie die Grob- und Feinteilungen angezeigt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Cross_Tickpos

OG_Inside_Tickpos

OG_Outside_Tickpos

Syntax

PROCEDURE OG_Set_Tickpos
  (axis     OG_Axis,
   tickpos  NUMBER);

FUNCTION OG_Get_Tickpos
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
tickpos	Gibt an, wie die Grob- und Feinteilungen angezeigt werden.


Beispiele für das Attribut Position der Teilungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the tick
**position of the x-axis, and sets it to
**a different value.
*/

PROCEDURE GenTickPos IS
  template og_template;
  x_axis og_axis;
  num number;
BEGIN
  template := og_get_template('template0');
  x_axis := og_get_axis(template, og_x_axis);
  num := og_get_tickpos(x_axis);
  if num = og_cross_tickpos then
     og_set_tickpos(x_axis, og_inside_tickpos);
  elsif num = og_inside_tickpos then
     og_set_tickpos(x_axis, og_outside_tickpos);
  elsif num = og_outside_tickpos then
     og_set_tickpos(x_axis, og_cross_tickpos);
  end if;
END;


Achsenattribute (Kategorien)

Attribut Auto Maximum

Attribut Auto Minimum

Attribut Datumsformat

Attribut Max. Anzahl an Kategorien

Attribut Min. Anzahl an Kategorien

Attribut Zahlenformat


Attribut Auto Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die maximale Anzahl an Kategorien, die auf der Achse angezeigt werden, auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Disc_Automax
  (axis     OG_Axis,
   automax  BOOLEAN,
   maxcat   NUMBER);

FUNCTION OG_Get_Disc_Automx
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automax	Gibt an, ob die maximale Anzahl an Kategorien, die auf der Achse angezeigt werden, auf Auto eingestellt ist.
maxcat	Gibt die maximale Anzahl an Kategorien an, die auf der Achse angezeigt werden (wenn automax FALSE ist).


Beispiele für das Attribut Auto Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**X-axis's maximum is set to auto.  If
**true, it resets the value to false with
**default_maxcat; if false, it reads the
**current value and resets it to true.
*/

PROCEDURE datemax IS
  template og_template;
  axis og_axis;
  val boolean;
  maxcat number;
  default_maxcat number := 3;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_automax(axis);
  if val = true then
     og_set_disc_automax(axis, false, default_maxcat);
  elsif val = false then
    maxcat := og_get_disc_maxcat(axis);
    og_set_disc_automax(axis,true,default_maxcat);
  end if;
END;


Attribut Auto Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die minimale Anzahl an Kategorien, die auf der Achse angezeigt werden, auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Disc_Automin
  (axis     OG_Axis,
   automin  BOOLEAN,
   mincat   NUMBER);

FUNCTION OG_Get_Disc_Automin
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automin	Gibt an, ob die minimale Anzahl an Kategorien, die auf der Achse angezeigt wird, auf Auto eingestellt ist.
mincat	Gibt die minimale Anzahl an Kategorien an, die auf der Achse angezeigt werden (wenn automin FALSE ist.)


Beispiele für das Attribut Auto Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**X-axis's minimum is set to auto.  If
**true, it resets the value to false with
*default_mincat;  if false, it reads the
**current value and resets the value to
**true.
*/

PROCEDURE datemin IS
  template og_template;
  axis og_axis;
  val boolean;
  mincat number;
  default_mincat number := 50;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_automin(axis);
  if val = true then
    og_set_disc_automin(axis,false,default_mincat);
  elsif val = false then
    mincat := og_get_disc_mincat(axis);
    og_set_disc_automin(axis,true,default_mincat);
  end if;
END;


Attribut Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Datumsformat für die Teilungsbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Disc_Datefmt
  (axis      OG_Axis,
   date_fmt  VARCHAR2);

FUNCTION OG_Get_Disc_Datefmt
  (axis  OG_Axis)
RETURN VARCHAR2;

Parameter

axis	Beschriebenes Achsenobjekt.
date_fmt	Gibt das Datumsformat für die Teilungsbeschriftungen an.


Beispiele für das Attribut Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the current
**date format of the axis.  If the current
**format is not equal to variable
**'default_date', it resets the value to
**'default_date.'
*/

PROCEDURE datefmt IS
  template og_template;
  axis og_axis;
  val varchar2(10);
  default_date varchar2(10) := 'DD_YY_MM';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_datefmt(axis);
  if val != default_date then
     og_set_disc_datefmt(axis, default_date);
  end if;
END;


Attribut Max. Anzahl an Kategorien

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die maximale Anzahl an Kategorien an, die auf der Achse angezeigt werden (wenn automax FALSE ist).

Syntax

(Siehe OG_Set_Disc_Automax oben.)

FUNCTION OG_Get_Disc_Maxcat
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Max. Anzahl an Kategorien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*
** The following procedure checks if the
**X-axis's maximum is set to auto.  If
**true, it resets the value to false with
**default_maxcat; if false, it reads the
**current value and resets
**it to true.
*/

PROCEDURE datemax IS
  template og_template;
  axis og_axis;
  val boolean;
  maxcat number;
  default_maxcat number := 3;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_automax(axis);
  if val = true then
     og_set_disc_automax(axis, false, default_maxcat);
  elsif val = false then
    maxcat := og_get_disc_maxcat(axis);
    og_set_disc_automax(axis,true,default_maxcat);
  end if;
END;


Attribut Min. Anzahl an Kategorien

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die minimale Anzahl an Kategorien an, die auf der Achse angezeigt werden (wenn automin FALSE ist).

Syntax

(Siehe OG_Set_Disc_Automin oben.)

FUNCTION OG_Get_Disc_Mincat
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Min. Anzahl an Kategorien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the
**X-axis's minimum is set to auto.  If
**true, it resets the value to false with
**default_mincat;  if false, it reads the
**current value and resets the value to
**true.
*/

PROCEDURE datemin IS
  template og_template;
  axis og_axis;
  val boolean;
  mincat number;
  default_mincat number := 50;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_automin(axis);
  if val = true then
    og_set_disc_automin(axis,false,default_mincat);
  elsif val = false then
    mincat := og_get_disc_mincat(axis);
    og_set_disc_automin(axis,true,default_mincat);
  end if;
END;


Attribut Zahlenformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für die Teilungsbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Disc_Numfmt
  (axis     OG_Axis,
   num_fmt  VARCHAR2);

FUNCTION OG_Get_Disc_Numfmt
  (axis  OG_Axis)
RETURN VARCHAR2;

Parameter

axis	Beschriebenes Achsenobjekt.
num_fmt	Gibt das Zahlenformat für die Teilungsbeschriftungen an.


Beispiele für das Attribut Zahlenformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the current
**number format of the axis.  If the current
**format is not equal to variable
**'default_format', it resets the value to
**'default_format'
*/

PROCEDURE discnumfmt IS
  template 	og_template;
  axis 	og_axis;
  val 	varchar2(10);
  default_format  varchar2(10) := '9,9,9,9';
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_x_axis);
  val := og_get_disc_numfmt(axis);
  if val != default_format then
     og_set_disc_numfmt(axis, default_format);
  end if;
END;


Achsenattribute (Werte)

Attribut Auto Maximum

Attribut Auto Minimum

Attribut Auto Schrittgröße

Attribut Maßstab

Attribut Maximum

Attribut Minimum

Attribut Prozent mit

Attribut Prozent von

Attribut Schrittgröße

Attribut Zahlenformat


Attribut Auto Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Cont_Automax
  (axis     OG_Axis,
   automax  BOOLEAN,
   maximun  NUMBER);

FUNCTION OG_Get_Cont_Automax
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automax	Gibt an, ob der Achsenhöchstwert auf Auto eingestellt ist.
maximun	Gibt den Achsenhöchstwert an (wenn automax FALSE ist).


Beispiele für das Attribut Auto Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's maximum is set to auto. If return
**value is TRUE, reset the value to FALSE
**with default_max; if return value is
**FALSE, it resets the value to TRUE
**after reading the specified maximum
**axis value.
*/

PROCEDURE automin IS
  axis 	og_axis;
  template 	og_template;
  val 	boolean;
  num 	number;
  default_max 	number := 3000;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_autostep(axis);
  if val = TRUE then
    og_set_cont_autostep(axis, FALSE, default_max);
  else
    num := og_get_cont_step(axis);
    og_set_cont_autostep(axis, TRUE, default_max);
  end if;
END;


Attribut Auto Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenmindestwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Cont_Automin
  (axis     OG_Axis,
   automin  BOOLEAN,
   minimun  NUMBER);

FUNCTION OG_Get_Cont_Automin
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
automin	Gibt an, ob der Mindestwert der Achse auf Auto eingestellt ist.
minimun	Gibt den Mindestachsenwert an (wenn automin FALSE ist).


Beispiele für das Attribut Auto Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's minimum is set to auto. If the
**value is TRUE, it resets the value to
**FALSE with default_min; if the return
**value is FALSE, it resets the value to
**TRUE after reading the specified minimum
**axis value.
*/

PROCEDURE automin IS
  axis 	og_axis;
  template	og_template;
  val 	boolean;
  num 	number;
  default_min 	number := 500;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_automin(axis);
  if val = TRUE then
    og_set_cont_automin(axis, FALSE, default_min);
  elsif val = FALSE then
    num := og_get_cont_minimum(axis);
    og_set_cont_automin(axis, TRUE, default_min);
  end if;
END;


Attribut Auto Schrittgröße

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Achsenschrittwert auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Cont_Autostep
  (axis      OG_Axis,
   autostep  BOOLEAN,
   step      NUMBER);

FUNCTION OG_Get_Cont_Autostep
  (axis  OG_Axis)
RETURN BOOLEAN;

Parameter

axis	Beschriebenes Achsenobjekt.
autostep	Gibt an, ob der Achsenschrittwert auf Auto eingestellt ist.
step	Gibt den Achsenschrittwert an (wenn autostep FALSE ist).


Beispiele für das Attribut Auto Schrittgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's step is set to auto. If the return
**value is TRUE, it resets the value to
**FALSE with default step value; if
**return value is FALSE, it resets
**the value to TRUE after reading
**the specified step value.
*/

PROCEDURE autostep IS
  axis 	og_axis;
  template 	og_template;
  val 	boolean;
  num 	number;
  step 	number := 500;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_autostep(axis);
  if val = TRUE then
    og_set_cont_autostep(axis, FALSE, step);
  else
    num := og_get_cont_step(axis);
    og_set_cont_autostep(axis, TRUE, step);
  end if;
END;


Attribut Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Achsenhöchstwert an (wenn Auto Maximum FALSE ist).

Syntax

(Siehe OG_Set_Cont_Automax oben.)

FUNCTION OG_Get_Cont_Maximum
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's maximum is set to auto. If return
**value is TRUE, reset the value to
**FALSE with default_max; if return value
**is FALSE, it resets the value to
**TRUE after reading the specified
**maximum axis value.
*/

PROCEDURE automin IS
  axis 	og_axis;
  template 	og_template;
  val 	boolean;
  num 	number;
  default_max 	number := 3000;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_autostep(axis);
  if val = TRUE then
    og_set_cont_autostep(axis, FALSE, default_max);
  else
    num := og_get_cont_step(axis);
    og_set_cont_autostep(axis, TRUE, default_max);
  end if;
END;


Attribut Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Achsenmindestwert an (wenn Auto Minimum FALSE ist).

Syntax

(Siehe OG_Set_Cont_Automin oben.)

FUNCTION OG_Get_Cont_Minimum
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's minimum is set to auto. If the
**return value is TRUE, it resets the
**value to FALSE with default_min;
**if the return value is FALSE, it resets
**the value to TRUE after reading the
**specified minimum axis value.
*/

PROCEDURE automin IS
  axis 	og_axis;
  template	og_template;
  val 	boolean;
  num 	number;
  default_min 	number := 500;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_automin(axis);
  if val = TRUE then
    og_set_cont_automin(axis, FALSE, default_min);
  elsif val = FALSE then
    num := og_get_cont_minimum(axis);
    og_set_cont_automin(axis, TRUE, default_min);
  end if;
END;


Attribut Zahlenformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für Teilungsbeschriftungen an. Dieses Format muß eine gültige SQL-Formatfolge sein. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Cont_Numfmt
  (axis     OG_Axis,
   num_fmt  VARCHAR2);

FUNCTION OG_Get_Cont_Numfmt
  (axis  OG_Axis)
RETURN VARCHAR2;

Parameter

axis	Beschriebenes Achsenobjekt.
num_fmt	Gibt das Zahlenformat für die Teilungsbeschriftungen an.


Beispiele für das Attribut Zahlenformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the current
**number format of the axis and resets it to
**a different value.
*/

PROCEDURE numFormat IS
  axis 	og_axis;
  template 	og_template;
  val 	varchar2(10);
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_cont_numfmt(axis);
  og_set_cont_numfmt(axis,'9,9,9,9,9');
END;


Attribut Prozent mit

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, wie die Maßstabswerte Prozent von berechnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Category_Pctby   Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten für dasselbe Feld in anderen Kategorien berechnet wird.

OG_Field_Pctby   Bedeutet, daß der Prozentsatz für jeden Datenwert relativ zu den Datenwerten in derselben Kategorie für andere Felder berechnet wird.

Syntax

PROCEDURE OG_Set_Pct_By
  (axis    OG_Axis,
   pct_of  NUMBER);

FUNCTION OG_Get_Pct_By
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
pct_of	Gibt an, wie die Maßstabswerte Prozent von berechnet werden.


Beispiele für das Attribut Prozent mit

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following procedure reads the
**calculating method for the
**Percent Of scaling values
**(with Scale is set for OG_PCT_SCALE)
**from the axis and resets the value to
**the next available value.
/*

PROCEDURE pctby IS
  axis 	og_axis;
  template 	og_template;
  val 	number;
BEGIN
  template := og_get_template('template0');
  axis := og_get_axis(template, og_y1_axis);
  val := og_get_pct_by(axis);
  if val = OG_category_pctby then
    og_set_pct_by(axis, og_field_pctby);
  elsif val = og_field_pctby then
    og_set_pct_by(axis, og_category_pctby);
  end if;
END;


Attribut Prozent von

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den relativen Skalierungsfaktor an (wenn für Maßstab OG_Pct_Scale eingestellt wurde). Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Maximum_Pctof   Bedeutet, daß jeder Datenwert als Prozentsatz des größten Datenwerts dargestellt wird.

OG_Minimum_Pctof   Bedeutet, daß jeder Datenwert als Prozensatz des kleinsten Datenwerts dargestellt wird.

OG_Sum_Pctof   Bedeutet, daß jeder Datenwert als Prozentsatz der Summe aller Datenwerte dargestellt wird.

Syntax

PROCEDURE OG_Set_Pct_Of
  (axis    OG_Axis,
   pct_of  NUMBER);

FUNCTION OG_Get_Pct_Of
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
pct_of	Gibt den relativen Skalierungsfaktor an (wenn Maßstab auf OG_Pct_Scale eingestellt ist).


Beispiele für das Attribut Prozent von

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**relative scaling factor (with Scale
**set to OG_PCT_SCALE)from the axis
**and resets the value to the next
**available value.
*/

PROCEDURE pctof  IS

  axis 	og_axis;

  template 	og_template;

  val 	number;

BEGIN

  template := og_get_template('template0');

  axis := og_get_axis(template, og_y1_axis);

  val := og_get_pct_of(axis);

  if val = OG_maximum_pctof then

     og_set_pct_of(axis, og_minimum_pctof);

  elsif val = og_minimum_pctof then

    og_set_pct_of(axis, og_sum_pctof);

  elsif val = og_sum_pctof then

    og_set_pct_of(axis, og_maximum_pctof);

  end if;

END;


Attribut Maßstab

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Algorithmus für die Skalierung der Achse an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Linear_Scale   Bedeutet, daß die Achse mit einem festen Intervall zwischen dem Achsenmindestwert und Achsenhöchstwert skaliert wird.

OG_LOG_Scale   Bedeutet, daß die Achse mit einem logarithmischen Algorithmus (zur Basis 10) skaliert wird, um die Intervalle zwischen den Achsenmindestwerten und den Achsenhöchstwerten zu bestimmen.

OG_Pct_Scale   Bedeutet, daß die Achse so skaliert wird, daß die Datenwerte relativ zu dem mit Prozent von angegebenen Betrag dargestellt werden.

Syntax

PROCEDURE OG_Set_Scale
  (axis   OG_Axis,
   scale  NUMBER);

FUNCTION OG_Get_Scale
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.
Scale	Gibt den Algorithmus zur Skalierung der Achse an.


Beispiele für das Attribut Maßstab

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the method used for scaling from
**the axis and resets the value
**to the next available value.
*/

PROCEDURE  scale IS

  axis 	og_axis;

  template 	og_template;

  val 	number;

BEGIN

  template := og_get_template('template0');

  axis := og_get_axis(template, og_y1_axis);

  val := og_get_scale(axis);

  if val = OG_linear_scale then

    og_set_scale(axis, og_log_scale);

  elsif val = og_log_scale then

    og_set_scale(axis, og_pct_scale);

  elsif val = og_pct_scale then

    og_set_scale(axis, og_linear_scale);

  end if;

END;


Attribut Schrittgröße

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Wert für die Schrittgröße der Achse an (wenn Auto Step FALSE ist).

Syntax

(Siehe OG_Set_Cont_Autostep oben.)

FUNCTION OG_Get_Cont_Step
  (axis  OG_Axis)
RETURN NUMBER;

Parameter

axis	Beschriebenes Achsenobjekt.


Beispiele für das Attribut Schrittgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if axis
**Y1's step is set to auto. If the return
**value is TRUE, it resets the value to
**FALSE with default step value; if return
**value is FALSE, it resets the value to
**TRUE after reading the specified step value.
*/

PROCEDURE autostep IS

  axis 	og_axis;

  template 	og_template;

  val 	boolean;

  num 	number;

  step 	number := 500;

BEGIN

  template := og_get_template('template0');

  axis := og_get_axis(template, og_y1_axis);

  val := og_get_cont_autostep(axis);

  if val = TRUE then

    og_set_cont_autostep(axis, FALSE, step);

  else

    num := og_get_cont_step(axis);

    og_set_cont_autostep(axis, TRUE, step);

  end if;

END;


Diagrammelementattribute

Attribut Auflösen

Attribut Ereignistypen

Attribut Name

Attribut Schaltflächenprozedur


Attribut Schaltflächenprozedur

  Beispiele	  Verwandte Themen

Beschreibung  Das Handle zu der Schaltflächenprozedur, die mit diesem Diagrammelement verknüpft werden soll. Beachten Sie, daß das Attribut Ereignistypen richtig eingestellt werden muß, um zu gewährleisten, daß diese Prozedur die gewünschten Mausereignisse empfängt. Das Attribut Ereignistypen kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_No_Events

OG_Mouse_Up

OG_Mouse_Down

OG_Mouse_Move_Down

Um sicherzustellen, daß die Prozedur mehrere Ereignistypen empfangen kann, stellen Sie Ereignistypen so ein, daß sie die Summe der Konstanten für die gewünschten Ereignisse darstellen.

Syntax

PROCEDURE OG_Set_Button
  (chart        OG_Object,
   row_num      NUMBER,
   col_name     VARCHAR2,
   button_proc  OG_Buttonproc,
   events       NUMBER);

Parameter

chart	Beschriebenes Diagrammobjekt.
row_num	Die Abfragezeilennummer, die von dem Diagrammelement dargestellt wird.
col_name	Die Abfragespalte, die von dem Diagrammelement dargestellt wird.
button_proc	Das Handle zu der Schaltflächenprozedur, die mit diesem Diagrammelement verknüpft werden soll.
events	Typ der Mausereignisse, die die Schaltflächenprozedur empfangen soll.


Beispiele für das Attribut Schaltflächenprozedur

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure assigns
**a button procedure to chart
**element MGR_bars.
*/

PROCEDURE  AssignButtonProc IS
  chart og_object;
  mgrbar og_object;
  button og_buttonproc;
BEGIN
  chart := og_get_object('chart');
  mgrbar := og_get_object('MGR_bars');
  button := og_get_buttonproc('button');
  og_set_button(chart, og_get_row(mgrbar), 'MGR', button, og_mouse_down);
END;


Attribut Ereignistypen

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Typ der Mausereignisse, die die Schaltflächenprozedur empfangen soll. Der Wert dieses

Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_No_Events

OG_Mouse_Up

OG_Mouse_Down

OG_Mouse_Move_Down

Damit die Prozedur mehrere Ereignistypen empfangen kann, stellen Sie Ereignistypen so ein, daß sie die Summe der Konstanten für die gewünschten Ereignisse darstellen.

Syntax

(Siehe OG_Set_Button.)

Parameter

Keine


Beispiele für das Attribut Ereignistypen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure assigns
**a button procedure to
**chart element MGR_bars.
*/

PROCEDURE  AssignButtonProc IS
  chart og_object;
  mgrbar og_object;
  button og_buttonproc;
BEGIN
  chart := og_get_object('chart');
  mgrbar := og_get_object('MGR_bars');
  button := og_get_buttonproc('button');
  og_set_button(chart, og_get_row(mgrbar), 'MGR', button, og_mouse_down);
END;


Attribut Auflösen

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt den Abstand, um den das Diagrammelement (d.h. Kreissegment) abgesetzt werden soll, in Prozent des x- und y-Radius des Diagramms (z.B. 25). Dieses Attribut ist nur sinnvoll, wenn es mit einem Kreisdiagramm benutzt wird. Außerdem werden alle Kreissegmente einer bestimmten Kategorie um denselben Abstand abgesetzt. Deshalb muß der angegebene Spaltenname der Name einer Wertespalte und nicht einer Kategorienspalte sein.

Syntax

PROCEDURE OG_Set_Explosion
  (chart        OG_Object,
   row_num      NUMBER,
   col_name     VARCHAR2,
   explode_pct  NUMBER);

Parameter

chart	Beschriebenes Diagrammobjekt.
row_num	Die Abfragezeilennummer, die von dem Diagrammelement dargestellt wird.
col_name	Die Abfragespalte, die von dem Diagrammelement dargestellt wird. Hier muß es sich um den Namen einer Wertespalte handeln.
explode_pct	Abstand, um den das Diagrammelement (d.h. Kreissegment) abgesetzt werden muß, in Prozent des x- und y-Radius des Diagramms (z.B. 25).


Beispiele für das Attribut Auflösen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure assigns the
**distance the chart element should be
** exploded to to 50.
*/

PROCEDURE Explosion IS
  pie og_object;
  mgr_slice og_object;
BEGIN
  pie := og_get_object('pie');
  mgr_slice := og_get_object('MGR_slices');
  og_set_explosion(pie, og_get_row(mgr_slice), 'MGR', 50);
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name des Diagrammelements.

Syntax

PROCEDURE OG_Set_Name
  (chart     OG_Object,
   row_num   NUMBER,
   col_name  VARCHAR2,
   name      VARCHAR2);

Parameter

chart	Beschriebenes Diagrammobjekt.
row_num	Die Abfragezeilennummer, die von dem Diagrammelement dargestellt wird.
col_name	Die Abfragespalte, die von dem Diagrammelement dargestellt wird.
Name	Name des Diagrammelements.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure sets
**the name of the chart element.
*/

PROCEDURE Name IS
  chart og_object;
  mgr_bar og_object;
BEGIN
  chart := og_get_object('chart');
  mgr_bar := og_get_object('Mgr_bars');
  og_set_name(chart, og_get_row(mgr_bar), 'MGR', 'NewName');
END;


Diagrammattribute

Attribut Abfrage

Attribut Anfangszeile

Attribut Automatisch aktualisieren

Attribut Bereich

Attribut Endzeile

Attribut Filter

Attribut Größe und Position

Attribut Titel

Attribut Vorlage


Attribut Automatisch aktualisieren

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, daß das Diagramm automatisch aktualisiert werden soll, nachdem die Abfrage ausgeführt wurde.

Syntax

PROCEDURE OG_Set_Autoupdate
  (chart       OG_Object,
   autoupdate  BOOLEAN);

FUNCTION OG_Get_Autoupdate
  (chart  OG_Object)
RETURN BOOLEAN;

Parameter

chart	Beschriebenes Diagramm.
autoupdate	Gibt an, daß das Diagramm automatisch aktualisiert werden soll, nachdem die Abfrage ausgeführt wurde.


Beispiele für das Attribut Automatisch aktualisieren

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the value of
**autoupdate in Chart properties, and
**resets the value to its opposite value
*/

PROCEDURE ChartAutoUpdate IS
  chart og_object;
  autoupdate boolean;
BEGIN
  chart := og_get_object('chart');
  autoupdate := og_get_autoupdate(chart);
  if autoupdate = true then
     og_set_autoupdate(chart, false);
  else
    og_set_autoupdate(chart, true);
   end if;
END;


Attribut Endzeile

  Beispiele	  Verwandte Themen

Beschreibung  Letzte Zeile aus der Abfrage, die in dem Diagramm angezeigt wird.

Syntax

(Siehe OG_Set_Rows.)

FUNCTION OG_Get_Endrow
  (chart  OG_Object)
RETURN NUMBER;

Parameter

chart	Beschriebenes Diagrammobjekt.


Beispiele für das Attribut Endzeile

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**startrow and endrow value from chart
**(provided the Plot rows box is checked),
**and resets the range to startrow -1 and
**endrow -1.)
*/

PROCEDURE ChartStartEnd IS
  chart og_object;
 startrow number;
  endrow number;
BEGIN
  chart := og_get_object('chart');
  startrow := og_get_startrow(chart);
  endrow := og_get_endrow(chart);
  og_set_rows(chart,true, startrow-1, endrow-1);
END;


Attribut Filter

  Beispiele	  Verwandte Themen

Beschreibung  Name der Filter-Trigger-Prozedur der Abfrage.

Syntax

PROCEDURE OG_Set_Filter
  (chart   OG_Object,
   filter  VARCHAR2);

FUNCTION OG_Get_Filter
  (chart  OG_Object)
RETURN VARCHAR2;

Parameter

chart	Beschriebenes Diagrammobjekt.
Filter	Name der Filter-Trigger-Prozedur der Abfrage.


Beispiele für das Attribut Filter

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the name of the current filter trigger
**of the chart, and assigns a different
**filter trigger to the chart
*/

PROCEDURE ChartFilter IS
  chart og_object;
  current_filter varchar2(30);
  new_filter varchar2(30):='MyFilter';
BEGIN
  chart := og_get_object('chart');
  current_filter := og_get_filter(chart);
  og_set_filter(chart, new_filter);
END;


Attribut Abfrage

  Beispiele	  Verwandte Themen

Beschreibung Handle zu der Abfrage, die für das Diagramm benutzt werden soll.

Syntax

PROCEDURE OG_Set_Query
  (chart        OG_Object,
   query        OG_Query,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Query
  (chart  OG_Object)
RETURN OG_Query;

Parameter

chart	Beschriebenes Diagrammobjekt.
Query	Handle zu der Abfrage, die für das Diagramm benutzt werden soll.
Damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Abfrage

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**query handle from the current chart
**(qry0)and resets the handle value to
**qry1.
*/

PROCEDURE ChartQuery IS
  chart og_object;
  qry0 og_query;
  qry1 og_query;
BEGIN
  chart := og_get_object('chart');
  qry0 := og_get_query(chart);
  qry1 := og_get_query('query1');
  og_set_query(chart, qry1);
END;


Attribut Bereich

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Anzahl von Abfragezeilen, die in dem Diagramm angezeigt werden, auf den Bereich begrenzt ist, der mit startrow und endrow angegeben wird.

Syntax

PROCEDURE OG_Set_Rows
  (chart      OG_Object,
   rangeflag  BOOLEAN,
   startrow   NUMBER,
   endrow     NUMBER);

FUNCTION OG_Get_Rangeflag
  (chart  OG_Object)
RETURN BOOLEAN;

Parameter

chart	Beschriebenes Diagrammobjekt.
Rangeflag	Gibt an, ob die Anzahl von Abfragezeilen, die in dem Diagramm angezeigt werden, auf den mit startrow und endrow angegebenen Bereich beschränkt ist.
startrow	Die erste Zeile aus der Abfrage, die in dem Diagramm angezeigt wird. Die erste Abfragezeile ist 0, die zweite Zeile 1 usw.
endrow	Die letzte Zeile aus der Abfrage, die in dem Diagramm angezeigt wird.


Beispiele für das Attribut Bereich

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**the number of query rows that appear
**on the chart is range restricted.
**If true, it resets the value to false
**(i.e. plots all rows); if false, it
**resets the value to true with a
**restricted range specified by
**startrow and endrow.
*/

PROCEDURE ChartRange IS
  chart og_object;
  rangeflag boolean;
  startrow number := 3;
  endrow number := 9;
BEGIN
  chart := og_get_object('chart');
  rangeflag := og_get_rangeflag(chart);
  if rangeflag = true then
     og_set_rows(chart,false, startrow, endrow);
  else
    og_set_rows(chart, true, startrow, endrow);
  end if;
END;


Attribut Größe und Position

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten, Höhe und Breite des Diagrammrahmens (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Frame
  (chart        OG_Object,
   frame        OG_Rectangle,
   damage       BOOLEAN       :=  TRUE,
   update_bbox  BOOLEAN       :=  TRUE);

FUNCTION OG_Get_Frame
  (chart  OG_Object)
RETURN OG_Rectangle;

Parameter

chart	Beschriebenes Diagrammobjekt.
frame	x- und y-Koordinaten, Höhe und Breite des Diagrammrahmens (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Größe und Position

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the frame
**size of the chart, and reduces it by half.
*/

PROCEDURE SizeAndPos IS
  chart og_object;
  rect og_rectangle;
BEGIN
  chart := og_get_object('chart');
    rect := og_get_frame(chart);
  rect.x := rect.x/2;
  rect.y := rect.y/2;
  rect.height := rect.height/2;
  rect.width := rect.width/2;
  og_set_frame(chart, rect);
END;


Attribut Anfangszeile

  Beispiele	  Verwandte Themen

Beschreibung  Die erste Zeile aus der Abfrage, die in dem Diagramm angezeigt wird. Die erste Abfragezeile ist 0, die zweite Zeile 1 usw.

Syntax

(Siehe OG_Set_Rows oben.)

FUNCTION OG_Get_Startrow
  (chart  OG_Object)
RETURN NUMBER;

Parameter

chart	Beschriebenes Diagrammobjekt.


Beispiele für das Attribut Anfangszeile

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**startrow and endrow value from chart
**(provided the Plot rows box is checked),
**and resets the range to startrow -1 and
**endrow -1.)
*/

PROCEDURE ChartStartEnd IS
  chart og_object;
 startrow number;
  endrow number;
BEGIN
  chart := og_get_object('chart');
  startrow := og_get_startrow(chart);
  endrow := og_get_endrow(chart);
  og_set_rows(chart,true, startrow-1, endrow-1);
END;


Attribut Vorlage

  Beispiele	  Verwandte Themen

Beschreibung Handle zu der Vorlage, die für das Diagramm benutzt werden soll.

Syntax

PROCEDURE OG_Set_Template
  (chart        OG_Object,
   template     OG_Template,
   damage       BOOLEAN      :=  TRUE,
   update_bbox  BOOLEAN      :=  TRUE);

FUNCTION OG_Get_Template
  (chart  OG_Object)
RETURN OG_Template;

Parameter

chart	Beschriebenes Diagrammobjekt.
template	Handle zu der Vorlage, die für das Diagramm benutzt werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Vorlage

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**template handles template1 and template2
**from chart1 and chart2 respectively, and
**assigns template1 to chart2, template2
**to chart1.
*/

PROCEDURE ChartTemplate IS
  chart1 og_object;
  chart2 og_object;
  template1 og_template;
  template2 og_template;
BEGIN
  chart1 := og_get_object('chart1');
  chart2 := og_get_object('chart2');
  template1 := og_get_template(chart1);
  template2 := og_get_template(chart2);
  og_set_template(chart1, template2);
  og_set_template(chart2, template1);
END;


Attribut Titel

  Beispiele	  Verwandte Themen

Beschreibung  Titel des Diagramms.

Syntax

PROCEDURE OG_Set_Title
  (chart  OG_Object,
   title  VARCHAR2);

FUNCTION OG_Get_Title
  (chart  OG_Object)
RETURN VARCHAR2;

Parameter

chart	Beschriebenes Diagrammobjekt.
title	Titel des Diagramms.


Beispiele für das Attribut Titel

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the title of a chart; compare
**the value with new_title. If
**they are not equal, change the
**title to new_title.
*/

PROCEDURE ChartTitle IS
  chart og_object;
  title varchar2(30);
  new_title varchar2(30) := 'New title';
BEGIN
  chart := og_get_object('chart');
  title := og_get_title(chart);
  if title != new_title then
    og_set_title(chart, new_title);
  end if;
END;


Grafische Anwendungsattribute

Attribut Breite

Attribut Close-Trigger

Attribut Datumsformat

Attribut Höhe

Attribut Open-Trigger


Attribut Close-Trigger

  Beispiele	  Verwandte Themen

Beschreibung  Name des Close-Display-Triggers der grafischen Anwendung.

Syntax

PROCEDURE OG_Set_Closetrigger
  (trigger  VARCHAR2);

FUNCTION OG_Get_Closetrigger
RETURN VARCHAR2;

Parameter

trigger	Name des Close-Display-Triggers der grafischen Anwendung.


Beispiele für das Attribut Close-Trigger

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the name
**of the close trigger of the current
**display.  If the current trigger is not
**new_trigger, it sets new_trigger to be the
**current close trigger procedure.
*/

PROCEDURE CloseTrigger IS
  val varchar2(20);
  new_trigger varchar2(20) := 'CURSORDEFAULT';
BEGIN
   val := og_get_closetrigger;
   if val != new_trigger then
     og_set_closetrigger('CursorDefault');
   end if;
END;


Attribut Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Datumsformat für Parameter an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

OG_Set_Dateformat
  (dateformat  VARCHAR2);

OG_Get_Dateformat
RETURN VARCHAR2;

Parameter

dateformat	Gibt das Datumsformat für Parameter an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the date
**format of display.  If the format is not
**the same as new_datefmt, it sets the current
**format to new_format.
*/

PROCEDURE datefmt IS
  datefmt varchar2(20);
  new_datefmt varchar2(20) := 'DD/MM/YYYY';
BEGIN
  datefmt := og_get_dateformat;
  if datefmt != new_datefmt then
    og_set_dateformat('DD/MM/YYYY');
  end if;
END;


Attribut Höhe

  Beispiele	  Verwandte Themen

Beschreibung  Höhe des Layouts (in Layouteinheiten).

Syntax

(Siehe OG_Set_Display_Size.)

FUNCTION OG_Get_Display_Height
RETURN NUMBER;

Parameter

Keine


Beispiele für das Attribut Höhe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*The following procedure reads the width
**and height of the current display and
**reduces the display size by half.
*/

PROCEDURE dimension0 IS
  width number;
  height number;
BEGIN
  width := og_get_display_width;
  height := og_get_display_height;
  og_set_display_size(width/2, height/2);
END;


Attribut Open-Trigger

  Beispiele	  Verwandte Themen

Beschreibung  Name des Open-Display-Triggers der grafischen Anwendung.

Syntax

PROCEDURE OG_Set_Opentrigger
  (trigger  VARCHAR2);

FUNCTION OG_Get_Opentrigger
RETURN VARCHAR2;

Parameter

trigger	Name des Open-Display-Triggers der grafischen Anwendung.


Beispiele für das Attribut Open-Trigger

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the name of
**the open trigger of the current display.
**If the current trigger is not new_trigger,
**it sets new_trigger to be the current open
**trigger procedure.
*/

PROCEDURE OpenTrigger IS
  val varchar2(20);
  new_trigger varchar2(20) := 'TOBLUE';
BEGIN
  val := og_get_opentrigger;
  if val != 'TOBLUE' then
    og_set_opentrigger('toblue');
  end if;
END;


Attribut Breite

  Beispiele	  Verwandte Themen

Beschreibung  Breite des Layouts (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Display_Size
  (width   NUMBER,
   height  NUMBER);

FUNCTION OG_Get_Display_Width
RETURN NUMBER;

Parameter

width	Breite des Layouts (in Layouteinheiten).
Height	Höhe des Layouts (in Layouteinheiten).


Beispiele für das Attribut Breite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the width
**and height of the current display and
**reduces the display size by half.
*/

PROCEDURE dimension0 IS
  width number;
  height number;
BEGIN
  width := og_get_display_width;
  height := og_get_display_height;
  og_set_display_size(width/2, height/2);
END;


Rahmenattribute (Achsendiagramm)

Attribut Basislinie Achse

Attribut Benutzerdefiniertes Datumsformat

Attribut Benutzerdefiniertes Zahlenformat

Attribut Kategorienbreite

Attribut Referenzlinienzähler

Attribut Wert der Basislinie

Attribut Zweite Y-Achse


Attribut Basislinie Achse

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Achse an, mit der der Wert der Basislinie verglichen wird, um deren Position zu bestimmen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Template

OG_Y1_Axis

OG_Y2_Axis

Syntax

PROCEDURE OG_Set_Baseaxis
  (template  OG_Template,
   baseaxis  NUMBER);

FUNCTION OG_Get_Baseaxis
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
baseaxis	Gibt die Achse an, mit der der Wert der Basislinie verglichen wird, um die Position zu bestimmen.


Beispiele für das Attribut Basislinie Achse

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following procedure specifies the
**date format for the baseline label.
*/

PROCEDURE CusDateFmt IS
  chart og_object;
  template og_template;
  custDate date;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  custDate := og_get_cust_date(template);
  if custDate != '06-DEC-88' then
    og_set_cust_date(template, '06-DEC-96');
  end if;
END;


Attribut Wert der Basislinie

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Wert, der als Ausgangspunkt für die Darstellung von Feldern auf der Werteachse benutzt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Custom_Baseline

OG_Min_Baseline

OG_Zero_Baseline

Syntax

PROCEDURE OG_Set_Basevalue
  (template   OG_Template,
   basevalue  NUMBER);

FUNCTION OG_Get_Basevalue
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
basevalue	Wert, der als Ausgangspunkt für die Darstellung von Feldern auf der Werteachse benutzt wird.


Beispiele für das Attribut Wert der Basislinie

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the baseline value of the field
**template of a chart.If the current
** baseline value is ZERO,
**the procedure resets the value to
**MAX; If the current baseline value
**is any value other than ZERO, the
**procedure resets the value to ZERO.
*/

PROCEDURE BaseLine IS
  chart og_object;
  template og_template;
  value number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  value := og_get_basevalue(template);
  if value = og_zero_baseline then
    og_set_basevalue(template, og_max_baseline);
  else
    og_set_basevalue(template, og_zero_baseline);
  end if;
  og_update_chart(chart);
END;


Attribut Kategorienbreite

  Beispiele	  Verwandte Themen

Beschreibung  Breite der Balken in einem Balken- oder Säulendiagramm in Prozent der Streifenbreite. Die Streifenbreite entspricht der größten Breite, die die Balken haben können, ohne sich gegenseitig zu überlappen. Sie wird bestimmt, indem die Länge der Kategorienachse durch die Anzahl von darzustellenden Balken dividiert wird.

Syntax

PROCEDURE OG_Set_Catwidth
  (template  OG_Template,
   catwidth  NUMBER);

FUNCTION OG_Get_Catwidth
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
catwidth	Breite der Balken in einem Balken- oder Säulendiagramm in Prozent der Streifenbreite. Die Streifenbreite ist die größte Breite, die die Balken haben können, ohne sich gegenseitig zu überlappen. Sie wird bestimmt, indem die Länge der Kategorienachse durch die Anzahl von darzustellenden Balken dividiert wird.


Beispiele für das Attribut Kategorienbreite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure reduces the
** category width of the bars by half of
**its original width.
*/

PROCEDURE CatWidth IS
  chart og_object;
  template og_template;
  width number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  width := og_get_catwidth(template);
  og_set_catwidth(template, width/2);
END;


Attribut Benutzerdefiniertes Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das benutzerdefinierte Datum an, auf das der benutzerdefinierte Datumswert eingestellt werden soll. Dadurch wird auch der Basiswert automatisch auf OG_CUSTOM_BASELINE eingestellt.

Syntax

PROCEDURE OG_Set_Cust_Date
  (template   OG_Template,
   cust_date  DATE);

FUNCTION OG_Get_Cust_Date
  (template  OG_Template)
RETURN DATE;

Parameter

template	Diagrammvorlage.
cust_date	Gibt den Datumswert für eine Datumsachse an. Dieser Wert wird als Referenz für das Zeichnen der Datenpunkte entlang der Werteachse benutzt.


Beispiele für das Attribut Benutzerdefiniertes Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure specifies
**the date format for the baseline label.
*/

PROCEDURE CusDateFmt IS
  chart og_object;
  template og_template;
  custDate date;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  custDate := og_get_cust_date(template);
  if custDate != '06-DEC-88' then
    og_set_cust_date(template, '06-DEC-96');
  end if;
END;


Attribut Benutzerdefiniertes Zahlenformat

  Beispiele	  Verwandte Themen

Beschreibung Gibt das benutzerdefinierte Zahlenformat an, auf das die Basislinie eingestellt werden soll. Dadurch wird auch der Basiswert automatisch auf OG_CUSTOM_BASELINE eingestellt.

Syntax

PROCEDURE OG_Set_Cust_Num
  (template  OG_Template,
   cust_num  NUMBER);

FUNCTION OG_Get_Cust_Num
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
cust_num	Gibt den Wert der Basislinie für eine Zahlenachse an. Dieser Wert wird als Referenz für das Zeichnen der Datenpunkte entlang der Werteachse benutzt.


Beispiele für das Attribut Benutzerdefiniertes Zahlenformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure specifies
**the number format for the baseline label.
*/

PROCEDURE CusNumFmt IS
  chart og_object;
  template og_template;
  num number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  num := og_get_cust_num(template);
  og_set_cust_num(template, num/2);
END;


Attribut Referenzlinienzähler

  Beispiele	  Verwandte Themen

Beschreibung  Anzahl von Referenzlinien, die zu der Diagrammvorlage gehören.

Syntax

FUNCTION OG_Get_Reflinect
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Referenzlinienzähler

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**reference line count and prints the
**number to a text object.
*/

PROCEDURE RefLineCnt IS
  text og_object;
  chart og_object;
  template og_template;
  cnt number;
BEGIN
  text := og_get_object('text object');
  chart := og_get_object('chart');
  template := og_get_template(chart);
  cnt := og_get_reflinect(template);
  og_set_str(text, cnt);
END;


Attribut Zweite Y-Achse

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob eine zweite Y-Achse in dem Diagramm angezeigt wird.

Syntax

PROCEDURE OG_Set_Second_Y
  (template  OG_Template,
   second_y  BOOLEAN);

FUNCTION OG_Get_Second_Y
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
Second_y	Gibt an, ob eine zweite Y-Achse in dem Diagramm angezeigt wird.


Beispiele für das Attribut Zweite Y-Achse

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure determines if
**a second Y axis appears on the chart.
**If not, it adds a second one.
*/

PROCEDURE SecondY IS
  chart og_object;
  template og_template;
  axis boolean;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  axis := og_get_second_y(template);
    if axis = false then
      og_set_second_y(template, true);
   end if;
  og_update_chart(chart);
END;


Rahmenattribute (Allgemein)

Attribut Anzahl der Spalten in der Legende

Attribut Anzahl Feldvorlagen

Attribut Darstellungsrahmen

Attribut Hauptfenster

Attribut Legende

Attribut Name

Attribut Rahmentyp

Attribut Schattengröße

Attribut Schattenrichtung

Attribut Tiefe


Attribut Tiefe

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Tiefe an, mit der der Diagrammrahmen und die Diagrammelemente gezeichnet werden, um diesen einen dreidimensionalen Effekt zu verleihen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_None_Depthsize

OG_Small_Depthsize

OG_Medium_Depthsize

OG_Large_None_Depthsize

OG_Xlarge_Depthsize

Syntax

PROCEDURE OG_Set_Depthsize
  (template   OG_Template,
   depthsize  NUMBER);

FUNCTION OG_Get_Depthsize
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
depthsize	Gibt die Tiefe an, mit der der Diagrammrahmen und die Diagrammelemente gezeichnet werden, um diesen einen dreidimensionalen Effekt zu verleihen.


Beispiele für das Attribut Tiefe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the depth size
**of the chart, and changes the depth
**to a different value.
*/

PROCEDURE FrameDepth IS
  chart og_object;
  template og_template;
  depth number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  depth := og_get_depthsize(template);
  if depth = og_none_depthsize then
     og_set_depthsize(template, og_small_depthsize);
  elsif depth = og_small_depthsize then
     og_set_depthsize(template, og_medium_depthsize);
  elsif depth = og_medium_depthsize then
     og_set_depthsize(template, og_large_depthsize);
  elsif depth = og_large_depthsize then
     og_set_depthsize(template, og_xlarge_depthsize);
  elsif depth = og_xlarge_depthsize then
     og_set_depthsize(template, og_none_depthsize);
  end if;
END;


Attribut Anzahl Feldvorlagen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Anzahl von Feldvorlagen an, die zu der Diagrammvorlage gehören.

Syntax

FUNCTION OG_Get_Ftempct
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Anzahl Feldvorlagen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the number of
**the field template that belongs to the current
**template,and prints the value to a text object.
*/

PROCEDURE FTempCnt IS
  text og_object;
  chart og_object;
  template og_template;
  num number;
BEGIN
  text := og_get_object('text object');
  chart := og_get_object('chart');
  template := og_get_template(chart);
  num := og_get_ftempct(template);
  og_set_str(text, num);
 END;


Attribut Rahmentyp

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Diagrammtyp, der von dieser Vorlage dargestellt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Axis_Frametype

OG_Pie_Frametype

OG_Table_Frametype

Syntax

FUNCTION OG_Get_Frametype
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Rahmentyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the frame type
**and prints the value to a text object.
*/

PROCEDURE FrameType IS
  text og_object;
  chart og_object;
  template og_template;
  num number;
BEGIN
  text := og_get_object('text object');
  chart := og_get_object('chart');
  template := og_get_template(chart);
  num := og_get_frametype(template);
  if num = og_axis_frametype then
    og_set_str(text, 'axis');
  elsif num = og_pie_frametype then
    og_set_str(text ,'pie');
  elsif num = og_table_frametype then
    og_set_str(text, 'table');
  end if;
END;


Attribut Legende

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Diagrammlegende angezeigt werden soll. (Gilt bei Tabellendiagrammen nicht.)

Syntax

PROCEDURE OG_Set_Legend
  (template  OG_Template,
   show      BOOLEAN);

FUNCTION OG_Get_Legend
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
show	Gibt an, ob die Diagrammlegende angezeigt werden soll. (Gilt bei Tabellendiagrammen nicht.)


Beispiele für das Attribut Legende

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**if a legend is shown.  If a legend
**is shown, it hides it; if a legend
**is hidden, it shows it.
*/

PROCEDURE FrameLegend IS
  chart og_object;
  template og_template;
  val boolean;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  val := og_get_legend(template);
  if val = true then
     og_set_legend(template, false);
  else
     og_set_legend(template, true);
  end if;
END;


Attribut Anzahl der Spalten in der Legende

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Anzahl von Spalten zur Anzeige der Beschriftungen an, die in der Legende angezeigt werden.

Syntax

PROCEDURE OG_Set_Legendcolct
  (template  OG_Template,
   colct     NUMBER);

FUNCTION OG_Get_Legendcolct
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
colct	Anzahl von Spalten zur Anzeige der Beschriftungen, die in der Legende angezeigt werden.


Beispiele für das Attribut Anzahl der Spalten in der Legende

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the number of
**columns in the legend box.  If there is more
**than one column in the box, it changes the
**number of the columns to one; if there is
**one column, it changes the number of columns
**to two.
*/

PROCEDURE FrameLegendCol IS
  chart og_object;
  template og_template;
  num number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  num := og_get_legendcolct(template);
  if num > 1 then
     og_set_legendcolct(template, 1);
  else
     og_set_legendcolct(template, 2);
  end if;
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Namen der Diagrammvorlage an.

Syntax

PROCEDURE OG_Set_Frame_Name
  (template  OG_Template,
   name      VARCHAR2);

FUNCTION OG_Get_Frame_Name
  (template  OG_Template)
RETURN VARCHAR2;

Parameter

template	Diagrammvorlage.
name	Entspricht dem Namen der Diagrammvorlage.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the frame name.
**If the name is not 'template1', it sets
**it to 'template1'.
*/

PROCEDURE FrameName IS
  chart og_object;
  template og_template;
  name varchar2(30);
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  name := og_get_frame_name(template);
  if name != 'template1' then
    og_set_frame_name(template, 'template1');
  end if;
END;


Attribut Darstellungsrahmen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob das Rechteck, das das Diagramm umschließt, angezeigt werden soll. (Gilt bei Kreisdiagrammen nicht.)

Syntax

PROCEDURE OG_Set_Plotframe
  (template  OG_Template,
   show      BOOLEAN);

FUNCTION OG_Get_Plotframe
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
show	Gibt an, ob das Rechteck, das das Diagramm umschließt, angezeigt werden soll.


Beispiele für das Attribut Darstellungsrahmen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**whether a plot frame is drawn.  If
**true, it removes the plot frame;
**if false, it adds a plot frame to
**the current chart.
*/

PROCEDURE FramePlot IS
  chart og_object;
  template og_template;
  val boolean;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  val := og_get_plotframe(template);
  if val = true then
     og_set_plotframe(template, false);
  else
     og_set_plotframe(template, true);
  end if;
END;


Attribut Hauptfenster

  Beispiele	  Verwandte Themen

Beschreibung Handle zu der Diagrammvorlage.

Syntax

FUNCTION OG_Get_Root
  (template  OG_Template)
RETURN OG_Object;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Hauptfenster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The procedure gets the handle
**(root)of the chart object.
*/

PROCEDURE FrameRoot IS
  chart og_object;
  template og_template;
  root og_object;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  root := og_get_root(template);
END;


Attribut Schattenrichtung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Schattenrichtung an, mit der der Diagrammrahmen und die Diagrammelemente gezeichnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Upperright_Shadowdir

OG_Upperleft_Shadowdir

OG_Lowerright_Shadowdir

OG_Lowerleft_Shadowdir

Syntax

PROCEDURE OG_Set_Shadowdir
  (template   OG_Template,
   shadowdir  NUMBER);

FUNCTION OG_Get_Shadowdir
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
shadowdir	Gibt die Richtung des Schattens an, mit dem der Diagrammrahmen und die Diagrammelemente gezeichnet werden.


Beispiele für das Attribut Schattenrichtung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following reads the shadow direction of
**the chart, and changes it to a different
**value.
*/

PROCEDURE FrameShadowDir IS
  chart og_object;
  template og_template;
  shadow number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  shadow := og_get_shadowdir(template);
  if shadow = og_upperright_shadowdir then
     og_set_shadowdir(template, og_lowerleft_shadowdir);
  elsif shadow = og_lowerleft_shadowdir then
     og_set_shadowdir(template, og_upperleft_shadowdir);
  elsif shadow = og_upperleft_shadowdir then
     og_set_shadowdir(template, og_lowerright_shadowdir);
  elsif shadow = og_lowerright_shadowdir then
     og_set_shadowdir(template, og_upperright_shadowdir);
  end if;
END;


Attribut Schattengröße

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Größe des Schattens an, mit dem der Diagrammrahmen und die Diagrammelemente gezeichnet werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_None_Shadowsize

OG_Small_Shadowsize

OG_Medium_Shadowsize

OG_Large_Shadowsize

OG_Xlarge_Shadowsize

Syntax

PROCEDURE OG_Set_Shadowsize
  (template    OG_Template,
   shadowsize  NUMBER);

FUNCTION OG_Get_Shadowsize
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
shadowsize	Gibt die Größe des Schattens an, mit dem der Diagrammrahmen und die Diagrammelemente gezeichnet werden.


Beispiele für das Attribut Schattengröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*The following procedure reads the shadow size
**of the chart, and changes the size to a
**different value.
*/

PROCEDURE FrameShadow IS
  chart og_object;
  template og_template;
  shadow number;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  shadow := og_get_shadowsize(template);
  if shadow = og_none_shadowsize then
     og_set_shadowsize(template, og_small_shadowsize);
  elsif shadow = og_small_shadowsize then
     og_set_shadowsize(template, og_medium_shadowsize);
  elsif shadow = og_medium_shadowsize then
     og_set_shadowsize(template, og_large_shadowsize);
  elsif shadow = og_large_shadowsize then
     og_set_shadowsize(template, og_xlarge_shadowsize);
  elsif shadow = og_xlarge_shadowsize then
     og_set_shadowsize(template, og_none_shadowsize);
  end if;
END;


Rahmenattribute (Kreisdiagramm)

Attribut Andere

Attribut Darstellungsreihenfolge

Attribut Datenwerte

Attribut Kategorie Datumsformat

Attribut Kategorie Zahlenformat

Attribut Kategorien

Attribut Prozentformat

Attribut Prozentwerte

Attribut Teilungen

Attribut Überschneidung verhindern

Attribut Verwendung Wert

Attribut Verwendung

Attribut Wertformat


Attribut Kategorien

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob jedes Kreissegment mit dem Namen der Kategorie beschriftet wird, die es darstellt.

Syntax

PROCEDURE OG_Set_Categs
  (template  OG_Template,
   categs    BOOLEAN);

FUNCTION OG_Get_Categs
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
categs	Gibt an, ob jedes Kreissegment mit dem Namen der Kategorie beschriftet wird, die es darstellt.


Beispiele für das Attribut Kategorien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure gets
**information about the relationship
**between individual pie slices and
**the complete chart.  If the current
**relationship is TOTALVALUE, the
**procedure resets the relationship
** to PERCENTAGE with a value of  50;
**If the current relationship is
**PERCENTAGE, the procedure resets
**the relationship to TOTALVALUE with
**a value of 400000.
*/

PROCEDURE PieUsage IS
  pie og_object;
  template og_template;
  usage number;
  usagevalue number;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  usage := og_get_usage(template);
  if usage = og_totalvalue_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_pct_usage, 50);
   elsif usage = og_pct_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_totalvalue_usage, 400000);
  end if;
  og_update_chart(pie);
END;


Attribut Kategorie Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Datumsformat für die Kategoriebeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.  Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Catdatefmt
  (template    OG_Template,
   catdatefmt  VARCHAR2);

FUNCTION OG_Get_Catdatefmt
  (template  OG_Template)
RETURN VARCHAR2;

Parameter

template	Diagrammvorlage.
Catdatefmt	Gibt das Datumsformat für die Kategoriebeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Kategorie Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure changes the
**pie slice label's date format if the
**format is not currently
**'DD-MM-YY'.
*/

PROCEDURE CatDateFmt IS
  pie og_object;
  template og_template;
  format varchar2(20);
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  format := og_get_catdatefmt(template);
  if format != 'MM-DD-YY' then
   og_set_catdatefmt(template, 'MM-DD-YY');
  end if;
  og_update_chart(pie);
END;


Attribut Kategorie Zahlenformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für die Kategoriebeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.  Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Catnumfmt
  (template   OG_Template,
   catnumfmt  VARCHAR2);

FUNCTION OG_Get_Catnumfmt
  (template  OG_Template)
RETURN VARCHAR2;

Parameter

template	Diagrammvorlage.
catnumfmt	Gibt das Zahlenformat für die Kategoriebeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Kategorie Zahlenformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure changes the
**pie slice label's number format if
**the format is not currently
**'9,9,9,9'.
*/

PROCEDURE CatNumFmt IS
  pie og_object;
  template og_template;
  format varchar2(20);
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  format := og_get_catnumfmt(template);
  if format != '9,9,9,9' then
    og_set_catnumfmt(template, '9,9,9,9');
  end if;
  og_update_chart(pie);
END;


Attribut Datenwerte

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob jedes Kreissegment mit dem entsprechenden Datenwert beschriftet wird.

Syntax

PROCEDURE OG_Set_Datavals
  (template  OG_Template,
   datavals  BOOLEAN);

FUNCTION OG_Get_Datavals
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
datavals	Gibt an, ob jedes Kreissegment mit dem zugehörigen Datenwert beschriftet wird.


Beispiele für das Attribut Datenwerte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure hides/shows
** the data value for each pie slice.
*/

PROCEDURE DataVals IS
  pie og_object;
  template og_template;
  val boolean;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  val := og_get_datavals(template);
  if val = true then
   og_set_datavals(template, false);
  elsif val = false then
   og_set_datavals(template, true);
  end if;
  og_update_chart(pie);
END;


Attribut Überschneidung verhindern

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, daß sich die Beschriftungen der Kreissegmente nicht überschneiden dürfen.

Syntax

PROCEDURE OG_Set_Nooverlap
  (template   OG_Template,
   nooverlap  BOOLEAN);

FUNCTION OG_Get_Nooverlap
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
nooverlap	Gibt an, daß die Beschriftungen für die Kreissegmente sich nicht überschneiden dürfen.


Beispiele für das Attribut Überschneidung verhindern

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines if
**pie slice labels are allowed to overlap.
**If overlapping is allowed, the procedure
**disallows it.
*/

PROCEDURE NoOverlap IS
  pie og_object;
  template og_template;
  val boolean;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  val := og_get_nooverlap(template);
  if val = false then
     og_set_nooverlap(template, true);
  end if;
  og_update_chart(pie);
END;


Attribut Andere

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den minimalen Prozentsatz des Diagramms an, den ein Datenwert darstellen muß, um als einzelnes Segment in einem Kreisdiagramm dargestellt zu werden. Datenwerte, die Prozentsätze unter dieser Zahl darstellen, werden in einem einzigen Kreissegment mit der Bezeichnung "Andere" kombiniert.

Syntax

PROCEDURE OG_Set_Other
  (template  OG_Template,
   other     NUMBER);

FUNCTION OG_Get_Other
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
other	Gibt den Mindestprozentsatz des Diagramms an, den ein Datenwert darstellen muß, damit er als einzelnes Kreissegment in dem Kreisdiagramm dargestellt wird. Datenwerte, die Prozentsätze unter dieser Zahl darstellen, werden zu einem einzigen Kreissegment mit der Bezeichnung "Andere" kombiniert.


Beispiele für das Attribut Andere

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure doubles
**the percentage value for which
**any chart slice with a value
**less than or equal to the
**percentage value will be labeled
**"other."
*/

PROCEDURE Other IS
  pie og_object;
  template og_template;
  num number;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  num := og_get_other(template);
  og_set_other(template, num*2);
  og_update_chart(pie);
END;


Attribut Prozentformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für die Beschriftungen der Prozentwerte an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.  Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Pctfmt
  (template  OG_Template,
   pctfmt    VARCHAR2);

FUNCTION OG_Get_Pctfmt
  (template  OG_Template)
RETURN VARCHAR2;

Parameter

template	Diagrammvorlage.
pctfmt	Gibt das Zahlenformat für die Beschriftung der Prozentwerte an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Prozentformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure hides/shows the
**percent value for each pie slice.
*/

PROCEDURE PctVals IS
  pie og_object;
  template og_template;
  val boolean;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  val := og_get_pctvalues(template);
  if val = true then
   og_set_pctvalues(template, false);
  elsif val = false then
   og_set_pctvalues(template, true);
  end if;
  og_update_chart(pie);
END;


Attribut Prozentwerte

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob jedes Kreissegment mit dem Prozentsatz beschriftet wird, den es in dem gesamten Diagramm darstellt.

Syntax

PROCEDURE OG_Set_Pctvalues
  (template   OG_Template,
   pctvalues  BOOLEAN);

FUNCTION OG_Get_Pctvalues
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
pctvalues	Gibt an, ob jedes Kreissegment mit dem Prozentsatz beschriftet wird, den es in dem gesamten Diagramm darstellt.


Beispiele für das Attribut Prozentwerte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure hides/shows
**the percent value for each pie slice.
*/

PROCEDURE PctVals IS
  pie og_object;
  template og_template;
  val boolean;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  val := og_get_pctvalues(template);
  if val = true then
   og_set_pctvalues(template, false);
  elsif val = false then
   og_set_pctvalues(template, true);
  end if;
  og_update_chart(pie);
END;


Attribut Darstellungsreihenfolge

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Richtung an, in der die Datenwerte dargestellt werden. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Ccw_Plotorder   Bedeutet, daß die Werte gegen den Uhrzeigersinn dargestellt werden.

OG_Cw_Plotorder   Bedeutet, daß die Werte im Uhrzeigersinn dargestellt werden.

Syntax

PROCEDURE OG_Set_Plotorder
  (template   OG_Template,
   plotorder  NUMBER);

FUNCTION OG_Get_Plotorder
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
plotorder	Gibt die Richtung an, in der die Datenwerte dargestellt werden.


Beispiele für das Attribut Darstellungsreihenfolge

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**direction in which the data values
**are plotted, and reverses the
**plotting direction.
*/

PROCEDURE plotOrder IS
  pie og_object;
  template og_template;
  porder number;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  porder := og_get_plotorder(template);
  if porder = og_cw_plotorder then
     og_set_plotorder(template, og_ccw_plotorder);
  else
     og_set_plotorder(template, og_cw_plotorder);
  end if;
  og_update_chart(pie);
END;


Attribut Teilungen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Teilungen, die jedes Kreissegment mit der entsprechenden Beschriftung verbinden, angezeigt werden.

Syntax

PROCEDURE OG_Set_Ticks
  (template  OG_Template,
   ticks     BOOLEAN);

FUNCTION OG_Get_Ticks
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
ticks	Gibt an, ob die Teilungen, die jedes Kreissegment mit der zugehörigen Beschriftung verbinden, angezeigt werden.


Beispiele für das Attribut Teilungen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure hides/
**shows the ticks for each pie
**slice.
*/

PROCEDURE ticks IS
  pie og_object;
  template og_template;
  val boolean;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  val := og_get_ticks(template);
  if val = true then
   og_set_ticks(template, false);
  else
   og_set_ticks(template, true);
  end if;
  og_update_chart(pie);
END;


Attribut Verwendung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Beziehung zwischen den einzelnen Kreissegmenten und dem vollständigen Diagramm an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Totalvalue_Usage

OG_Pct_Usage

Syntax

PROCEDURE OG_Set_Usage
  (template  OG_Template,
   usage       NUMBER,
   usagevalue  NUMBER);

FUNCTION OG_Get_Usage
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
usage	Gibt die Beziehung zwischen den einzelnen Kreissegmenten und dem vollständigen Diagramm an.
usagevalue	Jedes Kreissegment wird so dargestellt, als wäre der Datenwert ein Prozentsatz des hier angegebenen Gesamtwertes. (Nur gültig, wenn für usage OG_TOTALVALUE_USAGE angegeben wurde.)


Beispiele für das Attribut Verwendung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets
**information about the relationship
**between individual pie slices and
**the complete chart.  If the current
**relationship is TOTALVALUE, the procedure
**resets the relationship to PERCENTAGE
**with a value of  50.  If the current
**relationship is PERCENTAGE, the procedure
**resets the relationship to TOTALVALUE
**with a value of 400000.
*/

PROCEDURE PieUsage IS
  pie og_object;
  template og_template;
  usage number;
  usagevalue number;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  usage := og_get_usage(template);
  if usage = og_totalvalue_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_pct_usage, 50);
   elsif usage = og_pct_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_totalvalue_usage, 400000);
  end if;
  og_update_chart(pie);
END;


Attribut Verwendung Wert

  Beispiele	  Verwandte Themen

Beschreibung  Jedes Kreissegment wird so dargestellt, als wäre der Datenwert ein Prozentsatz des hier angegebenen Gesamtwertes.

Syntax

(Siehe OG_Set_Usage oben.)

FUNCTION OG_Get_Usagevalue
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Verwendung Wert

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets
**information about the relationship
**between individual pie slices and
**the complete chart.  If the current
**relationship is TOTALVALUE, the procedure
**resets the relationship to PERCENTAGE
**with a value of  50.  If the current
**relationship is PERCENTAGE, the procedure
**resets the relationship to TOTALVALUE
**with a value of 400000.
*/

PROCEDURE PieUsage IS
  pie og_object;
  template og_template;
  usage number;
  usagevalue number;
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  usage := og_get_usage(template);
  if usage = og_totalvalue_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_pct_usage, 50);
   elsif usage = og_pct_usage then
     usagevalue := og_get_usagevalue(template);
     og_set_usage(template, og_totalvalue_usage, 400000);
  end if;
  og_update_chart(pie);
END;


Attribut Wertformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für die Beschriftung der Datenwerte an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.  Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Valuefmt
  (template     OG_Template,
   valuenumfmt  VARCHAR2);

FUNCTION OG_Get_Valuefmt
  (template  OG_Template)
RETURN VARCHAR2;

Parameter

template	Diagrammvorlage.
valuenumfmt	Gibt das Zahlenformat für die Beschriftungen des Datenwertes an.


Beispiele für das Attribut Wertformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure changes the pie
**slice label's value format if the format
**is not currently '0999'.
*/

PROCEDURE ValFmt IS
  pie og_object;
  template og_template;
  format varchar2(20);
BEGIN
  pie := og_get_object('pie');
  template := og_get_template(pie);
  format := og_get_valuefmt(template);
  if format != '0999' then
    og_set_valuefmt(template, '0999');
  end if;
  og_update_chart(pie);
END;


Rahmenattribute (Tabellendiagramm)

Attribut Auto Maximum

Attribut Auto Minimum

Attribut Horizontale Rasterlinien

Attribut Max. Anzahl Zeilen

Attribut Min. Anzahl Zeilen

Attribut Spaltennamen

Attribut Vertikale Rasterlinien

Attribut Zeilen pro horizontale Linie


Attribut Auto Maximum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Höchstzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Automax
  (template  OG_Template,
   automax   BOOLEAN,
   maxrows   NUMBER);

FUNCTION OG_Get_Automax
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
Automax	Gibt an, ob die Höchstzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.
maxrows	Gibt die Höchstzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn automax FALSE ist).


Beispiele für das Attribut Auto Maximum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines if
**there is a maximum number of rows to
**be displayed in the table or if the
**number of rows is automatically
**determined.  If the number of
**rows is not automatically determined,
**the procedure reads the number of rows
**the table displays currently and resets
**it to be automatically determined.
*/

PROCEDURE AutoMax IS
  table1 og_object;
  template og_template;
  val boolean;
  maxrows number := 2;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_automax(template);
  if val = false then
     maxrows := og_get_maxrows(template);
     og_set_automax(template, true, maxrows/2);
  end if;
  og_update_chart(table1);
END;


Attribut Auto Minimum

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Mindestanzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.

Syntax

PROCEDURE OG_Set_Automin
  (template  OG_Template,
   automin   BOOLEAN,
   minrows   NUMBER);

FUNCTION OG_Get_Automin
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
automin	Gibt an, ob die Mindestanzahl von Zeilen, die in dem Diagramm angezeigt werden, auf Auto eingestellt ist.
minrows	Gibt die Mindestanzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn automin FALSE ist).


Beispiele für das Attribut Auto Minimum

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*"The following procedure
**determines if there is a
**minimum number of rows that
**must be displayed in the
**table or whether the number of
**rows is automatically determined.
**If the number of rows is not
**automatically determined, the procedure
**reads the number of rows the table
**currently displays and resets it to
**be automatically determined.
 */

PROCEDURE AutoMax IS
  table1 og_object;
  template og_template;
  val boolean;
  maxrows number := 2;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_automax(template);
  if val = false then
     maxrows := og_get_maxrows(template);
     og_set_automax(template, true, maxrows/2);
  end if;
  og_update_chart(table1);
END;


Attribut Spaltennamen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Namen der Spalten als erste Zeile in dem Diagramm angezeigt werden.

Syntax

PROCEDURE OG_Set_Cname
  (template  OG_Template,
   cname     BOOLEAN);

FUNCTION OG_Get_Cname
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
cname	Gibt an, ob die Namen der Spalten als erste Zeile in dem Diagramm angezeigt werden.


Beispiele für das Attribut Spaltennamen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure hides/shows the
**table’s column names.
*/

PROCEDURE ColNames IS
  table1 og_object;
  template og_template;
  val boolean;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_cname(template);
  if val = true then
    og_set_cname(template, false);
  elsif val = false then
    og_set_cname(template, true);
  end if;
  og_update_chart(table1);
END;


Attribut Zeilen pro horizontale Linie

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Anzahl von Datenzeilen, die dargestellt werden, bevor jede horizontale Rasterlinie gezeichnet wird (wenn für Horizontale Rasterlinien TRUE angegeben wurde).

Syntax

PROCEDURE OG_Set_Gridct
  (template  OG_Template,
   gridct    NUMBER);

FUNCTION OG_Get_Gridct
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.
gridct	Entspricht der Anzahl von Datenzeilen, die dargestellt werden, bevor jede horizontale Rasterlinie gezeichnet wird (wenn für Horizontale Rasterlinien TRUE angegeben wurde).


Beispiele für das Attribut Zeilen pro horizontale Linie

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure doubles
**the grid count of the table.
*/

PROCEDURE gridcnt IS
  table1 og_object;
  template og_template;
  cnt number;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  cnt := og_get_gridct(template);
  og_set_gridct(template, cnt*2);
  og_update_chart(table1);
END;


Attribut Horizontale Rasterlinien

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob zwischen den Zeilen horizontale Rasterlinien angezeigt werden.

Syntax

PROCEDURE OG_Set_Hgrid
  (template  OG_Template,
   hgrid     BOOLEAN);

FUNCTION OG_Get_Hgrid
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
hgrid	Gibt an, ob zwischen den Zeilen horizontale Rasterlinien angezeigt werden.


Beispiele für das Attribut Horizontale Rasterlinien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure hides/shows
**horizontal grid lines.
*/

PROCEDURE HoriGrid IS
  table1 og_object;
  template og_template;
  val boolean;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_hgrid(template);
  if val = true then
     og_set_hgrid(template, false);
  elsif val = false then
     og_set_hgrid(template, true);
  end if;
  og_update_chart(table1);
END;


Attribut Max. Anzahl Zeilen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die maximale Anzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn Auto Maximum FALSE ist).

Syntax

(Siehe OG_Set_Automax oben.)

FUNCTION OG_Get_Maxrows
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Max. Anzahl Zeilen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**if there is a maximum number of rows to
**be displayed in the table or if the
**number of rows is automatically
**determined.  If the number of rows is
**automatically determined, the procedure
**reads the number of rows the table
**displays currently and resets it to be
**automatically determined.
*/

PROCEDURE AutoMax IS
  table1 og_object;
  template og_template;
  val boolean;
  maxrows number := 2;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_automax(template);
  if val = false then
     maxrows := og_get_maxrows(template);
     og_set_automax(template, true, maxrows/2);
  end if;
  og_update_chart(table1);
END;


Attribut Min. Anzahl Zeilen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Mindestanzahl von Zeilen an, die in dem Diagramm angezeigt werden (wenn Auto Minimum FALSE ist).

Syntax

(Siehe OG_Set_Automin oben.)

FUNCTION OG_Get_Minrows
  (template  OG_Template)
RETURN NUMBER;

Parameter

template	Diagrammvorlage.


Beispiele für das Attribut Min. Anzahl Zeilen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*"The following procedure
**determines if there is a
**minimum number of rows that
**must be displayed in the
**table or whether the number of
**rows is automatically determined.
**If the number of rows is not
**automatically determined, the procedure
**reads the number of rows the table
**currently displays and resets it to
**be automatically determined.
 */

PROCEDURE AutoMax IS
  table1 og_object;
  template og_template;
  val boolean;
  maxrows number := 2;
BEGIN
  table1 := og_get_object('table');
  template := og_get_template(table1);
  val := og_get_automax(template);
  if val = false then
     maxrows := og_get_maxrows(template);
     og_set_automax(template, true, maxrows/2);
  end if;
  og_update_chart(table1);
END;


Attribut Vertikale Rasterlinien

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob zwischen den Spalten vertikale Rasterlinien angezeigt werden.

Syntax

PROCEDURE OG_Set_Vgrid
  (template  OG_Template,
   vgrid     BOOLEAN);

FUNCTION OG_Get_Vgrid
  (template  OG_Template)
RETURN BOOLEAN;

Parameter

template	Diagrammvorlage.
vgrid	Gibt an, ob zwischen den Spalten vertikale Rasterlinien angezeigt werden.


Beispiele für das Attribut Vertikale Rasterlinien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure hides/shows
**vertical grid lines.
*/

PROCEDURE VertGrid IS

  table1 og_object;

  template og_template;

  val boolean;

BEGIN

  table1 := og_get_object('table');

  template := og_get_template(table1);

  val := og_get_vgrid(template);

  if val = true then

     og_set_vgrid(template, false);

  elsif val = false then

     og_set_vgrid(template, true);

  end if;

  og_update_chart(table1);

END.


Feldvorlagenattribute (Allgemein)

Attribut Datumsformat

Attribut Farbrotation

Attribut Hauptfenster

Attribut Name

Attribut Zahlenformat


Attribut Farbrotation

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Graphics Builder automatisch eine Rotation durch die Farb- oder Musterpalette vornimmt, um eine eindeutige Schattierung für jedes Feld auszuwählen, das diese Feldvorlage benutzt. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_None_Colorrot

OG_Auto_Colorrot

OG_Color_Colorrot

OG_Pattern_Colorrot

OG_Both_Colorrot

Syntax

PROCEDURE OG_Set_Colorrot
  (ftemp     OG_Ftemp,
   colorrot  NUMBER);

FUNCTION OG_Get_Colorrot
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
colorrot	Gibt an, ob Graphics Builder eine automatische Rotation durch die Farb- oder Musterpalette vornimmt, um eine eindeutige Schattierung für jedes Feld auszuwählen, das diese Feldvorlage benutzt.


Beispiele für das Attribut Farbrotation

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads if any
**color rotation is applied to the chart.
**If none has been applied, it applies
**AUTO color rotation.  If another method
**of color rotation is currently applied,
**it changes the rotation to NONE.
*/

PROCEDURE fieldColRot IS
  ftemp og_ftemp;
  color number;
BEGIN
  ftemp := og_get_ftemp(og_get_template(og_get_object('chart')),0);
  color := og_get_colorrot(ftemp);
  if color = og_none_colorrot then
     og_set_colorrot(ftemp, og_auto_colorrot);
  else
     og_set_colorrot(ftemp, og_none_colorrot);
 end if;
     og_update_chart(og_get_object('chart'));
END;


Attribut Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Datumsformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Datefmt
  (ftemp     OG_Ftemp,
   date_fmt  VARCHAR2);

FUNCTION OG_Get_Datefmt
  (ftemp  OG_Ftemp)
RETURN VARCHAR2;

Parameter

ftemp	Beschriebene Feldvorlage.
date_fmt	Gibt das Datumsformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 */The following procedure
**determines if label number
**formats are all'9,9,9,9'.
**If not, it changes them all
**to '9,9,9,9'.
*/

PROCEDURE fieldDateFmt IS
  ftemp og_ftemp;
  datefmt varchar2(20);
BEGIN
  ftemp := og_get_ftemp(og_get_template(og_get_object('chart')),0);
  datefmt := og_get_datefmt(ftemp);
  if datefmt != 'DD-MM-YYYY' then
    og_set_datefmt(ftemp, 'DD-MM-YYYY');
  end if;
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Namen der Feldvorlage.

Syntax

PROCEDURE OG_Set_Ftemp_Name
  (ftemp  OG_Ftemp,
   name   VARCHAR2);

FUNCTION OG_Get_Ftemp_Name
  (ftemp  OG_Ftemp)
RETURN VARCHAR2;

Parameter

ftemp	Beschriebene Feldvorlage.
name	Name der Feldvorlage.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure
**appends a '1' to the current
**field template's name.
*/

PROCEDURE fieldname IS
  ftemp og_ftemp;
  chart og_object;
  name varchar2(20);
BEGIN
  ftemp := og_get_ftemp(og_get_template(og_get_object('chart')),0);
  name := og_get_ftemp_name(ftemp);
  og_set_ftemp_name(ftemp, name||'1');
END;


Attribut Zahlenformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt das Zahlenformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln. Weitere Informationen finden Sie in Oracle7 Server SQL Reference.

Syntax

PROCEDURE OG_Set_Numfmt
  (ftemp    OG_Ftemp,
   num_fmt  VARCHAR2);

FUNCTION OG_Get_Numfmt
  (ftemp  OG_Ftemp)
RETURN VARCHAR2;

Parameter

ftemp	Beschriebene Feldvorlage.
num_fmt	Gibt das Zahlenformat für die Feldbeschriftungen an. Hier muß es sich um eine gültige SQL-Formatfolge handeln.


Beispiele für das Attribut Zahlenformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following procedure
**determines if the labels' number
**format is '9,9,9,9'.  If
**not, it changes the format
**to '9,9,9,9'.
*/

PROCEDURE fieldNumFmt IS
  ftemp og_ftemp;
  numfmt varchar2(20);
BEGIN
  ftemp := og_get_ftemp(og_get_template(og_get_object('chart')),0);
  numfmt := og_get_numfmt(ftemp);
  if numfmt != '9,9,9,9' then
    og_set_numfmt(ftemp, '9,9,9,9');
  end if;
END;


Attribut Hauptfenster

  Beispiele	  Verwandte Themen

Beschreibung  Handle zu der Diagrammvorlage, zu der die Feldvorlage gehört.

Syntax

FUNCTION OG_Get_Root
  (ftemp  OG_Ftemp)
RETURN OG_Object;

Parameter

ftemp	Beschriebene Feldvorlage.


Beispiele für das Attribut Hauptfenster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets
**a chart's field template handles.
*/

PROCEDURE fieldname IS
  ftemp og_ftemp;
  root og_object;
BEGIN
  ftemp := og_get_ftemp(og_get_template(og_get_object('chart')),0);
  root := og_get_root(ftemp);
END;


Feldvorlagenattribute (Achsendiagramm)

Attribut Achse

Attribut Darstellungstyp

Attribut Drehung der Beschriftung

Attribut Kurventyp

Attribut Linienstil

Attribut Position der Darstellung

Attribut Überlappend


Attribut Achse

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Achse an, mit der die Datenwerte verglichen werden, um festzulegen, wie das Feld dargestellt werden soll. Die Werte dieses Attributs können einer der folgenden vordefinierten Konstanten entsprechen:

OG_Y1_Axis

OG_Y2_Axis

Syntax

PROCEDURE OG_Set_Axis
  (ftemp  OG_Ftemp,
   axis   NUMBER);

FUNCTION OG_Get_Axis
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
Axis	Gibt die Achse an, mit der Datenwerte verglichen werden, um zu bestimmen, wie das Feld dargestellt wird.


Beispiele für das Attribut Achse

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure
**rotates the main Y axis the
**chart currently refers to
**(if there is more than one
**Y axis)and switches the main
**Y axis to a different Y axis.
*/

PROCEDURE axis IS
  axis number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  axis := og_get_axis(ftemp);
  if axis = og_y1_axis then
     og_set_axis(ftemp, og_y2_axis);
  elsif axis = og_y2_axis then
     og_set_axis(ftemp, og_y1_axis);
  end if;
  og_update_chart(chart);
END;


Attribut Kurventyp

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob ein Kurventyp für das Diagramm benutzt wird, und wenn ja, welcher Algorithmus verwendet wird. Die Werte dieses Attributs können einer der folgenden vordefinierten Konstanten entsprechen:

OG_No_Curvefit

OG_Linear_Curvefit

OG_LOG_Curvefit

OG_Exp_Curvefit

OG_Power_Curvefit

Syntax

PROCEDURE OG_Set_Curvefit
  (ftemp     OG_Ftemp,
   curvefit  NUMBER);

FUNCTION OG_Get_Curvefit
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
curvefit	Gibt an, ob ein Kurventyp für das Diagramm angewendet wird, und wenn ja, welcher Algorithmus verwendet wird.


Beispiele für das Attribut Kurventyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**if a curve fit is applied to the chart.
**If not, it applies a Linear CurveFit
**to the chart.  If a curve fit is currently
**applied to the chart, it removes it.
*/

PROCEDURE CurveFit IS
  curve number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  curve := og_get_curvefit(ftemp);
  if curve = og_no_curvefit then
    og_set_curvefit(ftemp,og_linear_curvefit);
  else
    og_set_curvefit(ftemp,og_no_curvefit);
  end if;
  og_update_chart(chart);
END;


Attribut Drehung der Beschriftung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Drehwinkel der Beschriftungen für ein Feld mit einem Darstellungstyp Beschriftung an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Ccw_Rotation   Gibt die Drehung gegen den Uhrzeigersinn an.

OG_Cw_Rotation   Gibt die Drehung im Uhrzeigersinn an.

OG_No_Rotation

Syntax

PROCEDURE OG_Set_Labelrot
  (ftemp    OG_Ftemp,
   linesty  NUMBER);

FUNCTION OG_Get_Labelrot
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
linesty	Gibt den Drehwinkel der Beschriftungen bei einem Feld mit einem Darstellungstyp Beschriftung an.


Beispiele für das Attribut Drehung der Beschriftung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure rotates a
**chart's rotation labels.
*/

PROCEDURE lblrot IS
  rot number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  rot := og_get_labelrot(ftemp);
  if rot = og_no_rotation then
    og_set_labelrot(ftemp,og_cw_rotation);
  elsif rot = og_cw_rotation then
    og_set_labelrot(ftemp, og_ccw_rotation);
  elsif rot = og_ccw_rotation then
    og_set_labelrot(ftemp, og_no_rotation);
  end if;
  og_update_chart(chart);
END;


Attribut Linienstil

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Linienstil an, der für die Verbindung der Datenpunkte bei einem Feld mit dem Darstellugnstyp Linie benutzt wird. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Spline_Linestyle

OG_Step_Linestyle

OG_Straight_Linestyle

Syntax

PROCEDURE OG_Set_Linesty
  (ftemp    OG_Ftemp,
   linesty  NUMBER);

FUNCTION OG_Get_Linesty
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
Linesty	Gibt den Linienstil an, der für die Verbindung der Datenpunkte eines Feldes mit dem Darstellungstyp Linie benutzt wird.


Beispiele für das Attribut Linienstil

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure rotates
**the line style of a chart.
*/

PROCEDURE linesty IS
  style number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  style := og_get_linesty(ftemp);
  if style = og_spline_linestyle then
     og_set_linesty(ftemp, og_step_linestyle);
  elsif style = og_step_linestyle then
     og_set_linesty(ftemp, og_straight_linestyle);
  elsif style = og_straight_linestyle then
     og_set_linesty(ftemp, og_spline_linestyle);
  end if;
  og_update_chart(chart);
END;


Attribut Überlappend

  Beispiele	  Verwandte Themen

Beschreibung  Gibt den Prozentsatz an, um den sich Balken, die Datenwerte aus mehreren Feldern darstellen, in einem Balken- oder Säulendiagramm überlappen können.

Syntax

PROCEDURE OG_Set_Overlap
  (ftemp    OG_Ftemp,
   overlap  NUMBER);

FUNCTION OG_Get_Overlap
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
overlap	Gibt den Prozentsatz an, um den sich Balken, die Daten aus mehreren Feldern darstellen, in einem Balken- oder Säulendiagramm überlappen können.


Beispiele für das Attribut Überlappend

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the overlap percentage that has
**been specified. If the specified
**percentage is between 0 to 50,
**it redraws the column using
**90% overlap, if the percentage is
**over 90%,it redraws the columns
**with 0% overlap.
*/

PROCEDURE overlap IS
  percent number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  percent := og_get_overlap(ftemp);
  if percent between 0 and 50 then
     og_set_overlap(ftemp, 90);
  else
     og_set_overlap(ftemp, 0);
  end if;
END;


Attribut Position der Darstellung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt für jede Kategorie die Beziehung zwischen den Datenwerten von zwei oder mehr Feldern an. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Normal_Plotpos

OG_Fromprev_Plotpos

OG_Stacked_Plotpos

Syntax

PROCEDURE OG_Set_Plotpos
  (ftemp    OG_Ftemp,
   plotpos  NUMBER);

FUNCTION OG_Get_Plotpos
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
plotpos	Gibt für jede Kategorie die Beziehung zwischen den Datenwerten von zwei oder mehr Feldern an.


Beispiele für das Attribut Position der Darstellung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure rotates
**the plot position of columns in a chart.
*/

PROCEDURE plotpos IS
  pos number;
  ftemp og_ftemp;
  chart og_object;
BEGIN
  chart := og_get_object('chart');
  ftemp := og_get_ftemp(og_get_template(chart),0);
  pos := og_get_plotpos(ftemp);
   if pos = og_normal_plotpos then
     og_set_plotpos(ftemp,og_fromprev_plotpos);
   elsif pos = og_fromprev_plotpos then
     og_set_plotpos(ftemp, og_stacked_plotpos);
   elsif pos = og_stacked_plotpos then
     og_set_plotpos(ftemp, og_normal_plotpos);
   end if;
  og_update_chart(chart);
END;


Attribut Darstellungstyp

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Elemente an, die für die Darstellung der Felder in dem Diagramm benutzt werden. Der Wert dieses Attributs kann  einer der folgenden vordefinierten Konstanten entsprechen:

OG_None_Plottype

OG_Bar_Plottype

OG_Line_Plottype

OG_Symbol_Plottype

OG_Fill_Plottype

OG_Spike_Plottype

OG_Label_Plottype

Syntax

PROCEDURE OG_Set_Plottype
  (ftemp     OG_Ftemp,
   plottype  NUMBER);

FUNCTION OG_Get_Plottype
  (ftemp  OG_Ftemp)
RETURN NUMBER;

Parameter

ftemp	Beschriebene Feldvorlage.
plottype	Gibt die Elemente an, die für die Darstellung dieses Feldes in dem Diagramm benutzt werden.


Beispiele für das Attribut Darstellungstyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*On a mouse click, the following
**procedure rotates the plot type
**of a chart.
*/

PROCEDURE Plottype (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
chart og_object;
template og_template;
ftemp og_ftemp;
num number;
BEGIN
chart := og_get_object('chart');
template := og_get_template(chart);
ftemp := og_get_ftemp(template, 0);
num := og_get_plottype(ftemp);
if num = og_none_plottype then
   og_set_plottype(ftemp, og_bar_plottype);
elsif num = og_bar_plottype then
   og_set_plottype(ftemp, og_line_plottype);
elsif num = og_line_plottype then
   og_set_plottype(ftemp, og_symbol_plottype);
elsif num = og_symbol_plottype then
   og_set_plottype(ftemp, og_fill_plottype);
elsif num = og_fill_plottype then
   og_set_plottype(ftemp, og_spike_plottype);
elsif num = og_spike_plottype then
   og_set_plottype(ftemp, og_label_plottype);
elsif num = og_label_plottype then
   og_set_plottype(ftemp, og_none_plottype);
end if;
og_update_chart(chart);
END;


Allgemeine Attribute

Attribut Abfrage ausführen

Attribut Äußere Umrandung

Attribut Ereignistypen

Attribut Format-Trigger

Attribut Innere Umrandung

Attribut Name

Attribut Objekt verbergen

Attribut Objekttyp

Attribut Parameter setzen

Attribut Schaltflächenprozedur

Attribut Spalte

Attribut Übergeordnetes Objekt


Attribut Schaltflächenprozedur

  Beispiele	  Verwandte Themen

Beschreibung Handle zu der Schaltflächenprozedur, die mit diesem Objekt verknüpft werden soll. Beachten Sie, daß das Attribut Ereignistypen richtig eingestellt sein muß, um zu gewährleisten, daß diese Prozedur die gewünschten Mausereignisse empfängt.

Syntax

PROCEDURE OG_Set_Button
  (object          OG_Object,
   buttonproc      OG_Buttonproc,
   damage          BOOLEAN        :=  TRUE,
   update_bbox     BOOLEAN        :=  TRUE);

FUNCTION OG_Get_Button
  (object  OG_Object)
RETURN OG_Buttonproc;

Parameter

object	Beschriebenes Objekt.
buttonproc	Handle zu der Schaltflächenprozedur, die mit diesem Objekt verknüpft werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Schaltflächenprozedur

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the button
**procedure from a rectangle object, and adds
**the same procedure to a circle object.
*/

PROCEDURE transfer (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  rect og_object;
  circle og_object;
  proc og_buttonproc;
BEGIN
  rect := og_get_object('rect');
  circle := og_get_object('circle');
  proc := og_get_button(rect);
  og_set_button(circle, proc);
END;


Attribut Spalte

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Spaltenwert, auf den der Parameter eingestellt wird, wenn das Objekt ausgewählt wird. Dieses Attribut gilt nur für Diagrammelemente.

Syntax

PROCEDURE OG_Set_Keycol
  (object  OG_Object,
   keycol  VARCHAR2);

FUNCTION OG_Get_Keycol
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
keycol	Spaltenwert, das Objekt ausgewählt wird.


Beispiele für das Attribut Spalte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the column value of a parameter
**and assigns a different value to it
*/

PROCEDURE GenColumn IS
  rect og_object;
  param varchar2(20);
BEGIN
  rect := og_get_object('rect');
  param := og_get_keycol(rect);
  og_set_keycol(rect, 'init');
END;


Attribut Ereignistypen

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Typ der Mausereignisse, die die von dem Attribut Schaltflächenprozedur angegebene Prozedur empfangen soll. Der Wert dieses Attributs kann einer der unten aufgeführten vordefinierten Konstanten entsprechen. Damit die Prozedur mehrere Ereignistypen empfangen kann, stellen Sie dieses Attribut so ein, daß es die Summe der Konstanten für die gewünschten Ereignisse darstellt. Beachten Sie, daß OG_Mouse_Move_Up und OG_Mouse_Move_Down nur für Ebenen von übergreifenden grafischen Anwendungen benutzt werden.

OG_No_Events

OG_Mouse_Down

OG_Mouse_Up

OG_Mouse_Move_Down

Syntax

PROCEDURE OG_Set_Events
  (object       OG_Object,
   events       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Events
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
events	Entspricht dem Typ von Mausereignissen, die die mit dem Attribut Schaltflächenprozedur angegebene Prozedur empfangen soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Ereignistypen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the current mouse event in an object,
**and assigns a different event to it.
*/

PROCEDURE Events IS
  rect og_object;
  events number;
BEGIN
  rect := og_get_object('rect');
  events := og_get_events(rect);
  if events = og_no_events then
     og_set_events(rect, og_mouse_down);
  elsif events = og_mouse_down then
     og_set_events(rect, og_mouse_up);
  elsif events = og_mouse_up then
     og_set_events(rect, og_mouse_move_down);
  elsif events = og_mouse_move_down then
     og_set_events(rect, og_no_events);
  end if;
END;


Attribut Abfrage ausführen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die Abfrage an, die ausgeführt werden muß, wenn das Objekt ausgewählt wird.

Syntax

PROCEDURE OG_Set_Execquery
  (object     OG_Object,
   execquery  OG_Query);

FUNCTION OG_Get_Execquery
  (object  OG_Object)
RETURN OG_Query;

Parameter

object	Beschriebenes Objekt.
execquery	Gibt die Abfrage an, die ausgeführt werden muß, wenn das Objekt ausgewählt wird.


Beispiele für das Attribut Abfrage ausführen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the specified
**query of the object, and assigns a different
**query to it.
*/

PROCEDURE GenQuery IS
  rect og_object;
  query og_query;
  query1 og_query;
BEGIN
  rect := og_get_object('rect');
  query := og_get_execquery(rect);
  query1 := og_get_query('query1');
  og_set_execquery(rect, query1);
END;


Attribut Format-Trigger

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht dem Format-Trigger des Objekts. Dieses Attribut gilt nur für Diagrammelemente.

Syntax

PROCEDURE OG_Set_Fmttrig
  (object   OG_Object,
   fmttrig  VARCHAR2);

FUNCTION OG_Get_Fmttrig
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
fmttrig	Format-Trigger des Objekts. Dieses Attribut gilt nur für Diagrammelemente.


Beispiele für das Attribut Format-Trigger

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the specified
**format trigger from an object, and assigns a
**different format trigger to it.
*/

*/PROCEDURE GenFmtTrigger IS
  rect og_object;
  fmttrig varchar2(20);
BEGIN
  rect := og_get_object('rect');
  fmttrig := og_get_fmttrig(rect);
  og_set_fmttrig(rect, 'fmttrig1');
END;


Attribut Objekt verbergen

  Beispiele	  Verwandte Themen

Beschreibung  Verbirgt das Objekt.

Syntax

PROCEDURE OG_Set_Hide
  (object  OG_Object)
   hide BOOLEAN);

FUNCTION OG_Get_Hide
  (object  OG_Object)
RETURN BOOLEAN;

Parameter

object	Beschriebenes Objekt.
Hide	Verbirgt das Objekt.


Beispiele für das Attribut Objekt verbergen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button
**procedure hides or
**shows an object as it
**is selected.
*/

PROCEDURE OGBUTTONPROC0 (buttonobj IN og_object,

                         hitobj IN og_object,

                         win IN og_window,

                         eventinfo IN og_event) IS

val boolean;

BEGIN

val := og_get_hide(hitobj);

if val then

   og_set_hide(hitobj, false);

 og_set_bfcolor(hitobj, 'red');

else

   og_set_hide(hitobj, true);

 og_set_bfcolor(hitobj, 'red');

end if;

END;


Attribut Innere Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Innere Umrandung des Objekts. Dies ist das Rechteck, das die Idealform des Objekts darstellt (d.h. die vier Steuerungspunkte des Objekts verbindet), unabhängig von Randstärke oder anderen Attributeinstellungen.

Syntax

FUNCTION OG_Get_Ibbox
  (object  OG_Object)
RETURN OG_Rectangle;

Parameter

object	Beschriebenes Objekt.


Beispiele für das Attribut Innere Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the dimensions
**of the inner bounding and outer
**bounding boxes and calculates
**the size of the actual bounding box.
*/

PROCEDURE GenIOBox IS
  obj og_object;
  ibox og_rectangle;
  obox og_rectangle;
  num number;
BEGIN
  obj := og_get_object('rect');
  ibox := og_get_ibbox(obj);
  obox := og_get_obbox(obj);
  num := (obox.height * obox.width)-(ibox.height*ibox.width);
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name des Objekts.

Syntax

PROCEDURE OG_Set_Name
  (object       OG_Object,
   name         VARCHAR2
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Name
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
Name	Objektname.
Damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the name of the object and assigns
**another name to it.
*/

PROCEDURE GenName IS
  obj og_object;
  name varchar2(20);
BEGIN
  obj := og_get_object('circle');
  name := og_get_name(obj);
  og_set_name(obj, 'teresa');
END;


Attribut Objekttyp

  Beispiele	  Verwandte Themen

Beschreibung  Objekttyp. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Arc_Objtype

OG_Chart_Objtype

OG_Group_Objtype

OG_Image_Objtype

OG_Line_Objtype

OG_Poly_Objtype

OG_Rect_Objtype

OG_Rrect_Objtype

OG_Symbol_Objtype

OG_Text_Objtype

Syntax

FUNCTION OG_Get_Objtype
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.


Beispiele für das Attribut Objekttyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure checks
**the type of object being selected by
**the mouse, and prints the type name to
**a text object.
*/

PROCEDURE GenObjType2 (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  text og_object;
  objtype number;

BEGIN
  text := og_get_object('text object');
  objtype := og_get_objtype(hitobj);
  if objtype = og_arc_objtype then
     og_set_str(text, 'arc');
  elsif objtype = og_chart_objtype then
     og_set_str(text, 'chart');
  elsif objtype = og_group_objtype then
     og_set_str(text, 'group');
  elsif objtype = og_image_objtype then
     og_set_str(text, 'image');
  elsif objtype = og_line_objtype then
     og_set_str(text, 'line');
  elsif objtype = og_poly_objtype then
     og_set_str(text, 'poly');
  elsif objtype = og_rect_objtype then
     og_set_str(text, 'rect');
  elsif objtype = og_rrect_objtype then
     og_set_str(text, 'rrect');
  elsif objtype = og_symbol_objtype then
     og_set_str(text, 'symbol');
  elsif objtype = og_text_objtype then
     og_set_str(text, 'text');
  end if;

END;


Attribut Äußere Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der äußeren Umrandung des Objekts. Dies ist das kleinste Rechteck, das das Objekt vollständig umschließt. Diese Umrandung kann sich von der inneren Umrandung unterscheiden, wenn das Objekt einen dicken Rand hat. Während die innere Umrandung nur die Idealform des Objekts umreißt, umschließt die äußere Umrandung das ganze Objekt.

Syntax

FUNCTION OG_Get_Obbox
  (object  OG_Object)
RETURN OG_Rectangle;

Parameter

object	Beschriebenes Objekt.


Beispiele für das Attribut Äußere Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following reads the dimensions of the
**inner bounding and outer bounding boxes and
**calculates the size of the actual bounding box.
*/

PROCEDURE GenIOBox IS
  obj og_object;
  ibox og_rectangle;
  obox og_rectangle;
  num number;
BEGIN
  obj := og_get_object('rect');
  ibox := og_get_ibbox(obj);
  obox := og_get_obbox(obj);
  num := (obox.height * obox.width)-(ibox.height*ibox.width);
END;


Attribut Übergeordnetes Objekt

  Beispiele	  Verwandte Themen

Beschreibung  Handle zu dem übergeordneten Objekt des Objekts.

Syntax

FUNCTION OG_Get_Parent
  (object  OG_Object)
RETURN OG_Object;

Parameter

object	Beschriebenes Objekt.


Beispiele für das Attribut Übergeordnetes Objekt

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the
**parent of the current object, and
**prints the name of the parent object
**to a text object.
*/

PROCEDURE GenParent IS
  text og_object;
  obj og_object;
  parent og_object;
  name varchar2(20);
BEGIN
text := og_get_object('text object');
  obj := og_get_object('circle');
  parent := og_get_parent(obj);
  name := og_get_name(parent);
  og_set_str(text, name);
END;


Attribut Parameter setzen

  Beispiele	  Verwandte Themen

Beschreibung  Parameter, dessen Wert gesetzt wird, wenn das Objekt ausgewählt wird.

Syntax

PROCEDURE OG_Set_Setparam
  (object   OG_Object,
  setparam  VARCHAR2);

FUNCTION OG_Get_Setparam
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
setparam	Parameter, dessen Wert gesetzt wird, wenn das Objekt ausgewählt wird.


Beispiele für das Attribut Parameter setzen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**parameter of a rectangle object, and
**assigns a new parameter to it.
*/

PROCEDURE SetParam IS
  rect og_object;
  param varchar2(20);
BEGIN
  rect := og_get_object('rect');
  param := og_get_setparam(rect);
  og_set_setparam(rect, 'PARAM1');
END;


Grafikattribute

Attribut Drehwinkel

Attribut Füllmuster

Attribut Hintergrundfüllfarbe

Attribut Hintergrundrandfarbe

Attribut Join-Stil

Attribut Linienende

Attribut Randbreite

Attribut Randmuster

Attribut Strichart

Attribut Transfermodus

Attribut Umrißstil

Attribut Vordergrundfüllfarbe

Attribut Vordergrundrandfarbe


Attribut Hintergrundrandfarbe

  Beispiele	  Verwandte Themen

Beschreibung  Hintergrundrandfarbe des Objekts.

Syntax

PROCEDURE OG_Set_Becolor
  (object       OG_Object,
   becolor      VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Becolor
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
Becolor	Hintergrundrandfarbe des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Hintergrundrandfarbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* /*The following procedure swaps the foreground
**and background edge colors.
*/

PROCEDURE FBEdgeColor IS
  obj og_object;
  fcolor varchar2(20);
  bcolor varchar2(20);
BEGIN
  obj := og_get_object('rect');
  fcolor := og_get_fecolor(obj);
  bcolor := og_get_becolor(obj);
  og_set_fecolor(obj, bcolor);
  og_set_becolor(obj, fcolor);
END;


Attribut Hintergrundfüllfarbe

  Beispiele	  Verwandte Themen

Beschreibung  Hintergrundfüllfarbe des Objekts.

Syntax

PROCEDURE OG_Set_Bfcolor
  (object       OG_Object,
   bfcolor      VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Bfcolor
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
bfcolor	Hintergrundfüllfarbe des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Hintergrundfüllfarbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*The following procedure swaps the foreground
**and background fill colors.
*/

PROCEDURE FBFillColor IS
  obj og_object;
  fcolor varchar2(20);
  bcolor varchar2(20);
BEGIN
  obj := og_get_object('rect');
  fcolor := og_get_ffcolor(obj);
  bcolor := og_get_bfcolor(obj);
  og_set_ffcolor(obj, bcolor);
  og_set_bfcolor(obj, fcolor);
END;


Attribut Umrißstil

  Beispiele	  Verwandte Themen

Beschreibung  Umrißstil des Objekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Inset_Bstyle

OG_Lowered_Bstyle

OG_Outset_Bstyle

OG_Plain_Bstyle

OG_Raised_Bstyle

Syntax

PROCEDURE OG_Set_Bevelstyle
  (object       OG_Object,
   bevelstyle   NUMBER,
   damage       BOOLEAN    := TRUE,
   update_bbox  BOOLEAN    := TRUE);

FUNCTION OG_Get_Bevelstyle
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
bevelstyle	Umrißstil des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Umrißstil

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure rotates
**the bevel style of a selected object.
*/

PROCEDURE bevel (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  obj og_object;
  num number;
BEGIN
  obj := og_get_object('rect');
  num := og_get_bevelstyle(obj);
  if num = og_inset_bstyle then
     og_set_bevelstyle(obj, og_lowered_bstyle);
  elsif num = og_lowered_bstyle then
     og_set_bevelstyle(obj, og_outset_bstyle);
  elsif num = og_outset_bstyle then
     og_set_bevelstyle(obj, og_plain_bstyle);
  elsif num = og_plain_bstyle then
     og_set_bevelstyle(obj, og_raised_bstyle);
  elsif num = og_raised_bstyle then
     og_set_bevelstyle(obj, og_inset_bstyle);
  end if;
END;


Attribut Linienende

  Beispiele	  Verwandte Themen

Beschreibung  Linienende des Objektrandes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Butt_Cstyle

OG_Projecting_Cstyle

OG_Round_Cstyle

Syntax

PROCEDURE OG_Set_Capstyle
  (object        OG_Object,
   capstyle      NUMBER,
   damage        BOOLEAN    :=  TRUE,
   update_bbox   BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Capstyle
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
capstyle	Linienende des Objektrandes.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Liniende
Beispiele für das Attribut Linienende

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure rotates
**the cap style of an object's edge.
*/

PROCEDURE CapStyle (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  num number;
BEGIN
  num := og_get_capstyle(hitobj);
  if num = og_butt_cstyle then
     og_set_capstyle(hitobj, og_projecting_cstyle);
  elsif num = og_projecting_cstyle then
     og_set_capstyle(hitobj,og_round_cstyle);
  elsif num = og_round_cstyle then
     og_set_capstyle(hitobj,og_butt_cstyle);
  end if;
END;


Attribut Strichart

  Beispiele	  Verwandte Themen

Beschreibung  Strichart des Objektrandes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Solid_Dstyle

OG_Dot_Dstyle

OG_Long_Dstyle

OG_Dashdot_Dstyle

OG_Dotdot_Dstyle

OG_Short_Dstyle

OG_Dashdotdot_Dstyle

Syntax

PROCEDURE OG_Set_Dashstyle
  (object         OG_Object,
   dashstyle      NUMBER,
   damage         BOOLEAN    :=  TRUE,
   update_bbox    BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Dashstyle
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
Dashstyle	Strichart des Objektrandes.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Strichart

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following button procedure rotates
**the dash style on hit object.
*/

PROCEDURE DashStyle (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
    num number;
BEGIN
  num := og_get_dashstyle(hitobj);
  if num = og_solid_dstyle then
     og_set_dashstyle(hitobj, og_dot_dstyle);
  elsif num = og_dot_dstyle then
     og_set_dashstyle(hitobj,og_long_dstyle);
  elsif num = og_long_dstyle then
     og_set_dashstyle(hitobj,og_dashdot_dstyle);
  elsif num = og_dashdot_dstyle then
     og_set_dashstyle(hitobj,og_dotdot_dstyle);
  elsif num = og_dotdot_dstyle then
     og_set_dashstyle(hitobj,og_short_dstyle);
  elsif num = og_short_dstyle then
     og_set_dashstyle(hitobj,og_dashdotdot_dstyle);
  elsif num = og_dashdotdot_dstyle then
     og_set_dashstyle(hitobj,og_solid_dstyle);
  end if;
END;


Attribut Randmuster

  Beispiele	  Verwandte Themen

Beschreibung  Randmuster des Objekts.

Syntax

PROCEDURE OG_Set_Edgepatt
  (object        OG_Object,
   edgepatt      VARCHAR2,
   damage        BOOLEAN    :=  TRUE,
   update_bbox   BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Edgepatt
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
Edgepatt	Randmuster des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Randmuster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure swaps the edge
**and fill patterns of an object.
*/

PROCEDURE EdgePattern IS
  obj og_object;
  edgepatt varchar2(20);
  fillpatt varchar2(20);
BEGIN
  obj := og_get_object('rect');
  edgepatt := og_get_edgepatt(obj);
  fillpatt := og_get_fillpatt(obj);
  og_set_edgepatt(obj, fillpatt);
  og_set_fillpatt(obj, edgepatt);
END;


Attribut Randbreite

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Breite des Objektrandes (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Ewidth
  (object       OG_Object,
   ewidth       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Ewidth
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
Ewidth	Breite des Objektrandes (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Randbreite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the edge
**width of a selected object.  If the width
**is 0, it resets the width to value 800.
*/

PROCEDURE EdgeWidth IS
  obj og_object;
  width number;
BEGIN
  obj := og_get_object('rect');
  width := og_get_ewidth(obj);
  if width = 0 then
    og_set_ewidth(obj, 800);
  end if;
END;


Attribut Füllmuster

  Beispiele	  Verwandte Themen

Beschreibung  Füllmuster des Objekts.

Syntax

PROCEDURE OG_Set_Fillpatt
  (object        OG_Object,
   fillpatt      VARCHAR2,
   damage        BOOLEAN    :=  TRUE,
   update_bbox   BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Fillpatt
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
Fillpatt	Füllmuster des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Füllmuster

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* Beispiele

 /*The following procedure swaps the edge
**and fill patterns of an object.
*/

PROCEDURE EdgePattern IS
  obj og_object;
  edgepatt varchar2(20);
  fillpatt varchar2(20);
BEGIN
  obj := og_get_object('rect');
  edgepatt := og_get_edgepatt(obj);
  fillpatt := og_get_fillpatt(obj);
  og_set_edgepatt(obj, fillpatt);
  og_set_fillpatt(obj, edgepatt);
END;


Attribut Vordergrundrandfarbe

  Beispiele	  Verwandte Themen

Beschreibung  Vordergrundrandfarbe des Objekts.

Syntax

PROCEDURE OG_Set_Fecolor
  (object       OG_Object,
   fecolor      VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Fecolor
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
fecolor	Vordergrundrandfarbe des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Vordergrundrandfarbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure swaps the foreground
**and background edge colors.
*/

PROCEDURE FBEdgeColor IS
  obj og_object;
  fcolor varchar2(20);
  bcolor varchar2(20);
BEGIN
  obj := og_get_object('rect');
  fcolor := og_get_fecolor(obj);
  bcolor := og_get_becolor(obj);
  og_set_fecolor(obj, bcolor);
  og_set_becolor(obj, fcolor);
END;


Attribut Vordergrundfüllfarbe

  Beispiele	  Verwandte Themen

Beschreibung  Vordergrundfüllfarbe des Objekts.

Syntax

PROCEDURE OG_Set_Ffcolor
  (object       OG_Object,
   ffcolor      VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Ffcolor
  (object  OG_Object)
RETURN VARCHAR2;

Parameter

object	Beschriebenes Objekt.
ffcolor	Vordergrundfüllfarbe des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Vordergrundfüllfarbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure swaps the foreground
**and background fill colors.
*/

PROCEDURE FBFillColor IS
  obj og_object;
  fcolor varchar2(20);
  bcolor varchar2(20);
BEGIN
  obj := og_get_object('rect');
  fcolor := og_get_ffcolor(obj);
  bcolor := og_get_bfcolor(obj);
  og_set_ffcolor(obj, bcolor);
  og_set_bfcolor(obj, fcolor);
END;


Attribut Join-Stil

  Beispiele	  Verwandte Themen

Beschreibung  Join-Stil des Objektrandes. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Mitre_Jstyle

OG_Bevel_Jstyle

OG_Round_Jstyle

Syntax

PROCEDURE OG_Set_Joinstyle
  (object         OG_Object,
   joinstyle      NUMBER,
   damage         BOOLEAN    :=  TRUE,
   update_bbox    BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Joinstyle
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
joinstyle	Join-Stil des Objektrandes.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Join-Stil

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure rotates
**the join style of an object's edge.
*/

PROCEDURE JoinStyle (mitreonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  num number;
BEGIN
  num := og_get_joinstyle(hitobj);
  if num = og_mitre_jstyle then
     og_set_joinstyle(hitobj, og_bevel_jstyle);
  elsif num = og_bevel_jstyle then
     og_set_joinstyle(hitobj,og_round_jstyle);
  elsif num = og_round_jstyle then
     og_set_joinstyle(hitobj,og_mitre_jstyle);
  end if;
END;


Attribut Drehwinkel

  Beispiele	  Verwandte Themen

Beschreibung  Drehwinkel des Objekts. Der Winkel, mit dem das Objekt anfänglich erstellt wird, wird als 0 betrachtet, und dieses Attribut entspricht der Anzahl von Grad im Uhrzeigersinn, um die das Objekt momentan von diesem Anfangswinkel differiert. Sie können ein Objekt mit einem absoluten Winkel drehen, indem Sie dieses Attribut einstellen, oder können die Prozedur OG_Rotate verwenden, um ein Objekt um einen relativen Betrag zu drehen. (Wenn Sie die Prozedur OG_Rotate verwenden, um ein Objekt zu drehen, wird das Attribut Drehwinkel automatisch entsprechend dem neuen absoluten Winkel aktualisiert.)

Syntax

PROCEDURE OG_Set_Rotang
  (object       OG_Object,
   rotang       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Rotang
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
rotang	Drehwinkel des Objekts. Der Winkel, mit dem das Objekt anfänglich erstellt wird, wird als 0 betrachtet, und dieses Attribut entspricht der Anzahl von Grad im Uhrzeigersinn, um die das Objekt momentan von diesem Anfangswinkel differiert.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Drehwinkel

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the rotation
**angle from a selected object, and rotates
**the object another 45 degrees to the right.
*/

PROCEDURE RotAngle IS
  obj og_object;
  rotang number;
BEGIN
  obj := og_get_object('rect');
  rotang := og_get_rotang(obj);
  og_set_rotang(obj, rotang+45);
END;


Attribut Transfermodus

  Beispiele	  Verwandte Themen

Beschreibung  Transfermodus des Objekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Copy_Transfer

OG_Revcopy_Transfer

OG_Or_Transfer

OG_Revor_Transfer

OG_Clear_Transfer

OG_Revclear_Transfer

OG_Invert_Transfer

OG_Backinvert_Transfer

Syntax

PROCEDURE OG_Set_Transfer
  (object        OG_Object,
   transfer      NUMBER,
   damage        BOOLEAN    := TRUE,
   update_bbox   BOOLEAN    := TRUE);

FUNCTION OG_Get_Transfer
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.
Transfer	Transfermodus des Objekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Transfermodus

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure rotates the
**transfer mode of a selected object.
*/

PROCEDURE transher (copyonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  num number;
BEGIN
  num := og_get_transfer(hitobj);
  if num = og_copy_transfer then
     og_set_transfer(hitobj, og_revcopy_transfer);
  elsif num = og_revcopy_transfer then
     og_set_transfer(hitobj,og_or_transfer);
  elsif num = og_or_transfer then
     og_set_transfer(hitobj,og_revor_transfer);
  elsif num = og_revor_transfer then
     og_set_transfer(hitobj,og_clear_transfer);
  elsif num = og_clear_transfer then
     og_set_transfer(hitobj,og_revclear_transfer);
  elsif num = og_revclear_transfer then
     og_set_transfer(hitobj,og_invert_transfer);
  elsif num = og_invert_transfer then
     og_set_transfer(hitobj,og_backinvert_transfer);
  elsif num = og_backinvert_transfer then
     og_set_transfer(hitobj,og_copy_transfer);
  end if;
END;


Gruppenattribute

Attribut Anzahl untergeordneter Objekte

Attribut Begrenzunsgmarke


Attribut Anzahl untergeordneter Objekte

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Anzahl von untergeordneten Objekten, die zu dem Gruppenobjekt gehören. Wenn ein anderes Gruppenobjekt ein untergeordnetes Objekt der geprüften Gruppe ist, wird dieses Objekt nur als ein Objekt gezählt.

Syntax

FUNCTION OG_Get_Childcount
  (object  OG_Object)
RETURN NUMBER;

Parameter

object	Beschriebenes Objekt.


Beispiele für das Attribut Anzahl untergeordneter Objekte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the number
**of children in a group object.
*/

PROCEDURE GrpChildCnt IS
  grp og_object;
  cnt number;
BEGIN
  grp := og_get_object('group');
  cnt := og_get_childcount(grp);
END;


Attribut Begrenzungsmarke

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob das erste Objekt in der Gruppe ein rechteckiges Objekt ist, das als Begrenzungsrechteck benutzt werden soll. Wenn dieses Attribut TRUE ist, sind die einzigen Bestandteile der Gruppe, die in dem Layout angezeigt werden, diese Objekte - oder Teile dieser Objekte -, die innerhalb der Umrandung des Begrenzungsrechtecks stehen. Das rechteckige Objekt selbst wird ebenfalls angezeigt.

Syntax

PROCEDURE OG_Set_Clipflag
  (object        OG_Object,
   clipflag      BOOLEAN,
   damage        BOOLEAN    :=  TRUE,
   update_bbox   BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Clipflag
  (object  OG_Object)
RETURN BOOLEAN;

Parameter

object	Beschriebenes Objekt.
clipflag	Gibt an, ob das erste Objekt in der Gruppe ein rechteckiges Objekt ist, das als Begrenzungsrechteck benutzt werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Begrenzungsmarke

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if
**clipflag is true.  If not, it sets the
**flag to true.
*/

PROCEDURE GrpClipFlg IS
  grp og_object;
  flag boolean;
BEGIN
  grp := og_get_object('group');
  flag := og_get_clipflag(grp);
  if flag = false then
     og_set_clipflag(grp, true);
  end if;
END;


Bildattribute

Attribut Begrenzungsrechteck

Attribut Breite

Attribut Dithering

Attribut Höhe

Attribut Position

Attribut Qualität


Attribut Begrenzungsrechteck

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht den x- und y-Koordinaten sowie Höhe und Breite des Begrenzungsrechtecks des Bilds (in Layouteinheiten). Nur der Teil des Bildes, der in dieses Begrenzungsrechteck fällt, wird angezeigt. Wenn dieses Attribut nicht angegeben wird, entspricht das Begrenzungsrechteck den vollständigen Abmessungen des Bildes.

Syntax

PROCEDURE OG_Set_Cliprect
  (image         OG_Object,
   cliprect      OG_Rectangle,
   damage        BOOLEAN       :=  TRUE,
   update_bbox   BOOLEAN       :=  TRUE);

FUNCTION OG_Get_Cliprect
  (image  OG_Object)
RETURN OG_Rectangle;

Parameter

image	Beschriebenes Bildobjekt.
cliprect	x- und y-Koordinaten, Höhe und Breite des Begrenzungsrechtecks des Bildes (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Begrenzungsrechteck

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reduces the
**size of the clipping rectangle by half.
*/

PROCEDURE ClipRect IS
  image og_object;
  rect og_rectangle;
BEGIN
  image := og_get_object('image');
  rect := og_get_cliprect(image);
  rect.height := rect.height/2;
  rect.width := rect.width/2;
  og_set_cliprect(image, rect);
  og_set_clipflag(image, true);
END;


Attribut Dithering

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Graphics Builder das Bild bei der Anzeige einem Bild-Dithering unterzieht. Dieses Attribut kann einen der folgenden Werte annehmen:

Syntax

PROCEDURE OG_Set_Image_Dither
  (image   OG_Object,
   dither  BOOLEAN);

FUNCTION OG_Get_Image_Dither
  (image  OG_Object)
RETURN BOOLEAN;

Parameter

image	Beschriebenes Bildobjekt.
Dither	Gibt an, ob Graphics Builder ein Bild-Dithering vornimmt, wenn das Bild angezeigt wird.


Beispiele für das Attribut Dithering

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure
**dithers an image or removes
**dithering.
*/

PROCEDURE SetDither (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
val boolean;
image og_object;
BEGIN
  image := og_get_object('image');
  val := og_get_image_dither(image);
  if val then
    og_set_image_dither(og_get_object('image'), false);
  else
    og_set_image_dither(og_get_object('image'), true);
  end if;
END;


Attribut Höhe

  Beispiele	  Verwandte Themen

Beschreibung  Bildhöhe (in Layouteinheiten). Wenn Sie dieses Attribut auf einen anderen Wert als die Standardhöhe des Bildes einstellen, wird das Bild so skaliert, daß es in die neue Höhe paßt.

Syntax

(Siehe OG_Set_Image_Size oben.)

FUNCTION OG_Get_Image_Height
  (image  OG_Object)
RETURN NUMBER;

Parameter

image	Beschriebenes Bildobjekt.


Beispiele für das Attribut Höhe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reduces
**an image's size by half.
*/

PROCEDURE SizeWidthHeight IS
  image og_object;
  height number;
  width number;
BEGIN
  image := og_get_object('image');
  width := og_get_image_width(image);
  height := og_get_image_height(image);
  og_set_image_size(image, width/2, height/2);
END;


Attribut Position

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten der oberen linken Ecke des Bildes (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Upperleft
  (image          OG_Object,
   upperleft      OG_Point,
   damage         BOOLEAN    :=  TRUE,
   update_bbox    BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Upperleft
  (image  OG_Object)
RETURN OG_Point;

Parameter

image	Beschriebenes Bildobjekt.
Upperleft	x- und y-Koordinaten der oberen linken Ecke des Bildes (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Position

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**(x,y) coordinates of the image's
**upper-left corner.  If the coordinate
**is not (0,0), the procedure
**moves the image's upper-left
**corner to the (0,0) coordinate.
*/

PROCEDURE Position IS
  image og_object;
  pos og_point;
BEGIN
  image := og_get_object('image');
  pos := og_get_upperleft(image);
  if pos.x != 0 and pos.y != 0 then
    pos.x := 0;
    pos.y := 0;
    og_set_upperleft(image, pos);
  end if;
END;


Attribut Qualität

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, mit welcher Qualität das Bild gezeichnet wird. Bilder in höherer Qualität sehen besser aus, beanspruchen jedoch mehr Verarbeitungszeit (z.B. beim Zeichnen, Verschieben, Skalieren usw.). Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_High_Iquality

OG_Medium_Iquality

OG_Low_Iquality

Syntax

PROCEDURE OG_Set_Image_Quality
  (image    OG_Object,
   quality  NUMBER);

FUNCTION OG_Get_Image_Quality
  (image  OG_Object)
RETURN NUMBER;

Parameter

image	Beschriebenes Bildobjekt.
quality	Gibt an, mit welcher Qualität das Bild gezeichnet wird.


Beispiele für das Attribut Qualität

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks image
**quality.  If the image is currently drawn
**with high quality, the procedure redraws
**it with low quality.
*/

PROCEDURE GetQuality (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  image og_object;
  qty number;
BEGIN
  image := og_get_object('image');
  qty := og_get_image_quality(image);
  if qty = og_high_iquality then
    og_set_image_quality(image, og_low_iquality);
  end if;
END;


Attribut Breite

  Beispiele	  Verwandte Themen

Beschreibung  Bildbreite (in Layouteinheiten). Wenn Sie dieses Attribut auf einen anderen Wert als die Standardbreite des Bildes einstellen, wird das Bild so skaliert, daß es in die neue Breite paßt.

Syntax

PROCEDURE OG_Set_Image_Size
  (image        OG_Object,
   width        NUMBER,
   height       NUMBER,
   damage       BOOLEAN    := TRUE,
   update_bbox  BOOLEAN    :=   TRUE);

FUNCTION OG_Get_Image_Width
  (image  OG_Object)
RETURN NUMBER;

Parameter

image	Beschriebenes Bildobjekt.
width	Bildbreite (in Layouteinheiten).
height	Bildhöhe (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Breite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure reduces
**an image's size by half.
*/

PROCEDURE SizeWidthHeight IS
  image og_object;
  height number;
  width number;
BEGIN
  image := og_get_object('image');
  width := og_get_image_width(image);
  height := og_get_image_height(image);
  og_set_image_size(image, width/2, height/2);
END;


Linienattribute

Attribut Anfangspunkt

Attribut Endpunkt

Attribut Pfeilart


Attribut Pfeilart

  Beispiele	  Verwandte Themen

Beschreibung  Pfeilart der Linie. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Noarrow_Astyle   Bedeutet, daß die Linie keinen Pfeil hat.

OG_Start_Astyle   Bedeutet, daß die Linie einen Pfeil am Anfangspunkt hat.

OG_End_Astyle   Bedeutet, daß die Linie einen Pfeil am Endpunkt hat.

OG_Both_Astyle   Bedeutet, daß die Linie einen Pfeil an beiden Enden hat.

OG_Midtostart_Astyle   Bedeutet, daß die Linie einen Pfeil in der Mitte hat, der zu dem Anfangspunkt zeigt.

OG_Midtoend_Astyle   Bedeutet, daß die Linie einen Pfeil in der Mitte hat, der zu dem Endpunkt zeigt.

Syntax

PROCEDURE OG_Set_Arrowstyle
  (line         OG_Object,
   arrowstyle   NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Arrowstyle
  (line  OG_Object)
RETURN NUMBER;

Parameter

line	Beschriebenes Linienobjekt.
arrowstyle	Pfeilart der Linie.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Pfeilart

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines a
*line's current arrow style.  If the line
**does not include arrows, the procedure adds
**arrows to both ends of the line.  If the
**line does include arrows, the
**procedure removes them.
*/

PROCEDURE Arrow (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  arrow og_object;
  num number;
BEGIN
  arrow := og_get_object('arrow');
  num := og_get_arrowstyle(arrow);
  if num = og_noarrow_astyle then
    og_set_arrowstyle(arrow, og_both_astyle);
  else
    og_set_arrowstyle(arrow, og_noarrow_astyle);
  end if;
END;


Attribut Endpunkt

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten des Endpunkts der Linie (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Endpt
  (line         OG_Object,
   endpt        OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Endpt
  (line  OG_Object)
RETURN OG_Point;

Parameter

line	Beschriebenes Linienobjekt.
endpt	x- und y-Koordinaten des Endpunkts der Linie (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Endpunkt

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**coordinates of the line's ending point.
**If the line does not end at the upper-left
**corner of the display, the procedure resets
**the end point to (0,0).
*/

PROCEDURE OGBUTTONPROC0 (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  arrow og_object;
  pos og_point;
BEGIN
  arrow := og_get_object('a');
  pos := og_get_endpt(arrow);
  if pos.x != 0 and pos.y != 0 then
    pos.x := 0;
    pos.y := 0;
    og_set_endpt(arrow, pos);
  end if;
END;


Attribut Anfangspunkt

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten des Anfangspunkts der Linie (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Startpt
  (line         OG_Object,
   startpt      OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Startpt(line OG_Object)
RETURN OG_Point;

Parameter

line	Beschriebenes Linienobjekt.
startpt	x- und y-Koordinaten des Anfangspunkts der Linie (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Anfangspunkt

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* /*The following procedure reads
**the coordinates of a line's
**starting point.  If the line does
**not start from the upper-left corner
**of the display, the procedure resets
**the start point to (0,0).
*/

PROCEDURE  StartPt (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  arrow og_object;
  pos og_point;
BEGIN
  arrow := og_get_object('a');
  pos := og_get_startpt(arrow);
  if pos.x != 0 and pos.y != 0 then
    pos.x := 0;
    pos.y := 0;
    og_set_startpt(arrow, pos);
  end if;
END;


Polygonattribute

Attribut Anzahl Punkte

Attribut Begrenzungslinie


Attribut Begrenzungslinie

  Beispiele	  Verwandte Themen

Beschreibung  Begrenzungslinie des Polygons. Dieses Attribut kann einen der folgenden Werte haben:

TRUE   Bedeutet, daß das Polygon geschlossen ist.

FALSE   Bedeutet, daß das Polygon offen ist.

Syntax

PROCEDURE OG_Set_Poly_Closed
  (poly         OG_Object,
   closed       BOOLEAN,
   damage       BOOLEAN    := TRUE,
   update_bbox  BOOLEAN    := TRUE);

FUNCTION OG_Get_Poly_Closed
  (poly  OG_Object)
RETURN BOOLEAN;

Parameter

poly	Beschriebenes Polygon.
Closed	Begrenzungslinie des Polygons.
Damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Begrenzungslinie

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**whether a polygon is closed.
**If the polygon is open, the procedure
**closes it.
*/

PROCEDURE closure IS
  polygon og_object;
  val boolean;
BEGIN
  polygon := og_get_object('polygon');
  val := og_get_poly_closed(polygon);
  if val = false  then
     og_set_poly_closed(polygon, true);
  end if;
END;


Attribut Anzahl Punkte

  Beispiele	  Verwandte Themen

Beschreibung  Anzahl der Punkte, aus denen das Polygonobjekt besteht.

Syntax

FUNCTION OG_Get_Pointct
  (poly  OG_Object)
RETURN NUMBER;

Parameter

poly	Beschriebenes Polygon.


Beispiele für das Attribut Anzahl Punkte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**number of points that compose the
**polygon object and prints the number
**to a text object.
*/

PROCEDURE PntCnt IS
  text og_object;
  polygon og_object;
  cnt number;
BEGIN
text := og_get_object('text object');
  polygon := og_get_object('polygon');
  cnt := og_get_pointct(polygon);
  og_set_str(text, cnt);
END;


Druckerattribute

Attribut Anfangsseite

Attribut Ausdruck in Datei

Attribut Endseite

Attribut Kopien

Attribut Name

Attribut Querformat

Attribut Seitengröße


Attribut Kopien

  Beispiele	  Verwandte Themen

Beschreibung  Anzahl von auszudruckenden Kopien.

Syntax

PROCEDURE OG_Set_Copies
  (copies  NUMBER);

FUNCTION OG_Get_Copies
RETURN NUMBER;

Parameter

copies	Anzahl von auszudruckenden Kopien.


Beispiele für das Attribut Kopien

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
**the number of copies and adds two more
**copies to print.
*/

PROCEDURE PrinterCopies IS
  copies number;
BEGIN
  copies := og_get_copies;
  og_set_copies(copis+2);
END;


Attribut Endseite

  Beispiele	  Verwandte Themen

Beschreibung  Letzte auszudruckende Seite.

Syntax

PROCEDURE OG_Set_Endpage
  (endpage  NUMBER);

FUNCTION OG_Get_Endpage
RETURN NUMBER;

Parameter

endpage	Letzte auszudruckende Seite.


Beispiele für das Attribut Endseite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**end page number and resets it to the
**original number plus two.
*/.

PROCEDURE PrinterEndPage IS
  ep number;
BEGIN
  ep := og_get_endpage;
  og_set_endpage(ep+2);
END;


Attribut Querformat

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die grafische Anwendung im Querformat oder Hochformat ausgedruckt wird.

Syntax

PROCEDURE OG_Set_Landscape
  (landscape  BOOLEAN);

FUNCTION OG_Get_Landscape
RETURN BOOLEAN;

Parameter

landscape	Gibt an, ob die grafische Anwendung im Querformat oder Hochformat gedruckt wird.


Beispiele für das Attribut Querformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines
**if the display is printed in landscape
**or portrait mode, and prints the mode
**type to a text object.
*/

PROCEDURE PrinterLandscape IS

  landscape boolean;

BEGIN

  landscape := og_get_landscape;
  if landscape then
     og_set_str(og_get_object('text object'), 'landscape');
  else
     og_set_str(og_get_object('text object'), 'portrait');
  end if;
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name des aktuellen Druckers.

Syntax

PROCEDURE OG_Set_Printer_Name
  (name  VARCHAR2);

FUNCTION OG_Get_Printer_Name
RETURN VARCHAR2;

Parameter

name	Name des aktuellen Druckers.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure sets the
**printer name and prints the name to
**a text object.
*/

PROCEDURE PrinterName IS
  name varchar2(30);
BEGIN
  name := og_get_printer_name;
  og_set_str(og_get_object('text object'), name);
END;


Attribut Seitengröße

  Beispiele	  Verwandte Themen

Beschreibung  Seitengröße (in Zoll).

Syntax

PROCEDURE OG_Set_Pagesize
  (width   NUMBER,
  (height  NUMBER);

Parameter

width	Breite der Seite (in Zoll).
Height	Höhe der Seite (in Zoll).


Beispiele für das Attribut Seitengröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure sets the
**page size.
*/

PROCEDURE PrinterPageSize IS
  height number := 10*og_inch;
  width number := 10*og_inch;
  printfile varchar2(20);
BEGIN
  og_set_pagesize(height, width);
END;


Attribut Ausdruck in Datei

  Beispiele	  Verwandte Themen

Beschreibung  Name der PostScript-Datei, in die gedruckt werden soll. Wenn dieses Attribut NULL ist, wird die Ausgabe an den Drucker gesendet.

Syntax

PROCEDURE OG_Set_Printfile
  (filename  VARCHAR2);

FUNCTION OG_Get_Printfile
RETURN VARCHAR2;

Parameter

filename	Name der PostScript-Datei, in die gedruckt werden soll. Wenn dieses Attribut NULL ist, wird die Ausgabe an den Drucker gesendet.


Beispiele für das Attribut Ausdruck in Datei

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*.The following procedure sets the
**PostScript file name and prints it
**to a text object.
*/

PROCEDURE PrinterPrintFile IS
  printfile varchar2(20);
BEGIN
  og_set_printfile('myfile');
  printfile := og_get_printfile;
  og_set_str(og_get_object('text object'), printfile);
END;


Attribut Anfangsseite

  Beispiele	  Verwandte Themen

Beschreibung  Erste zu druckende Seite.

Syntax

PROCEDURE OG_Set_Startpage
  (startpage  NUMBER);

FUNCTION OG_Get_Startpage
RETURN NUMBER;

Parameter

startpage	Erste zu ausdruckende Seite.


Beispiele für das Attribut Anfangsseite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the start
**page number and resets the page number
**to the original number plus two.
*/

PROCEDURE PrinterStartPage IS
  sp number;
BEGIN
  sp := og_get_startpage;
  og_set_startpage(sp+2);
END;


Abfrageattribute

Attribut Abfragequelle

Attribut Abfragetyp

Attribut Ausführen bei Öffnen

Attribut Ausführen bei Timer

Attribut Benutzerdefinierte Abfrageprozedur

Attribut Cache-Typ

Attribut Datumsformat

Attribut Maximale Anzahl Zeilen

Attribut Name

Attribut Post-Query-Trigger-Prozedur


Attribut Cache-Typ

  Beispiele	  Verwandte Themen

Beschreibung  Bestimmt, wie neu aus der Ausführung der Abfrage abgerufene Daten behandelt werden sollen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Append_Cachetype   Bedeutet, daß alle bestehenden Datenzeilen behalten und die neuen Datenzeilen am Ende der bestehenden Datengruppe hinzugefügt werden.

OG_Copy_Cachetype   Bedeutet, daß alle Daten aus der vorherigen Ausführung in einen Spezialpuffer kopiert und durch die neu abgerufenen Daten ersetzt werden.

OG_None_Cachetype   Bedeutet, daß alle Daten aus der vorherigen Ausführung verworfen und durch die neu abgerufenen Daten ersetzt werden.

Syntax

PROCEDURE OG_Set_Cachetype
  (query      OG_Query,
   cachetype  NUMBER);

FUNCTION OG_Get_Cachetype
  (query  OG_Query)
RETURN NUMBER;

Parameter

query	Beschriebene Abfrage.
Cachetype	Bestimmt, wie die neu aus der Ausführung der Abfrage abgerufenen Daten behandelt werden.


Beispiele für das Attribut Cache-Typ

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure rotates the query
**cache type of a query.
*/

PROCEDURE QryCacheType (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  qry og_query;
  num number;
BEGIN
  qry := og_get_query('query0');
  num := og_get_cachetype(qry);
  if num = og_append_cachetype then
     og_set_cachetype(qry, og_copy_cachetype);
  elsif num = og_copy_cachetype then
     og_set_cachetype(qry, og_none_cachetype);
  elsif num = og_none_cachetype then
     og_set_cachetype(qry, og_append_cachetype);
  end if;
END;


Attribut Benutzerdefinierte Abfrageprozedur

  Beispiele	  Verwandte Themen

Beschreibung  Die PL/SQL-Prozedur, die aufgerufen wird, wenn eine Benutzerdefinierte Abfrage ausgeführt wird.

Syntax

PROCEDURE OG_Set_Customproc
  (query       OG_Query,
   customproc  VARCHAR2);

FUNCTION OG_Get_Customproc
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
customproc	Die PL/SQL-Prozedur, die aufgerufen wird, wenn eine Benutzerdefinierte Abfrage ausgeführt wird.


Beispiele für das Attribut Benutzerdefinierte Abfrageprozedur

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure swaps the two PL/SQL
**procedures which are invoked when a custom query is

**executed.
*/

PROCEDURE CustQry (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  proc varchar2(20);
  qry og_query;
BEGIN
  qry := og_get_query('query0');
  proc := og_get_customproc(qry);
  if proc = 'CUSTQRY1' then
    og_set_customproc(qry, 'CUSTQRY2');
  elsif proc = 'CUSTQRY2' then
     og_set_customproc(qry, 'CUSTQRY1');
  end if;
  og_execute_query(qry);
END;


Attribut Datumsformat

  Beispiele	  Verwandte Themen

Beschreibung  Datumsformatmaske für die Abfrage.

Syntax

PROCEDURE OG_Set_Dateformat
  (query       OG_Query,
   dateformat  VARCHAR2);

FUNCTION OG_Get_Dateformat
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
dateformat	Datumsformatmaske für die Abfrage.


Beispiele für das Attribut Datumsformat

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads and sets
**the Date Format mask for the query.
*/

PROCEDURE QueryDateFmt IS
  qry og_query;
  DateFmt varchar2(20);
BEGIN
  qry := og_get_query('query0');
  DateFmt := og_get_dateformat(qry);
  og_set_dateformat(qry, 'DD-MM-YYYY');
  DateFmt := og_get_dateformat(qry);
END;


Attribut Ausführen bei Öffnen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Abfrage automatisch ausgeführt wird, wenn die grafische Anwendung zur Laufzeit geöffnet wird.

Syntax

PROCEDURE OG_Set_Execopen
  (query     OG_Query,
   execopen  BOOLEAN);

FUNCTION OG_Get_Execopen
  (query  OG_Query)
RETURN BOOLEAN;

Parameter

query	Beschriebene Abfrage.
execopen	Gibt an, ob die Abfrage automatisch ausgeführt wird, wenn die grafische Anwendung zur Laufzeit geöffnet wird.


Beispiele für das Attribut Ausführen bei Öffnen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the Execute
**on Open checkbox is checked.  If it is checked,
**it unchecks it, or vice versa.
*/

PROCEDURE ExecOpen IS
  execOpen boolean;
  qry og_query;
BEGIN
  qry := og_get_query('query0');
  execOpen := og_get_execopen(qry);
  if execOpen then
     og_set_execopen(qry, false);
  else
     og_set_execopen(qry, true);
  end if;
END;


Attribut Ausführen bei Timer

  Beispiele	  Verwandte Themen

Beschreibung  Name des Timers, bei dem die Abfrage ausgeführt wird. Wenn dieses Attribut NULL ist, wird die Abfrage nicht bei einem Timer ausgeführt.

Syntax

PROCEDURE OG_Set_Exectimer
  (query      OG_Query,
   exectimer  VARCHAR2);

FUNCTION OG_Get_Exectimer
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
exectimer	Name des Timers, bei dem die Abfrage ausgeführt wird. Wenn dieses Attribut NULL ist, wird die Abfrage nicht bei einem Timer ausgeführt.


Beispiele für das Attribut Ausführen bei Timer

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the name of
**the timer on which the query executes and
**assigns a new timer to the query.
*/

PROCEDURE ExecTimer IS
  exectimer varchar2(20);
  qry og_query;
BEGIN
  qry := og_get_query('query0');
  exectimer := og_get_exectimer(qry);
  og_set_exectimer(qry, 'timer1');
END;


Attribut Maximale Anzahl Zeilen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt die maximale Anzahl von Datenzeilen an, die in der Datengruppe der Abfrage behalten werden. Wenn dieses Attribut NULL ist, werden alle Zeilen behalten.

Syntax

PROCEDURE OG_Set_Maxrows
  (query    OG_Query,
   maxrows  NUMBER);

FUNCTION OG_Get_Maxrows
  (query  OG_Query)
RETURN NUMBER;

Parameter

query	Beschriebene Abfrage.
maxrows	Gibt die maximale Anzahl von Datenzeilen an, die in der Datengruppe der Abfrage behalten werden. Wenn dieses Attribut NULL ist, werden alle Zeilen behalten.


Beispiele für das Attribut Maximale Anzahl Zeilen
Beispiele für das Attribut Maximale Anzahl von Zeilen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the maximum
**number of rows of data that are retained
**in the query's data set, and adds two rows to
**the original number.
*/

PROCEDURE QueryMaxRow IS
  qry og_query;
  num number;
BEGIN
  qry := og_get_query('query0');
  num := og_get_maxrows(qry);
  og_set_maxrows(qry, num+2);
END;


Attribut Marke Maximale Anzahl Zeilen

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob für die Anzahl von Zeilen in der Datengruppe ein Grenzwert festgelegt ist. Dieses Attribut wird nur benutzt, wenn der Cache-Typ OG_APPEND_CACHETYPE ist.

Syntax

PROCEDURE OG_Set_Maxflag
  (query    OG_Query,
   maxflag  BOOLEAN);

FUNCTION OG_Get_Maxflag
  (query  OG_Query)
RETURN BOOLEAN;

Parameter

query	Beschriebene Abfrage.
maxflag	Legt die Höchstzahl von Datenzeilen fest, die in der Datengruppe der Abfrage enthalten sein können.


Beispiele für das Attribut Marke Maximale Anzahl Zeilen

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the maximum
**number of rows of data that are retained
**in the query's data set, and adds two rows to
**the original number.  If the incremented number
**is greater than 1024, then it disables the
**maximum rows flag, thus allowing the query to get
**all the rows of data.
*/

PROCEDURE MaxFlagToggle IS
  qry og_query;
  num number;
BEGIN
  qry := og_get_query('query0');
  num := og_get_maxrows(qry);

  num := num+2;
  og_set_maxrows(qry, num);

  IF ((num > 1024) AND (og_get_maxflag(qry)=TRUE)) THEN

    og_set_maxflag(qry,FALSE);

  END IF;
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name der Abfrage.

Syntax

PROCEDURE OG_Set_Name
  (query  OG_Query,
   name   VARCHAR2);

FUNCTION OG_Get_Name
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
Name	Name der Abfrage.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure swaps
** the name of two queries.
*/

PROCEDURE QueryName IS
  qry0 og_query;
  qry1 og_query;
  name0 varchar2(30);
  name1 varchar2(30);
BEGIN
  qry0 := og_get_query('query0');
  qry1 := og_get_query('query1');
  name0 := og_get_name(qry0);
  name1 := og_get_name(qry1);
  og_set_name(qry1, 'tmp');
  og_set_name(qry0, name1);
  og_set_name(qry1, name0);
END;


Attribut Post-Query-Trigger-Prozedur

  Beispiele	  Verwandte Themen

Beschreibung  Die PL/SQL-Prozedur, die nach der Ausführung der Abfrage aufgerufen wird.

Syntax

PROCEDURE OG_Set_Postproc
  (query     OG_Query,
   postproc  VARCHAR2);

FUNCTION OG_Get_Postproc
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
postproc	Die PL/SQL-Prozedur, die nach Ausführung der Abfrage aufgerufen wird.


Beispiele für das Attribut Post-Query-Trigger-Prozedur

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure swaps the two PL/SQL
**procedures which are invoked after the query is
**executed.
*/

PROCEDURE PostTrigger (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  proc varchar2(20);
  qry og_query;
BEGIN
  qry := og_get_query('query0');
  proc := og_get_postproc(qry);
  if  proc = 'POST1' then
      og_set_postproc(qry, 'POST2');
  elsif proc = 'POST2' then
      og_set_postproc(qry, 'POST1');
  end if;
  og_execute_query(qry);
END;


Attribut Abfragequelle

  Beispiele	  Verwandte Themen

Beschreibung  Quelle der Abfragedaten. Wenn die Daten aus einer Datenbank stammen, muß dieses Attribut den Text der SQL SELECT-Anweisung der Abfrage enthalten. Wenn die Daten im Dateisystem gespeichert sind, muß dieses Attribut Pfad und Name der Datendatei enthalten.

Syntax

PROCEDURE OG_Set_Querysource
  (query        OG_Query,
   querysource  VARCHAR2);

FUNCTION OG_Get_Querysource
  (query  OG_Query)
RETURN VARCHAR2;

Parameter

query	Beschriebene Abfrage.
querysource	Quelle der Abfragedaten.


Beispiele für das Attribut Abfragequelle

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure swaps the source
**of two queries.
*/

PROCEDURE QuerySource IS
  qry0 og_query;
  qry1 og_query;
  source0 varchar2(50);
  source1 varchar2(50);
BEGIN
  qry0 := og_get_query('query0');
  qry1 := og_get_query('query1');
  source0:= og_get_querysource(qry0);
  source1:= og_get_querysource(qry1);
  og_set_querysource(qry0, source1);
  og_set_querysource(qry1, source0);
END;


Attribut Abfragetyp

  Beispiele	  Verwandte Themen

Beschreibung  Typ der Abfrage. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Custom_Qtype   Bedeutet, daß die Abfrage eine Benutzerdefinierte Abfrage ist.

OG_Exsql_Qtype   Bedeutet, daß die Abfrage die Daten aus einer Textdatei abruft, die eine SQL SELECT-Anweisung enthält.

OG_Prn_Qtype   Bedeutet, daß die Abfrage auf einer PRN-Datei basiert.

OG_Sql_Qtype   Bedeutet, daß die Abfrage eine SQL SELECT-Anweisung ist.

OG_Sylk_Qtype   Bedeutet, daß die Abfrage auf einer SYLK-Datei basiert.

OG_Wks_Qtype   Bedeutet, daß die Abfrage auf einer WKS-Datei basiert.

Syntax

PROCEDURE OG_Set_Querytype
  (query      OG_Query,
   querytype  NUMBER);

FUNCTION OG_Get_Querytype
  (query  OG_Query)
RETURN NUMBER;

Parameter

query	Beschriebene Abfrage.
querytype	Abfragetyp.


Beispiele für das Attribut Abfragetyp

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure rotates the
**query type of a query.
*/

PROCEDURE QryType (buttonobj IN og_object,

                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  qry og_query;
  num number;
BEGIN
  qry := og_get_query('query0');
  num := og_get_querytype(qry);

  if num = og_custom_qtype then
     og_set_querytype(qry, og_exsql_qtype);
  elsif num = og_exsql_qtype then
     og_set_querytype(qry, og_prn_qtype);
  elsif num = og_prn_qtype then
     og_set_querytype(qry, og_sql_qtype);
  elsif num = og_sql_qtype then
     og_set_querytype(qry, og_sylk_qtype);
   elsif num = og_sylk_qtype then
     og_set_querytype(qry, og_wks_qtype);
 elsif num = og_wks_qtype then
     og_set_querytype(qry, og_custom_qtype);
  end if;
END;


Rechteckattribute

Attribut Basisrechteck


Attribut Basisrechteck

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Rect_Baserect
  (rect         OG_Object,
   baserect     OG_Rectangle,
   damage       BOOLEAN       :=  TRUE,
   update_bbox  BOOLEAN       :=  TRUE);

FUNCTION OG_Get_Rect_Baserect
  (rect  OG_Object)
RETURN OG_Rectangle;

Parameter

rect	Beschriebenes Rechteckobjekt.
baserect	x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Basisrechteck

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines the size
**of the rectangle base and doubles it.
*/

PROCEDURE baseRect IS
  rect og_rectangle;
  obj og_object;
BEGIN
  obj := og_get_object('rect');
  rect := og_get_rect_baserect(obj);
  rect.x := rect.x * 2;
  rect.y := rect.y * 2;
  rect.height := rect.height * 2;
  rect.width := rect.width * 2;
  og_set_rect_baserect(obj, rect);
END;);
  source0:= og_get_querysource(qry0);
  source1:= og_get_q?_


Referenzlinienattribute

Attribut Achse

Attribut Beschriftung

Attribut Datumswert

Attribut Zahlenwert


Attribut Achse

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, mit welcher Achse der Referenzwert verglichen wird, um dessen Position zu bestimmen. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_X_Axis

OG_Y1_Axis

OG_Y2_Axis

Syntax

PROCEDURE OG_Set_Axis
  (refline  OG_Refline,
   axis     NUMBER);

FUNCTION OG_Get_Axis
  (refline  OG_Refline)
RETURN NUMBER;

Parameter

refline	Beschriebene Referenzlinie.
axis	Gibt an, mit welcher Achse der Referenzwert verglichen wird, um dessen Position zu bestimmen.


Beispiele für das Attribut Achse

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure maps
**the reference line against the
**Y1-axis if the line is currently
**mapped against Y2-axis.
*/

PROCEDURE Axis IS
  chart og_object;
  axis number;
  refline og_refline;
  template og_template;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  refline := og_get_refline(template, 0);
  axis := og_get_axis(refline);
  if axis = og_y2_axis then
    og_set_axis(refline, og_y1_axis);
  end if;
  og_update_chart(chart);
END;


Attribut Datumswert

  Beispiele	  Verwandte Themen

Beschreibung Datumswert, bei dem die Referenzlinie angezeigt wird.

Syntax

PROCEDURE OG_Set_Datevalue
  (refline    OG_Refline,
   datevalue  DATE);

FUNCTION OG_Get_Datevalue
  (refline  OG_Refline)
RETURN DATE;

Parameter

refline	Beschriebene Referenzlinie.
datevalue	Datumswert, bei dem die Referenzlinie angezeigt wird.


Beispiele für das Attribut Datumswert

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure increases
**reference line value by 30 days.
*/

PROCEDURE DateVal IS
  chart og_object;
  dateval date;
  refline og_refline;
  template og_template;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  refline := og_get_refline(template, 0);
  dateval := og_get_datevalue(refline);
  og_set_datevalue(refline, dateval+30);
  og_update_chart(chart);
END;


Attribut Beschriftung

  Beispiele	  Verwandte Themen

Beschreibung  Die Textbeschriftung, die die Referenzlinie in der Legende kennzeichnet.

Syntax

PROCEDURE OG_Set_Label
  (refline  OG_Refline,
   label    VARCHAR2);

FUNCTION OG_Get_Label
  (refline  OG_Refline)
RETURN VARCHAR2;

Parameter

refline	Beschriebene Referenzlinie.
label	Textbeschriftung, die die Referenzlinie in der Legende kennzeichnet.


Beispiele für das Attribut Beschriftung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure changes
**the reference line name to 'New Label'
**if this is not the current name of the
**label.
*/

PROCEDURE label IS
  chart og_object;
  label varchar2(20);
  refline og_refline;
  template og_template;
BEGIN
chart := og_get_object('chart');
  template := og_get_template(chart);
  refline := og_get_refline(template, 0);
  label := og_get_label(refline);
  if label != 'New Label' then
    og_set_label(refline, 'New label');
  end if;
  og_update_chart(chart);
END;


Attribut Zahlenwert

  Beispiele	  Verwandte Themen

Beschreibung Zahlenwert, bei dem die Referenzlinie angezeigt wird.

Syntax

PROCEDURE OG_Set_Numvalue
  (refline   OG_Refline,
   numvalue  NUMBER);

FUNCTION OG_Get_Numvalue
  (refline  OG_Refline)
RETURN NUMBER;

Parameter

refline	Beschriebene Referenzlinie.
numvalue	Zahlenwert, bei dem die Referenzlinie angezeigt wird.


Beispiele für das Attribut Zahlenwert

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure increases reference
**line value by 500.
*/

PROCEDURE NumVal IS
  chart og_object;
  num number;
  refline og_refline;
  template og_template;
BEGIN
  chart := og_get_object('chart');
  template := og_get_template(chart);
  refline := og_get_refline(template, 0);
  num := og_get_numvalue(refline);
  og_set_numvalue(refline, num+500);
  og_update_chart(chart);
END;


Abgerundete Rechteckattribute

Attribut Basisrechteck

Attribut Winkelradius


Attribut Basisrechteck

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Rrect_Baserect
  (rrect        OG_Object,
   baserect     OG_Rectangle,
   damage       BOOLEAN       :=  TRUE,
   update_bbox  BOOLEAN       :=  TRUE);

FUNCTION OG_Get_Rrect_Baserect
  (rrect  OG_Object)
RETURN OG_Rectangle;

Parameter

rrect	Beschriebenes abgerundetes Rechteck.
baserect	x- und y-Koordinaten der oberen linken Ecke sowie Höhe und Breite des Rechtecks, das als Basis für das Rechteckobjekt benutzt wird (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Basisrechteck

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure reduces
**the size of the base rectangle or the
**rounded rectangle.
*/

PROCEDURE baserect (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  brect og_rectangle;
  rrect og_object;
BEGIN
  rrect := og_get_object('rrect');
  brect := og_get_rrect_baserect(rrect);
  brect.x := brect.x/2;
  brect.y := brect.y/2;
  brect.height := brect.height/2;
  brect.width := brect.width/2;
  og_set_rrect_baserect(rrect, brect);
END;


Attribut Winkelradius

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Radius (in Layouteinheiten) der Ellipse, die sich ergeben würde, wenn die Bogen, die die abgerundeten Kanten bilden, auf volle 360 Grad erweitert würden.

Syntax

PROCEDURE OG_Set_Corner
  (rrect        OG_Object,
   corner       OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Corner
  (rrect  OG_Object)
RETURN OG_Point;

Parameter

rrect	Beschriebenes abgerundetes Rechteck.
corner	x- und y-Radius (in Layouteinheiten) der Ellipse, die sich ergeben würde, wenn die Bogen, die die abgerundeten Kanten bilden, auf volle 360 Grad erweitert würden.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Winkelradius

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure doubles
**the x and y radii of the ellipse used to
**create the corners of a rounded rectangle
*/.

PROCEDURE corner (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  pt og_point;
  rrect og_object;
BEGIN
  rrect := og_get_object('rrect');
  pt := og_get_corner(rrect);
  pt.x := pt.x*2;
  pt.y := pt.y*2;
  og_set_corner(rrect, pt);
END;


Klangattribute

Attribut Name


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name des Klangs.

Syntax

PROCEDURE OG_Set_Name
  (sound  OG_Sound,
   name   VARCHAR2);

FUNCTION OG_Get_Name
  (sound  OG_Sound)
RETURN VARCHAR2;

Parameter

sound	Beschriebenes Klangobjekt.
name	Name des Klangs.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the
**name of sound from the sound handler
**and assigns a new name to it.
*/

PROCEDURE SoundName (sound in og_sound) IS

name varchar2(10);

BEGIN

  name := og_get_name(sound);

  og_set_name(sound, name||'2');

END;


Einfache Textattribute

Attribut Farbe

Attribut Schriftart

Attribut Textfolge


Attribut Farbe

  Beispiele	  Verwandte Themen

Beschreibung Die Farbe, in der der Text der Zeichenfolge angezeigt werden soll. Beachten Sie, daß es sich hier um die Farbe für den Text selbst handelt. Um die Rand- oder Füllfarbe für das Textobjekt festzulegen, ändern Sie die Grafikattribute des Textobjekts.

Syntax

FUNCTION OG_Get_Color
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN VARCHAR2;

Parameter

text	Beschriebenes Textobjekt.
Cmptext_index	Indexnummer des beschriebenen zusammengesetzten Textelements.
Smptext_index	Indexnummer des beschriebenen einfachen Textelements.


Beispiele für das Attribut Farbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure reads the color
**of  the current text object.  If the
**current color is not red, it changes
**it to red.
*/

PROCEDURE color (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
color varchar2(20);
BEGIN
   color := og_get_color(hitobj, 0, 0);
   if color != 'red' then
     og_set_gcolor(hitobj, 'red');
   end if;
END;


Attribut Schriftart

  Beispiele 	  Verwandte Themen

Beschreibung  Schriftart, in der der Text der Zeichenfolge angezeigt wird.

Syntax

FUNCTION OG_Get_Font_Typeface
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN VARCHAR2;

FUNCTION OG_Get_Font_Ptsize
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN NUMBER;

FUNCTION OG_Get_Font_Style
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN NUMBER;

FUNCTION OG_Get_Font_Weight
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN NUMBER;

FUNCTION OG_Get_Font_Width
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN NUMBER;

FUNCTION OG_Get_Font_Kerning
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN BOOLEAN;

FUNCTION OG_Get_Font_Charset
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
cmptext_index	Indexnummer des beschriebenen zusammengesetzten Textelements.
smptext_index	Indexnummer des beschriebenen einfachen Textelements.


Beispiele für das Attribut Schriftart

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 */The following procedure reads
**the current typeface from the
**selected text object.  If the
**current style is not the same
**as the typeface from the argument,
**it assigns a new typeface to the
**text object.
*/

PROCEDURE fonttypeface (text og_object, typeface varchar2)IS

style varchar2(10);

BEGIN

  style := og_get_font_typeface(text, 0,0);

  if style != typeface then

    og_set_font_typeface(text, typeface);

  end if;

END;


Attribut Textfolge

  Beispiele	  Verwandte Themen

Beschreibung  Die Zeichenfolge, die den Text für das einfache Textelement enthält.

Syntax

PROCEDURE OG_Set_Str
  (text         OG_Object,
   str          VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Str
  (text           OG_Object,
   cmptext_index  NUMBER,
   smptext_index  NUMBER)
RETURN VARCHAR2;

Parameter

text	Beschriebenes Textobjekt.
str	Zeichenfolge, die den Text für das einfache Textelement enthält.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.
cmptext_index	Indexnummer des beschriebenen zusammengesetzten Textelements.
smptext_index	Indexnummer des beschriebenen einfachen Textelements.


Beispiele für das Attribut Textfolge

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads a text string from
**a display and appends numbers to it.
*/

PROCEDURE TextString IS

  text og_object;

BEGIN

  text := og_get_object('text object');

  og_set_str(text,og_get_str(text,0,0)||'123');

END;


Symbolattribute

Attribut Index

Attribut Mitte

Attribut Symbolgröße


Attribut Mitte

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten der Symbolmitte (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Center
  (symbol       OG_Object,
   center       OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Center
  (symbol  OG_Object)
RETURN OG_Point;

Parameter

symbol	Beschriebenes Symbolobjekt.
center	x- und y-Koordinaten der Symbolmitte (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Mitte

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure moves
**the symbol from its original
**coordinate (x,y) to (x/2, y/2).
*/

PROCEDURE Center IS
  center og_point;
  symbol og_object;
BEGIN
  symbol := og_get_object('symbol');
  center := og_get_center(symbol);
  center.x := center.x/2;
  center.y := center.y/2;
  og_set_center(symbol, center);

END;


Attribut Index

  Beispiele	  Verwandte Themen

Beschreibung  Der Index (oder die Nummer) der Symbolposition, so wie sie in der Symbolpalette in Graphics Builder angezeigt wird.

Syntax

PROCEDURE OG_Set_Indx
  (symbol       OG_Object,
   indx         NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Indx
  (symbol  OG_Object)
RETURN NUMBER;

Parameter

symbol	Beschriebenes Symbolobjekt.
indx	Index (oder Nummer) der Symbolposition, so wie sie in der Symbolpalette in Graphics Builder angezeigt wird.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Index

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure gets the
**index of an object's symbol position
**in the symbol palette, and replaces
**the current symbol with the symbol
**which has an index value equal to the
**current index value + 1.
*/

PROCEDURE get_index IS
  sym_index number;
  symbol og_object;
BEGIN
  symbol := og_get_object('symbol');
  sym_index := og_get_indx(symbol);
  og_set_indx(symbol, sym_index+1);
END;


Attribut Symbolgröße

  Beispiele	  Verwandte Themen

Beschreibung  Symbolgröße. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Large_Symsize

OG_Medium_Symsize

OG_Small_Symsize

Syntax

PROCEDURE OG_Set_Symsize
  (symbol       OG_Object,
   symsize      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Symsize
  (symbol  OG_Object)
RETURN NUMBER;

Parameter

symbol	Beschriebenes Symbolobjekt.
symsize	Symbolgröße.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Symbolgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads a symbol's
**size.  If the symbol's size is not LARGE,
**the procedure changes it to LARGE;
**if a symbol's size is LARGE, the procedure
**changes it to small.
*/

PROCEDURE get_size IS
  sym_size number;
  symbol og_object;
BEGIN
  symbol := og_get_object('symbol');
  sym_size := og_get_symsize(symbol);
  if sym_size != og_large_symsize then
     og_set_symsize(symbol, og_large_symsize);
  else
     og_set_symsize(symbol, og_small_symsize);
  end if;
END;


Timer-Attribute

Attribut Aktiv

Attribut Intervall

Attribut Name

Attribut Prozedur


Attribut Aktiv

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Timer aktiv ist.

Syntax

PROCEDURE OG_Set_Active
  (timer   OG_Timer,
   active  BOOLEAN);

FUNCTION OG_Get_Active
  (timer  OG_Timer)
RETURN BOOLEAN;

Parameter

timer	Beschriebenes Timer-Objekt.
active	Gibt an, ob der Timer aktiv ist.


Beispiele für das Attribut Aktiv

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following sets the timer to inactive if it
**is currently in active mode.
*/

PROCEDURE TimerActive IS

  val boolean;

  timer og_timer;

BEGIN

  timer := og_get_timer('timer2');

  val := og_get_active(timer);

  if val then

    og_set_active(timer, false);

  end if;

END;


Attribut Intervall

  Beispiele	  Verwandte Themen

Beschreibung  Anzahl von Sekunden, die zwischen jeder Ausführung der Timer-Prozedur vergehen.

Syntax

PROCEDURE OG_Set_Interval
  (timer     OG_Timer,
   interval  NUMBER);

FUNCTION OG_Get_Interval
  (timer  OG_Timer)
RETURN NUMBER;

Parameter

timer	Beschriebenes Timer-Objekt.
interval	Anzahl von Sekunden, die zwischen jeder Ausführung der Timer-Prozedur vergehen.


Beispiele für das Attribut Intervall

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure adds two
**seconds to the original timer
**interval.
*/

PROCEDURE TimerInterval IS

  interval number;

  timer og_timer;

BEGIN

  timer := og_get_timer('timer2');

  interval := og_get_interval(timer);

  og_set_interval(timer, interval+2);

END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Name des Timers.

Syntax

PROCEDURE OG_Set_Name
  (timer  OG_Timer,
   name   VARCHAR2);

FUNCTION OG_Get_Name
  (timer  OG_Timer)
RETURN VARCHAR2;

Parameter

timer	Beschriebenes Timer-Objekt.
name	Name des Timers.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure appends
**a '1' to the name of a timer.
*/

PROCEDURE TimerName IS

  name varchar2(10);

  timer og_timer;

BEGIN

  timer := og_get_timer('timer1');

  name := og_get_name(timer);

  og_set_name(timer, name||'1');

END;


Attribut Prozedur

  Beispiele	  Verwandte Themen

Beschreibung  Name der Prozedur, die ausgeführt wird, wenn der Timer ausgelöst wird.

Syntax

PROCEDURE OG_Set_Timerproc
  (timer      OG_Timer,
   timerproc  VARCHAR2);

FUNCTION OG_Get_Timerproc
  (timer  OG_Timer)
RETURN VARCHAR2;

Parameter

timer	Beschriebenes Timer-Objekt.
Timerproc	Name der Prozedur, die ausgeführt wird, wenn der Timer ausgelöst wird.


Beispiele für das Attribut Prozedur

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure changes the
**timer procedure to "NewProc" if it is
** current timer procedure.
*/

PROCEDURE TimerProc IS

  name varchar2(20);

  timer og_timer;

BEGIN

  timer := og_get_timer('timer2');

  name := og_get_timerproc(timer);

  if name != 'NewProc' then

    og_set_timerproc(timer, 'NewProc');

  end if;

END;


Textattribute

Attribut Feste Umrandung

Attribut Höhe Umrandung

Attribut Horizontale Ausrichtung

Attribut Kerning

Attribut Nächste

Attribut Punktgröße

Attribut Schriftstärke

Attribut Schrift

Attribut Skalierbare Umrandung

Attribut Unsichtbar

Attribut Ursprung

Attribut Vertikale Ausrichtung

Attribut Zeichensatz

Attribut Benutzerdefinierter Zeilenabstand

Attribut Breite Umrandung

Attribut Breite

Attribut Farbe

Attribut Horizontal

Attribut Skalierbare Schriftart

Attribut Stil

Attribut Synthesize

Attribut Umbruch

Attribut Vertikal

Attribut Zeilenabstand

Attribut Zusammengesetzter Textzähler


Attribut Höhe Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Höhe der Umrandung (in Layouteinheiten). Wenn sich die Umrandung ändert, wird dieses Attribut automatisch entsprechend der neuen Höhe aktualisiert. Dieses Attribut wird nur zur Einstellung der Höhe benutzt, wenn das Attribut Feste Umrandung TRUE ist.

Syntax

(Siehe OG_Set_Text_Size.)

FUNCTION OG_Get_Text_Height
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.


Beispiele für Attribut Höhe Umrandung
Beispiele für das Attribut Höhe Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure doubles the size of the
**text object's bounding box.
*/

PROCEDURE BBoxSize IS

  width number;
  height number;
  text og_object;
BEGIN
   text := og_get_object('text object');
   width := og_get_text_width(text);
   height := og_get_text_height(text);
   og_set_text_size(text, width*2, height*2);
END;


Attribut Breite Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Breite der Umrandung (in Layouteinheiten). Wenn sich die Umrandung ändert, wird dieses Attribut automatisch entsprechend der neuen Breite aktualisiert. Dieses Attribut wird nur zur Einstellung der Breite benutzt, wenn das Attribut Feste Umrandung TRUE ist.

Syntax

PROCEDURE OG_Set_Text_Size
  (text         OG_Object,
   width        NUMBER,
   height       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Text_Width
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
width	Breite der Umrandung (in Layouteinheiten).
height	Höhe der Umrandung (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Breite Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure doubles the size of the
**text object's bounding box.
*/

PROCEDURE BBoxSize IS

  width number;
  height number;
  text og_object;
BEGIN
   text := og_get_object('text object');
   width := og_get_text_width(text);
   height := og_get_text_height(text);
   og_set_text_size(text, width*2, height*2);
END;


Attribut Zeichensatz

  Beispiele	  Verwandte Themen

Beschreibung  Zeichensatz für die Schriftart. Mit den Werten für dieses Feld werden Zeichensätze angegeben, wie z.B. US ASCII, Kanji und Arabisch. Nicht alle Zeichensätze sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Feldes kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Us7ascii_Charset

OG_We8dec_Charset

OG_We8hp_Charset

OG_Us8pc437_Charset

OG_We8ebcdic37_Charset

OG_We8ebcdic500_Charset

OG_We8pc850_Charset

OG_D7dec_Charset

OG_F7dec_Charset

OG_S7dec_Charset

OG_E7dec_Charset

OG_Sf7ascii_Charset

OG_Ndk7dec_Charset

OG_I7dec_Charset

OG_Nl7dec_Charset

OG_Ch7dec_Charset

OG_Sf7dec_Charset

OG_We8iso8859p1_Charset

OG_Ee8iso8859p2_Charset

OG_Se8iso8859p3_Charset

OG_Nee8iso8859p4_Charset

OG_Cl8iso8859p5_Charset

OG_Ar8iso8859p6_Charset

OG_El8iso8859p7_Charset

OG_Iw8iso8859p8_Charset

OG_We8iso8859p9_Charset

OG_Ar8asmo708plus_Charset

OG_Ar7asmo449plus_Charset

OG_We8macroman8_Charset

OG_Jvms_Charset

OG_Jeuc_Charset

OG_Jdec_Charset

OG_Sjis_Charset

OG_Jdbcs_Charset

OG_Jhp_Charset

OG_Ksc5601_Charset

OG_Kibm5540_Charset

OG_Kdbcs_Charset

OG_Cgb231380_Charset

OG_Cdbcs_Charset

OG_Big5_Charset

OG_Cns1164386_Charset

Syntax

PROCEDURE OG_Set_Font_Charset
  (text         OG_Object,
   charset      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
charset	Zeichensatz der Schriftart.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Zeichensatz

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure checks
**if the selected text object's font set
**is in US ASCII Character Set.  If not,
**it assigns ASCII Character Set to the object.
*/

PROCEDURE CharSet (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
setNo number;
BEGIN

     SetNo := OG_get_Font_charset(hitobj,0,0);
     if SetNo != og_US7ASCII_Charset then
        og_set_font_charset(hitobj, og_US7ASCII_charset);
     end if;
END;


Attribut Farbe

  Beispiele	  Verwandte Themen

Beschreibung  Farbe des Textobjekts.

Syntax

PROCEDURE OG_Set_Gcolor
  (text         OG_Object,
   gcolor       VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
gcolor	Farbe des Textobjekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Farbe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads
** the color of the current text object.
**If the current color is not red,
**it changes it to red.
*/

PROCEDURE color (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
color varchar2(20);
BEGIN
   color := og_get_color(hitobj, 0, 0);
   if color != 'red' then
     og_set_gcolor(hitobj, 'red');
   end if;
END;


Zusammengesetzter Textzähler
Attribut Zusammengesetzter Textzähler

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Anzahl von zusammengesetzten Textelementen, aus denen das Textobjekt besteht.

Syntax

FUNCTION OG_Get_Ctcount
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.


Beispiele für das Attribut Zusammengesetzter Textzähler

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure counts the number of
**compound text elements in a text object.
/*

PROCEDURE CompoundTextCnt IS
  num number;
  text og_object;

BEGIN
  text := og_get_object;
  num := og_get_ctcount(text);
END;


Attribut Benutzerdefinierter Zeilenabstand

  Beispiele	  Verwandte Themen

Beschreibung  Benutzerdefinierter Zeilenabstand für das Textobjekt (in Layouteinheiten). Dieses Attribut wird nur zur Angabe des Zeilenabstands benutzt, wenn das Attribut Zeilenabstand auf den benutzerdefinierten Zeilenabstand eingestellt ist.

Syntax

PROCEDURE OG_Set_Custom
  (text         OG_Object,
   custom       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Custom
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
custom	Benutzerdefinierter Abstand für das Textobjekt (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Benutzerdefinierter Zeilenabstand

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure resets the
**custom spacing to twice its original setting.
*/

PROCEDURE CustomSpacing (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
num number;
BEGIN
   num := og_get_custom(hitobj);
   og_set_str(hitobj, 'abc'||num);
   og_set_custom(hitobj, num*2);
END;


Attribut Feste Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Umrandung des Textobjektes eine feste Größe behalten soll. Wenn dieses Attribut TRUE ist, muß die Größe der Umrandung mit den Attributen Breite und Höhe angegeben werden.

Syntax

PROCEDURE OG_Set_Fixed
  (text         OG_Object,
   fixed        BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Fixed
  (text  OG_Object)
RETURN BOOLEAN;

Parameter

text	Beschriebenes Textobjekt.
fixed	Gibt an, ob die Umrandung des Textobjekts eine feste Größe behalten soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Feste Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the text object's bounding box
**remains a fixed size.
*/

PROCEDURE FixBBox IS
  val boolean;
  text og_object;
BEGIN
   text := og_get_object('text object');
   val := og_get_fixed(text);
   if val  then
      og_set_fixed(text, false);
   else
      og_set_fixed(text, true);
   end if;
END;


Attribut Horizontale Ausrichtung

  Beispiele	  Verwandte Themen

Beschreibung  Horizontale Ausrichtung des Textobjekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Left_Halign

OG_Center_Halign

OG_Right_Halign

Syntax

PROCEDURE OG_Set_Halign
  (text         OG_Object,
   halign       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Halign
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
halign	Horizontale Ausrichtung des Textobjekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Horizontale Ausrichtung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

Horizontale Ausrichtung

 /*The following procedure reads the horizontal
**alignment and readjusts it.
*/

PROCEDURE Halign IS
  num number:=og_right_halign;
  text og_object;
BEGIN
   text := og_get_object('text object');
   num := og_get_halign(text);
   if num = og_left_halign then
     og_set_halign(text, og_center_halign);
   elsif num = og_center_halign then
     og_set_halign(text, og_right_halign);
   elsif num = og_right_halign then
     og_set_halign(text, og_left_halign);
   end if;
END;


Attribut Horizontal

  Beispiele	  Verwandte Themen

Beschreibung  Horizontalposition des Textobjekts bezogen auf den Ursprung. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Left_Horigin   Bedeutet, daß der Ursprung am linken Rand der Umrandung liegt.

OG_Center_Horigin   Bedeutet, daß der Ursprung zwischen dem linken und rechten Rand der Umrandung liegt.

OG_Right_Horigin   Bedeutet, daß der Ursprung am rechten Rand der Umrandung liegt.

Syntax

PROCEDURE OG_Set_Horigin
  (text         OG_Object,
   horigin      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Horigin
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
horigin	Horizontalposition des Textobjekts bezogen auf den Ursprung.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Horizontal

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

/*The following procedure reads the horizontal
**origin and readjusts it.
*/

PROCEDURE Horigin IS

  num number;

  text og_object;

BEGIN

   text := og_get_object('text object');
   num := og_get_horigin(text);
   if num = og_left_horigin then
     og_set_horigin(text, og_center_horigin);
   elsif num = og_center_horigin then
     og_set_horigin(text, og_rightr_horigin);
   elsif num = og_right_horigin then
     og_set_horigin(text, og_left_horigin);
   end if;
END;


Attribut Unsichtbar

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Text in dem Textobjekt unsichtbar sein soll. Dieses Attribut wird besonders bei Textfeldern benutzt, in die Benutzer ein Kennwort eingeben, wenn dieses Kennwort nicht sichtbar sein soll.

Syntax

PROCEDURE OG_Set_Invisible
  (text       OG_Object,
   invisible  BOOLEAN,
   damage         BOOLEAN    :=  TRUE,
   update_bbox    BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Invisible
  (text  OG_Object)
RETURN BOOLEAN;

Parameter

text	Beschriebenes Textobjekt.
invisible	Gibt an, ob der Text in dem Textobjekt unsichtbar sein soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beisiele für das Attribut Unsichtbar
Beispiele für das Attribut Unsichtbar

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure determines if
** text in a text object is invisible. If it
** is invisible it makes it visible; if it is
** visible it makes it invisible.
*/

PROCEDURE Invisible IS
  val boolean;
  text og_object;
BEGIN
   text := og_get_object('text object');
   val := og_get_invisible(text);
   if val  then
      og_set_invisible(text, false);
   else
      og_set_invisible(text, true);
   end if;
END;


Attribut Kerning

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Schriftart einem Kerning unterzogen werden soll. Mit Kerning wird die Anpassung des Platzes zwischen nebeneinanderstehenden Buchstaben bezeichnet, um den Text leserlicher zu gestalten.

Syntax

PROCEDURE OG_Set_Font_Kerning
  (text         OG_Object,
   kerning      BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
kerning	Gibt an, ob die Schriftart einem Kerning unterzogen werden soll.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Kerning

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure turns font
**kerning on and off for a selected text object.

PROCEDURE kerning (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  val boolean;
BEGIN
  val := og_get_font_kerning(hitobj,0,0);
  if val then
     og_set_font_kerning(hitobj, false);
  else
     og_set_font_kerning(hitobj, true);
  end if;
END;


Attribut Nächste

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Graphics Builder die nächste übereinstimmende Schriftart verwenden soll, wenn die genaue angegebene Schriftart nicht gefunden werden kann. Beim Suchen nach der nächsten Schriftart wird in folgender Reihenfolge vorgegangen: Schrift, Punktgröße, Stil, Schriftstärke und Breite (d.h. Graphics Builder versucht zuerst, die angegebene Schrift zu finden, danach die Größe usw.).

Syntax

PROCEDURE OG_Set_Font_Nearest
  (text         OG_Object,
   nearest      BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
nearest	Gibt an, ob Graphics Builder die nächste übereinstimmende Schriftart verwenden soll, wenn die genaue angegebene Schriftart nicht gefunden werden kann.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Nächste

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure sets nearest
**properties to true.
*/

PROCEDURE nearest (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS

BEGIN
     OG_Set_Font_Nearest(hitobj, true);
END;


Attribut Ursprung

  Verwandte Themen

Beschreibung  x- und y-Koordinaten der oberen linken Ecke des Textobjekts (in Layouteinheiten).

Syntax

PROCEDURE OG_Set_Origin
  (text         OG_Object,
   origin       OG_Point,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Origin
  (text  OG_Object)
RETURN OG_Point;

Parameter

text	Beschriebenes Textobjekt.
Origin	x- und y-Koordinaten der oberen linken Ecke des Textobjekts (in Layouteinheiten).
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Attribut Punktgröße

  Beispiele	  Verwandte Themen

Beschreibung  Punktgröße der Schriftart. Die Werte für dieses Feld sind systemspezifisch. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation.

Syntax

PROCEDURE OG_Set_Font_Ptsize
  (text         OG_Object,
   ptsize       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
ptsize	Punktgröße der Schriftart.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Punktgröße

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the point size of the
**current object and enlarges the text object to double
** its original size.
*/

PROCEDURE ptsize (text og_object)IS
num number;
BEGIN
  num := og_get_font_ptsize(text,0,0);
  og_set_font_ptsize(text, num*2);
END;


Attribut Skalierbare Umrandung

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Umrandung des Textobjekts skaliert werden soll, wenn das Textobjekt skaliert wird.

Syntax

PROCEDURE OG_Set_Bbscale
  (text         OG_Object,
   bbscale      BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Bbscale
  (text  OG_Object)
RETURN BOOLEAN;

Parameter

text	Beschriebenes Textobjekt.
bbscale	Gibt an, ob die Umrandung des Textobjekts skaliert werden soll, wenn das Textobjekt skaliert wird.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Skalierbare Umrandung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the text
**object's bounding box is scaled when the
**text object is scaled.
*/

PROCEDURE Scalebox IS
  val boolean;
  text og_object;
BEGIN
   text := og_get_object('text object');
   val := og_get_bbscale(text);
   if val  then
      og_set_bbscale(text, false);
   else
      og_set_bbscale(text, true);
   end if;
END;


Attribut Skalierbare Schriftart

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob die Punktgröße der Schriftart skaliert werden soll, wenn das Textobjekt skaliert wird. Dieses Attribut kann einen der folgenden Werte haben:

Syntax

PROCEDURE OG_Set_Fontscale
  (text         OG_Object,
   fontscale    BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Fontscale
  (text  OG_Object)
RETURN BOOLEAN;

Parameter

text	Beschriebenes Textobjekt.
fontscale	Gibt an, ob die Punktgröße der Schriftart skaliert werden soll, wenn das Textobjekt skaliert wird.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Skalierbare Schriftart

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure checks if the point size is
** scaled when the text object is scaled.
*/

PROCEDURE Scalable IS
  val boolean;
  text og_object;
BEGIN
   text := og_get_object('text object');
   val := og_get_fontscale(text);
   if val  then
      og_set_fontscale(text, false);
   else
      og_set_fontscale(text, true);
   end if;
END;


Attribut Zeilenabstand

  Beispiele	  Verwandte Themen

Beschreibung  Zeilenabstand für das Textobjekt. Der Wert dieses Attribut kann einer der folgenden vordefinierten Konstanten entsprechen. Wenn ein benutzerdefinierter Zeilenabstand festgelegt wird, muß der genaue Zeilenabstand mit dem Wert des Attributs Benutzerdefinierter Zeilenabstand angegeben werden.

OG_Single_Space

OG_Onehalf_Space

OG_Double_Space

OG_Custom_Space   Bedeutet, daß der Text den benutzerdefinierten Zeilenabstand benutzt. Der tatsächlich benutzte Zeilenabstand wird mit dem Attribut Benutzerdefinierter Zeilenabstand definiert.

Syntax

PROCEDURE OG_Set_Spacing
  (text         OG_Object,
   spacing      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Spacing
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
spacing	Zeilenabstand für das Textobjekt.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Zeilenabstand

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following button procedure
**rotates the spacing setting of a
**text object.
*/

PROCEDURE Spacing (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
num number;
BEGIN
   num := og_get_spacing(hitobj);
   if num = og_single_space then
      og_set_spacing(hitobj, og_onehalf_space);
   elsif num = og_onehalf_space then
   og_set_spacing(hitobj, og_double_space);
   elsif num = og_double_space then
   og_set_spacing(hitobj, og_custom_space);
   elsif num = og_custom_space then
   og_set_spacing(hitobj, og_single_space);
   end if;
END;


Attribut Stil

  Beispiele	  Verwandte Themen

Beschreibung  Stil der Schriftart. Nicht alle Stile sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Feldes kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Blink_Fontstyle

OG_Inverted_Fontstyle

OG_Italic_Fontstyle

OG_Oblique_Fontstyle

OG_Outline_Fontstyle

OG_Overstrike_Fontstyle

OG_Plain_Fontstyle

OG_Shadow_Fontstyle

OG_Underline_Fontstyle

OG_Unknown_Fontstyle   Bedeutet, daß der Stil unbekannt ist. Sie können keinen Stil auf diesen Wert einstellen; wenn Sie jedoch eine Schriftart einlesen und Graphics Builder deren Stil nicht bestimmen kann, wird dieser Wert zurückgegeben.

Syntax

PROCEDURE OG_Set_Font_Style
  (text         OG_Object,
   style        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
style	Schriftstil.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Stil

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure
**rotates the text style
*/

PROCEDURE style (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
text og_object;
num number;
BEGIN
  text := og_get_object('text object');
  num := og_get_font_style(text,0,0);
  if num = og_blink_fontstyle then
    og_set_font_style(text, og_inverted_fontstyle);
  elsif num = og_inverted_fontstyle then
    og_set_font_style(text, og_italic_fontstyle);
  elsif num = og_italic_fontstyle then
    og_set_font_style(text, og_oblique_fontstyle);
  elsif num = og_oblique_fontstyle then
    og_set_font_style(text, og_outline_fontstyle);
  elsif num = og_outline_fontstyle then
    og_set_font_style(text, og_overstrike_fontstyle);
  elsif num = og_overstrike_fontstyle then
    og_set_font_style(text, og_plain_fontstyle);
  elsif num = og_plain_fontstyle then
    og_set_font_style(text, og_shadow_fontstyle);
  elsif num = og_shadow_fontstyle then
    og_set_font_style(text, og_underline_fontstyle);
  elsif num = og_underline_fontstyle then
    og_set_font_style(text, og_unknown_fontstyle);
  elsif num = og_unknown_fontstyle then
    og_set_font_style(text, og_blink_fontstyle);
  end if;
END;


Attribut Synthesize

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob Graphics Builder versuchen soll, die gewünschte Schriftart synthetisch herzustellen (wenn die angegebene Schriftart nicht gefunden werden kann), indem die nächste übereinstimmende Schriftart transformiert wird.

Syntax

PROCEDURE OG_Set_Font_Synthesize
  (text         OG_Object,
   synthesize   BOOLEAN,
   damage       BOOLEAN  :=  TRUE,
   update_bbox  BOOLEAN  :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
Synthesize	Gibt an, ob Graphics Builder versuchen soll, die gewünschte Schriftart synthetisch herzustellen (wenn die angegebene Schriftart nicht gefunden werden kann), indem die nächste übereinstimmende Schriftart transformiert wird.
Damage	Veränderungsmarke.
Update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Synthesize

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure sets synthesize
** properties to true.
*/

PROCEDURE synthesize (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS

BEGIN
     OG_Set_Font_Synthesize(hitobj, true);
END;


Attribut Schrift

  Beispiele	  Verwandte Themen

Beschreibung  Schriftname. Die Werte für dieses Feld sind systemspezifisch und können Schriftarten umfassen wie Times, Courier und Helvetica. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation.

Syntax

PROCEDURE OG_Set_Font_Typeface
  (text         OG_Object,
   typeface     VARCHAR2,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
Typeface	Schriftart (Schriftartname).
Damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Schrift

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following procedure reads
**the current typeface from the
**selected text object.  If the
**current style is not the same
**as the typeface from the argument,
**it assigns a new typeface to the
**text object.

PROCEDURE fonttypeface (text og_object, typeface varchar2)IS
style varchar2(10);
BEGIN
  style := og_get_font_typeface(text, 0,0);
  if style != typeface then
    og_set_font_typeface(text, typeface);
  end if;
END;


Attribut Vertikale Ausrichtung

  Beispiele	  Verwandte Themen

Beschreibung  Vertikale Ausrichtung des Textobjekts. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Top_Valign

OG_Middle_Valign

OG_Bottom_Valign

Syntax

PROCEDURE OG_Set_Valign
  (text         OG_Object,
   valign       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Valign
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
valign	Vertikale Ausrichtung des Textobjekts.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Vertikale Ausrichtung

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* The following procedure reads the vertical
** alignment and readjusts it.
*/

PROCEDURE VAligin IS
  num number;
  text og_object;
BEGIN
   text := og_get_object('text object');
   num := og_get_valign(text);
   if num = og_top_valign then
     og_set_valign(text, og_middle_valign);
   elsif num = og_middle_valign then
     og_set_valign(text, og_bottom_valign);
   elsif num = og_bottom_valign then
     og_set_valign(text, og_top_valign);
   end if;
END;


Attribut Vertikal

  Beispiele	  Verwandte Themen

Beschreibung  Vertikalposition des Textobjektes bezogen auf den Ursprung. Der Wert dieses Attributs kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Top_Vorigin   Bedeutet, daß der Ursprung am oberen Rand der Umrandung liegt.

OG_Middle_Vorigin   Bedeutet, daß der Ursprung zwischen dem oberen und unteren Rand der Umrandung liegt.

OG_Bottom_Vorigin   Bedeutet, daß der Ursprung am unteren Rand der Umrandung liegt.

Syntax

PROCEDURE OG_Set_Vorigin
  (text         OG_Object,
   vorigin      NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Vorigin
  (text  OG_Object)
RETURN NUMBER;

Parameter

text	Beschriebenes Textobjekt.
vorigin	Vertikalposition des Textobjekts bezogen auf den Ursprung.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Vertikal

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure reads the
**vertical origin and readjusts it.
*/

PROCEDURE Vorigin IS
  num number;
  text og_object;
BEGIN
   text := og_get_object('text object');
   num := og_get_vorigin(text);
   if num = og_top_vorigin then
     og_set_vorigin(text, og_middle_vorigin);
   elsif num = og_middle_vorigin then
     og_set_vorigin(text, og_bottom_vorigin);
   elsif num = og_bottom_vorigin then
     og_set_vorigin(text, og_top_vorigin);
   end if;
END;


Attribut Schriftstärke

  Beispiele	  Verwandte Themen

Beschreibung  Stärke der Schriftart. Nicht alle Schriftstärken sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Feldes kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Bold_Fontweight

OG_Demibold_Fontweight

OG_Demilight_Fontweight

OG_Extrabold_Fontweight

OG_Extralight_Fontweight

OG_Light_Fontweight

OG_Medium_Fontweight

OG_Ultrabold_Fontweight

OG_Ultralight_Fontweight

OG_Unknown_Fontweight   Bedeutet, daß die Schriftstärke unbekannt ist. Sie können für diesen Wert keine Schriftstärke einstellen; wenn Sie jedoch eine Schriftart einlesen und Graphics Builder die Schriftstärke nicht bestimmen kann, wird dieser Wert zurückgegeben.

Syntax

PROCEDURE OG_Set_Font_Weight
  (text         OG_Object,
   weight       NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
weight	Schriftstärke.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Schriftstärke

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure
**rotates the font weight for a
**selected text object.
*/

PROCEDURE weight (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  num number;
  text og_object;
BEGIN
  text := og_get_object('text object');
  num := og_get_font_weight(text,0,0);
  if num = og_bold_fontweight then
    og_set_font_weight(text, og_demibold_fontweight);
  elsif num = og_demibold_fontweight then
    og_set_font_weight(text, og_demilight_fontweight);
  elsif num = og_demilight_fontweight then
    og_set_font_weight(text, og_extrabold_fontweight);
  elsif num = og_extrabold_fontweight then
    og_set_font_weight(text, og_extralight_fontweight);
  elsif num = og_extralight_fontweight then
    og_set_font_weight(text, og_light_fontweight);
  elsif num = og_light_fontweight then
    og_set_font_weight(text, og_medium_fontweight);
  elsif num = og_medium_fontweight then
    og_set_font_weight(text, og_ultrabold_fontweight);
  elsif num = og_ultrabold_fontweight then
    og_set_font_weight(text, og_ultralight_fontweight);
  elsif num = og_ultralight_fontweight then
    og_set_font_weight(text, og_unknown_fontweight);
  elsif num = og_unknown_fontweight then
    og_set_font_weight(text, og_bold_fontweight);
  end if;
END;


Attribut Breite

  Beispiele	  Verwandte Themen

Beschreibung  Schriftbreite. Nicht alle Breiten sind bei allen Systemen verfügbar. Weitere Informationen erhalten Sie von Ihrem Systemadministrator oder in der Systemdokumentation. Der Wert dieses Feldes kann einer der folgenden vordefinierten Konstanten entsprechen:

OG_Dense_Fontwidth

OG_Expand_Fontwidth

OG_Extradense_Fontwidth

OG_Extraexpand_Fontwidth

OG_Normal_Fontwidth

OG_Semidense_Fontwidth

OG_Semiexpand_Fontwidth

OG_Ultradense_Fontwidth

OG_Ultraexpand_Fontwidth

OG_Unknown_Fontwidth   Bedeutet, daß die Breite unbekannt ist. Sie können für diesen Wert keine Breite einstellen; wenn Sie jedoch eine Schriftart einlesen und Graphics Builder deren Breite nicht bestimmen kann, wird dieser Wert zurückgegeben.

Syntax

PROCEDURE OG_Set_Font_Width
  (text         OG_Object,
   width        NUMBER,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

Parameter

text	Beschriebenes Textobjekt.
width	Schriftbreite.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Breite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following button procedure
**rotates the font width for a
**selected test object.
*/

PROCEDURE width (buttonobj IN og_object,
                         hitobj IN og_object,
                         win IN og_window,
                         eventinfo IN og_event) IS
  num number;
  text og_object;
BEGIN
  text := og_get_object('text object');
  num := og_get_font_width(text,0,0);
  if num = og_dense_fontwidth then
    og_set_font_width(text, og_expand_fontwidth);
  elsif num = og_expand_fontwidth then
    og_set_font_width(text, og_extradense_fontwidth);
  elsif num = og_extradense_fontwidth then
    og_set_font_width(text, og_extraexpand_fontwidth);
  elsif num = og_extraexpand_fontwidth then
    og_set_font_width(text, og_normal_fontwidth);
  elsif num = og_normal_fontwidth then
    og_set_font_width(text, og_semidense_fontwidth);
  elsif num = og_semidense_fontwidth then
    og_set_font_width(text, og_semiexpand_fontwidth);
  elsif num = og_semiexpand_fontwidth then
    og_set_font_width(text, og_ultradense_fontwidth);
  elsif num = og_ultradense_fontwidth then
    og_set_font_width(text, og_ultraexpand_fontwidth);
  elsif num = og_ultraexpand_fontwidth then
    og_set_font_width(text, og_unknown_fontwidth);
  elsif num = og_unknown_fontwidth then
    og_set_font_width(text, og_dense_fontwidth);
  end if;
END;


Attribut Umbruch

  Beispiele	  Verwandte Themen

Beschreibung  Gibt an, ob der Text umbrochen werden soll, damit er in die Umrandung des Textobjektes paßt. Wie unten beschrieben, stellt ein zusammengesetztes Textelement eine Textzeile dar und besteht aus einfachen Textelementen.

Syntax

PROCEDURE OG_Set_Wrap
  (text         OG_Object,
   wrap         BOOLEAN,
   damage       BOOLEAN    :=  TRUE,
   update_bbox  BOOLEAN    :=  TRUE);

FUNCTION OG_Get_Wrap
  (text  OG_Object)
RETURN BOOLEAN;

Parameter

text	Beschriebenes Textobjekt.
wrap	Gibt an, ob der Text umbrochen werden soll, damit er in die Umrandung des Textobjekts paßt.
damage	Veränderungsmarke.
update_bbox	Änderungsmarke der Umrandung.


Beispiele für das Attribut Umbruch

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure checks if the text is 'wrapped'
** into the text's bounding box.
*/

PROCEDURE wrap IS
  val boolean;
  text og_object;
BEGIN
   text := og_get_object('text object');
   val := og_get_wrap(text);
   if val  then
      og_set_wrap(text, false);
   else
      og_set_wrap(text, true);
   end if;
END;


Mit diesem Buchstaben beginnen keine Einträge.


Fensterattribute

Beschreibung

Position und Abmessungen von Fenstern werden in "Bildschirmauflösungseinheiten" ausgedrückt, die im allgemeinen als Pixel bekannt sind. Sie können den horizontalen und vertikalen Wert der Bildschirmauflösung mit den vordefinierten Prozeduren OG_Get_Ap_Hscreen_Res und OG_Get_Ap_Vscreen_Res ermitteln.

Sie sollten diese vordefinierten Prozeduren anstelle eines konkreten numerischen Wertes benutzen, damit die Anwendung bei Systemen mit unterschiedlichen Bildschirmauflösungen ein konsistentes Aussehen beibehält.

Attribut Breite

Attribut Hilfeziel

Attribut Höhe

Attribut Name

Attribut Position


Attribut Höhe

  Beispiele	  Verwandte Themen

Beschreibung  Höhe des Fensters (in Bildschirmauflösungseinheiten).

Syntax

(Siehe OG_Set_Window_Size.)

FUNCTION OG_Get_Window_Height
  (window  OG_Window)
RETURN NUMBER;

Parameter

window	Beschriebenes Fenster.


Beispiele für das Attribut Höhe

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /* /*The following procedure resizes
**the window to half its original size.
*/

PROCEDURE WinSize IS
  window og_window;
  width number;
  height number;
BEGIN
  window := og_get_window('Main Layout');
  width := og_get_window_width(window);
  height := og_get_window_height(window);
  og_set_window_size(window, width/2,height/2);
END;


Attribut Hilfeziel

  Beispiele	  Verwandte Themen

Beschreibung  Hypertext-Ziel in dem Laufzeit-Hilfedokument, das angezeigt wird, wenn das Hilfesystem aufgerufen wird, während das Fenster aktiv ist.

Syntax

PROCEDURE OG_Set_Helptarget
  (window      OG_Window,
   helptarget  VARCHAR2);

FUNCTION OG_Get_Helptarget
  (window  OG_Window)
RETURN VARCHAR2;

Parameter

window	Beschriebenes Fenster.
Helptarget	Hypertext-Ziel in dem Laufzeit-Hilfedokument, das angezeigt wird, wenn das Hilfesystem aufgerufen wird, während das Fenster aktiv ist.


Beispiele für das Attribut Hilfeziel

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure sets the help
**target to 'NewTarget' if "New Target" is not
** the current help target.
*/

PROCEDURE Help IS
  window og_window;
  help varchar2(20);
BEGIN
  window := og_get_window('Main Layout');
  help :=  og_get_helptarget(window);
  if help != 'NewTarget' then
    og_set_helptarget(window, 'NewTarget');
  end if;
END;


Attribut Name

  Beispiele	  Verwandte Themen

Beschreibung  Fenstername. Zur Laufzeit ist der Standardname des Layoutfensters "Hauptlayout".

Syntax

PROCEDURE OG_Set_Name
  (window  OG_Window,
   name    VARCHAR2);

FUNCTION OG_Get_Name
  (window  OG_Window)
RETURN VARCHAR2;

Parameter

window	Beschriebenes Fenster.
name	Fenstername.


Beispiele für das Attribut Name

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure resets
**the name of the window if its name
**is not 'Main Layout'.
*/

PROCEDURE Name IS
  window og_window;
  name varchar2(20);
BEGIN
  window := og_get_window('Main Layout');
  name :=  og_get_name(window);
  if name != 'Main Layout' then
    og_set_name(window, 'Main Layout');
  end if;
END;


Attribut Position

  Beispiele	  Verwandte Themen

Beschreibung  x- und y-Koordinaten der oberen linken Ecke des Fensters (in Bildschirmauflösungseinheiten).

Syntax

PROCEDURE OG_Set_Position
  (window    OG_Window,
   position  OG_Point);

FUNCTION OG_Get_Position
  (window  OG_Window)
RETURN OG_Point;

Parameter

window	Beschriebenes Fenster.
position	x- und y-Koordinaten der oberen linken Ecke des Fensters (in Bildschirmauflösungseinheiten).


Beispiele für das Attribut Position

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure repositions
**the window.
*/

PROCEDURE Position IS
  window og_window;
  pos og_point;
BEGIN
  window := og_get_window('Main Layout');
  pos := og_get_position(window);
  pos.x := pos.x*2;
  pos.y := pos.y*2;
  og_set_position(window, pos);
END;


Attribut Breite

  Beispiele	  Verwandte Themen

Beschreibung  Breite des Fensters (in Bildschirmauflösungseinheiten).

Syntax

PROCEDURE OG_Set_Window_Size
  (window  OG_Window,
   width   NUMBER,
   height  NUMBER);

FUNCTION OG_Get_Window_Width
  (window  OG_Window)
RETURN NUMBER;

Parameter

window	Beschriebenes Fenster.
width	Breite des Fensters (in Bildschirmauflösungseinheiten).
height	Höhe des Fensters (in Bildschirmauflösungseinheiten).


Beispiele für das Attribut Breite

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

 /*The following procedure resizes the window
** to half its original size.
*/

PROCEDURE WinSize IS
  window og_window;
  width number;
  height number;
BEGIN
  window := og_get_window('Main Layout');
  width := og_get_window_width(window);
  height := og_get_window_height(window);
  og_set_window_size(window, width/2,height/2);
END;


 Fehlerbehebung

In diesem Thema wird beschrieben, wie Fehlermeldungen und Exceptions behandelt werden. Diese werden in numerischer Reihenfolge aufgeführt. Im einzelnen werden folgende Themen beschrieben:

Anormale Bedingungen

Graphics Builder-Fehlermeldungen

Graphics Builder-Exceptions

Fehlermeldungscodes

Verbindung mit der Zentralen Kundenunterstützung von Oracle aufnehmen


Graphics Builder-Fehlermeldungen

In diesem Abschnitt werden die Graphics Builder-Fehlermeldungen beschrieben. Die Fehler werden nach der Fehlercode-Nummer aufgeführt.

OG-00001:	Fehler bei Stapelkompilierung

 Ursache:	Sie haben versucht, eine grafische Anwendung im PL/SQL-Debugger auszuführen, Graphics Builder hat jedoch bei der Ausführung der Stapelkompilierung der Programmblöcke der grafischen Anwendung einen Fehler entdeckt.

 Maßnahme:	Starten Sie den Batch Compiler, und korrigieren Sie die aufgeführten PL/SQL-Fehler.

OG-00002:	Prozedur für Schaltfläche nicht gefunden

 Ursache:	Sie haben eine Schaltflächenprozedur mit einem Objekt oder einer Ebene verknüpft, Graphics Builder konnte jedoch keine Prozedur mit diesem Namen finden.

 Maßnahme:	Wenn die Prozedur nicht vorhanden ist, erstellen Sie sie. Außerdem prüfen Sie, ob Sie den Prozedurnamen richtig eingegeben haben.

OG-00005:	Konsistenzfehler im Programmblock

 Ursache:	Sie haben versucht, eine grafische Anwendung auszuführen, die Konsistenzfehler enthält.

 Maßnahme:	Starten Sie Consistency Checker, und führen Sie eine Konsistenzprüfung durch. Danach korrigieren Sie die aufgeführten Fehler.

OG-00006:	Parameter wurden abgeschnitten

 Ursache:	Sie haben einen Wert mit mehr als 2000 Byte einem Parameter vom Typ CHAR zugewiesen.

 Maßnahme:	Die maximale Länge eines Parameters vom Typ CHAR beträgt 2000 Byte.

OG-00030:	Ungültige Angabe des Programmblocks

 Ursache:	Sie haben versucht, einen Programmblock anzuwenden, der eine ungültige Angabe hat.

 Maßnahme:	Benutzen Sie eine gültige Kopfzeile, und wiederholen Sie den Versuch.

OG-00032:	Name des PL/SQL-Programmblocks bereits vorhanden

 Ursache:	Sie haben versucht, einen Programmblock zu erstellen, der denselben Namen wie ein bestehender Programmblock hat.

 Maßnahme:	Geben Sie Ihren Programmblöcken eindeutige Namen.

OG-00057:	Trigger-Prozedur nicht gefunden

 Ursache:	Sie haben eine Prozedur mit einem Trigger verknüpft, Graphics Builder konnte jedoch keine Prozedur mit diesem Namen finden.

 Maßnahme:	Wenn die Prozedur nicht vorhanden ist, erstellen Sie sie. Außerdem prüfen Sie, ob Sie den Prozedurnamen richtig eingegeben haben.

OG-00064:	Abfrage Parameter für Programmblock nicht erfolgreich

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00066:	Registrierung der Datenbankverbindung in PL/SQL fehlgeschlagen

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00068:	Liste zugeordneter PL/SQL-Bibliotheken kann nicht gespeichert werden

 Ursache:	Graphics Builder ist bei dem Versuch, die Liste zugeordneter PL/SQL-Bibliotheken zu speichern, auf einen Fehler gestoßen.

 Maßnahme:	Wenn Sie in einer Datenbank speichern, prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind. Wenn Sie in einer Datei speichern, prüfen Sie, ob Sie die Schreibberechtigung haben, ob genügend Platz auf der Festplatte vorhanden ist und ob keine anderen Bedingungen das Schreiben einer Datei verhindern.

OG-00069:	Fehler beim Laden der Liste zugeordneter PL/SQL-Bibliotheken

 Ursache:	Graphics Builder ist bei dem Versuch, die Liste zugeordneter PL/SQL-Bibliotheken zu laden, auf einen Fehler gestoßen.

 Maßnahme:	Wenn aus einer Datenbank geladen wird, prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind. Wenn Sie aus einer Datei laden, prüfen Sie, ob Sie die Leseberechtigung haben, ob Sie die Zugriffsberechtigung zu den betreffenden Bibliotheken haben (z.B. ob diese im aktuellen Ordner oder in dem Ordner gespeichert sind, der mit der Umgebungsvariablen ORAPLSQLLOADPATH angegeben wird) und ob keine anderen Bedingungen vorhanden sind, unter denen Sie eine Datei nicht lesen können.

OG-00070:	Liste zugeordneter PL/SQL-Bibliotheken wurde nicht gelöscht

 Ursache:	Graphics Builder ist bei dem Versuch, die Liste zugeordneter PL/SQL-Bibliotheken zu löschen, auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind.

OG-00071:	Grafische Anwendung enthält unkompilierte Programmblöcke

 Ursache:	Sie haben versucht, eine grafische Anwendung auszuführen, die nicht kompilierte Programmblöcke enthält.

 Maßnahme:	Kompilieren Sie alle Programmblöcke, und speichern oder generieren Sie die grafische Anwendung, bevor Sie sie ausführen.

OG-00072:	Programmblock konnte nicht geladen werden

 Ursache:	Bei dem Versuch, einen Programmblock zu laden, ist Graphics Builder auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob auf alle Datenbanktabellen bzw. anderen Programmblöcke, die der Programmblock referenziert, zugegriffen werden kann und ob die Graphics Builder-Tabellen richtig installiert sind.

OG-00076:	Ein oder mehrere PL/SQL-Programmblöcke sind zu groß, um codiert zu werden

 Ursache:	Sie haben versucht, eine grafische Anwendung zu speichern, die einen oder mehrere Programmblöcke enthält, die die maximale fortlaufende Speichergröße überschreiten, die bei Ihrem System zulässig ist.

 Maßnahme:	Teilen Sie die großen Programmblöcke in kleinere Blöcke auf. Weitere Informationen über die Einschränkungen bei Ihrem Systemspeicher finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

OG-00078:	Programmstop kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00079:	Laufzeitsimulation abgebrochen

 Ursache:	Sie haben einen Vorgang abgebrochen, bevor die Laufzeitsimulation begonnen wurde.

OG-00077:	Ein oder mehrere PL/SQL-Programmblöcke sind zu groß, um decodiert zu werden

 Ursache:	Sie haben versucht, eine grafische Anwendung zu öffnen, die einen oder mehrere Programmblöcke enthält, die die maximale fortlaufende Speichergröße überschreiten, die bei Ihrem System zulässig ist.

 Maßnahme:	Öffnen Sie die grafische Anwendung in dem System, auf dem sie erstellt wurde, und teilen Sie die großen Programmblöcke in kleinere auf. Weitere Informationen über die Speichereinschränkungen bei Ihrem System finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

OG-00401:	Timer-Name nicht angegeben

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Timer-Trigger anzuwenden, das Textfeld Umbenennen für den ausgewählten Timer-Namen ist jedoch leer.

 Maßnahme:	Geben Sie einen Namen in das Textfeld Umbenennen ein, oder löschen Sie den Timer.

OG-00402:	Timer-Name ist bereits vorhanden

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Timer-Trigger anzuwenden, der ausgewählte Timer-Name ist jedoch schon vorhanden.

 Maßnahme:	Geben Sie dem Timer einen eindeutigen Namen, indem Sie ihn in das Textfeld Umbenennen eingeben.

OG-00403:	Angegebener Dokumentname bereits vorhanden

 Ursache:	Sie haben versucht, einen der folgenden Schritte in einer einzigen Graphics Builder-Sitzung auszuführen:

A.	Öffnen einer grafischen Anwendung im Builder, die schon im Builder geöffnet ist.

B.	Öffnen einer grafischen Anwendung in der Laufzeitsimulation, die schon in der Laufzeitsimulation geöffnet ist.

C.	Öffnen einer grafischen Anwendung in der ausführbaren Laufzeitdatei, die schon in der ausführbaren Laufzeitdatei geöffnet ist.

 Maßnahme:	In einer einzigen Graphics Builder-Sitzung können Sie einen der obigen Öffnen-Vorgänge immer nur mit einer bestimmten grafischen Anwendung durchführen.

OG-00406:	Kein Klangname angegeben

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Klänge anzuwenden, der ausgewählte Klangname im Textfeld Umbenennen ist jedoch leer.

 Maßnahme:	Geben Sie einen Namen in das Textfeld Umbenennen ein, oder löschen Sie den Klang.

OG-00407:	Klangname bereits vorhanden

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Klänge durchzuführen, der ausgewählte Klangname ist jedoch bereits vorhanden.

 Maßnahme:	Geben Sie dem Klang einen eindeutigen Namen, indem Sie diesen in das Textfeld Umbenennen eingeben.

OG-00408:	Als Timer-Intervall wurde Null angegeben

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Timer-Trigger durchzuführen, das ausgewählte Timer-Intervall ist jedoch auf 0 Minuten und 0 Sekunden eingestellt.

 Maßnahme:	Geben Sie gültige Nummern in die Textfelder Intervall ein, oder löschen Sie den Timer.

OG-00409:	Keine Timer-Prozedur angegeben

 Ursache:	Sie haben versucht, Änderungen im Dialogfeld Timer-Trigger anzuwenden, die ausgewählte Timer-Triggerprozedur im Textfeld Prozedur ist jedoch leer.

 Maßnahme:	Geben Sie den Namen einer PL/SQL-Triggerprozedur in das Textfeld Prozedur ein, oder löschen Sie den Timer.

OG-00410:	Timer konnte nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00411:	Grafische Anwendung in Graphics Builder nicht gefunden

 Ursache:	Sie haben versucht, Programmblöcke aus einer grafischen Anwendung in der Laufzeitsimulation mit der grafischen Builder-Anwendung zu synchronisieren, Builder konnte jedoch nicht gefunden werden.

 Maßnahme:	Prüfen Sie, ob die grafische Builder-Anwendung geöffnet ist und ob der Name seit der Ausführung nicht geändert wurde.

OG-00412:	Mehr als ein Knoten ausgewählt

 Ursache:	Sie haben mehrere Knoten im Objektnavigator ausgewählt und dann versucht, einen Vorgang auszuführen, bei dem nur ein Knoten ausgewählt sein darf.

 Maßnahme:	Wählen Sie nur einen Knoten, und wiederholen Sie den Versuch.

OG-00413:	Keine grafische Anwendung ausgewählt

 Ursache:	Sie haben versucht, einen Vorgang auszuführen, bei dem eine grafische Anwendung ausgewählt sein muß, es ist jedoch keine grafische Anwendung ausgewählt.

 Maßnahme:	Wählen Sie eine grafische Anwendung aus, und wiederholen Sie den Versuch.

OG-00414:	Grafische Anwendung wird bereits ausgeführt

 Ursache:	Sie haben versucht, eine grafische Anwendung in der Laufzeitsimulation auszuführen, diese grafische Anwendung läuft jedoch schon.

 Maßnahme:	Wählen Sie eine andere grafische Anwendung, oder schließen Sie die grafische Anwendung, die ausgeführt wird.

OG-00415:	Angegebener Parametername bereits vorhanden

 Ursache:	Sie haben versucht, einen Parameter mit einem Namen zu erstellen, der schon von einem anderen Parameter benutzt wird.

 Maßnahme:	Benutzen Sie einen eindeutigen Namen für den Parameter.

OG-00416:	Kein Parametername angegeben

 Ursache:	Sie haben versucht, einen Parameter zu erstellen, haben jedoch keinen Namen angegeben.

 Maßnahme:	Geben Sie einen Namen für den Parameter an.

OG-00505:	Zählfehler in Liste

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00507:	Ungültiger Abfragetyp

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00508:	Diagrammvorlage nicht gefunden

 Ursache:	Sie haben versucht, ein Diagramm zu aktualisieren, die Diagrammvorlage, auf der das Diagramm basiert, konnte jedoch nicht gefunden werden. Dieser Fehler kann folgende Ursachen haben:

A.	Sie haben die Diagrammvorlage gelöscht.

B.	Sie haben die Diagrammvorlage umbenannt.

 Maßnahme:	Sie können die Vorlage ändern, auf der das Diagramm basiert, indem Sie eine neue Vorlage im Dialogfeld Diagrammattribute auswählen. Außerdem können Sie diesen Fehler wie folgt beheben:

Bei A.	Erstellen Sie eine neue Diagrammvorlage mit demselben Namen wie die gelöschte Vorlage.

Bei B.	Benennen Sie die Diagrammvorlage um, damit sie dem von dem Diagramm erwarteten Namen entspricht.

OG-00511:	Keine Diagrammvorlage angegeben

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00512:	Keine Abfrage angegeben

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00513:	Abfrage hat keine Daten

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00514:	Dokumentzeiger wurde nicht angegeben

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00516:	Kommunikationskontext kann nicht geladen werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00517:	Kommunikationsschnittstelle kann nicht geladen werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00518:	Datenübertragung zwischen Produkten gescheitert

 Ursache:	Ein weiteres Oracle-Produkt hat Graphics Builder aufgerufen und angefordert, daß Graphics Builder den Inhalt einer grafischen Anwendung bereitstellt, Graphics Builder ist jedoch bei dem Versuch, mit diesem Produkt zu kommunizieren, auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob Graphics Builder im synchronen Kommunikationsmodus aufgerufen wurde. Prüfen Sie außerdem, ob kein Systemfehler aufgetreten ist, der verhindert, daß die Produkte miteinander kommunizieren.

OG-00519:	Konvertierung Datum in Zeichenfolge nicht erfolgreich

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00520:	Integrationsfehler - <Meldung>

 Ursache:	Bei dem Versuch, die Integration mit einem anderen Produkt herzustellen, ist ein Fehler aufgetreten.

 Maßnahme:	Überprüfen Sie die zurückgegebene Fehlermeldung, und schlagen Sie dann in der Dokumentation für das andere Produkt nach.

OG-00521:	Hilfe nicht initialisiert

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00522:	Ungültiger Druckername

 Ursache:	Bei dem Versuch, einen Drucker zu suchen, ist ein Fehler aufgetreten.

 Maßnahme:	Prüfen Sie, ob der Drucker angeschlossen und betriebsbereit ist.

OG-00524:	Kein Abfragename angegeben

 Ursache:	Sie haben versucht, eine Abfrage zu erstellen, haben jedoch den Namen nicht angegeben.

 Maßnahme:	Geben Sie einen Namen für die Abfrage an.

OG-00525:	Angegebener Abfragename bereits vorhanden

 Ursache:	Sie haben versucht, eine Abfrage mit einem Namen zu erstellen, der schon von einer anderen Abfrage benutzt wird.

 Maßnahme:	Benutzen Sie einen eindeutigen Namen für die Abfrage.

OG-00528:	Spaltenname bereits vorhanden

 Ursache:	Sie haben versucht, eine Spalte mit einem Namen zu erstellen, der schon von einer anderen Spalte benutzt wird.

 Maßnahme:	Benutzen Sie einen eindeutigen Namen für die Spalte.

OG-00529:	Kein Spaltenname angegeben

 Ursache:	Sie haben versucht, eine Spalte zu erstellen, haben jedoch deren Name nicht angegeben.

 Maßnahme:	Geben Sie einen Namen für die Spalte an.

OG-00532:	Diagramm kann bei laufender Aktualisierung nicht aktualisiert werden

 Ursache:	Sie haben versucht, ein Diagramm zu aktualisieren, während es schon aktualisiert wird. Wahrscheinlich haben Sie den Vorgang innerhalb eines diagrammorientierten Triggers versucht, der eine weitere Diagrammaktualisierung auslöst.

 Maßnahme:	Stellen Sie sicher, daß Sie keinen Vorgang ausführen, mit dem das Diagramm aktualisiert wird, während es bereits aktualisiert wird.

OG-00533:	Aufgliederungsparameter nicht vorhanden

 Ursache:	Graphics Builder hat versucht, einen Parameter einzustellen, der von einem Aufgliederungsdiagramm benutzt wird, der Parameter ist jedoch nicht vorhanden.

 Maßnahme:	Prüfen Sie, ob der Parameter vorhanden ist und dem Diagramm richtig zugewiesen ist.

OG-00602:	Accept of program unit failed

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00604:	Programmblock nicht abgebrochen

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00608:	PL/SQL-Prozedur kann nicht ausgeführt werden

 Ursache:	Graphics Builder ist bei dem Versuch, eine PL/SQL-Prozedur auszuführen, auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob die Prozedur nicht versehentlich unkompiliert ist.

OG-00609:	Interner PL/SQL-Ausführungsfehler

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00622:	Position des Parameters ungültig

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00630:	Interne PL/SQL-Bibliothek konnte nicht zugeordnet werden

 Ursache:	Graphics Builder ist bei dem Versuch, eine interne Bibliothek zuzuordnen, auf einen Fehler gestoßen.

 Maßnahme:	Wenn die grafische Anwendung in der Datenbank gespeichert ist, prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind. Wenn die grafische Anwendung in einer Datei gespeichert ist, prüfen Sie, ob die zu öffnende Datei eine gültige grafische Anwendungsdatei ist.

OG-00632:	Programmblock kann in PL/SQL-Bibliothek nicht eingefügt werden

 Ursache:	Graphics Builder ist bei dem Versuch, einen Programmblock in eine Bibliothek einzufügen, auf einen Fehler gestoßen.

 Maßnahme:	Wenn die grafische Anwendung in der Datenbank gespeichert ist, prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind. Wenn die grafische Anwendung in einer Datei gespeichert ist, prüfen Sie, ob Ihr Dateisystem genügend freien Speicherplatz hat.

OG-00633:	Interne PL/SQL-Bibliothek nicht gelöscht

 Ursache:	Graphics Builder ist bei dem Versuch, eine interne Bibliothek zu löschen, auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob die Graphics Builder-Tabellen richtig installiert sind.

OG-00637:	Unbehandelte PL/SQL-Exception <Exception-Nummer>

 Ursache:	Graphics Builder ist bei der Ausführung eines Programmblocks auf eine PL/SQL-Exception gestoßen.

 Maßnahme:	Schreiben Sie die Exception-Nummer am Ende der Fehlermeldung auf, und suchen Sie dann anhand der folgenden Tabelle nach weiteren Informationen über die Exception:

Exception-Bereich	Exception-Typ	Informationsquelle

----------------------------------------------------------------------------------------

0-99999	Oracle/PL/SQL	Oracle7 Server Messages

and Codes Manual

102000-102499	Vordefinierte Graphics
Builder-Prozedur	PL/SQL-Exceptions

104500-104999	Vordefinierte TOOL_INT-
Prozedur	PL/SQL-Exceptions

105000-105499	Vordefinierte TOOL_RES-
Prozedur	Oracle Procedure Builder

Developer's Guide

105500-105999	Vordefinierte ORA_NLS-
Prozedur	Oracle Procedure Builder

Developer's Guide

300000-300499	Vordefinierte DEBUG-
Prozedur	Oracle Procedure Builder

Developer's Guide

300500-300999	Vordefinierte LIST-
Prozedur	Oracle Procedure Builder

Developer's Guide

302000-302499	Vordefinierte TOOL_ERR-
Prozedur	Oracle Procedure Builder

Developer's Guide

302500-302999	Vordefinierte TEXT_IO-
Prozedur	Oracle Procedure Builder

Developer's Guide

OG-00801:	Fehler bei Ausführung der Datenabfrage

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00802:	Fehler bei Ausführung der SQL-Abfrage

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-00901:	Ungültiger Parametername

 Ursache:	Sie haben einen ungültigen Parameternamen in die Namensspalte der Parametertabelle eingegeben.

 Maßnahme:	Benutzen Sie einen gültigen Parameternamen.

OG-00902:	Ungültiger Parametertyp

 Ursache:	Sie haben einen ungültigen Parametertyp in die Typ-Spalte der Parametertabelle eingegeben.

 Maßnahme:	Geben Sie einen der folgenden gültigen Parametertypen ein: CHAR, DATE oder NUMBER.

OG-00903:	Ungültiger Parameterwert

 Ursache:	Sie haben einen ungültigen Parameterwert in die Wertspalte der Parametertabelle eingegeben.

 Maßnahme:	Geben Sie einen Wert ein, der für den angegebenen Parametertyp gültig ist.

OG-01001:	Erwartete Ressource konnte nicht gefunden werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01002:	Erwartete Ressource konnte nicht gefunden werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01103:	High-level-Klangdialog gescheitert

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01105:	Grafische Anwendung kann nicht geladen werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01106:	Record cache read initialization failure

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01107:	Klangkonvertierung gescheitert

 Ursache:	Sie haben versucht, einen Klang zu importieren oder zu erstellen, die Konvertierung des Klangs von der ursprünglichen Abtastrate und dem ursprünglichen Codierungsschema war nicht erfolgreich. Dies geschieht wahrscheinlich, wenn der Klang zu groß ist.

 Maßnahme:	Importieren oder erstellen Sie einen kleineren Klang.

OG-01108:	Aus Klang-Importdatei kann nicht gelesen werden

 Ursache:	Sie haben versucht, einen Klang zu importieren, die zu importierende Datei enthält jedoch keine gültigen Klangdaten.

 Maßnahme:	Prüfen Sie, ob die Datei gültige Klangdaten enthält.

OG-01109:	Could not create cursor

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01110:	Drucker wurde nicht gefunden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01301:	Datendatei kann nicht geöffnet werden

 Ursache:	Sie haben versucht, eine Abfrage auszuführen, die Daten aus einer Datei abruft, Graphics Builder konnte die Datei jedoch nicht öffnen. Dieser Fehler kann folgende Ursachen haben:

A.	Die Datei ist nicht vorhanden.

B.	Sie haben nicht die erforderlichen Berechtigungen für das Öffnen der Datei.

C.	Ein Systemfehler hat verhindert, daß Graphics Builder die Datei öffnet.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Erstellen Sie die erforderliche Datei.

Bei B.	Ändern Sie die Berechtigungen entsprechend - bzw. bitten Sie den Systemadministrator, die Berechtigungen zu ändern.

Bei C.	Schlagen Sie in der Systemdokumentation nach, oder fragen Sie Ihren Systemadministrator.

OG-01304:	Cache für Daten kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01305:	Ungültige SYLK-Datendatei

 Ursache:	Sie haben eine Abfrage zur Referenzierung einer SYLK-Datei definiert, die angegebene Datei hat jedoch dieses Format nicht.

 Maßnahme:	Prüfen Sie, ob Sie das richtige Format und die richtige Datei angegeben haben.

OG-01306:	Ungültige PRN-Datendatei

 Ursache:	Sie haben eine Abfrage zur Referenzierung einer PRN-Datei definiert, die angegebene Datei hat jedoch dieses Format nicht.

 Maßnahme:	Prüfen Sie, ob Sie das richtige Format und die richtige Datei angegeben haben.

OG-01307:	Ungültige WKS-Datendatei

 Ursache:	Sie haben eine Abfrage zur Referenzierung einer WKS-Datei definiert, die angegebene Datei hat jedoch dieses Format nicht.

 Maßnahme:	Prüfen Sie, ob Sie das richtige Format und die richtige Datei angegeben haben.

OG-01601:	Unable to create cax at startup

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01603:	DE-Kontext konnte nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01604:	DE UI-Kontext konnte nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01605:	Haupt-Layoutfenster kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01606:	Resourcemanager kann nicht gestartet werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01607:	Unable to init ZOM

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01610:	PL/SQL-Batch-Compiler kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01613:	Fenster für PL/SQL-Editor kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01614:	PL/SQL-Programmblock konnte nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01615:	DE-Ausführungskontext konnte nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01616:	Unable to create cav at startup

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01617:	Nicht-modaler Interpreter kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01618:	Modaler Interpreter kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01619:	Unterbrechungsroutine für Fehler konnte nicht initialisiert werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01620:	Objektspeicher kann nicht initialisiert werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01621:	Oracle Image konnte nicht initialisiert werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01622:	Oracle Sound konnte nicht initialisiert werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01623:	Oracle-Hilfe konnte nicht initialisiert werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01625:	Attribute für Stapelfenster konnten nicht gesetzt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01626:	Zu viele Argumente für Befehlszeilenoption

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01627:	Befehlszeilenoption doppelt angegeben

 Ursache:	Sie haben eine ausführbare Graphics Builder-Datei aus einer Befehlszeile aufgerufen und Befehlszeilenargumente an diese Datei übergeben, dabei jedoch dasselbe Befehlszeilenschlüsselwort mehr als einmal benutzt.

 Maßnahme:	Sie können ein Befehlszeilenschlüsselwort nur einmal in einer Befehlszeile angeben. Wenn Sie mehrere Werte für ein Schlüsselwort angeben möchten, benutzen Sie eine Werteliste.

Weitere Informationen finden Sie in dem Abschnitt über Wertelisten in dem Kapitel über ausführbare Dateien im Graphics Builder Reference Manual.

OG-01629:	Positional input after command line keyword

 Ursache:	Sie haben eine ausführbare Graphics Builder-Datei aus einer Befehlszeile aufgerufen und ein Schlüsselwort und dessen Wert angegeben, gefolgt von einem Wert ohne Schlüsselwort.

 Maßnahme:	Wenn Sie auf der Befehlszeile ein Schlüsselwort benutzen, müssen Sie in allen nachfolgenden Befehlszeilenargumenten ebenfalls Schlüsselwörter verwenden. Sie können Schlüsselwörter nur weglassen, wenn deren Werte in der Reihenfolge aufgeführt werden, die von der Syntax der ausführbaren Datei angegeben wird, und wenn sie auf kein weiteres Befehlszeilenargument folgen, das das Schlüsselwort explizit benutzt.

OG-01630:	Ungültiger Wert für Befehlszeilenoption

 Ursache:	Sie haben eine ausführbare Graphics Builder-Datei auf der Befehlszeile aufgerufen und einen ungültigen Wert für ein Befehlszeilenschlüsselwort angegeben.

 Maßnahme:	Sie müssen gültige Befehlszeilenwerte angeben.

Weitere Informationen finden Sie in dem Abschnitt über Wertelisten in dem Kapitel über ausführbare Dateien im Graphics Builder Reference Manual.

OG-01631:	Fehlerhafte Liste in Befehlszeile

 Ursache:	Sie haben eine ausführbare Graphics Builder-Datei auf der Befehlszeile aufgerufen und mehrere Werte für ein Befehlszeilenschlüsselwort angegeben. Die Werteliste wurde jedoch nicht richtig angegeben.

 Maßnahme:	Sie müssen eine Werteliste in Klammern setzen und die einzelnen Werte durch ein Komma trennen. Beachten Sie, daß es bei Ihrem System möglicherweise spezielle Einschränkungen für die Benutzung von Klammern und Kommata auf der Befehlszeile gibt.

Weitere Informationen finden Sie in dem Abschnitt über Wertelisten in dem Kapitel über ausführbare Dateien im Graphics Builder Reference Manual.

OG-01632:	Nicht erlaubte Listeneingabe in Befehlszeile

 Ursache:	Sie haben eine Werteliste für ein ausführbares Schlüsselwort angegeben, bei dem mehrere Werte nicht zulässig sind.

 Maßnahme:	Geben Sie bei Schlüsselwörtern, die nur einen Wert akzeptieren, nicht mehrere Werte an.

OG-01633:	Befehlsdatei nicht gefunden

 Ursache:	Graphics Builder konnte die von dem ausführbaren Schlüsselwort CMDFILE angegebene Befehlsdatei nicht finden.

 Maßnahme:	Prüfen Sie, ob die Datei vorhanden ist und ein lesbares Format hat.

OG-01635:	Could not create PL/SQL browser

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01636:	Could not create library browser

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01638:	SQLLIB-Initialisierung gescheitert

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01639:	Initialisierung der Tools-Integration nicht erfolgreich

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01640:	Fenster Datentabelle kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01641:	Fenster Parametertabelle kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01643:	Fenster Diagrammvorlage kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01644:	Fenster Datentabelle kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01642:	Fenster Diagrammvorlage kann nicht erstellt werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01901:	Generischer Fehler im Objektspeicher

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01902:	Zu speichernde Ebene nicht gefunden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01903:	Unerwartet leere Ebenenliste in Layoutansicht gefunden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01904:	Datenbankspeicher konnte nicht geöffnet werden

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-01905:	Benutzername kann nicht abgerufen werden

 Ursache:	Graphics Builder ist bei dem Versuch, einen unbekannten oder nicht angegebenen Benutzernamen aufzulösen, auf einen Fehler gestoßen, in dem die Auflösung vom Server angefordert wurde. Wenn Sie z.B. keinen Benutzernamen in das Dialogfeld Anmelden eingeben, fordert Graphics Builder den Server auf, einen OPS$-Benutzernamen aufzulösen.

 Maßnahme:	Stellen Sie sicher, daß der Benutzername registriert ist und in der Tabelle USER_USERS steht.

OG-02205:	These objects do not belong to the same group

 Ursache:	Sie haben versucht, zwei Objekte gleichzeitig auszuwählen, die nicht untergeordnete Objekte desselben Gruppenobjekts sind.

 Maßnahme:	Sie können nur dann mehrere Objekte auswählen, wenn sie zu derselben Gruppe gehören.

OG-02207:	Must select exactly one group

 Ursache:	Sie haben ein oder mehrere einzelne Objekte oder mehr als ein Gruppenobjekt ausgewählt und dann versucht, die Gruppe aufzulösen, die untergeordneten Objekte oder ein Objekt in einer Gruppe auszuwählen.

 Maßnahme:	Diese Vorgänge setzen voraus, daß genau ein Gruppenobjekt ausgewählt ist.

OG-02212:	Ausgewähltes Objekt ist keine Gruppe

 Ursache:	Sie haben ein einzelnes Objekt ausgewählt und dann versucht, die untergeordneten Objekte auszuwählen.

 Maßnahme:	Definitionsgemäß hat ein einzelnes Objekt keine untergeordneten Objekte. Dieser Vorgang setzt voraus, daß Sie genau ein Gruppenobjekt auswählen.

OG-02213:	Object has no parent

 Ursache:	Sie haben ein Objekt ausgewählt und dann versucht, das übergeordnete Objekt auszuwählen, das Objekt gehört jedoch nicht zu einer Gruppe und hat somit kein übergeordnetes Objekt.

 Maßnahme:	Sie können nur das übergeordnete Objekt eines Objekts auswählen, das zu einer Gruppe gehört.

OG-02215:	Object is not editable

 Ursache:	Sie haben das Werkzeug Umformen ausgewählt und dann auf einen Steuerungspunkt eines Objekts geklickt, das nicht umgeformt werden kann.

 Maßnahme:	Symbole, Diagramme oder Gruppenobjekte können nicht umgeformt werden.

OG-02313:	Select exactly one image to export

 Ursache:	Sie haben versucht, ein Bild zu exportieren, es sind jedoch keine Bilder oder mehr als ein Bild ausgewählt.

 Maßnahme:	Wählen Sie nur ein Bild für das Exportieren.

OG-02502:	Cannot find file or cannot read file

 Ursache:	Sie haben versucht, eine Datei zu öffnen, Graphics Builder konnte die Datei jedoch nicht finden oder lesen. Dieser Fehler kann folgende Ursachen haben:

A.	Die Datei ist nicht vorhanden.

B.	Sie haben nicht die erforderliche Berechtigung für das Öffnen der Datei.

C.	Ein Systemfehler hat verhindert, daß Graphics Builder die Datei öffnen konnte.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Erstellen Sie die erforderliche Datei.

Bei B.	Ändern Sie die Berechtigungen entsprechend - oder bitten Sie den Systemadministrator, die Berechtigungen zu ändern.

Bei C.	Schlagen Sie in der Systemdokumentation nach, oder fragen Sie den Systemadministrator.

OG-02503:	Cannot open file for writing

 Ursache:	Sie haben versucht, eine Datei zu schreiben, Graphics Builder ist jedoch auf einen Fehler gestoßen. Dieser Fehler kann folgende Ursachen haben:

A.	Sie haben nicht die erforderliche Berechtigung, die Datei zu schreiben.

B.	Ein Systemfehler hat verhindert, daß Graphics Builder die Datei schreibt.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Ändern Sie die Berechtigungen entsprechend - bzw. bitten Sie den Systemadministrator, die Berechtigungen zu ändern.

Bei B.	Schlagen Sie in der Systemdokumentation nach, oder fragen Sie Ihren Systemadministrator.

OG-02505:	Datenbankspeicher konnte nicht geöffnet werden. Datenbank ist möglicherweise nicht richtig konfiguriert

 Ursache:	Graphics Builder ist bei dem Versuch, ein Modul in der Datenbank zu speichern (z.B. eine grafische Anwendung zu speichern, eine Zeichnung zu exportieren usw.) auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob Sie die erforderlichen Berechtigungen für das Speichern von Daten in Graphics Builder-Tabellen haben.

OG-02506:	Cannot print.  Check printer settings

 Ursache:	Graphics Builder ist bei dem Versuch zu drucken, auf einen Fehler gestoßen.

 Maßnahme:	Prüfen Sie, ob der Drucker und die Druckumgebung richtig konfiguriert sind. Weitere Informationen finden Sie in der Systemdokumentation.

OG-02507:	Cannot open file or file is not in the format specified

 Ursache:	Sie haben versucht, eine Datei zu importieren, entweder ist Graphics Builder jedoch bei dem Versuch, die Datei zu öffnen, auf einen Fehler gestoßen, oder die Datei hat nicht das angegebene Format.

 Maßnahme:	Prüfen Sie, ob Sie auf die Datei zugreifen können und ob diese das richtige Format hat.

OG-02508:	Cannot find document in database

 Ursache:	Sie haben versucht, ein Modul zu öffnen, das in der Datenbank gespeichert ist, Graphics Builder konnte jedoch kein Modul mit diesem Namen finden.

 Maßnahme:	Prüfen Sie, ob das angegebene Modul in der Datenbank vorhanden ist und ob der aktuelle Benutzer die entsprechenden Berechtigungen hat.

OG-02701-2718:	Fehler beim Lesen der CGM-Datei

 Ursache:	Sie haben versucht, eine CGM-Datei zu importieren, Graphics Builder ist jedoch bei dem Versuch, diese zu lesen, auf einen Fehler gestoßen. Wahrscheinlich ist die Datei beschädigt oder keine gültige CGM-Datei.

 Maßnahme:	Prüfen Sie, ob die Datei eine gültige CGM-Datei ist.

OG-02801-2806:	Datei-E/A-Fehler

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-03003:	Cannot display image

 Ursache:	Sie haben versucht, eine grafische Anwendung, die ein Bild enthält, in Builder zu öffnen, haben jedoch nicht genügend Speicherplatz, um das Bild anzuzeigen.

 Maßnahme:	Speichern Sie die grafische Anwendung, und beenden Sie Graphics Builder. Danach geben Sie möglicherweise Speicherplatz frei, und wiederholen Sie den Versuch. Informationen über die Speicheranforderungen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

OG-03101:	Oracle Toolkit-Fehler

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-03501:	Resource-Datei nicht gefunden. Prüfen Sie die Umgebungseinstellungen

 Ursache:	Graphics Builder konnte die erforderliche Resource-Datei nicht finden.

 Maßnahme:	Prüfen Sie, ob die Umgebungseinstellungen richtig sind. Weitere Informationen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

OG-03507:	Farbpalettendatei nicht gefunden. Prüfen Sie die Umgebungseinstellungen

 Ursache:	Graphics Builder konnte die Standardfarbpalettendatei mit der Bezeichnung vgid.ros nicht finden.

 Maßnahme:	Prüfen Sie, ob die Umgebungseinstellungen richtig sind. Weitere Informationen finden Sie in der Graphics-Builder-Dokumentation für Ihr Betriebssystem.

OG-03701-3702:	Nicht genügend Speicherplatz

 Ursache:	Graphics Builder hat keinen Speicherplatz mehr.

 Maßnahme:	Speichern Sie die grafische Anwendung, und beenden Sie Graphics Builder. Weitere Informationen über die Speicheranforderungen finden Sie in der Graphics Builder-Dokumentation für Ihr Betriebssystem.

OG-03704:	Fehler in Objektspeicher

 Ursache:	Dies ist eine anormale Bedingung.

 Maßnahme:	Weitere Informationen finden Sie unter Anormale Bedingungen.

OG-03800-3812:	CGM-Datei konnte nicht geschrieben werden

 Ursache:	Sie haben versucht, eine Zeichnung als CGM-Datei zu exportieren, Graphics Builder ist jedoch auf einen Fehler gestoßen. Dieser Fehler kann folgende Ursachen haben:

A.	Sie haben nicht die erforderliche Berechtigung für das Schreiben der Datei.

B.	Ein Systemfehler hat verhindert, daß Graphics Builder die Datei schreiben kann.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

 	Bei A.	Ändern Sie die Berechtigungen entsprechend - oder bitten Sie den Systemadministrator, die Berechtigungen zu ändeern.

Bei B.	Schlagen Sie in der Systemdokumentation nach, oder nehmen Sie Verbindung mit dem Systemadministrator auf.

OG-04001:	Field template not found in chart template

Ursache:	Die Vorlage ist zerstört.

Maßnahme:	Aktualisieren oder erstellen Sie das Diagramm neu.

OG-04002:	Column not found in query data

 Ursache:	Sie haben ein Diagramm basierend auf einer Abfrage erstellt, die bestimmte Datenspalten enthielt. Danach haben Sie die Abfrage geändert, so daß eine oder mehrere dieser Spalten nicht mehr vorhanden waren. Als Sie versucht haben, das Diagramm zu aktualisieren, wurde nach diesen Spalten gesucht, diese konnten jedoch nicht gefunden werden.

 Maßnahme:	Aktualisieren Sie die Feldzuordnung des Diagramms so, daß nur Spalten dargestellt werden, die in der Abfrage vorhanden sind.

OG-04003:	User-specified axis minimum/maximum/step is invalid

 Ursache:	Sie haben einen Mindestachsenwert eingegeben, der größer ist als der Höchstwert.

 Maßnahme:	Geben Sie einen Mindestwert ein, der kleiner ist als der Höchstwert, oder wählen Sie für einen bzw. beide Werte Auto.

OG-04004:	Column data type invalid for corresponding axis

Ursache:	Der mit Diagramm->Achsenattribute angegebene Datentyp entspricht nicht dem tatsächlichen Datentyp.

Maßnahme:	Prüfen Sie den Datentyp für die darzustellenden Daten und die Achsenattribute.

OG-04005:	Cannot plot negative value in stacked data

 Ursache:	Die Darstellungsposition eines Feldes in dem Diagramm ist auf Gestapelt eingestellt, die Abfrage enthält jedoch negative Daten.

 Maßnahme:	Sie können nur positive Datenwerte in einem gestapelten Diagramm darstellen.

OG-04006:	Cannot plot negative or zero data in log chart

 Ursache:	Sie haben ein Achsendiagramm erstellt, in dem eine der Achsen eine logarithmische Skalierung verwendet, das Feld, das dieser Achse zugeordnet ist, enthält jedoch negative Datenwerte.

 Maßnahme:	Sie können nur positive Datenwerte auf einer logarithmischen Achse darstellen.

OG-04007:	Cannot plot negative data in percent chart

 Ursache:	Die Abfrage, auf der ein Prozentdiagramm basiert, enthält negative Datenwerte.

 Maßnahme:	In einem Prozentdiagramm können Sie nur positive Datenwerte darstellen.

OG-04008:	Zero sum/minimum/maximum in percent chart

 Ursache:	Sie haben ein Diagramm erstellt, dessen Datenwerte in Prozent von Summe/Minimum/Maximum aller Datenwerte dargestellt werden, Summe/Minimum/Maximum ist jedoch null.

 Maßnahme:	Ein Prozentsatz kann nicht berechnet werden, wenn Summe/Minimum/Maximum null ist.

OG-04010:	Cannot plot negative data in pie chart

 Ursache:	Die Abfrage, auf der ein Kreisdiagramm basiert, enthält negative Datenwerte.

 Maßnahme:	Sie können nur positive Datenwerte in einem Kreisdiagramm darstellen.

OG-04011:	Sum of data greater than total value specified

 Ursache:	Sie haben einen Gesamtwert für das Kreisdiagramm angegeben, der kleiner ist als die tatsächliche Datensumme der Abfrage.

 Maßnahme:	Stellen Sie den Gesamtwert für das Kreisdiagramm so ein, daß er größer ist oder gleich der tatsächlichen Datensumme, die von der Abfrage zurückgegeben wird.

OG-04012:	Data overflow: try a different axis precision

 Ursache:	Sie haben ein Diagramm erstellt oder aktualisiert, das eine Datumsachse enthält, der Bereich der Daten ist jedoch zu groß. Wenn die Daten z.B. viele Jahre umspannen und die Schrittgröße für die Achse in Sekunden angegeben wird, kommt es zu diesem Fehler.

 Maßnahme:	Stellen Sie die Schrittgröße der Achse auf einen größeren Wert ein, so daß es weniger Unterteilungen auf der Achse gibt.

OG-04013:	Legend columns cannot be zero

 Ursache:	Sie haben die Anzahl von Spalten, die in der Legende angezeigt werden, auf 0 festgelegt.

 Maßnahme:	Legen Sie die Anzahl von Spalten, die in der Legende angezeigt werden, auf mindestens 1 fest.

OG-04014:	No data available to chart

 Ursache:	Sie haben versucht, ein Diagramm zu aktualisieren, dessen zugehörige Abfrage nicht ausgeführt wurde. Dies kann geschehen, wenn die Abfrage die Datenbank referenziert, die Datenbank jedoch nicht angemeldet ist oder wenn eine SYLK-, WKS- oder PRN-Datei nicht gefunden werden kann.

 Maßnahme:	Prüfen Sie, ob die Datenbank angemeldet ist bzw. die Datei vorhanden ist.

OG-04015:	Zu viele Datenzeilen

 Ursache:	Sie haben versucht, eine Abfrage auszuführen, die Abfrage hat jedoch mehr Datenzeilen zurückgegeben, als Graphics Builder in Ihrem System verarbeiten kann.

 Maßnahme:	Begrenzen Sie die Abfrage, so daß weniger Zeilen zurückgegeben werden.


Häufig gestellte Fragen im Zusammenhang mit Graphics Builder

Generieren von Diagrammen

PL/SQL

Debugging

Leistung

Integration

Allgemeiner Entwurf


 Generieren von Diagrammen

Wie können Diagramme richtig aktualisiert werden?

Können Einstellungen von einem Diagramm für das Erstellen eines weiteren Diagramms benutzt werden?

Wie werden die Farben eines Kreisdiagramms individuell angepaßt?

Warum können nach dem Importieren einer Zeichnung keine Objekte ausgewählt werden?

Wie wird die Legende entfernt?

Wie kann ein Layout als Bild exportiert werden?

Können Beschriftungen gedreht werden?

Wie erhalten Ränder von Objekten 3D-Effekte?

Wie kann ein Werkzeug dauerhaft ausgewählt werden?

Wie wird Text skaliert?

Wie können Farbpaletten bearbeitet werden?

Wie werden Standardbeschriftungen geändert?


Wie können Diagramme richtig aktualisiert werden?

Wenn eine grafische Anwendung mit einem Diagramm erstellt und ausgeführt wird, werden in der grafischen Anwendung keine Laufzeitdaten angezeigt. Statt dessen werden nur die Daten angezeigt, die beim letzten Speichern aus Graphics Builder Designer erhalten wurden. Wie kann das Diagramm richtig aktualisiert werden?

Stellen Sie sicher, daß die Option Diagramm nach Ausführen der Abfrage aktualisieren im Register Daten im Dialogfeld Diagrammattribute ausgewählt ist. Außerdem stellen Sie sicher, daß die Option Grafische Anwendung öffnen im Feld Ausführen bei im Register Optionen im Dialogfeld Attribute Abfrage ausgewählt ist.


Können Einstellungen von einem Diagramm für das Erstellen eines weiteren Diagramms benutzt werden?

Wie kann ein Diagramm erstellt werden, das mit kleinen Änderungen erneut benutzt werden soll?

Alle Diagramme basieren auf Diagrammvorlagen. Wenn Sie Typ und Untertyp für ein zu erstellendes Diagramm auswählen, wählen Sie in Wirklichkeit eine von über fünfzig Standard-Diagrammvorlagen in Graphics Builder, das dann eine Kopie dieser Vorlage für Ihr Diagramm erstellt.

Auch wenn Sie die im Programm enthaltenen Standardvorlagen nicht ändern können, können Sie die beim Erstellen eines Diagramms angefertigte Kopie ändern und als benutzerdefinierte Diagrammvorlage speichern. Hierzu ändern Sie die Diagrammvorlage im Diagrammvorlagen-Editor.


Wie werden die Farben eines Kreisdiagramms individuell angepaßt?

Graphics Builder scheint alle Farben mit Ausnahme der anfänglichen Farbe auszuwählen, so daß der Benutzer scheinbar keine Kontrolle über die Farben eines Kreisdiagramms hat. Gibt es eine Möglichkeit, die Kontrolle zu erhalten?

Die Farbgestaltung kann im Designer nicht eingestellt werden. Sie können jedoch programmgesteuert durch die Daten gehen und das entsprechende Kreissegment ändern, wobei Sie Farbe, Füllmuster usw. ändern. Entsprechende Beispiele finden Sie unter der Prozedur name_the_bars an verschiedenen Stellen in Graphics Builder Reference.

Eine weitere Möglichkeit besteht darin, die Graphics Builder Reusable Component mit der Bezeichnung color ramp zu verwenden, indem die PL/SQL-Bibliothek colorrmp.pll zugeordnet wird. Weitere Informationen finden Sie in dem Hilfetext zu Graphics Builder Reusable Component.


Warum können nach dem Importieren einer Zeichnung keine Objekte ausgewählt werden?

Wenn eine Zeichnung in Graphics Builder importiert und in dem Layout auf die Zeichnung geklickt wird, können keine Objekte ausgewählt werden.

Wenn Sie Datei [image] Importieren [image] Zeichnung benutzen, wird die neue Zeichnung nicht in die aktuelle Ebene importiert. Graphics Builder erstellt automatisch eine neue Ebene für Ihre Zeichnung. Verwenden Sie den Befehl Werkzeuge [image] Ebenen, um die neu importierte Ebene zu aktivieren.


Wie wird die Legende entfernt?

Wie kann die standardmäßig erstellte Legende gelöscht werden, wenn ein Diagramm ohne eine Legende erstellt werden soll?

Heben Sie die Auswahl des Kontrollkästchens Legende anzeigen im Register Rahmen auf. (Dieses Register kann entweder über die rechte Maustaste oder über das Menü Diagramm aufgerufen werden.)


Wie kann ein Layout als Bild exportiert werden?

Ein Bild des Diagramms soll auf einer Web-Seite aufgenommen werden. Wie kann das Layout des Diagramms in ein Bild exportiert werden?

Es gibt drei Möglichkeiten, das Layout eines Diagramms in ein Bild zu exportieren. Einmal können Sie die Befehlszeile verwenden, wobei Sie die Befehlszeilenoption exportimage wie folgt benutzen:

g25run openfile=c:\test.ogd
userid=scott/tiger
exportimage=c:\test.gif quit=yes

Dadurch wird die grafische Anwendung ausgeführt und das Layout einschließlich der grafisch dargestellten Daten in die GIF-Datei test.gif exportiert.

Dasselbe Ergebnis erzielen Sie mit dem Dialogfeld Bild Exportieren, das Sie über Datei [image] Exportieren [image] Bild aufrufen.

Schließlich enthält Graphics Builder noch das vordefinierte Unterprogramm OG_EXPORT_IMAGE für denselben Zweck. Zum Beispiel:

og_export_image('C:\test.gif', OG_FILESYSTEM, OG_GIF_IFORMAT, og_root_object, OG_LZWHDIFF_ICOMPRESSION);

Diese Anweisung bestimmt auch den Komprimierungstyp.


Können Beschriftungen gedreht werden?

Ist es möglich, die Darstellung von Beschriftungen zu ändern?

Hierzu verwenden Sie folgenden Trigger:

PROCEDURE Rotate_Label(chartname   VarChar2, labelname    VarChar2,  rotationangle    Number) IS
axislabel	og_object;
theoffset	og_point

BEGIN

axislabel := og_get_object(labelname);
og_set_horigin(axislabel, OG_CENTER_HORIGEN, false, false);
og_rotate(axislabel, og_get_origin(axislabel), rotationangle, false, false);
og_draw(og_get_object(chartname);

END

--Updating chart will invalidate label rotation!!!
--Call this procedure after you have updated the chart.
--Rotation angle is clockwise.

Sie müssen diesen Trigger nach allen anderen Vorgängen ausführen, einschließlich dem Aktualisieren des Diagramms. (Wenn Sie jedoch eine Graphics Builder Reusable Component benutzen oder eine der .ogd-Dateien als Reusable Component registrieren, bleiben Änderungen an der grafischen Anwendung, die nach dem Aktualisieren des Diagramms durchgeführt werden, bestehen.)


Wie erhalten Ränder von Objekten 3D-Effekte?

Die Objekte in der grafischen Anwendung sollen mit einem 3D-Effekt angezeigt werden. Wie ist dies möglich?

Wählen Sie das bzw. die Objekte in dem Layout, und wählen Sie dann Format [image] Umriß, und legen Sie fest, wie der Rand aussehen soll: vertieft, erhöht, mit einem Schatten unten oder einem Schatten oben. Wenn der Umriß nicht sofort sichtbar ist, könnte der Rand des Objekts zu schmal sein, um sichtbar zu sein. Wählen Sie in diesem Fall Format [image] Linie, und wählen Sie eine größere Breite für den Objektrand.


Wie kann ein Werkzeug dauerhaft ausgewählt werden?

Wie kann verhindert werden, daß nach dem Zeichnen eines Objektes das Werkzeug wieder zu dem Auswählen-Werkzeug wird, wenn mehrere Instanzen eines Objekttyps - z.B. Kreise oder Rechtecke - in dem Layout gezeichnet werden sollen?

Wenn Sie bei der anfänglichen Auswahl eines Werkzeuges auf dieses Werkzeug doppelklicken, werden Sie feststellen, daß das Werkzeugsymbol in der Werkzeugpalette weiter ausgewählt erscheint und mit einem Pin festgehalten wird. Dies bedeutet, daß Sie den Modus für dieses Werkzeug aktiviert haben. Dieses bleibt ausgewählt, bis Sie ein weiteres Werkzeug auswählen.


Wie wird Text skaliert?

Ist es möglich, Textobjekte einfach in die gewünschte Größe zu ziehen?

Wählen Sie Format [image] Zeichnenoptionen Text..., und wählen Sie im Dialogfeld Text-Zeichnenoptionen Skalierbare Schriftarten. Auf diese Weise können Sie den Text in den Textobjekten skalieren.


Wie können Farbpaletten bearbeitet werden?

Können die Farben in der Farbpalette geändert oder kann eine andere Farbpalette benutzt werden?

Um die Farben in Ihrer Farbpalette zu ändern, wählen Sie Werkzeuge [image] Werkzeugoptionen. Im Register Standardwerte wählen Sie unter Farbpalette als Modus Editierbar. Speichern Sie die neue Voreinstellung. Sie müssen die grafische Anwendung schließen und erneut öffnen, damit dieser neue Standardwert wirksam wird. Danach können Sie Format [image] Farbpalette auswählen und benutzerdefinierte Farben für die Standardfarbpalette von Graphics Builder erstellen.

Wenn Sie eine andere Farbpalette benutzen möchten, stellt Graphics Builder verschiedene Farbpaletten bereit, einschließlich einer Graustufenpalette, einer VGA-Palette und einer VGA-Palette mit 16 Farben. Nachdem Sie wie oben beschrieben sichergestellt haben, daß die Farbpalette editierbar ist, wählen Sie einfach Datei [image] Importieren [image] Farbpalette aus, und wählen Sie im Dialogfeld Importieren eine .pal- oder Farbpalettendatei. Den genauen Speicherort der verfügbaren Farbpalettendateien finden Sie im Installation and User's Guide.


Wie werden Standardbeschriftungen geändert?

Wie kann ein Prozentsymbol zu Beschriftungen von Kreisdiagrammen hinzugefügt werden?

Um ein Prozentsymbol zu Beschriftungen des Kreisdiagramms hinzuzufügen, ordnen Sie der Beschriftungsgruppe für das Kreisdiagramm einfach einen Format-Trigger zu. Zum Beispiel:

--Chart Element format trigger.
--Called for each member of a
--specified chart element group.
--Arguments:
--	ELEM	The current chart element.
--	QUERY	The query associated with
--	this chart.  The current row
--	of the query is the one
--	associated with ELEM.
--	Use OG_GET_xxxCELL to get at
--	column values for the current row.

PROCEDURE FTRIG(elem IN og_object, query IN og_query) IS

BEGIN

og_set_str(elem, og_get_str(elem, 0, 0) || '%');

END

Benutzen Sie diese Methode, um Diagrammbeschriftungen nach Wunsch zu ändern.


 PL/SQL

Warum enthält die grafische Anwendung eine Schaltfläche, während keine Schaltfläche definiert wurde?

Wie werden PL/SQL-Exceptions behandelt?

Wie kann ein Layout als Bild exportiert werden?

Können Informationen in der Datenbank aus Graphics Builder aktualisiert werden?

Können Kreissegmente abgesetzt werden?


Warum enthält die grafische Anwendung eine Schaltfläche, während keine Schaltfläche definiert wurde?

Beim Generieren der grafischen Anwendung wird eine Fehlermeldung wie "Mit dem Objekt 'my_button' verknüpfte Prozedur 'my_buttonproc' muß genau vier Parameter enthalten" ausgegeben. Warum?

Wenn Sie eine Prozedur mit einem Objekt verknüpfen, wird dieses Objekt zu einer Schaltfläche, die die Prozedur auslöst, wenn auf die Schaltfläche geklickt wird. Graphics Builder übergibt automatisch beim Aufruf vier Argumente an die Prozedur, einschließlich dem Handle zu dem aktivierten Objekt. Wenn die Prozedur nicht so definiert ist, daß vier Argumente akzeptiert werden, wird dieser Konsistenzfehler beim Generieren ausgegeben.

Am einfachsten lösen Sie dieses Problem, indem Sie bei der Definition einer Schaltflächenprozedur die Definition einleiten, indem Sie Datei [image] Neu Schaltfläche wählen, anstatt die Prozedur von Anfang an neu zu beginnen. Auf diese Weise gibt Graphics Builder Ihnen die vier Standardargumente und deren Datentypen. Danach müssen Sie nur noch den Prozedurnamen und Prozedurrumpf ändern.


Wie werden PL/SQL-Exceptions behandelt?

Bei der Ausführung einer Prozedur zur Aktualisierung eines Diagramms wird folgende Meldung ausgegeben "OG-637: Unbehandelte PL/SQL-Exception, Fehler 102003". Was bedeutet dies?

Der Fehler OG-637 ist ein allgemeiner Fehler, der von einer Reihe von PL/SQL- oder ORACLE-Fehlern ausgelöst wird. In Vordefinierte Graphics Builder-Exceptions werden die sechsstelligen Fehlernummern im einzelnen beschrieben. Anhand dieser Beschreibung sollte deutlich werden, warum dieser Fehler auftritt.


Können Informationen in der Datenbank aus Graphics Builder aktualisiert werden?

Änderungen an der Datenbank sollen aus Graphics Builder festgeschrieben werden. Gibt es hierfür eine Möglichkeit?

Ja, in den mit der grafischen Anwendung verknüpften PL/SQL-Prozeduren. Sie können DML-Anweisungen aus den PL/SQL-Programmblöcken ausführen. Außerdem können Sie DDL-Anweisungen mit der vordefinierten Prozedur DO_SQL ausführen.


Können Kreissegmente abgesetzt werden?

Wie kann ein Kreissegment von dem restlichen Kreis abgesetzt werden, wenn ein bestimmtes Kreissegment in einem Kreisdiagramm besonders hervorgehoben werden soll?

Kreissegmente können mit einer PL/SQL-Prozedur abgesetzt werden. Hierzu gehen Sie folgendermaßen vor:

1. 	Prüfen Sie im Register Daten im Dialogfeld Diagrammattribute, ob die Auswahl der Option Diagramm nach Ausführen der Abfrage aktualisieren aufgehoben ist.

2. 	Wählen Sie Werkzeuge [image] Grafische Anwendung, und klicken Sie auf die Schaltfläche Neu rechts neben der Dropdown-Liste Open-Trigger.

3. 	Geben Sie den Rumpf der Prozedur ein, mit der das Kreissegment abgesetzt wird. Zum Beispiel:

PROCEDURE explode IS
pie	OG_OBJECT;
pieq	OG_QUERY;
mrows	NUMBER;
msal	NUMBER;
csal	NUMBER;
rowsq	NUMBER;

BEGIN
--Assign initial variable values
msal := 0;
mrows :=0;
pie := OG_GET_OBJECT ('sal_chart');
pieq := OG_GET_QUERY ('query0');
--Where 'sal_chart' is the name of the chart and
--and where 'query0' is the name of the query.

--Execute the chart query to get new data.
OG_EXECUTE_QUERY(pieq);

--Count the number of rows returned by the query
rowsq := OG_NUMROWS(pieq, OG_NEWDATA);

--Determine the maximum value by looping through the query rows
OG_START_FROM(pieq, OG_NEWDATA, 0);
FOR I IN 0 .. rowsq -1 LOOP
csal := OG_GET_NUMCELL (peiq, OG_NEWDATA, 'sal');
IF csal > msal THEN
msal := csal;
mrows := i;
END IF;
OG_NEXT_ROW(pieq, OG_NEWDATA);
END LOOP;

--Set the pie explosion
OG_SET_EXPLOSION(pie, OG_ALL_CHUPDA);

--Update the chart

OG_UPDATE_CHART(pie, OG_ALL_CHUPDA);

END;

4.	Kompilieren Sie den Trigger, und schließen Sie den Programmblock-Editor.

Sie können auch die Graphics Builder Reusable Component mit der Bezeichnung pie explosion verwenden, indem Sie die PL/SQL-Bibliothek explode.pll zuordnen. Weitere Informationen finden Sie in dem Hilfesystem für Graphics Builder Reusable Component.


 Debugging

Wie kann eine Liste von PL/SQL in der grafischen Anwendung erhalten werden?

Wie können Änderungen an PL/SQL während der Laufzeitsimulation gespeichert werden?


Wie kann eine Liste von PL/SQL in der grafischen Anwendung erhalten werden?

Wie kann eine Textdatei erhalten werden, die eine Quellcodeauflistung für alle PL/SQL-Programmblöcke in der Graphics Builder-Anwendung enthält?

Hierzu führen Sie die grafische Anwendung aus Graphics Builder Designer aus und rufen den PL/SQL-Interpreter auf. Bei der PL/SQL-Eingabeaufforderung geben Sie folgenden Befehl ein:

export prog * file <my_text_file>


Wie können Änderungen an PL/SQL während der Laufzeitsimulation gespeichert werden?

Beim Testen einer grafischen Anwendung werden Änderungen deutlich, die an einer Prozedur vorgenommen werden müssen. Wie kann die Änderung direkt durchgeführt und sichergestellt werden, daß die Änderung auch in der Entwurfsversion der Prozedur wirksam wird?

Sie können den Quelltext zwischen den Laufzeitsimulations-Programmblöcken und den Entwurfs-Programmblöcken AUSSCHNEIDEN/KOPIEREN/EINFÜGEN, oder Sie können den PL/SQL-Interpreter aus der Laufzeitsimulation aufrufen und folgenden Befehl eingeben:

og_save_display;

Bitte beachten Sie, daß dieser Befehl alle Angaben im aktuellen Laufzeitsimulationsstatus schreibt. Aktuelle Änderungen an den grafischen Objekten in Ihrer grafischen Anwendung werden ebenfalls gespeichert. Somit können die Objekte möglicherweise nicht mehr den Anfangsstatus aufweisen, wenn Sie die grafische Anwendung das nächste Mal aufrufen. Um die Änderungen wiederherzustellen, müssen Sie Datei [image] Wiederherstellen in der aktuellen Designer-Sitzung auswählen.


Leistung

Wie kann die Leistung einer eingebetteten grafischen Anwendung verbessert werden?

Sollen zugeordnete Bibliotheken oder lokaler PL/SQL-Code benutzt werden?

Wo sollen die PL/SQL-Programmblöcke gespeichert werden?

Was geschieht, wenn in der Anwendung eine große Anzahl von Datenpunkten grafisch dargestellt wird?

Wann muß DO_SQL benutzt werden?


Wie kann die Graphics-Leistung am besten optimiert werden?

Am besten optimieren Sie die Graphics-Leistung, indem Sie die Veränderungs- und Änderungsmarken überwachen, die die beiden letzten Argumente der meisten vordefinierten PL/SQL-Prozeduren in Graphics Builder darstellen. Standardmäßig sind diese Marken auf TRUE eingestellt. Bei jeder Änderung der Graphics-Anwendung erfolgt ein Neuzeichnen. Um die Leistung zu verbessern, stellen Sie sicher, daß die PL/SQL-Programmblöcke (einschließlich Schaltflächenprozeduren, Triggern usw.) die grafische Anwendung nur einmal aktualisieren. Hierzu betrachten Sie das folgende Code-Beispiel:

Begin

   for i in 1 .. 100 loop

     og_set_fillcolor(og_get_object('obj' || to_char(i)),
        'red');

   end loop;

End;

Um die Leistung zu verbessern, könnten Sie den Code wie folgt ändern:

Begin

   for i in 1 .. 100 loop

     og_set_fillcolor(og_get_object('obj' || to_char(i)),
        'red', false, false);

   end loop;

   og_draw(og_root_object);

End;

In diesem Beispiel wird kein Teil des Bildschirms vor Ablauf der Prozedur aktualisiert.

Diese Technik ermöglicht signifikante Leistungsverbesserungen in grafischen Anwendungen, in denen verschiedene Objekte zur Laufzeit erstellt oder zerstört werden, bzw. in den Anwendungen, die umfangreichen PL/SQL-Code benutzen. (Denken Sie daran, daß eine drei Zeilen umfassende Schleife viel Code enthalten kann.)

Wie kann die Leistung einer eingebetteten grafischen Anwendung verbessert werden?

Mit welchen Schritten kann die Leistung einer grafischen Anwendung verbessert werden, die in einer Form oder einem Bericht eingebettet ist?

Um sicherzustellen, daß Ihre grafische Anwendung so effizient wie möglich ausgeführt wird, wenn sie aus einer Form oder einem Bericht aufgerufen wird, versuchen Sie, so viele gemeinsame Elemente wie möglich beim ursprünglichen Entwurf der Form und der grafischen Anwendung zu benutzen. Wenn z.B. Daten grafisch dargestellt werden, die schon von Forms abgerufen wurden, übergeben Sie dieselben Daten an die grafische Anwendung in Datensatzgruppen und vermeiden, daß die grafische Anwendung die Datenbank erneut abfragt. Benutzen Sie dieselbe Farbpalette in Ihrer Form und der grafischen Anwendung. Stellen Sie dieselben Schriftarten bereit.

Eine weitere Möglichkeit zur Verbesserung der Leistung von grafischen Anwendungen besteht darin, daß Ihre PL/SQL-Programmblöcke (einschließlich Schaltflächenprozeduren, Triggern usw.) das Diagramm nur einmal aktualisieren. Hierzu stellen Sie sicher, daß jedesmal, wenn die Änderungsmarke und die Umrandung auf TRUE eingestellt sind, Sie diese auf FALSE zurücksetzen. Danach führen Sie nur eine einzige Prozedur OG_UPDATE_CHART und OG_DRAW als letzte Aktion aus.

Weitere Informationen über die Verbesserung der Leistung von Graphics Builder finden Sie im folgenden Abschnitt:

Wie kann die Graphics-Leistung am besten optimiert werden?

Weitere Informationen über die Veränderungsmarke und die Umrandung finden Sie in folgenden Abschnitten:

Über die Benutzung von Veränderungsmarken

Über die Benutzung von Änderungsmarken der Umrandung


Sollen zugeordnete Bibliotheken oder lokaler PL/SQL-Code benutzt werden?

Soll der PL/SQL-Code von der grafischen Anwendung extern sein?

Wenn möglich, nehmen Sie PL/SQL in Bibliotheken auf, die der grafischen Anwendung zugeordnet sind, anstatt PL/SQL-Code zu benutzen, der in der grafischen Anwendung lokal ist.

Die in externen Bibliotheken enthaltenen Programmblöcke können von einer beliebigen Anzahl von Dokumenten benutzt werden, einschließlich grafischen Anwendungen, Forms und Berichten, während lokale Programmblöcke nur von den Dokumenten aufgerufen werden können, zu denen sie gehören.

Außerdem werden lokale Programmblöcke geladen, wenn das Dokument geöffnet wird, unabhängig davon, ob sie ausgeführt werden oder nicht. Bibliotheken werden nur beim Aufruf geladen.


Wo sollen die PL/SQL-Programmblöcke gespeichert werden?

Werden Programmblöcke besser auf dem Client oder dem Server gespeichert?

Die Leistung einiger Prozeduren kann verbessert werden, indem diese auf dem Client gespeichert werden. Andere Funktionen werden wiederum effizienter ausgeführt, wenn sie auf dem Server gespeichert sind. In der Procedure Builder-Dokumentation wird beschrieben, wo eine bestimmte Prozedur am besten gespeichert wird.


Was geschieht, wenn in der Anwendung eine große Anzahl von Datenpunkten grafisch dargestellt wird?

Wie kann eine Leistungsverminderung in der grafischen Anwendung vermieden werden, wenn eine große Anzahl von Datenpunkten grafisch dargestellt werden muß?

Während es bei Graphics Builder keinen vordefinierten Grenzwert für die Anzahl von Punkten gibt, die in einer grafischen Anwendung dargestellt werden können, gibt es doch einige praktische Erwägungen, die berücksichtigt werden sollten. Möglicherweise hat Ihr Rechner nicht genügend Speicherplatz, um eine große Anzahl von Punkten in einer vernünftigen Zeit darzustellen.

Eine Strategie, mit der dieses Problem umgangen werden kann, besteht darin, nur eine Teilmenge aller Punkte gleichzeitig darzustellen und die grafische Anwendung so auszulegen, daß der Benutzer einen Bildlauf durch die grafische Anwendung vornehmen oder die aktuell dargestellten Punkte auswählen und diese aufgliedern kann, um auf weitere Informationen zuzugreifen.


Wann muß DO_SQL benutzt werden?

Wenn DDL oder DML zu einer grafischen Anwendung hinzugefügt werden soll, muß dann DO_SQL verwendet werden?

Benutzen Sie die vordefinierte Prozedur DO_SQL nur, wenn erforderlich. Sie muß benutzt werden, wenn Sie DDL-Anweisungen ausführen möchten, da dies mit PL/SQL nicht möglich ist. Wenn Sie jedoch DML in Ihrer grafischen Anwendung benutzen möchten, können Sie diese in Programmblöcken aufnehmen.

Während Sie mit DO_SQL beliebige DDL- oder DML-Vorgänge zu der grafischen Anwendung hinzufügen können - eine sehr nützliche Funktion -, kann diese Möglichkeit jedoch auch teuer zu stehen kommen, wenn sie nicht vernünftig eingesetzt wird. Genau wie eine Abfrage wird eine DO_SQL-Anweisung analysiert, öffnet einen Cursor zu der Datenbank und wird ausgeführt. Im Gegensatz zu einer Abfrage wird jedoch eine DO_SQL-Anweisung jedesmal ausgeführt, wenn der Eigentümer (z.B. ein Programmstop) Daten abruft. (Wenn die DO_SQL-Anweisung z.B. einem Programmstop gehört, der 10 Datensätze abruft, wird die Anweisung 10mal analysiert, werden 10 Cursor geöffnet und wird die Anweisung 10mal ausgeführt.)


 Integration

Wie werden Datensatzgruppen für die Übergabe von Daten von Forms zum Graphics Builder benutzt?

Wie wird Graphics Builder Batch aus Forms heruntergefahren?

Warum scheint das Diagramm abgeschnitten, wenn es in einer Form eingebettet ist?

Warum kann Graphics Builder die grafische Anwendung nicht finden, die aus Forms geöffnet werden soll?

Warum wird die grafische Anwendung bei der Aktualisierung der Form nicht eingebettet?

Warum wird die grafische Anwendung nicht in dem Bericht angezeigt?


Wie werden Datensatzgruppen für die Übergabe von Daten von Forms zu Graphics Builder benutzt?

Eine Datensatzgruppe soll an Graphics Builder übergeben werden, und das Diagramm soll auf den Daten in der Gruppe aufgebaut werden. Wie ist dies möglich?

Stellen Sie sicher, daß der Name des übergebenen Parameters identisch mit dem Namen der Abfrage in der grafischen Anwendung ist. Sie müssen Graphics Builder über RUN_PRODUCT im SYNCHRONEN-Modus aufrufen (sonst können Sie keine Datensatzgruppen übergeben), wobei Sie diese Parameterliste als Argument übergeben müssen. Stellen Sie sicher, daß die in der oben aufgeführten Frage angegebenen Schritte ausgeführt werden, um die Abfrage erneut auszuführen und das Diagramm zu aktualisieren. Ein Beispiel für diese Art von Forms-Trigger finden Sie in Forms User's Guide.


Wie wird Graphics Builder Batch aus Forms heruntergefahren?

Wenn Graphics Builder aus Forms gestartet wird, erscheint auf dem Windows-Desktop das Symbol für den Graphics Builder Batch-Modus. Auch nach Beenden der Form wird das Symbol weiter angezeigt. Gibt es eine Möglichkeit, dieses Symbol automatisch zu entfernen?

Um die Leistung zu optimieren, bleibt der Batch-Prozeß von Graphics Builder aktiv, nachdem er aus Forms aufgerufen wurde. Dies ist das Standardverhalten. Sonst müßte der Benutzer bei jeder Aktualisierung eines Diagramms aus Forms warten, bis Graphics Builder hochgefahren ist. Wenn Sie Graphics Builder beim Beenden der Form herunterfahren möchten, können Sie einen Post-Form-Trigger schreiben, der den Stapelmodus von Graphics Builder explizit herunterfährt.

declare

pl paramlist;

begin

pl := create_parameter_list('paramlist');

add_parameter(pl, 'oracle_shutdown', text_parameter, 'YES');

run_product(graphics, '<your_display_name>',

synchronous, batch, filesystem,

pl, '<chart_item_name>);

destroy_parameter_list(pl);

end;


Warum scheint das Diagramm abgeschnitten, wenn es in einer Form eingebettet ist?

Wenn ein Diagramm in eine Form eingebettet ist und die Form dann ausgeführt wird, sieht die grafische Anwendung gelegentlich nicht richtig aus. Wie kann dies behoben werden?

Standardmäßig schneidet der Aufruf von OG.OPEN, der Graphics Builder startet und die grafische Anwendung öffnet, die grafische Anwendung so ab, daß sie in den für das Diagramm definierten Bereich paßt. Hier haben Sie zwei Möglichkeiten - Sie können die grafische Anwendung skalieren, indem Sie

clip=no

in dem anfänglichen Aufruf angeben, oder können das in der Form erstellte Diagrammobjekt skalieren, damit es der konkreten Größe der grafischen Anwendung gerecht wird.


Warum kann Graphics Builder die grafische Anwendung nicht finden, die aus Forms geöffnet werden soll?

Wenn ein Diagrammobjekt in einer Form erstellt und die zu öffnende grafische Anwendung in dem Aufruf von OG.OPEN angegeben wird, kann Graphics Builder diese dennoch nicht finden. Warum?

Sie müssen sicherstellen, daß die Datei .ogd in dem Ordner gespeichert ist, der mit der Pfad-Umgebungsvariablen von Graphics Builder angegeben wird (nicht mit der Pfad-Umgebungsvariablen von Forms). Der Name dieser Umgebungsvariablen variiert je nach Plattform. Deshalb schlagen Sie in der plattformspezifischen Graphics Builder-Dokumentation nach.


Warum wird die in der Form eingebettete grafische Anwendung nicht aktualisiert?

Wenn eine Form mit einer eingebetteten grafischen Anwendung ausgeführt wird, die Form geschlossen und erneut ausgeführt wird, wird die grafische Anwendung nicht aktualisiert, obwohl die Daten geändert wurden. Warum?

Wenn Sie eine Form schließen und Forms Runtime beenden, wird der Batch-Modus von Graphics Builder nicht automatisch geschlossen, d.h. die ausführbare Graphics Builder-Datei, die zur Ausführung von grafischen Anwendungen in Forms aufgerufen wird. Solange dieselbe Sitzung des Graphics Builder Batch-Modus geöffnet bleibt, wird dieselbe Iteration der grafischen Anwendung mit denselben Daten ausgeführt. Um sicherzustellen, daß der Graphics Builder Batch-Modus geschlossen wird, wenn Sie Forms beenden, nehmen Sie in einem Forms-Trigger einen Aufruf von OG.CLOSE auf, mit dem die grafische Anwendung geschlossen wird.


Warum wird die grafische Anwendung nicht in dem Bericht angezeigt?

Selbst wenn ein Diagrammobjekt im Berichtlayout erstellt und mit einer grafischen Anwendung verknüpft wird, wird das Diagramm nicht in dem Bericht angezeigt und eine Fehlermeldung ausgegeben. Warum?

Möglicherweise haben Sie eine grafische Anwendung mit dem Bericht verknüpft, haben es jedoch versäumt, eine Eins-zu-eins-Verbindung zwischen den Berichtspalten und den Diagrammspalten herzustellen.


 Allgemeiner Entwurf

Können Anwendungen mit eigenen Steuerelementen erstellt werden?

Zugehörige Dokumentation


Können Anwendungen mit eigenen Steuerelementen erstellt werden?

Können mit Graphics Builder Anwendungen mit eigenen Steuerelementen erstellt werden, wie z.B. Schaltflächen, Menüs, Popup-Listen usw.?

Nein. Wenn Sie jedoch Forms 4.5 verwenden und Graphics Builder-Objekte einbetten, wie z.B. Diagramme oder Grafiken, können Sie die gewünschte Anwendung erzielen.


Zugehörige Dokumentation

Handbücher

Oracle PL/SQL Programming by Steven Feuerstein, O'Reilly and Associates, Inc.

800-998-9938, (707) 829-0515

http://www.ora.com

Learning Oracle Forms 4.5 by Stephen Edelstein, Relationship Business Systems

(212) 956-3670

74160.645@compuserve.com

Mastering Oracle in Client Server Computing by Steve Bobrowski, Sybex

Journale

Oracle Technical Journal (OTJ), Miller Freeman

pchapnickel@nfi.com


Dialogfeld Datentabellen auswählen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Datentabellen auswählen können Sie Datenquellobjekte aus der angemeldeten Datenbank in Ihre Abfrage einfügen.

Dieses Dialogfeld enthält:

Anzeigen	Gibt an, ob Tabellen, Ansichten, Abfragen, Snapshots und/oder Synonyme in dem Listenfeld angezeigt werden sollen oder nicht.
Dropdown-Feld	Gibt an, aus welcher Datenquelle die Objekte angezeigt werden sollen. Sie können auch eine Tabelle aus einem separaten Account bzw. einer separaten Datenbank auswählen.
Datentabellen auswählen	Listet die verfügbaren Datenquellobjekte auf, die Sie in Ihrer Abfrage aufnehmen können. Tip
Info	Zeigt Informationen über das ausgewählte Objekt an: Art, Name, Eigentümer, Erstellungsdatum und Kommentare.
Aufnehmen	Nimmt das ausgewählte Objekt im Arbeitsbereich von Query Builder auf.
Schließen	Schließt das Dialogfeld, ohne ein Datenquellobjekt aufzunehmen.


Auf andere Accounts in der aktuellen Datenbank zugreifen

  Verwandte Themen

So greifen Sie auf Tabellen in anderen Accounts in der aktuellen Datenbank zu:

1	Klicken Sie auf den Namen der aktuellen Datenbank. Die Schaltfläche Aufnehmen wird zu einer Schaltfläche Öffnen. In dem Listenfeld wird eine Liste mit Accounts in der aktuellen Datenbank angezeigt.

2	Klicken Sie auf den Namen des zu öffnenden Accounts.

3	Klicken Sie auf Öffnen, oder doppelklicken Sie einfach auf den Account-Namen. Query Builder zeigt eine Liste mit Tabellen in diesem Account an. Die Schaltfläche Öffnen wird wieder zur Schaltfläche Aufnehmen, so daß Sie Tabellen wie üblich aufnehmen können.


Andere Accounts öffnen

  Verwandte Themen

Wenn die gewünschte Tabelle nicht in der aktuellen Datenbank aufgeführt wird, können Sie zu anderen Accounts und Datenbanken navigieren und Tabellen aus diesen Accounts auswählen.

So navigieren Sie zu anderen Accounts und Datenbanken:

1	Klicken Sie auf das Feld über der Liste mit Tabellen. Daraufhin sehen Sie zwei Auswahlen: den Namen der aktuellen Datenbank und das Wort Datenbanken.

2	Um auf Tabellen in anderen Accounts in der aktuellen Datenbank zuzugreifen, klicken Sie hier.

Wenn Sie sich bei einer aufgeführten Datenbank nicht anmelden können, ist dies möglicherweise auf einen ungültigen Link zurückzuführen, der durch ein Netzwerkproblem oder ein geändertes entferntes Kennwort zurückzuführen ist. Nehmen Sie in diesem Fall Verbindung mit dem Datenbankadministrator auf.


Tabellen mehrmals aufnehmen

  Verwandte Themen

Wenn Sie dieselbe Tabelle mehr als einmal in einer Abfrage aufnehmen, werden doppelten Tabellen automatisch vom System generierte Aliasnamen zugeordnet, die aus dem Namen der Basistabelle gefolgt von einem Unterstreichungszeichen und einer alphanumerischen Sequenz bestehen.


Dialogfeld Zus. Tabellen auswählen

Beschreibung  Mit dem Dialogfeld Zus. Tabellen auswählen können Sie Tabellen aufnehmen, die mit der ausgewählten Tabelle im Fenster Abfrage verbunden sind.

Dieses Dialogfeld enthält:

Anzeigen	Diese Option ist nicht verfügbar.
Dropdown-Feld	Gibt an, ob alle zusammengehörigen Tabellen angezeigt werden sollen oder nicht.
Ausgewählte Datentabellen	Führt die verfügbaren zusammengehörigen Tabellen auf. Tip
Info	Zeigt Informationen über die ausgewählte Tabelle an: Art, Name, Eigentümer, Erstellungsdatum und Kommentare.
Aufnehmen	Nimmt die ausgewählte Tabelle auf.
Schließen	Schließt das Dialogfeld, ohne eine zusammengehörige Tabelle aufzunehmen.


Dialogfeld Tabelle umbenennen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Tabelle umbenennen können Sie die momentan aktive Tabelle umbenennen.

Dieses Dialogfeld enthält:

Standard-Tabellenname	Gibt den aktuellen Namen der Tabelle an.
Listenfeld	Führt die Tabellen auf, die geöffnet sind und umbenannt werden können.
Neuer Name	Gibt den neuen Tabellennamen an.
Definieren	Aktualisiert den Tabellennamen, während das Dialogfeld geöffnet bleibt.


Umbenannte Tabellen identifizieren

In einer gespeicherten Abfrage wird nicht sofort deutlich, ob eine bestimmte Tabelle einen benutzerdefinierten Namen oder den Originalnamen hat.

So stellen Sie fest, ob eine bestimmte Tabelle umbenannt wurde:

1	Klicken Sie auf [image] in der Symbolleiste.

2	Klicken Sie auf die betreffende Tabelle in der Liste Verfügbare Tabellen.

Wenn die Tabelle umbenannt wurde, wird der Aliasname in dem Feld Neuer Name: und ein anderer Name (der Original-Tabellenname) in dem Feld Standard-Tabellenname: angezeigt.

SQL-Benutzer können umbenannte Tabellen auch identifizieren, indem Sie auf [image] in der Symbolleiste klicken. Dadurch wird das Dialogfeld SQL zeigen aufgerufen, in dem Namensänderungen in der SELECT-Anweisung in der SQL-Standardsyntax für Tabellenaliase angezeigt werden.


Dialogfeld Beziehung festlegen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Beziehung festlegen können Sie einfache, Selbst-, zusammengesetzte, nichtentsprechende und Ungleichheitsbeziehungen zwischen zwei Tabellen erstellen.

Dieses Dialogfeld enthält:

Beziehung	Gibt die Ursprungs- (in A->) und Ziel- (in B->) Spaltennamen an.
Operator	Gibt die Art der Beziehung zwischen den Spalten an.
Beziehung in Abfrage verwenden	Gibt an, ob die Beziehung in der Abfrage benutzt wird. Standardmäßig ist dieses Kontrollkästchen ausgewählt.
Optionsschaltfläche A nicht in B	Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind, außerdem in Daten, die in Tabelle A vorhanden sind, jedoch nicht in Tabelle B.
Optionsschaltfläche B nicht in A	Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind, außerdem in Daten, die in Tabelle B vorhanden sind, jedoch nicht in Tabelle A.
Optionsschaltfläche Nichtentspr. unterdrücken	Standardwert. Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind.


Über Beziehungen

  Verwandte Themen

Eine relationale Datenbank besteht aus einer Reihe von zusammengehörigen Tabellen. Jede Tabelle besteht aus Spalten (die gelegentlich als Felder bezeichnet werden), die vertikal angeordnet sind. Jede Spalte hat einen Namen und enthält einen eindeutigen Datentyp.

Mit Beziehungen oder Joins wird definiert, in welchem Verhältnis eine Spalte in einer Tabelle zu einer Spalte in einer anderen Tabelle steht. In vielen Fällen sind die benötigten Beziehungen schon in der Datenbank definiert. Mit Beziehungen wird auch die Datenredundanz verringert. Wenn zwischen Spalten in verschiedenen Tabellen eine Beziehung besteht, können Sie die Spalten gemeinsam in einer Abfrage benutzen. Hinweis

Zusammengehörige Spalten benutzen nicht immer dieselben Namen. Sie können Spalten, die denselben Datentyp haben, immer in eine Beziehung zueinander stellen. In bestimmten Fällen können Sie auch eine Beziehung zwischen Spalten unterschiedlicher Datentypen erstellen, wenn die Beziehung sinnvoll ist. So können Sie z.B. eine Spalte vom Typ Zahl mit einer Zeichenspalte verbinden, da eine Zahl auch als Zeichen interpretiert werden kann. Eigentlich kann nahezu jede Spalte (mit Ausnahme von langen Textspalten) in eine Beziehung zu Zeichenspalten gesetzt werden.

Beziehungen können benutzerdefiniert (temporär) sein oder in einem zugrundeliegenden Data Dictionary erstellt werden. Beziehungen im Data Dictionary werden automatisch angezeigt, wenn Sie zusammengehörige Tabellen aufnehmen (Tabellen, die über eine Primär-/Fremdschlüsselbeziehung verfügen). Sie müssen nichts tun, um diese Beziehungen zu benutzen, da sie immer gültig sind. Sie können mit Schema Builder erstellt oder geändert werden.

Benutzerdefinierte Beziehungen sind nur für die Abfrage gültig, in der Sie sie erstellen. Durch das Erstellen einer benutzerdefinierten Beziehung wird keine entsprechende permanente Beziehung in der zugrundeliegenden Tabelle erstellt. Der Hauptunterschied zwischen den beiden Beziehungen besteht darin, daß Sie bei einer benutzerdefinierten Beziehung die Beziehungslinie selbst ziehen müssen, während sie bei einer in der Datenbank gespeicherten Beziehung von Query Builder gezogen wird.

Hinweis (nur Report Builder):  Daten-Links von Report Builder sind nicht identisch mit Query Builder-Beziehungen. Daten-Links werden zwischen zwei oder mehr Abfragen erstellt, während Query Builder-Beziehungen (oder Joins) innerhalb einer einzigen Abfrage erstellt werden. Weitere Informationen finden Sie in der Online-Hilfe zu Report Builder.


Beziehungen aktivieren und deaktivieren

  Verwandte Themen

Beziehungen, die Sie mit der Maus erstellen, werden automatisch je nach Bedarf in einer Abfrage aktiviert und deaktiviert. Aktive Beziehungen werden mit einer dicken schwarzen Linie angezeigt, während inaktive Beziehungen als graue Linien dargestellt werden.

So aktivieren Sie eine Beziehung manuell mit der Maus:

  Doppelklicken Sie auf eine inaktive Beziehungslinie.

So deaktivieren Sie eine Beziehung:

  Doppelklicken Sie auf die aktive Beziehungslinie.


Dialogfeld Spalte definieren

Beschreibung  Mit dem Dialogfeld Spalte definieren können Sie eine neue Spalte in der Abfrage basierend auf Werten in einer anderen Spalte erstellen. Definierte Spalten werden sowohl im Bereich Datenquelle als auch im Fenster Ergebnisse angezeigt.

Dieses Dialogfeld enthält:

Definierte Spalten	Gibt den Namen der zu erstellenden Spalte an.
Listenfeld	Führt bestehende definierte Spalten auf.
Definiert als	Gibt den Ausdruck der ausgewählten Spalte an.
Definieren	Wendet die Definition für die Spalte an.
Entfernen	Löscht die ausgewählte Spalte.
Spalte einfügen	Zeigt das Dialogfeld Spalte einfügen an.
Funktion einfügen	Zeigt das Dialogfeld Funktion einfügen an.
Hinweis:  Die definierte Spalte ist nur ein Teil Ihrer Abfrage und ändert die in der Datenbank gespeicherte Tabellendefinition nicht.


Dialogfeld Sortieren

Beschreibung  Mit dem Dialogfeld Sortieren können Sie die Daten in Ihrer Abfrage entsprechend den Spalten in Ihrer Tabelle sortieren.

Dieses Dialogfeld enthält:

Verfügbare Spalten	Führt die Tabellenspalten auf, die Sie im Fenster Ergebnisse sortieren können.
Sortierte Spalten	Führt die Tabellenspalten auf, die momentan im Fenster Ergebnisse sortiert sind.
Kopieren	Kopiert die ausgewählte Spalte aus der Liste Verfügbare Spalten in die Liste Sortierte Spalten.
Entfernen	Entfernt die ausgewählte Spalte aus der Liste Sortierte Spalten.
Sortierung	Sortiert die ausgewählte Spalte in Aufsteigender oder Absteigender Reihenfolge. Der Standardwert ist Aufsteigend.


Query Builder-Hilfe

  Verwandte Themen

Neue Abfragen erstellen

Bedingungen zu einer Abfrage hinzufügen

Einfache Beziehungen erstellen

Spalten definieren

Abfragedaten sortieren


Über Query Builder

  Verwandte Themen

Query Builder ist ein benutzerfreundliches Werkzeug für den Datenzugriff, das speziell für Analytiker, Manager und andere Geschäftsleute entwickelt wurde. Mit Query Builder können Sie auf logische und intuitive Weise auf Informationen in den Datenbanken Ihrer Firma zur Analyse und Berichterstellung zugreifen.

Query Builder ist für Geschäftsleute gedacht, die keine Hintergrundkenntnisse bei Computerprogrammierung oder Datenbanken haben. Aufgrund der leistungsfähigen Abfragefunktionen und der Unterstützung von SQL-Anweisungen (Structured Query Language) werden auch erfahrene Datenbankbenutzer und Programmierer feststellen, daß Query Builder auch ihren Anforderungen gerecht wird.

Im grafischen Fenster Abfrage von Query Builder können Sie Daten aus den Datenbanken Ihres Unternehmens anfordern. Die Anforderung von Daten wird als Abfrage bezeichnet.

Mit Query Builder können Sie nahezu jede Abfrage definieren, die Sie mit einer SQL SELECT-Anweisung generieren würden. Query Builder generiert die entsprechende Klausel SELECT FROM [table.column] automatisch basierend auf den Spalten, die im Arbeitsbereich von Query Builder angezeigt werden.


Dialogfeld Spaltenfolge

Beschreibung  Mit dem Dialogfeld Spaltenfolge können Sie Ihre Abfrageergebnisse im Arbeitsbereich von Query Builder anpassen.

Dieses Dialogfeld enthält:

Verfügbare Spalten	Führt die Tabellenspalten auf, die Sie im Arbeitsbereich von Query Builder anzeigen können. Tip
Angezeigte Spalten	Führt die Tabellenspalten auf, die momentan im Arbeitsbereich von Query Builder angezeigt werden.
Kopieren	Kopiert die ausgewählte Spalte aus der Liste Verfügbare Spalten in die Liste Angezeigte Spalten.
Entfernen	Entfernt die ausgewählte Spalte aus der Liste Angezeigte Spalten.
Format	Zeigt das Dialogfeld Format an.
Summen	Zeigt das Dialogfeld Summen an.
Ausführen	Führt die Abfrage aus.


Dialogfeld Spalte einfügen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Spalte einfügen können Sie eine bestehende Spalte aus einer ausgewählten Tabelle in die Abfrage einfügen.

Dieses Dialogfeld enthält:

Listenfeld	Führt die Spalten auf, die Sie einfügen können. Tip


Dialogfeld Funktion einfügen

Beschreibung  Mit dem Dialogfeld Funktion einfügen können Sie eine Funktion in Ihre Bedingung oder Abfrage einfügen.

Dieses Dialogfeld enthält:

Kategorien zeigen	Gibt die Funktionsarten an, die in dem Listenfeld angezeigt werden: Zahl, Zeichen, Datum, Konvertierung, Gruppe oder Andere.
Listenfeld	Führt die verfügbaren Funktionen unter der ausgewählten Kategorie auf.
Argumente einfügen	Gibt an, ob das Argument aufgenommen werden soll oder nicht. (Als Argument wird der Ausdruck einer Funktion in Klammern bezeichnet, der Informationen zur Benutzung durch die Funktion enthält.)


Dialogfeld SQL anzeigen

  Verwandte Themen

In dem Dialogfeld SQL anzeigen werden die bislang für Ihre Abfrage benutzten SQL-Anweisungen angezeigt. Sie können die SQL-Anweisungen im Dialogfeld SQL anzeigen nicht bearbeiten oder kopieren.


Die Spalte bzw. Spalten, die jede Zeile einer Tabelle eindeutig identifizieren. Primärschlüssel werden fett dargestellt.


Eine Spalte, die die Primärschlüsselwerte in einer anderen Tabelle referenziert. Fremdschlüssel werden kursiv dargestellt.


Die Quellen, aus denen eine Abfrage Daten abruft, einschließlich Tabellen, Ansichten, Abfragen, Synonymen und Snapshots.


Eine Datenquelle, die aus Spalten aus einer oder mehreren Datenbanktabellen besteht, die in einer logischen Tabelle kombiniert werden.


Eine Zeichenfolge, die aus einer Funktion oder einem Vorgang besteht, und die Datenbankspalten, für die der Vorgang ausgeführt wird (z.B. SALARY+COMMISSION).


Entsprechend den Benennungsregeln muß jeder Abfragename mit einem Buchstaben beginnen und kann maximal 30 Buchstaben und Zahlen enthalten. Wenn Sie sich beim Benennen von Datenbankabfragen nicht an die Benennungsregeln halten, konvertiert Query Builder den Namen in einen "literalen" Wert (Wert in Anführungszeichen).


Über den Bereich Bedingungen

Der Bereich Bedingungen ist ein Abschnitt im Fenster Abfrage, der das Feld Bedingung enthält, in das Sie Ausdrücke und Bedingungen eingeben können. Query Builder-Bedingungen generieren automatisch WHERE- oder HAVING-Klauseln je nach Bedarf.

Mit den Tabellen- und Spaltennamen wird angegeben, welche Spalten in der Bedingung gefiltert werden. Sie können den Tabellennamen weglassen, wenn der Spaltenname eindeutig ist. Tip

Hinweis:  Wenn Sie das Feld Bedingung aktivieren, erhält der Cursor ein (+)-Zeichen, mit dem angegeben wird, daß jedes Objekt, auf das Sie klicken, zu Ihrer Bedingung hinzugefügt wird. Um dies zu deaktivieren, können Sie auf [image] in der Symbolleiste klicken.


Über das Fenster Abfrage

Wenn Sie eine Abfrage öffnen, zeigt Query Builder diese im Fenster Abfrage an, das in zwei Bereiche unterteilt ist:

•	den Bereich Bedingungen, in dem sich das Feld Bedingung befindet. In ihm wird die Abfrage optimiert.

•	den Bereich Datenquelle, in dem die Tabellen (Ansichten, Snapshots usw.) angezeigt werden, die in der Abfrage verwendet werden.

Je nach den Voreinstellungen können die Bereiche vertikal oder horizontal geteilt werden.

Jede Tabelle wird in einem Feld angezeigt, das den Namen der Tabelle und die Namen der Spalten in dieser Tabelle enthält. Es gibt eine Reihe von Symbolen, mit denen das aktuelle Datenbankobjekt gekennzeichnet werden kann. Die Symbole geben an, ob beschreibende Kommentare angehängt sind, geben den Typ der Datenquelle sowie den Datentyp der Spalte an und weisen darauf hin, ob Indizes für Tabellen in der Abfrage definiert wurden.

Linien werden gezeichnet, um die Beziehungen zwischen den Spalten anzugeben. Beziehungen werden zwischen Tabellen festgelegt, um zu identifizieren, in welcher Beziehung eine Spalte in einer Tabelle zu einer Spalte in einer anderen Tabelle steht.

Mit einem Häkchen links neben dem Spaltennamen wird angegeben, daß die Spalte in der Abfrage aufgenommen wurde. Dies bedeutet, daß Query Builder bei der Ausführung der Abfrage nach Daten sucht, die dem Spaltennamen entsprechen. Wenn kein Häkchen angezeigt wird, bedeutet dies, daß die Daten in der Spalte nicht in der Abfrage aufgenommen werden.


Über den Bereich Datenquelle

  Verwandte Themen

Der Bereich Datenquelle ist der Abschnitt im Fenster Abfrage, in dem Objekte wie z.B. Tabellen und Beziehungen angezeigt werden.


Über die Symbolleiste

  Verwandte Themen

Die Symbolleiste wird am oberen Rand des Query Builder-Fensters angezeigt. Klicken Sie auf jedes Symbol, um eine Beschreibung anzuzeigen.


Symbol Speichern

Speichert Ihre Abfrage in der angegebenen Datei.


Symbol Ausschneiden

Schneidet den ausgewählten Text aus und speichert ihn in der Zwischenablage des Betriebssystems.


Symbol Kopieren

Kopiert den ausgewählten Text in die Zwischenablage des Betriebssystems, während der Originaltext unverändert bleibt.


Symbol Einfügen

Fügt den aktuellen Inhalt der Zwischenablage bei der aktiven Position ein. Wenn die Zwischenablage leer ist, wird nichts eingefügt. Sie können jeden Text einfügen, den Sie ausgeschnitten oder kopiert haben.


Symbol Löschen

Entfernt das ausgewählte Objekt (d.h. Text, Tabelle). Im Gegensatz zu dem Befehl Ausschneiden setzt der Befehl Löschen die entfernten Objekte nicht in die Zwischenablage des Betriebssystems.


Symbol Alles markieren

Markiert jedes Objekt im aktiven Fenster. Wenn z.B. der Bereich Bedingungen aktiv ist, werden alle Bedingungen in dem Bereich markiert.


Symbol Datentabellen auswählen

Zeigt das Dialogfeld Datentabellen auswählen an.


Symbol Zus. Tabellen auswählen

Zeigt das Dialogfeld Zusammengehörige Tabellen auswählen an. Dieses Symbol ist nur verfügbar, wenn die ausgewählte Tabelle über eine zusammengehörige Tabelle in der verbundenen Datenbank verfügt.


Symbol Tabelle umbenennen

Zeigt das Dialogfeld Tabelle umbenennen an. Dieses Symbol ist nur verfügbar, wenn mindestens eine Tabelle im Arbeitsbereich von Query Builder vorhanden ist.


Symbol Info aufrufen

Zeigt das Dialogfeld Info mit Informationen über das ausgewählte Datenbankobjekt an. Dieses Symbol ist nur verfügbar, wenn ein Datenquellobjekt aktiv ist.


Symbol Tabellenbeziehung festlegen

Zeigt das Dialogfeld Beziehung festlegen an. Dieses Symbol ist nur verfügbar, wenn mehr als eine Tabelle im Bereich Datenquelle vorhanden ist, für die eine Beziehung hergestellt werden kann.


Symbol SQL anzeigen

Zeigt das Dialogfeld SQL anzeigen und die SQL-Anweisung für die aktive Abfrage an.


Symbol Spaltenfolge

Zeigt das Dialogfeld Anzeigen an.


Symbol Spalte definieren

Zeigt das Dialogfeld Spalte definieren an.


Symbol Sortieren

Zeigt das Dialogfeld Sortieren an.


Symbol Und

Fügt den Operator AND in Ihre Bedingung ein. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können AND auch direkt in das Feld Bedingung eingeben.


Symbol Oder

Fügt den Operator OR in Ihre Bedingung ein. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können OR auch direkt in das Feld Bedingung eingeben.


Symbol Nicht

Fügt den Operator NOT in die Bedingung ein, um die Bedingung zu negieren. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können NOT auch direkt in das Feld Bedingung eingeben.


Symbol Bedingung auflösen

Löst die Gruppierung von Bedingungen auf, die mit logischen Operatoren kombiniert sind, wie z.B. AND, OR, NOT. Dieses Symbol ist nur verfügbar, wenn Sie einen logischen Operator im Bereich Bedingung ausgewählt haben.


Symbol Annehmen

Validiert und akzeptiert die aktive Bedingung. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können auch die Eingabetaste drücken, wenn das Feld Bedingung aktiv ist, um die Bedingung zu akzeptieren und zu validieren.


Symbol Abbrechen

Bricht die aktuelle Bedingung ab. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Symbol Spalte einfügen

Zeigt das Dialogfeld Spalte einfügen an. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Symbol Funktion einfügen

Zeigt das Dialogfeld Funktion einfügen an. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Über Datentypen

  Verwandte Themen

Die gebräuchlichsten Datentypen in Query Builder sind:

CHAR oder VARCHAR2	CHAR wird für Zeichendaten mit einer festen Länge bis zu einer maximalen Größe von 255 Byte und einer Standardgröße von einem Byte benutzt. VARCHAR2 wird für Zeichenfolgen mit variabler Länge mit einer maximalen Größe von 2000 Byte benutzt. Bei VARCHAR2 müssen Sie die Größe angeben.
NUMBER	NUMBER gibt an, daß die Datenbankspalte Zahlen enthält (Ganzzahlen, Dezimalzahlen oder andere numerische Werte). Sie können Berechnungen mit Zahlen durchführen, die im Datentyp NUMBER dargestellt werden, jedoch nicht mit Zahlen, die mit dem Datentyp CHAR dargestellt werden.
DATE	DATE gibt an, daß die Datenbankspalte Datumswerte enthält. Gültige Datumsangaben, gehen vom 1. Januar 9999 v.Chr. bis zum 31. Dezember 9999 n.Chr. Das Standardformat ist TT-MON-JJ wie in '01-JAN-92'.
NUMBER(p,s)	Der Bereich von p (Gesamtstellen) geht von 1 bis 38. Der Bereich von s (Nachkommastellen) geht von -84 bis 127. Mit den Gesamtstellen wird die Anzahl von zu speichernden Ziffern angegeben. Die Nachkommastellen entsprechen den Ziffern nach dem Dezimalzeichen. Wenn die Gesamtstellenzahl negativ ist, werden die Daten auf die angegebene Anzahl von Stellen links vom Dezimalzeichen gerundet. So bedeutet z.B. eine Angabe von (10, -2), daß auf Hunderterstellen gerundet wird.
Außerdem unterstützt Query Builder beschränkt die folgenden Oracle-Datentypen:

LONG	Eine Spalte vom Typ LONG enthält alphanumerische Daten mit einer variablen Länge von maximal 2 GB (oder 231-1). Wenn Sie eine Spalte vom Typ LONG in einer Query Builder-Abfrage aufnehmen, werden die ersten 2000 Zeichen angezeigt.
RAW	Rohe Binärdaten. Die maximale Größe beläuft sich auf 255 Byte. Werte müssen als Zeichenfolgen in Hexadezimalschreibweise eingefügt werden. Werte werden in Hexadezimalform angezeigt. Sie müssen die Größe für RAW-Datentypen angeben.
LONG RAW	Bei Daten vom Typ LONG RAW werden rohe Binärdaten mit maximal 2 GB angezeigt (sie werden in Hexadezimalform im Fenster Ergebnisse angezeigt). LONG RAW-Datentypen unterliegen denselben Beschränkungen wie RAW-Datentypen.
Hinweis:  Query Builder unterstützt die Konvertierung von Datentypen in den Fällen, in denen Bedingungen und Ausdrücke verschiedene Datentypen in den Vergleichen referenzieren. Weitere Informationen finden Sie im Oracle8 Server SQL Language Reference Manual.


Symbole für Datentypen

  Verwandte Themen

Die folgenden unterstützten Datentypen für alle Spalten in einem Datenquellobjekt werden durch Symbole in der rechten Spalte des Objekts im Arbeitsbereich von Query Builder dargestellt.

Datentyp	Symbol	Beschreibung
Character		Benutzen Sie den Datentyp Character für Zeichendaten mit fester Länge mit einer maximalen Größe von 255 Byte und einer Standardgröße von 1 Byte. Hinweis:  Sie können Zahlen mit dem Datentyp Character darstellen, können jedoch nur mit numerischen Datentypen Berechnungen durchführen.
Varchar2		Benutzen Sie den Datentyp Varchar2 für Zeichenfolgen mit variabler Länge mit einer maximalen Größe von 2000 Byte. Sie müssen eine Größe für den Datentyp Varchar2 angeben.
Number		Benutzen Sie den Datentyp Number für Ganzzahl- oder Gleitkommadaten. Sie müssen eine Gesamtstellenzahl für ganzzahlige Daten eingeben. Der Gleitkomma-Datentyp gilt für Dezimalzahlen. Wenn Sie diesen Datentyp einer Spalte zuweisen, müssen Sie sowohl Gesamtstellen als auch Nachkommastellen angeben. Die Gesamtstellen (gesamte Anzahl von Ziffern in der Zahl) können von 1 bis 38 gehen. Die Nachkommastellen (Anzahl von Ziffern nach dem Dezimalzeichen) können von -84 bis 127 gehen. Wenn die Anzahl von Nachkommastellen negativ ist, werden die Daten auf die angegebene Anzahl von Stellen links neben dem Dezimalzeichen gerundet.  Eine Angabe von (10,2) bedeutet z.B. 10 Ziffern, wobei 2 Ziffern rechts neben dem Dezimalzeichen stehen. Eine Angabe von (10,-2) bedeutet eine Ganzzahl mit 10 Ziffern, auf die nächste Hunderterstelle gerundet.
Date		Benutzen Sie den Datentyp Date für beliebige Datumsangaben. Gültige Datumsangaben gehen vom 1. Januar 4712 v.Chr. bis zum 31. Dezember 4712 n.Chr. Das Standarddatumsformat ist TT-MON-JJ, wie in '01-JAN-97'.
Long		Benutzen Sie den Datentyp Long für lange Textfelder mit alphanumerischen Daten mit variabler Länge bis zu 2 GB.
Raw		Benutzen Sie den Datentyp Raw für rohe Binärdaten. Die maximale Größe beläuft sich auf 255 Byte. Die Werte müssen als Zeichenfolgen in Hexadezimalschreibweise eingefügt werden und werden in Hexadezimalform angezeigt. Sie müssen eine Größe für Daten vom Typ Raw angeben.
Long Raw		Der Datentyp Long Raw wird benutzt, um rohe Binärdaten mit maximal 2 GB zu speichern (die in Hexadezimalform eingegeben und angezeigt werden). Bei den Datentypen Long Raw muß keine Größe angegeben werden.
MLSLABEL		Benutzen Sie den Datentyp MLSLABEL, um das Binärformat eines Labels bei einem sicheren Betriebssystem zu speichern. Labels werden von Trusted ORACLE verwendet, um den Zugriff zu Informationen zu vermitteln. Außerdem können Sie Spalten mit diesem Datentyp definieren, wenn Sie den standardmäßigen ORACLE-Server verwenden. Weitere Informationen über Trusted ORACLE, einschließlich diesem Datentyp und Labels finden Sie im Trusted ORACLE8 Server Administrator's Guide.


Schreibweise für Datenquellobjekte

  Verwandte Themen

Als nächstes sehen Sie ein Beispiel für zwei Datenquellobjekte, die durch eine Beziehung miteinander verknüpft sind.

Klicken Sie auf ein Symbol, einen Indikator oder einen Teil dieser Objekte, um eine Beschreibung anzuzeigen.


Indikator für den Objekttyp

Das Symbol in der oberen linken Ecke eines Datenquellobjekts gibt dessen Typ an:

  Tabelle

  Ansicht

  Abfrage

  Snapshot

  Synonym


Objekttitel

Dies ist der Name des Datenquellobjekts. Sie können den Namen ändern, indem Sie auf den Objekttitel klicken.


Kommentar-Indikator

Dieses Symbol gibt an, daß mit diesem Objekt (bzw. dieser Spalte) ein Kommentar verknüpft ist. Doppelklicken Sie auf dieses Symbol, um das Dialogfeld Info zu öffnen, in dem Sie die Kommentare anzeigen können.


Spaltenname

Dies ist der Name von einer der Spalten in diesem Objekt. Wenn Sie auf einen Spaltennamen doppelklicken, wird die Spalte in der Abfrage aufgenommen.


Indikatoren für den Datentyp

Diese Symbole geben die Datentypen der entsprechenden Spalten an. Wenn Sie auf eines dieser Symbole klicken und die Maustaste gedrückt halten, wird ein Popup-Menü angezeigt, und Sie können einen anderen Datentyp auswählen.


Beziehungslinie

Eine graue Linie, die zwischen zwei Spalten gezogen ist, gibt an, daß zwischen den Spalten an jedem Ende der Linie eine Beziehung erstellt wurde. Diese Linie wird vom Fremdschlüssel zum Primärschlüssel gezogen.


Indikator für Selbstbeziehungen

Dieses Symbol gibt an, daß zwischen dieser Spalte (Fremdschlüssel) und einer anderen Spalte (Primärschlüssel) in derselben Tabelle eine Selbstbeziehung erstellt wurde.


Primärschlüssel

Ein in Fettschrift angezeigter Spaltenname gibt an, daß diese Spalte als Primärschlüssel für das Objekt definiert wurde.


Fremdschlüssel

Ein in Kursivschrift angezeigter Spaltenname gibt an, daß diese Spalte ein Fremdschlüssel ist, der mit einem Primärschlüssel in einer anderen Spalte verbunden ist. Ein Fremdschlüssel kann nur definiert werden, indem eine Beziehung zwischen zwei Spalten festgelegt wird.


Oberfläche des Datenbanktrigger-Editors

  Verwandte Themen

Mit dem Datenbanktrigger-Editor können Sie BEFORE/AFTER-Trigger für Tabellen und INSTEAD OF-Trigger für Ansichten und Objektansichten erstellen (wenn Sie bei Oracle8 angemeldet sind).

So definieren Sie einen neuen Trigger:

1	Wählen Sie einen Benutzernamen (ein Schema) aus der Dropdown-Liste Eigentümer Tabelle.

2	Wählen Sie einen Tabellennamen aus der Dropdown-Liste Tabelle.

In der Dropdown-Liste Tabelle finden Sie eine Liste der Tabellennamen, die dem Benutzer gehören, der in dem Feld Eigentümer Tabelle angegeben wird. Wenn Sie in dem Feld Eigentümer Tabelle einen anderen Benutzernamen als Ihren eigenen auswählen, werden in der Dropdown-Liste Tabelle nur die Tabellen angezeigt, zu denen Sie eine Zugriffsberechtigung haben.

(Nur bei Ansichten.) Um einen INSTEAD OF-Trigger für eine Objektansicht zu definieren, klicken Sie auf den Pfeil neben Tabelle, um eine Dropdown-Liste anzuzeigen, und wählen Ansicht:. Danach wählen Sie einen Namen aus der Dropdown-Liste Ansicht.

3	Klicken Sie auf Neu, um einen neuen Datenbank-Trigger zu erstellen.

Dem neuen Trigger wird automatisch ein eindeutiger Triggername (bezogen auf die anderen Trigger in demselben Schema) in der Dropdown-Liste Name zugewiesen. Sie können den Triggernamen ändern.

In der Dropdown-Liste Name wird eine Liste mit Triggernamen angezeigt, die mit der Tabelle (oder der Ansicht) verknüpft sind, die in dem Feld Tabelle (oder Ansicht) dargestellt wird. In der Dropdown-Liste Name werden nur die Namen der Datenbanktrigger angezeigt, die mit den Tabellen verknüpft sind, zu denen Sie eine Zugriffsberechtigung haben.

4	Geben Sie die Triggeroptionen an.

Die folgenden Abschnitte enthalten Informationen über die verschiedenen Optionen, die Sie in dem Datenbanktrigger-Editor benutzen können, um einen Datenbanktrigger zu definieren.

5	Nachdem Sie die Triggeroptionen und die Aktion angegeben haben, klicken Sie auf Speichern, um den Trigger zu kompilieren.

Triggerauslösende Optionen:

Before/After	(Nur bei Tabellen.) Entspricht der Option BEFORE oder AFTER des SQL-Befehls CREATE TRIGGER. Gibt an, wann der Triggerrumpf in bezug auf die triggerauslösende Anweisung ausgelöst wird (z.B. UPDATE, INSERT oder DELETE), die gerade ausgeführt wird. BEFORE-Trigger werden vor der triggerauslösenden Anweisung ausgelöst. AFTER-Trigger werden nach Ausführung der triggerauslösenden Anweisung ausgeführt. BEFORE- und AFTER-Trigger gelten sowohl für Zeilen- als auch für Anweisungstrigger.
Instead Of	(Nur bei Ansichten.) Enspricht der Option INSTEAD OF des SQL-Befehls CREATE TRIGGER. Oracle löst den Trigger aus, anstatt die triggerauslösende Anweisung auszuführen. Der Trigger führt die Einfügen-, Aktualisieren- oder Löschen-Aktionen direkt mit den Basistabellen der Ansicht aus.

Anweisungs-Kontrollkästchen:

UPDATE INSERT DELETE	Gibt den Typ der SQL-Anweisung an (triggerauslösende Anweisung), die den Triggerrumpf auslöst. Die möglichen Optionen sind UPDATE, INSERT und DELETE.  Wählen Sie eines oder mehrere der Kontrollkästchen, um die Option in der triggerauslösenden Anweisung aufzunehmen. Wenn die triggerauslösende Anweisung UPDATE angibt, kann eine optionale Liste mit Spalten in der triggerauslösenden Anweisung aufgenommen werden. Hierzu wird auf die Option Der Spalten unten verwiesen. Wenn mehr als eine Option ausgewählt ist, können Sie die bedingten Prädikate UPDATING, INSERTING und DELETING verwenden, um bestimmte Codeblöcke im Triggerrumpf auszuführen. Hierzu wird auf Triggerrumpf unten verwiesen.

Option Der Spalten:

Der Spalten	(Nur bei Tabellen.) Entspricht der OF-Klausel in der triggerauslösenden UPDATE-Anweisung des SQL-Befehls CREATE TRIGGER. Zeigt eine Liste der Spalten für die Tabelle an, die in dem Feld Tabelle ausgewählt wurde. Diese Liste ist nur aktiv, wenn die triggerauslösende Anweisung UPDATE angibt. Klicken Sie auf eine oder mehrere Spalten in diesem Listenfeld, um anzugeben, daß der Trigger nur ausgelöst wird, wenn eine der ausgewählten Spalten aktualisiert wird. Wenn der Trigger ausgelöst werden soll, sobald eine beliebige Spalte in der Tabelle aktualisiert wird, klicken Sie auf keinen der Spaltennamen in der Liste. Diese Option ist bei INSTEAD OF-Triggern nicht verfügbar. Oracle löst INSTEAD OF-Trigger immer dann aus, wenn ein UPDATE einen Wert in einer Spalte der Ansicht ändert. Oracle8-Objekte: Hier können Sie keine verschachtelten Tabellenspalten bzw. LOB-Spalten angeben.

Option Für jede Anweisung:

Anweisung	Entspricht der Option FOR EACH STATEMENT des SQL-Befehls CREATE TRIGGER.  Bezeichnet den Trigger als Anweisungstrigger. Oracle löst einen Anweisungstrigger nur einmal aus, wenn die triggerauslösende Anweisung ausgegeben wird (unabhängig von der Anzahl von betroffenen Zeilen), wenn die optionale Trigger-Integritätsregel in der WHEN-Klausel erfüllt wird. Diese Option ist bei INSTEAD OF-Triggern nicht verfügbar.

Optionen Für jede Zeile:

Zeile	Entspricht der Option FOR EACH ROW des SQL-Befehls CREATE TRIGGER.  Bezeichnet den Trigger als Zeilentrigger. Oracle löst einen Zeilentrigger einmal für jede Zeile aus, die von der triggerauslösenden Anweisung betroffen ist und die optionale Trigger-Integritätsregel erfüllt, die in der WHEN-Klausel angegeben wird.
Referenziert	Gibt Korrerlationsnamen an. Sie können Korrelationsnamen im Triggerrumpf und in der WHEN-Klausel eines Zeilentriggers angeben, um alte und neue Werte der aktuellen Zeile speziell zu referenzieren. Die Standard-Korrelationsnamen sind OLD und NEW. Wenn Ihr Zeilentrigger mit einer Tabelle mit der Bezeichnung OLD oder NEW verknüpft ist, benutzen Sie diese Option, um andere Korrelationsnamen anzugeben, damit es zu  keinem Konflikt zwischen dem Tabellennamen und dem Korrelationsnamen kommt. Gilt nur für Zeilentrigger.
OLD als	Gibt einen Korrelationsnamen an, um einen Konflikt zwischen dem Korrelationsnamen und einer Tabelle zu vermeiden, die den Namen OLD hat.
NEU als	Gibt einen Korrelationsnamen an, um einen Konflikt zwischen dem Korrelationsnamen und einer Tabelle zu vermeiden, die den Namen NEW hat.
Wenn	(Nur bei Tabellen.) Entspricht einem Booleschen SQL-Ausdruck in der WHEN-Klausel des SQL-Befehls CREATE TRIGGER. Gilt nur für Zeilentrigger. Gibt eine optionale Triggereinschränkung an. Wenn er aufgenommen ist, wird der SQL-Ausdruck für jede Zeile ausgewertet, die von dem Trigger betroffen ist. Wenn die Auswertung des Ausdrucks TRUE für eine Zeile ergibt, wird der Triggerrumpf ausgelöst. Wenn die Auswertung des Ausdrucks für eine Zeile FALSE der NOT TRUE ergibt (d.h. unbekannt, wie bei Nullen), wird der Triggerrumpf nicht ausgelöst. Oracle8-Objekte: Sie können Objektspalten oder deren Attribute, VARRAY, verschachtelte Tabellen- oder LOB-Spalten referenzieren. Sie können keine PL/SQL-Funktionen oder -Methoden in der Triggereinschränkung aufrufen.

Angabe der Triggeraktion in:

Triggerrumpf	Der PL/SQL-Block, den Oracle zur Auslösung des Triggers ausführt. Hier handelt es sich um ein mehrzeiliges Textfeld mit Bildlaufmöglichkeit, in dem Sie einen PL/SQL-Block eingeben und bearbeiten können. Triggerrümpfe können SQL- und PL/SQL-Anweisungen umfassen. Die Schlüsselwörter BEGIN und END sind erforderlich. Der Triggerrumpf für Zeilentrigger kann Korrelationsnamen und die Option REFERENZIERT sowie die bedingten Prädikate INSERTING, DELETING und UPDATING enthalten. Wenn mehr als ein Typ einer triggerauslösenden Anweisung für den Zeilentrigger angegeben wird, z.B. INSERT und UPDATE, können Sie die folgenden Bedingungen aufnehmen, um bestimmte Codeblöcke im Triggerrumpf auszuführen: IF INSERTING THEN...END IF; IF UPDATING THEN...END IF;

Die Schaltflächen im Editor sind:

Neu	Erstellt einen neuen Datenbanktrigger. Klicken Sie auf Neu, um mit der Definition eines neuen Triggers zu beginnen.
Speichern	Speichert die Triggeroptionen und kompiliert die Quelle, die im Feld Triggerrumpf angezeigt wird. Als Folge der Kompilierung generierte Fehlermeldungen werden in dem Meldungsfeld angezeigt.
Wiederherstellen	Stellt den Datenbanktrigger in dem Status wieder her, den er beim letzten Speichern- oder Wiederherstellenvorgang hatte.
Löschen	Löscht den aktuellen Datenbanktrigger mit einer entsprechenden Bestätigung aus der Datenbank.
Schließen	Schließt den Datenbanktrigger-Editor.
Hilfe	Zeigt dieses Hilfethema an.


Über Datenbanktrigger

Datenbanktrigger sind Prozeduren, die in der Datenbank gespeichert sind und implizit ausgeführt werden, wenn eine triggerauslösende Anweisung, wie z.B. INSERT, UPDATE oder DELETE für die verknüpfte Tabelle ausgegeben wird. Trigger können nur auf Tabellen und nicht auf Ansichten definiert werden. Allerdings werden Trigger auf der Basistabelle einer Ansicht ausgelöst, wenn eine INSERT-, UPDATE- oder DELETE-Anweisung für die Ansicht ausgegeben wird.

Ein Trigger kann SQL- und PL/SQL-Anweisungen enthalten, die als eine Einheit ausgeführt werden. Außerdem können sie andere gespeicherte Prozeduren aufrufen. Benutzen Sie Trigger nur, wenn erforderlich. Die übermäßige Benutzung von Triggern kann zu kaskadierenden oder rekursiven Triggern führen. Wenn z.B. ein Trigger ausgelöst wird, kann eine SQL-Anweisung im Triggerrumpf potentiell andere Trigger auslösen.

Mit Datenbanktriggern können Sie komplexe Geschäftsregeln erzwingen und sicherstellen, daß sich alle Anwendungen auf dieselbe Weise verhalten. Beim Entwurf von Triggern berücksichtigen Sie folgende Richtlinien:

•	Benutzen Sie Trigger, um sicherzustellen, daß die zugehörigen Aktionen ausgeführt werden, wenn ein bestimmter Vorgang ausgeführt wird.

•	Benutzen Sie Datenbanktrigger nur für zentralisierte, globale Vorgänge, die für die triggerauslösende Anweisung ausgelöst werden sollen, unabhängig davon, welcher Benutzer oder welche Datenbankanwendung die Anweisung ausgibt.

•	Definieren Sie keine Trigger, die eine schon in Oracle integrierte Funktionalität duplizieren. So definieren Sie z.B. keine Trigger, um Regeln der Datenintegrität zu erzwingen, die jederzeit mit deklarativen Integritätsregeln erzwungen werden können.

•	Begrenzen Sie die Größe von Triggern (60 Zeilen oder weniger werden empfohlen). Wenn die Logik für Trigger mehr als 60 Zeilen mit PL/SQL-Code erfordert, wird empfohlen, den größten Teil des Codes in einer gespeicherten Prozedur aufzunehmen und die Prozedur dann aus dem Trigger aufzurufen.

•	Achten Sie darauf, daß Sie keine rekursiven Trigger erstellen. Wenn Sie z.B. einen AFTER UPDATE-Anweisungstrigger auf einer EMP-Tabelle erstellen, die selbst eine UPDATE-Anweisung für EMP ausgibt, wird der Trigger rekursiv ausgelöst, bis kein Speicherplatz mehr vorhanden ist.

Zusätzliche Informationen über die Benutzung von Triggern in Anwendungen finden Sie im racle8 Application Developer's Guide. Weitere Informationen über die verschiedenen Triggertypen finden Sie im Oracle8 Concepts Manual.


Zeigt die Benutzer-ID des Eigentümers der aktuellen Datenbanktabelle an. Klicken Sie auf den Pfeil rechts neben diesem Feld, um eine Dropdown-Liste der Benutzer aufzurufen.


Zeigt den Namen der aktuellen Datenbanktabelle oder Ansicht an. Klicken Sie auf den Pfeil rechts neben diesem Feld, um eine Dropdown-Liste der Tabellen oder Ansichten anzuzeigen, die dem Benutzer gehören, der in dem Feld Eigentümer Tabelle angegeben wird. Klicken Sie auf eine Tabelle oder Ansicht in der Liste, um sie auszuwählen. In der Lste werden nur die Namen der Datenbanktabellen oder Ansichten angezeigt, zu denen Sie Zugriff haben. (Ansichten sind nur bei Oracle8 zutreffend.)


Zeigt den Namen des aktuellen Datenbanktriggers an. Klicken Sie auf den Pfeil rechts neben diesem Feld, um eine Dropdown-Liste der Triggernamen für die Tabelle oder Ansicht in dem Feld Tabelle/Ansicht anzuzeigen. In der Namensliste werden nur die Namen der Datenbanktrigger angezeigt, zu denen Sie Zugriff haben.


Gibt an, wann der Triggerrumpf in bezug auf die auslösende Anweisung ausgelöst wird (z.B. UPDATE, INSERT oder DELETE), die gerade ausgeführt wird. Diese Gruppe mit Optionsschaltflächen entspricht den Optionen BEFORE/AFTER und INSTEAD OF des SQL-Befehls CREATE TRIGGER.


Gibt an, daß der Trigger vor der auslösenden Anweisung ausgelöst wird.


Gibt an, daß der Triggerrumpf nach der auslösenden Anweisung ausgelöst wird.


Gibt an, daß Oracle den Trigger auslöst, anstatt die triggerauslösende Anweisung auszuführen. Nur bei Ansichten.


Gibt den Typ von SQL-Anweisung an, der den Triggerrumpf auslöst. Die möglichen Optionen sind UPDATE, INSERT und DELETE. Nur bei Tabellen.


Gibt an, daß der Trigger bei einem INSERT-Ereignis ausgelöst wird.


Gibt an, daß der Trigger bei einem DELETE-Ereignis ausgelöst wird.


Gibt an, daß der Trigger bei einem UPDATE-Ereignis ausgelöst wird.


Zeigt eine Liste der Spalten für die Tabelle an, die in dem Feld Tabelle ausgewählt wurde. Diese Liste ist nur aktiv, wenn die Option UPDATE im Feld Anweisung aktiviert ist. Nur bei Tabellen.


Gibt einen Zeilentrigger an. Entspricht der Option FOR EACH ROW des Befehls CREATE TRIGGER.


Gibt einen Anweisungstrigger an. Entspricht der Option FOR EACH STATEMENT des Befehls CREATE TRIGGER.


Gibt einen Korrelationsnamen an, um einen Namenskonflikt zwischen den Korrelationsnamen und einer Tabelle oder Ansicht zu vermeiden, die den Namen OLD hat.


Gibt einen Korrelationsnamen an, um einen Namenskonflikt zwischen dem Korrelationsnamen und einer Tabelle oder Ansicht zu vermeiden, die den Namen NEW hat.


Gibt einen Booleschen SQL-Ausdruck in einer WHEN-Klausel an. Wenn er aufgenommen ist, wird der Ausdruck in der WHEN-Klausel für jede Zeile ausgewertet, die von dem Trigger betroffen ist. Wenn die Auswertung des Ausdrucks TRUE für eine Zeile ergibt, wird der Triggerrumpf ausgelöst. Wenn der Ausdruck für eine Zeile FALSE oder NOT TRUE ergibt (d.h. unbekannt, wie bei Nullen), wird der Triggerrumpf nicht ausgelöst. Nur bei Tabellen.


Hier handelt es sich um ein mehrzeiliges Auswahltextfeld, in dem Sie einen PL/SQL-Datenbanktriggerrumpf eingeben und bearbeiten können. Triggerrümpfe sind PL/SQL-Blöcke, die SQL- und PL/SQL-Anweisungen umfassen können.


Erstellt einen neuen, unbenannten Datenbanktrigger.


Speichert die Triggeroptionen und kompiliert die Quelle, die in dem Feld Triggerrumpf angezeigt wird. Fehlermeldungen, die als Folge der Kompilierung generiert werden, werden in einem separaten Meldungsfeld angezeigt.


Stellt den Datenbanktrigger in dem Status wieder her, den er beim letzten Speichern- oder Wiederherstellenvorgang hatte. Wenn kein Speichern- oder Wiederherstellenvorgang eingetreten ist, wird der Datenbanktrigger wieder in den Originalzustand versetzt.


Löscht den aktuellen Datenbanktrigger mit einer entsprechenden Bestätigung aus der Datenbank.


Oberfläche des PL/SQL-Interpreters

Der PL/SQL-Interpreter ist ein Debugging-Arbeitsbereich, in dem Sie Quellcode anzeigen, Debug-Aktionen erstellen, Programmblöcke sowie Interpreter-Befehle, PL/SQL- und SQL-Anweisungen ausführen können.

Standardmäßig sind immer zwei Ausschnitte im PL/SQL-Interpreter geöffnet: der Quellausschnitt und der Interpreter-Ausschnitt.

Standardmäßige Schaltflächen in der Symbolleiste  Alle Ausschnitte im Interpreter benutzen dieselbe Symbolleiste. Mit Ausnahme von Schließen werden die folgenden Schaltflächen nur während der unterbrochenen Ausführung eines Programmblocks aktiviert und werden für das Debugging benutzt.

Hinein		Nimmt die Ausführung des unterbrochenen Programmblocks bis zur nächsten ausführbaren Anweisung wieder auf.
Über		Nimmt die Ausführung des unterbrochenen Programmblocks bis zur nächsten ausführbaren Anweisung auf, wobei über Aufrufe von verschachtelten Unterprogrammen gegangen wird.
Heraus		Nimmt die Ausführung eines verschachtelten Unterprogramms wieder auf, wobei die Ausführung bei der nächsten ausführbaren Anweisung in dem aufrufenden Programmblock unterbrochen wird.
Go		Nimmt die Ausführung des unterbrochenen Programmblocks bis zum Ende des Programmblocks oder bis zur nächsten Debug-Aktion wieder auf.
Zurücksetzen		Beendet die aktuelle Debug-Ebene. Wenn die aktuelle Debug-Ebene 1 ist, wird die unterbrochene Ausführung abgebrochen.
Schließen		Schließt das PL/SQL-Interpreter-Fenster.
Hilfe		Zeigt dieses Hilfethema an.

Quellausschnitt  Im Quellausschnitt wird eine schreibgeschützte Kopie des gerade ausgewählten Programmblocks angezeigt. Schlüsselwörter, Kommentare, Zeichenfolgen und Symbole haben unterschiedliche Farben. Die erste Spalte am linken Rand ist für Symbole reserviert. Quellzeilen werden in der zweiten Spalte numeriert.

Folgende Symbole können angezeigt werden:

Gelber Pfeil		Gibt die aktuelle Ausführungsposition oder PC (Program Counter) an.
Rote Kugel		Gibt einen aktivierten Programmstop oder Trigger an.
Grüne Kugel		Gibt einen deaktivierten Programmstop oder Trigger an.

Außerdem können folgende Symbole im Quellausschnitt angezeigt werden:

|	Gibt die aktuelle Quellposition an. Die aktuelle Quellposition ändert sich je nach Interpreter-Befehlen (z.B. LIST) oder wenn die Ausführung des Programmblocks durch eine Debug-Aktion unterbrochen wird (z.B. einen Programmstop).
B(n)	Gibt die Position eines Programmstops an, wobei n die ID der entsprechenden Debug-Aktion ist.
T(n)	Gibt die Position eines Debug-Triggers an, wobei n die ID der entsprechenden Debug-Aktion ist.

Außerdem können im Quellausschnitt die folgenden Befehle aus einem Popup-Menü aufgerufen werden (wird in Windows mit der rechten Maustaste angezeigt):

Programmstop	Zeigt das Dialogfeld Programmstop an, in dem Sie einen neuen Programmstop definieren können.
Trigger	Zeigt das Dialogfeld Trigger an, in dem Sie einen neuen Debug-Trigger definieren können.
Bearbeiten	Zeigt den Programmblock-Editor an, in dem Sie den aktuellen Programmblock bearbeiten können.

Hinweis:  Nicht alle Systeme unterstützen Popup-Menüs. Die obigen Befehle können auch aus dem Menü Debug aufgerufen werden.

Bildschirmteiler  Mit Bildschirmteilern können Sie den relativen Platz ändern, der von jedem Ausschnitt im Interpreter belegt wird. Wenn der Interpreter das erste Mal angezeigt wird, befindet sich auch zwischen dem Quellausschnitt und dem Interpreter-Ausschnitt ein Bildschirmteiler. Wenn Sie den modalen Interpreter verwenden oder den Navigator-Ausschnitt im nicht-modalen Interpreter eingefügt haben, wird ein zweiter Bildschirmteiler angezeigt.

Interpreter-Ausschnitt  Der Interpreter-Ausschnitt stellt eine Befehlszeilenschnittstelle für PL/SQL, Procedure Builder und SQL dar. Sie können PL/SQL-Anweisungen oder -Blöcke, Befehle von Procedure Builder Interpreter oder SQL-Anweisungen im Anschluß an den PL/SQL> Prompt eingeben. (SQL*Plus-Anweisungen und -Syntax werden nicht unterstützt.)

Mehrzeilige Befehle  Während Sie die PL/SQL-Syntax bei dem PL/SQL> Prompt eingeben, können Sie jederzeit die Eingabetaste drücken, um einen zweiten Prompt in Form von +> aufzurufen. Sie können beliebig viele aufeinanderfolgende sekundäre Prompts anzeigen, bevor Sie den Code mit einem abschließenden Semikolon (;) ausführen.

Debug-Ebenen  Wenn die Programmausführung durch eine Debug-Aktion unterbrochen wird, legt der Interpreter eine Debug-Ebene fest. Auf einer Debug-Ebene können Sie Befehle und PL/SQL-Anweisungen eingeben, die wiederum unterbrochen werden können, so daß es zu verschachtelten Debug-Ebenen kommt. Die aktuelle Debug-Ebene wird durch einen neuen Prompt im Interpreter-Ausschnitt reflektiert, der ein Präfix mit der Nummer der aktuellen Debug-Ebene enthält. So wird z.B. hier der Interpreter-Prompt auf Debug-Ebene 1 dargestellt:

(debug 1)PL/SQL>

Popup-Menü  Der Interpreter-Ausschnitt enthält die folgenden Befehle aus einem Popup-Menü (wird bei Windows mit der rechten Maustaste aufgerufen):

Löschen	Verwirft den gesamten Text im Interpreter-Ausschnitt und gibt einen neuen Prompt aus.
Neuer Prompt	Gibt einen neuen Prompt im Interpreter-Ausschnitt aus. Jede Eingabe nach dem vorherigen Prompt wird ignoriert.
Hinweis:  Nicht alle Systeme unterstützen Popup-Menüs.

Navigator-Ausschnitt  In dem Navigator-Ausschnitt können Sie den aktuellen Aufrufstapel anzeigen sowie Werte von lokalen Variablen und Parametern im aktuellen Geltungsbereich anzeigen und ändern, während Sie debuggen.

Sie können einen Navigator-Ausschnitt zwischen dem Quellausschnitt und dem Interpreter-Ausschnitt einfügen, wenn Sie beim Debuggen von Programmblöcken ganz im Interpreter arbeiten möchten. Um einen Navigator-Ausschnitt einzufügen, wählen Sie Ansicht [image] Navigator-Ausschnitt aus dem Menü. Um den Navigator-Ausschnitt zu verbergen, wählen Sie denselben Befehl erneut. Sie können jeden anderen Ausschnitt ebenfalls verbergen, indem Sie den entsprechenden Befehl aus dem Menü Ansicht auswählen.

Navigator-Symbolleiste  Wenn der Navigator-Ausschnitt angezeigt wird, werden außerdem folgende Schaltflächen in der Symbolleiste angezeigt:

Erstellen		Erstellt eine neue Instanz des gerade ausgewählten Objekts bzw. Knotens.
Löschen		Löscht das ausgewählte Objekt mit einer entsprechenden Bestätigung.
Einblenden		Blendet die erste Unterknotenebene für den gerade ausgewählten Knoten ein.
Ausblenden		Blendet die aktuelle Unterknotenebene des momentan ausgewählten Knotens aus.
Alles einblenden		Blendet alle Unterknotenebenen für den momentan ausgewählten Knoten ein. Blendet jedoch Datentyp- und Attributknoten von Oracle8 nicht rekursiv ein.
Alles ausblenden		Blendet alle Unterknotenebenen für den momentan ausgewählten Knoten aus.
Suchen (Textfeld)		Ermöglicht die Suche nach einem Objekt im Navigator, indem der Name des Objekts ganz oder teilweise eingegeben wird.
Abwärts		Sucht nach dem nächsten Vorkommen der Suchkriterien, die im Feld Suchen angegeben werden.
Aufwärts		Sucht nach dem vorherigen Vorkommen der Suchkriterien, die im Feld Suchen angegeben werden.


Nimmt die Ausführung des unterbrochenen Programmblocks bis zur nächsten ausführbaren Anweisung wieder auf.


Nimmt die Ausführung des unterbrochenen Programmblocks bis zur nächsten ausführbaren Anweisung auf, wobei über Aufrufe von verschachtelten Unterprogrammen gegangen wird.


Nimmt die Ausführung eines verschachtelten Unterprogramms wieder auf, wobei die Ausführung bei der nächsten ausführbaren Anweisung in dem aufrufenden Programmblock unterbrochen wird.


Nimmt die Ausführung des unterbrochenen Programmblocks bis zum Ende des Programmblocks oder bis zur nächsten Debug-Aktion wieder auf.


Beendet die aktuelle Debug-Ebene. Wenn die aktuelle Debug-Ebene 1 ist, wird die unterbrochene Ausführung abgebrochen.


Erstellt eine neue Instanz des gerade ausgewählten Objekts bzw. Knotens.


Löscht das ausgewählte Objekt mit Bestätigung.


Blendet die erste Ebene des Unterknotens für den gerade ausgewählten Knoten ein.


Blendet die aktuelle Ebene des Unterknotens des gerade ausgewählten Knotens aus.


Blendet alle Unterknotenebenen für den gerade ausgewählten Knoten ein. Datentyp- und Attributknoten von Oracle8 werden nicht rekursiv eingeblendet.


Blendet alle Unterknotenebenen für den gerade ausgewählten Knoten aus.


Geben Sie den Namen eines Objekts ein, nach dem im Navigator gesucht werden soll.


Gibt den Namen des aktuellen Programmblocks an und gibt an, ob er sich auf dem Client oder dem Server befindet.


Im Quellausschnitt wird eine schreibgeschützte Kopie des gerade ausgewählten Programmblocks angezeigt. Quellzeilen werden in der zweiten Spalte numeriert.


Mit Bildschirmteilern können Sie den relativen Platz ändern, der von jedem Ausschnitt im Interpreter belegt wird. Wenn der Interpreter das erste Mal angezeigt wird, befindet sich zwischen dem Quellausschnitt und dem Interpreter-Ausschnitt ein Bildschirmteiler. Wenn Sie den modalen Interpreter verwenden oder den Navigator-Ausschnitt im nicht-modalen Interpreter eingefügt haben, wird ein zweiter Bildschirmteiler angezeigt.


In dem Objektnavigator-Ausschnitt können Sie den aktuellen Aufrufstapel anzeigen und die Werte von lokalen Variablen und Parametern im aktuellen Geltungsbereich anzeigen und ändern, während Sie debuggen.


Der Interpreter-Ausschnitt stellt eine Befehlszeilenschnittstelle für PL/SQL, Procedure Builder und SQL dar. Sie können PL/SQL-Anweisungen oder Blöcke, Befehle von Procedure Builder Interpreter oder SQL-Anweisungen im Anschluß an den PL/SQL> Prompt eingeben.


Über Fehlermeldungen

Für jede Komponente gibt es ein eindeutiges Fehlermeldungs-Präfix.

Präfix	Komponente
FRM	Form Builder
OG	Graphics Builder
PDE	Procedure Builder
REP	Report Builder
BRW	Query Builder
BRS	Schema Builder
NX, XBD	Translation Builder
Hinweis: Bei UNIX setzt Report Builder den Wert der Variablen $status, der in einigen Meldungen angezeigt wird, auf  0 (erfolgreicher Abschluß) oder 1 (nicht erfolgreicher Abschluß).

Neben den Fehlermeldungen von Forms Developer oder Reports Developer können möglicherweise auch Fehlermeldungen von anderen Quellen angezeigt werden.

Präfix	Quelle	Hilfe
ORA	Oracle Server	Oracle8 Error Messages-Handbuch
PLS	PL/SQL	Oracle8 Error Messages-Handbuch
NET	SQL*Net	Oracle Network Products Messages-Handbuch
Das Handbuch Oracle8 Error Messages  enthält Fehlermeldungscodes und Beschreibungen für alle Datenbank-Dienstprogramme, wie z.B. SQL*DBA, SQL*Loader,SQL*Module, Export, Import und die Oracle Precompiler.

Systemspezifische Fehlermeldungen werden in der Betriebssystemdokumentation erläutert.


Verbindung mit Oracle Support aufnehmen

Bei einigen Fehlern (d.h. internen Fehlern) müssen Sie Oracle Support anrufen, um den Fehler zu melden. Wenn Sie Verbindung mit Oracle Support aufnehmen, sollten Sie folgende Informationen bereithalten:

1	Ihren Namen, Firmennamen und die ID-Nummer für die Zentrale Kundenunterstützung von Oracle.

2	Hardware, Betriebssystem und Versionsnummer des Betriebssystems, auf dem Oracle Developer läuft.

3	Die vollständige Versionsnummer der Komponenten, die Sie beim Auftreten des Fehlers benutzt haben, einschließlich Revisionsnummer und gegebenenfalls Port-Release-Nummer. (Wenn Sie die Versionsnummer einer Komponenten nicht genau kennen, wählen Sie Hilfe [image] Info.)

4	Alle anderen Produkte (und Versionsnummern), die benutzt wurden, als der Fehler auftrat (z.B. Oracle 8.0.4).

5	Wenn mehrere Fehler oder Meldungen ausgegeben wurden, die genauen Meldungsnummern und die Beschreibung in der Reihenfolge, in der diese angezeigt wurden.

6	Eine Beschreibung des Problems einschließlich ungewöhnlicher Bedingungen.

7	Den Schweregrad des Fehlers entsprechend den folgenden Codes:

•	1:	 Programm kann nicht benutzt werden, kritische Auswirkung auf Vorgänge.

•	2:	 Programm kann benutzt werden, Vorgänge sind ernsthaft eingeschränkt.

•	3:	 Programm kann mit begrenzten Funktionen benutzt werden. Nicht kritisch für den Gesamtbetrieb.

•	4:	 Problem wurde vom Kunden umgangen. Minimale Auswirkung, wenn überhaupt, auf Vorgänge.


Anormale Bedingungen

Gelegentlich werden Sie auf einen Fehler stoßen, der als anormale Bedingung bezeichnet wird. Anormale Bedingungen können folgende Ursachen haben:

•	Ein anderer Benutzer hat eine Funktion ausgeführt, aufgrund derer Ihre Anwendung die angeforderte Task nicht ausführen konnte. Wenn z.B. ein Benutzer die Benutzeroberfläche umgangen und Daten in einer Datenbanktabelle geändert hat, wurde möglicherweise ein ungültiger Wert eingegeben.

•	Die Aufgabe konnte wegen eines Bugs in Oracle Developer nicht erfolgreich ausgeführt werden.

 Maßnahme   Als erstes sollten Sie Verbindung mit dem Systemadministrator aufnehmen, um festzustellen, ob die Meldung von einem anderen Programm als Forms Developer oder Reports Developer verursacht wurde. Wenn Sie feststellen, daß die Meldung nicht auf einen Benutzerfehler oder ein Systemproblem zurückzuführen ist, sollten Sie Verbindung mit Oracle Support aufnehmen aufnehmen.


Über das PL/SQL V1-Konvertierungsdienstprogramm

  Verwandte Themen

Mit dem PL/SQL V1-Konvertierungsdienstprogramm können Sie die Umstellung von Anwendungen automatisieren, die in PL/SQL V1 oder V2 geschrieben wurden.

Wenn Trigger, Programmblöcke und PL/SQL-Blöcke in den Forms, Berichten und grafischen Anwendungen  in PL/SQL V1 oder V2 geschrieben sind, muß der Code umgestellt werden. Wenn dies nicht geschieht, kann es zu zwei Arten von Problemen kommen:

•	Ein Teil des PL/SQL V1- oder V2-Codes ist in späteren Versionen syntaktisch nicht gültig und erzeugt einen Kompilierungsfehler.

•	Ein Teil des PL/SQL V1- oder V2-Codes ist in späteren Versionen syntaktisch korrekt, hat jedoch eine andere Bedeutung, so daß es zu einem unerwarteten oder fehlerhaften Verhalten kommt.

Das Konvertierungsdienstprogramm löst diese beiden Probleme.


Wie funktioniert das PL/SQL V1-Konvertierungsdienstprogramm
Wie funktioniert das PL/SQLV1-Konvertierungsdienstprogramm?

  Verwandte Themen

Sie können das Konvertierungsdienstprogramm interaktiv oder im Stapelmodus benutzen. In beiden Fällen steuern Sie, ob das Dienstprogramm Ihren Code aktualisiert oder nicht. Der interaktive Modus bietet einen größeren Grad an Flexibilität, da Sie festlegen können, daß das Dienstprogramm einige Änderungen ausführt, während Sie andere manuell ausführen. Im Stapelmodus führt das Dienstprogramm entweder alle Konvertierungen oder gar keine Konvertierungen durch. Unabhängig davon, ob die Konvertierung im interaktiven oder Stapelmodus erfolgt, wird eine Zusammenfassung des Konvertierungsvorgangs in eine Protokolldatei mit der Bezeichnung module.plg geschrieben.

Um das Dienstprogramm interaktiv auszuführen, öffnen Sie gespeicherte Forms, Berichte, grafische Anwendungen oder Bibliotheken, die PL/SQL V1- oder V2-Code enthalten, in dem entsprechenden Builder.

Wenn Sie das Dienstprogramm im Stapelmodus ausführen, wird auf die folgenden Themen verwiesen:

•	Forms im Stapelmodus konvertieren

•	Berichte im Stapelmodus konvertieren

•	Grafische Anwendungen im Stapelmodus konvertieren

Tip

Während das Konvertierungsdienstprogramm Ihren Code umstellen kann, um verschiedene Imkompatibilitäten von V1 oder V2 zu lösen, gibt es doch einige Fälle, die dieses Dienstprogramm nicht lösen kann. Diese führen zu Compiler-Fehlern, die im Dialogfeld Zusammenfassung Konvertierung von PL/SQL V1 (im interaktiven Modus) oder in der Protokolldatei aufgeführt werden, damit Sie diese manuell lösen können. Weitere Informationen finden Sie unter Was kann das PL/SQL V1-Konvertierungsdienstprogramm nicht konvertieren?.

Nachdem das Dienstprogramm eine Anwendung konvertiert und gespeichert hat, wird es für diese Anwendung nie mehr aufgerufen, selbst wenn Sie festgelegt haben, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell vorgenommen haben.


Bevor Sie entscheiden, welchen Modus Sie benutzen, versuchen Sie, einige Module jedes Typs interaktiv zu konvertieren. Dadurch erhalten Sie eine Vorstellung der Probleme, die bei jedem Modultyp auftreten können, und können Sie entscheiden, wie Sie verfahren. So könnten Sie z.B. feststellen, daß Ihre Forms die sorgfältige Überwachung benötigen, die der interaktive Modus bietet, während die Berichte und PL/SQL-Bibliotheken problemlos im Stapelmodus konvertiert werden können.


PL/SQL V1-Konvertierungsdienstprogramm interaktiv verwenden

  Verwandte Themen

Um das Konvertierungsdienstprogramm interaktiv auszuführen, öffnen Sie Forms, Berichte, grafische Anwendungen oder Bibliotheken, die PL/SQL-Code V1oder V2 enthalten, in dem entsprechenden Builder, und speichern Sie die Anwendung dann.

Wichtig:

•	Nachdem das Konvertierungsdienstprogramm eine Anwendung konvertiert und gespeichert hat, kann das Dienstprogramm nie wieder für diese Anwendung aufgerufen werden  - selbst wenn Sie festlegen, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell durchgeführt haben.

Jede PL/SQL V1- oder V2-Anweisung in Ihrem Trigger, PL/SQL-Block oder Programmblock wird im Dialogfeld Konvertierung angezeigt. Dieses Dialogfeld enthält auch die Aktion, die das Konvertierungsdienstprogramm ausführt, wenn Sie festlegen, daß die Konvertierung durchgeführt werden soll. Sie haben vollständige Kontrolle darüber, ob die vorgeschlagene Änderung akzeptiert, ignoriert, die ganze Anwendung konvertiert oder der ganze Vorgang gestoppt werden soll. (Sie können auch das PL/SQL V1-Dialogfeld Konvertierungsoptionen benutzen, um die Parameter festzulegen, die den Konvertierungsvorgang im Hintergrund steuern.)

Das Dienstprogramm verfolgt die von Ihnen vorgenommen Änderungen (sowie die Änderungen, die Sie nicht durchführen wollten) und faßt diese am Ende des Konvertierungsvorgangs in einer Protokolldatei mit der Bezeichnung module.plg zusammen. Sie können dann den PL/SQL-Editor aufrufen, um die Anwendung manuell zu aktualisieren.)


PL/SQL V1-Konvertierungsdienstprogramm im Stapelmodus verwenden

  Verwandte Themen

Wenn Sie das Dienstprogramm im Stapelmodus ausführen möchten, wird auf die folgenden Themen verwiesen:

•	Forms im Stapelmodus konvertieren

•	Berichte im Stapelmodus konvertieren

•	Grafische Anwendungen im Stapelmodus konvertieren


Forms im Stapelmodus konvertieren

  Verwandte Themen

So konvertieren Sie eine Form im Stapelmodus:

1	Stellen Sie sicher, daß Sie alle der Form zugeordneten PL/SQL-Bibliotheken konvertiert haben.

2	Führen Sie einen der folgenden Schritte aus:

•	Führen Sie die GUI-Version von Forms Compiler aus.

•	Führen Sie Forms Compiler aus der Befehlszeile aus.

Unabhängig von der ausgewählten Methode wird eine Zusammenfassung des Konvertierungsvorgangs automatisch in die Protokolldatei module.plg geschrieben, wobei module der Name des konvertierten Formmoduls ist.

Verwendungshinweis:

•	Nachdem das Konvertierungsdienstprogramm eine Anwendung konvertiert und gespeichert hat, kann es nie mehr für diese Anwendung aufgerufen werden - selbst wenn Sie festlegen, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell vorgenommen haben.


Forms mit der GUI-Version von Forms Compiler konvertieren

So konvertieren Sie eine Form mit der GUI-Version des Forms Compilers:

1	Doppelklicken Sie auf das Symbol Form Compiler.

2	Wählen Sie den entsprechenden Modultyp und Modulzugriff.

3	 Wählen Sie das Kontrollkästchen PL/SQL von V1 zu V2.3 umstellen?.

4	Klicken Sie auf OK.


Forms aus der Befehlszeile konvertieren

  Verwandte Themen

So konvertieren Sie eine Form mit dem Form Compiler auf der Befehlszeile:

  Geben Sie folgenden Befehl auf der Befehlszeile ein:

<Form Compiler> MODULE=form BATCH=yes UPGRADE_PLSQL=yes UPGRADE=yes

wobei:

<Form Compiler>	Der Name der ausführbaren Form Compiler-Datei auf Ihrer Plattform ist.
form	Der Name der zu konvertierenden Form ist.
Verwendungshinweise:

•	Wenn Sie UPGRADE_PLSQL=YES angeben, ohne UPGRADE=YES anzugeben, wird eine Fehlermeldung generiert. Da Sie PL/SQL in einer Form nicht konvertieren können, ohne die ganze Form auf 6.0 umzustellen, muß UPGRADE=YES angegeben werden, wenn UPGRADE_PLSQL= YES ist.

•	Wenn Sie viele grafische Anwendungen gleichzeitig konvertieren möchten, verwenden Sie Project Builder. In dem Hilfethema zur Auswahl der Umstellungsmethode in Project Builder finden Sie entsprechende Instruktionen.


Einer Form zugeordnete PL/SQL-Bibliotheken konvertieren

So konvertieren Sie eine PL/SQL-Bibliothek interaktiv:

  Öffnen Sie die Bibliothek in Form Builder, und speichern Sie sie dann.

So konvertieren Sie eine PL/SQL-Bibliothek mit der GUI-Version von Form Compiler:

1	Doppelklicken Sie auf das Symbol Form Compiler.

2	Wählen Sie im Feld Datei die zu konvertierende PL/SQL-Bibliothek aus.

3	Stellen Sie sicher, daß die Zieldatei im Feld Ausgabe in Datei schreiben die Erweiterung .PLL hat.

4	Klicken Sie auf OK.

So konvertieren Sie eine PL/SQL-Bibliothek mit Form Compiler auf der Befehlszeile:

  Geben Sie folgenden Befehl auf der Befehlszeile ein:

<Form Compiler> MODULE=library BATCH=yes UPGRADE_PLSQL=yes UPGRADE=yes

wobei:

<Form Compiler>	Der Name der ausführbaren Form Compiler-Datei auf Ihrer Plattform ist.
library	Der Name der zu konvertierenden Bibliothek ist.
Verwendungshinweis:

•	Wenn Sie UPGRADE_PLSQL=YES angeben, ohne auch UPGRADE=YES anzugeben, wird eine Fehlermeldung generiert. Da Sie PL/SQL in einer Form nicht konvertieren können, ohne die ganze Form auf 6.0 umzustellen, muß UPGRADE=YES angegeben werden, wenn UPGRADE_PLSQL= YES ist.

•	Wenn Sie viele grafische Anwendungen gleichzeitig konvertieren möchten, verwenden Sie Project Builder. In dem Hilfethema zur Auswahl der Umstellungsmethode in Project Builder finden Sie entsprechende Instruktionen.


Form Builder Compiler-Parameter angeben

In dieser Tabelle wird beschrieben, wie sich verschiedene Kombinationen der Parameter BATCH, UPGRADE und UPGRADE_PLSQL auf den Konvertierungsvorgang auswirken:

BATCH	UPGRADE_PLSQL	UPGRADE	Verhalten
NO	YES	YES	PL/SQL in Form wird im Stapelmodus konvertiert (auch wenn BATCH=NO ist). Das Dienstprogramm kann außerhalb von Builder nicht interaktiv aufgerufen werden.
YES	YES	YES	PL/SQL in Form wird im Stapelmodus konvertiert.
NO	NO	YES	PL/SQL in Form wird nicht konvertiert, allerdings wird eine Liste mit empfohlenen Konvertierungen in module.plg geschrieben. Die restliche Form wird auf Forms 6i umgestellt.
YES	NO	YES	PL/SQL in Form wird nicht konvertiert, allerdings wird eine Liste mit empfohlenen Konvertierungen in module.plg geschrieben. Die restliche Form wird auf Forms 6i umgestellt.
NO	NO	NO	Wird benutzt, um eine neue FMX zu kompilieren, ohne die FMB zu ändern. Wenn die Form 1.3 PL/SQL enthält, werden möglicherweise Compiler-Fehler angezeigt, oder der Code verhält sich in V2.3 anders.
YES	NO	NO	Wird benutzt, um eine neue FMX zu kompilieren ohne die FMB zu ändern. Wenn die Form 1.3 PL/SQL enthält, werden möglicherweise Compiler-Fehler angezeigt, oder der Code verhält sich möglicherweise in V2.3 anders.
Wichtig:

Wenn Sie von 45FMT zu 60FMB umstellen und die Option UPGRADE_PLSQL nicht angeben, wird der PL/SQL-Code in der Form nicht konvertiert. Statt dessen wird eine Liste mit empfohlenen Konvertierungen in eine Log-Datei geschrieben. Diese Log-Datei wird im aktuellen Arbeitsverzeichnis gespeichert, das möglicherweise nicht identisch mit dem Verzeichnis ist, in dem die FMT-Datei gespeichert ist.


Berichte im Stapelmodus konvertieren

So konvertieren Sie einen Bericht im Stapelmodus:

1	Stellen Sie sicher, daß Sie alle dem Bericht zugeordneten PL/SQL-Bibliotheken konvertiert haben.

2	Führen Sie einen der folgenden Schritte aus:

•	Führen Sie die GUI-Version von Report Compiler aus.

•	Führen Sie den Report Compiler aus der Befehlszeile aus.

Unabhängig von der ausgewählten Methode wird automatisch eine Zusammenfassung des Konvertierungsvorgangs in die Protokolldatei module.plg geschrieben, wobei module der Name des konvertierten Berichtmoduls ist. Für jedes Modul wird ein separates Protokoll generiert.

Verwendungshinweis:

•	Nachdem das Konvertierungsdienstprogramm eine Anwendung konvertiert und gespeichert hat, kann es nie wieder für diese Anwendung aufgerufen werden - selbst wenn Sie festlegen, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell durchgeführt haben.


Berichte mit der GUI-Version von Report Compiler konvertieren
Berichte mit der GUI-Version von Reports Compiler konvertieren

So konvertieren Sie einen oder mehrere Berichte mit der GUI-Version von Reports Compiler:

1	Doppelklicken Sie auf das Symbol Report Compiler.

2	Wählen Sie im Feld Dokumenttyp Bericht aus.

3	Wählen Sie den entsprechenden Quell- und Ziel-Typ.

4	Mit der Schaltfläche Durchsuchen im Feld Quelle suchen Sie nach den zu konvertierenden Berichten.

5	Mit der Schaltfläche Durchsuchen im Feld Ziel wählen Sie das Ziel für den konvertierten Bericht aus.

6	Klicken Sie auf OK.


Berichte aus der Befehlszeile konvertieren

So konvertieren Sie einen oder mehrere Berichte aus der Befehlszeile:

  Geben Sie auf der Befehlszeile folgenden Befehl ein:

<Report Compiler> SOURCE=rep1,rep2, UPGRADE_PLSQL=yes

wobei:

<Report Compiler>	Der Name der ausführbaren Report Compiler-Datei auf Ihrer Plattform ist.
rep1,rep2,	Der Name des bzw. der zu konvertierenden Berichte ist.


Einem Bericht zugeordnete PL/SQL-Bibliotheken konvertieren

So konvertieren Sie eine PL/SQL-Bibliothek interaktiv:

  Öffnen Sie die Bibliothek in Report Builder, und speichern Sie sie dann.

So konvertieren Sie eine PL/SQL-Bibliothek mit der GUI-Version von Report Compiler:

1	Doppelklicken Sie auf das Symbol Report Compiler.

2	Geben Sie im Feld Dokumenttyp PL/SQL-Bibliothek an.

3	Geben Sie im Feld Quelltyp .PLL an.

4	Geben Sie im Feld Zieltyp .PLL oder .PLX an. Wenn Sie .PLD angeben, wird PL/SQL V1 oder V2 nicht konvertiert.

So konvertieren Sie eine PL/SQL-Bibliothek mit Report Compiler auf der Befehlszeile:

  Geben Sie auf der Befehlszeile folgenden Befehl aus:

<Report Compiler> SOURCE=lib1,lib2, UPGRADE_PLSQL=yes

wobei:

<Report Compiler>	Der Name der ausführbaren Report Compiler-Datei auf Ihrer Plattform ist.
lib1, lib2	Der Name der zu konvertierenden Bibliothek bzw. Bibliotheken ist.
Verwendungshinweis:

•	Wenn Sie viele grafische Anwendungen gleichzeitig konvertieren möchten, verwenden Sie Project Builder. In dem Hilfethema zur Auswahl der Umstellungsmethode in Project Builder finden Sie entsprechende Instruktionen.


Grafische Anwendungen im Stapelmodus konvertieren

So konvertieren Sie grafische Anwendungen im Stapelmodus:

1	Stellen Sie sicher, daß Sie alle der grafischen Anwendung zugeordneten PL/SQL-Bibliotheken konvertiert haben.

2	Geben Sie den folgenden Befehl aus:

<Graphics Builder> openfile=temp.ogd upgrade_plsql=yes savefile=temp1.ogd quit=yes

wobei:

<Graphics Builder>	Der Name der ausführbaren Graphics Builder-Datei auf Ihrer Plattform ist.
Openfile=temp.ogd	Die grafische Anwendung temp.ogd in Graphics Builder öffnet.
Upgrade_plsql=yes	Den V1 oder V2 PL/SQL-Code konvertiert.
Savefile=temp1.ogd	Die konvertierte grafische Anwendung in temp1.ogd speichert.
Quit=yes	Graphics Builder schließt, nachdem die grafische Anwendung konvertiert wurde.
Verwendungshinweise:

•	Eine Zusammenfassung des Konvertierungsvorgangs wird automatisch in die Protokolldatei mit der Bezeichnung module.plg geschrieben, wobei module der Name der konvertierten grafischen Anwendung ist.

•	Wenn Sie viele grafische Anwendungen gleichzeitig konvertieren möchten, verwenden Sie Project Builder. In dem Hilfethema zur Auswahl der Umstellungsmethode in Project Builder finden Sie entsprechende Instruktionen.

•	Nachdem das Konvertierungsdienstprogramm eine Anwendung konvertiert hat, kann es für diese Anwendung nie wieder aufgerufen werden - selbst wenn Sie festlegen, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell vorgenommen haben.


Einer grafischen Anwendung zugeordnete PL/SQL-Bibliotheken konvertieren

So konvertieren Sie eine PL/SQL-Bibliothek interaktiv:

  Öffnen Sie die Bibliothek in Graphics Builder, und speichern Sie sie dann.

So konvertieren Sie eine PL/SQL-Bibliothek im Stapelmodus:

Geben Sie den folgenden Befehl aus:

<Graphics Builder> openfile=temp.lib upgrade_plsql=yes savefile=temp1.lib quit=yes

wobei:

<Graphics Builder>	Der Name der ausführbaren Graphics Builder-Datei auf Ihrer Plattform ist.
openfile=temp.lib	Die Bibliothek temp.lib in Graphics Builder öffnet.
Upgrade_plsql=yes	Den V1 oder V2 PL/SQL-Code konvertiert.
Savefile=temp1.lib	Die konvertierte Bibliothek in temp1.lib speichert.
Quit=yes	Graphics Builder schließt, nachdem die Bibliothek konvertiert wurde.
Verwendungshinweise:

•	Eine Zusammenfassung des Konvertierungsvorgangs wird automatisch in die Protokolldatei module.plg geschrieben, wobei module der Name der konvertierten Bibliothek ist.

•	Nachdem das Konvertierungsdienstprogramm eine Anwendung konvertiert hat,kann es nie wieder für diese Anwendung aufgerufen werden - selbst wenn Sie festlegen, daß alle empfohlenen Konvertierungen ignoriert werden sollen. Dadurch wird verhindert, daß das Dienstprogramm Änderungen überschreibt, die Sie manuell vorgenommen haben.

•	Wenn Sie viele grafische Anwendungen gleichzeitig konvertieren möchten, verwenden Sie Project Builder. In dem Hilfethema zur Auswahl der Umstellungsmethode in Project Builder finden Sie entsprechende Instruktionen.


Was konvertiert das PL/SQL V1-Konvertierungsdienstprogramm?

  Verwandte Themen

Das Konvertierungsdienstprogramm kann folgende Fälle innerhalb der Anwendung lösen:

CHAR ersetzt durch VARCHAR2

Zeichenfolgenlänge für VARCHAR2 erforderlich

Standardausdrücke für OUT und IN OUT nicht zulässig

RETURN erfordert einen Ausdruck

Veraltete vordefinierte Prozeduren ersetzt

Funktion Length gibt NULL für Zeichenfolgen mit der Länge null zurück

Übergabe von NULL an überladenes Unterprogramm wird nicht richtig aufgelöst

Fehlende RETURN-Anweisung in Funktion führt zu Laufzeitfehler

Längen-Integritätsregeln entfernt


CHAR ersetzt durch VARCHAR2

In PL/SQL V1 konnten die Datentypen CHAR und VARCHAR2 beliebig austauschbar benutzt werden. In den Versionen nach V1 wird der Datentyp CHAR rechtsbündig mit Leerstellen aufgefüllt.

In PL/SQL V1 ist diese Anweisung:

var1 CHAR(10) := 'hello';

. . .gleichbedeutend mit 'hello'.

In Versionen nach V1 ergibt diese Anweisung jedoch 'hello     ' (insgesamt zehn Zeichen).

Um das V1-Verhalten von CHAR-Variablen beizubehalten, ersetzt das Konvertierungsdienstprogramm alle CHAR(n)-Deklarationen durch die entsprechende VARCHAR2(n)-Anweisung. Im obigen Beispiel wird var1 zu VARCHAR2(10).

Außerdem ersetzt das Konvertierungsdienstprogramm alle VARCHAR-Anweisungen durch den entsprechenden VARCHAR2-Ausdruck.


Zeichenfolgenlänge für VARCHAR2 erforderlich

Versionen nach V1 erfordern eine Länge für alle Variablen vom Typ VARCHAR2. Wenn schon eine Länge für einen Datentyp CHAR angegeben ist, benutzt das Konvertierungsdienstprogramm diese Länge, wenn die Deklaration durch VARCHAR2 ersetzt wird (weitere Informationen finden Sie unter CHAR ersetzt durch VARCHAR2). Zum Beispiel:

var1 CHAR(10);

. . .wird konvertiert in:

var1 VARCHAR2(10);

Wenn das Konvertierungsdienstprogramm eine CHAR- oder VARCHAR2-Anweisung ohne eine Zeichenfolgenlänge entdeckt, empfiehlt es die Länge von einem Zeichen. Zum Beispiel:

var2 CHAR;

. . .wird konvertiert in:

var2 VARCHAR2(1);

Gleichermaßen wird

var3 VARCHAR2;

. . .konvertiert in:

var3 VARCHAR2(1);

Wenn Sie keine Länge für eine VARCHAR2-Deklaration angeben, generiert der Compiler die folgende Fehlermeldung:

FEHLER 215:  Längenintegritätsregel für Zeichenfolge muß im Bereich (1 . . 32767) liegen.


Standardausdrücke für OUT und IN OUT nicht zulässig

  Beispiel

In PL/SQL V1 konnte auf die Parameter OUT und IN OUT ein Standardausdruck folgen, obwohl dieser Ausdruck immer ignoriert wurde. Das Konvertierungsprogramm entfernt die Standardausdrücke für OUT- und IN-Parameter.

Wenn Sie bestehenden Code kompilieren, der OUT- und IN OUT-Parameter mit Standardausdrücken umfaßt, wird die :

Fehlermeldung 230 generiert, die besagt, daß formale OUT- und IN OUT-Parameter keine Standardausdrücke enthalten dürfen.


Beispiel für das Entfernen von Standardausdrücken

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:

PROCEDURE p (p1 IN OUT NUMBER DEFAULT 25,
             p2 OUT NUMBER DEFAULT 16) IS

BEGIN
. . .
END;

. . . zu:

PROCEDURE p (p1 IN OUT NUMBER, p2 OUT NUMBER) IS

BEGIN
. . .
END;


RETURN erfordert einen Ausdruck

  Beispiel

In PL/SQL V1 konnten Sie eine RETURN-Anweisung ohne einen Ausdruck benutzen, um einen NULL-Wert zurückzugeben. Da alle Funktionen Werte zurückgeben sollten, betrachten Versionen nach V1 die RETURN-Anweisung als obligatorisch. Das Konvertierungsdienstprogramm ersetzt alle RETURN-Anweisungen, auf die kein Ausdruck folgt, durch RETURN NULL.

Wenn Sie bestehenden Code kompilieren, der eine RETURN-Anweisung ohne einen Ausdruck umfaßt, wird die :

Fehlermeldung 503 generiert, die besagt, daß eine RETURN-Anweisung für diesen Rückgabewert erforderlich ist


Beispiel für das Hinzufügen von NULL zu RETURN
Beispiel für Hinzufügen von NULL zu RETURN

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:

FUNCTION f RETURN NUMBER IS
x NUMBER;
BEGIN
x :=13;
IF . . . THEN
RETURN;
END IF;
RETURN x;
END;

. . . zu:

FUNCTION f RETURN NUMBER IS
x NUMBER;
BEGIN
x :=13;
IF . . . THEN
RETURN NULL;	NULL hier hinzugefügt
END IF;
RETURN x;
END;


Veraltete vordefinierte Prozeduren ersetzt

  Beispiel

Die vordefinierte Prozedur TO_PLS_INTEGER, die Zeichenfolgen in PL/SQL-Ganzzahlen konvertiert, ist in Versionen nach V1 veraltet. Das Konvertierungsdienstprogramm ersetzt TO_PLS_INTEGER durch die vordefinierte Prozedur TO_NUMBER.

Wenn Sie die vordefinierte Prozedur TO_PLS_INTEGER nicht ersetzen, wird der Compiler-

Fehler 201 generiert, der besagt, daß der Bezeichner TO_PLS_INTEGER deklariert werden muß.

Hinweis: Andere veraltete vordefinierte Prozeduren müssen manuell ersetzt werden


Beispiel für das Ersetzen veralteter vordefinierter Prozeduren

  Verwandte Themen 	   Alle Beispiele

.Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:

PROCEDURE foo IS
     v INTEGER;
BEGIN
     v := TO_PLS_INTEGER(24);
END;

. . .in:

PROCEDURE foo IS
     v INTEGER;
BEGIN
     v := TO_NUMBER(24); 	TO_PLS_INTEGER wird ersetzt durch TO_NUMBER
 END;


Funktion Length gibt NULL für Zeichenfolgen mit Nullänge zurück

  Beispiel

In PL/SQL V1 wurde die Funktion LENGTH bei der Anwendung auf einen Null-Ausdruck mit dem Wert null aufgelöst. In Versionen nach V1 wird die Funktion LENGTH bei der Anwendung auf einen Null-Ausdruck mit null ausgewertet.

Um das Verhalten von V1 beizubehalten, fügt das PL/SQL-Konvertierungsdienstprogramm das SQL-Prädikat NVL hinzu, um sicherzustellen, daß die Funktion LENGTH bei der Anwendung für einen Null-Ausdruck mit einem Nullwert aufgelöst wird


Beispiel für die Funktion Length

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:

c:=null;
l=LENGTH( c );	In V1 ergibt dies 0.

in:

c:=null;
l=NVL(LENGTH( c ),0);	Der Converter bricht die Funktion LENGTH
                                                       mit der vordefinierten Prozedur NVL um,
                                                       und erzwingt somit, daß der Ausdruck mit 0 aufgelöst wird


Übergabe von NULL an überladenes Unterprogramm wird nicht richtig aufgelöst

  Beispiel

In PL/SQL V1 konnten Sie dasselbe Unterprogramm in einem Paket mit zwei verschiedenen Datentypen definieren: VARCHAR2 und RECORD. Dies wird als Überladen des Unterprogramms bezeichnet. Wenn Sie dann einen NULL-Wert an den Programmblock übergeben haben, ist PL/SQL von einem Datentyp VARCHAR2 ausgegangen. Wenn Sie in Versionen nach V1 jedoch einen NULL-Wert an ein überladenes Unterprogramm innerhalb eines Pakets übergeben, müssen Sie dessen Typ definieren.

Um das V1-Verhalten beizubehalten, führt das PL/SQL-Konvertierungsdienstprogramm je nachdem eine der folgenden Aktionen durch, wenn es auf einen NULL-Wert stößt, der an ein überladenes Unterprogramm übergeben wird:

•	Umbruch von NULL mit TO_CHAR( )

•	Umbruch von NULL mit TO_NUMBER( )

•	Umbruch von NULL mit TO_DATE( )

•	Umbruch von NULL mit NOT

Wenn Sie einen NULL-Wert an ein überladenes Unterprogramm übergeben, ohne den gewünschten Datentyp zu definieren, generiert der Compiler die :

Fehlermeldung 307 generiert, die besagt, daß zu viele Deklarationen des PU-Namens diesem Aufruf entsprechen.


Beispiel für die Übergabe von NULL an überladenes Unterprogramm

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:.

PACKAGE ps1 IS
  TYPE foo IS RECORD(id PLS_INTEGER);
                                    Unterprogramm p ist überladen
  PROCEDURE p(a VARCHAR2);          a ist als Variable vom Typ VARCHAR2 definiert
  PROCEDURE p(a FOO);               a ist außerdem als anderer Datentyps definiert
END;

PROCEDURE foo2 IS
BEGIN
  ps1.p(NULL);                In PL/SQL V1 wird von einem Datentyp VARCHAR2
                                                                      ausgegangen.

END;

... zu:

PACKAGE ps1 IS
  TYPE foo IS RECORD(id PLS_INTEGER);

  PROCEDURE p(a VARCHAR2);
  PROCEDURE p(a FOO);

END;

PROCEDURE foo2 IS
BEGIN
  ps1.p(TO_CHAR(NULL));      Da a vom Typ VARCHAR2 ist, wird der NULL-
                             Wert mit TO_CHAR() umbrochen
END;


Fehlende RETURN-Anweisung in Funktion führt zu Laufzeitfehler

  Beispiel

Wenn die RETURN-Anweisung in einer Funktion in PL/SQL V1 weggelassen wird, führt dies zur Laufzeit zu keinem Problem. In Versionen nach V1 führt dies allerdings zu einem Laufzeitfehler.

Um das V1-Verhalten beizubehalten, fügt das PL/SQL-Konvertierungsdienstprogramm eine RETURN-Anweisung mit einem NULL-Argument zu Funktionen hinzu, die keine RETURN-Anweisung haben.

Hinweis: Eine fehlende RETURN-Anweisung in einer Funktion generiert keinen Compiler-Fehler, sondern einen Laufzeitfehler in Versionen nach V1.


Beispiel für fehlende RETURN-Anweisung

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen PL/SQL V1-Code:

FUNCTION noreturn (arg IN NUMBER) RETURN char IS
BEGIN
  IF (arg > 100000) THEN
    TEXT_IO.PUT_LINE ('The point of no return.');
  ENDIF;
                         RETURN-Anweisung fehlt
END;

. . . zu:

FUNCTION noreturn (arg IN NUMBER) RETURN char IS
BEGIN
  IF (arg > 100000) THEN
    TEXT_IO.PUT_LINE ('The point of no return.');
  ENDIF;
  RETURN NULL;            RETURN NULL vom Converter hinzugefügt
END;


Längen-Integritätsregeln entfernt

  Beispiel

In PL/SQL V2 werden die Längen-Integritätsregeln bei DATE, BOOLEAN, MLSLABEL und ROWID ignoriert. Dies führt jedoch zu Kompilierungsfehlern in V8.

To preserve V2 behavior, the PL/SQL conversion utility removes the constraints.


Beispiel für das Entfernen von Längen-Integritätsregeln

  Verwandte Themen 	   Alle Beispiele

Das Konvertierungsdienstprogramm konvertiert diesen Code:

PROCEDURE badconstraint IS
d DATE(5);
b BOOLEAN(5);
d MLSLABEL(5); --V2 only
r ROWID(5); --V2 only
BEGIN
  null;
END;

. . . in:

PROCEDURE badconstraint IS
d DATE;
b BOOLEAN;
d MLSLABEL; --V2 only
r ROWID; --V2 only
BEGIN
  null;
END;


Was kann das PL/SQL V1-Konvertierungsdienstprogramm nicht konvertieren?

  Verwandte Themen

Das Konvertierungsdienstprogramm kann zwar viele der angetroffenen PL/SQL-Inkompatibilitäten konvertieren, einige Situationen müssen jedoch manuell gelöst werden:

Eindeutige Namen innerhalb eines Paketes erforderlich

Standard-Paketfunktion nicht mehr benutzt

Neue reservierte Wörter in PL/SQL V2.3 oder höher

%ROWTYPE oder %TYPE in Variablen-Deklarationen erforderlich

Die Warnung "Nicht behebbarer Fehler aufgetreten; Konvertierung in Zeile <Zeilennummer> Spalte <Spalte> abgebrochen" wird angezeigt, wenn ein Compiler-Abbruchfehler vorliegt und der Konvertierungsprozeß nicht fortgesetzt werden kann.


Eindeutige Namen innerhalb eines Pakets erforderlich
Eindeutige Namen innerhalb eines Paketes erforderlich

  Beispiel

Wenn Sie in PL/SQL V1 eine Variable mit demselben Namen wie eine Prozedur oder Funktion in demselben Paket erstellt haben, wurde immer die Variable benutzt. Die Prozedur oder Funktion mit demselben Namen wurde ignoriert. In Versionen nach V1müssen Variablen, Funktionen und Prozeduren innerhalb desselben Pakets eindeutig sein.

Um einen Fehler zu vermeiden, stellen Sie sicher, daß alle Prozeduren innerhalb eines Pakets eindeutige Namen haben, entweder indem Sie dies explizit sicherstellen, oder indem Sie das Wort Unused an den Prozedurnamen anhängen.

Hinweis:  In V1 konnten Sie bei Procedure Builder fälschlicherweise einen Programmblock mit demselben Namen wie ein vordefiniertes Paket erstellen. In Versionen nach V1 ist dies nicht zulässig. Wenn Procedure Builder einen Programmblock mit demselben Namen wie ein vordefiniertes Paket entdeckt, ändert Procedure Builder den Namen des Programmblocks beim Laden, indem zwei Dollarzeichen am Ende des Programmblocknamens angehängt werden. Somit wird  DEBUG zu DEBUG$$.


Beispiel für eindeutige Prozedurnamen in einem Paket

  Verwandte Themen 	   Alle Beispiele

In diesem Beispiel wird zuerst V1 PL/SQL-Code dargestellt, der einen V2.3 Compiler-Fehler erzeugt. Danach wird dargestellt, wie Sie den Code ändern könnten, um den Fehler zu vermeiden.

Ändern Sie diesen Code:

PACKAGE pk1 IS
  v1 NUMBER;	v1 ist als Variable festgelegt
  PROCEDURE v1;	v1 ist auch als Prozedur festgelegt
  PROCEDURE p2 (x OUT NUMBER);
END;

PACKAGE BODY pk1 IS
  PROCEDURE v1 IS
  BEGIN
   . . .
  END;

  PROCEDURE p2 (x OUT NUMBER) IS
  BEGIN
x := pk1.v1;
  END;

END;

. . . zu:

PACKAGE pk1 IS
  v1 NUMBER;
  PROCEDURE v1Unused;	Die Prozedur v1 ist als Unused deklariert
  PROCEDURE p2 (x OUT NUMBER);
END;

PACKAGE BODY pk1 IS
  PROCEDURE v1Unused IS
  BEGIN
   . . .
  END;

  PROCEDURE p2 (x OUT NUMBER) IS
  BEGIN
x := pk1.v1;
  END;

END;


Standard-Paketfunktion nicht mehr benutzt

  Beispiel

In PL/SQL V1 konnten Sie die Funktion FLOOR aus Ihrem eigenen Paket, p1, folgendermaßen aufrufen:

v : = p1.FLOOR(x).

Wenn das Paket p1 keine Funktion mit der Bezeichnung FLOOR hatte, hat PL/SQL die Funktion FLOOR im Standardpaket benutzt. Hier handelte es sich um einen PL/SQL-Codierungsfehler, der in PL/SQL V2.3 oder höher behoben wurde. Deshalb prüft der Compiler in PL/SQL V2.3 das Standardpaket nicht auf den Funktionsnamen, sondern gibt die Situation korrekt als Fehler mit der :

Fehlermeldung 302 an, die besagt, daß die Komponente 'CCCCC' deklariert werden muß,

. . . wobei 'CCCCC' der Funktions- oder Prozedurname ist, der in einem Standardpaket oder einer Standardpaketerweiterung vorhanden ist.

Die Meldung, daß falsche Referenzen in dem vordefinierten Paket V1 aufgelöst werden, wird in das Log geschrieben.

Um den Compiler an das Standardpaket zu verweisen, entfernen Sie den fehlerhaften Paketnamen


Beispiel für das Entfernen des Paketpräfix

  Verwandte Themen 	   Alle Beispiele

Das erste Beispiel enthält einen V1 PL/SQL-Code, der einen V2.3 Compiler-Fehler generiert. Danach wird dargestellt, wie Sie den Code ändern könnten, um den Fehler zu vermeiden.

Ändern Sie diesen Code:

PACKAGE pk1 IS a NUMBER;
END;

PROCEDURE p IS v NUMBER;
BEGIN
v := pk1.FLOOR(20.5);
END;

. . . in:

PACKAGE pk1 IS a NUMBER;
END;

PROCEDURE p IS v NUMBER;
BEGIN
v := FLOOR(20.5);	Präfix entfernt
END;


Neue reservierte Wörter in PL/SQL V2.3 oder höher

  Beispiels

Das Wort VARIANCE ist ein reserviertes Wort in PL/SQL V2.3. Wenn es benutzt wird, generiert es einen Compiler-Fehler.

In dem folgenden Beispiel wird dargestellt, wie VARIANCE benutzt wird, ohne einen Fehler zu generieren


Beispiele für reservierte Wörter

  Verwandte Themen 	   Alle Beispiele

In diesem Beispiel wird zuerst ein V1 PL/SQL-Code dargestellt, der einen V2.3 Compiler-Fehler generiert. Danach wird dargestellt, wie Sie den Code ändern könnten, um den Fehler zu vermeiden.

Beispiel 1:

Ändern Sie diesen Code:

FUNCTION variance (y IN NUMBER)
RETURN NUMBER IS

BEGIN
     . . .
     RETURN . . .;
END;

. . .in:

FUNCTION varianceUniqueName (y IN NUMBER) 	Ein eindeutiger Name wird an Variance angehängt.

RETURN NUMBER IS

BEGIN
     . . .
     RETURN . . .;
END;

Beispiel 2:

Beim Aufruf eines Unterprogramms ändern Sie diesen Code:

PROCEDURE foo IS
     x NUMBER;
     y NUMBER;
BEGIN
     . . .
     x := variance(someNumber);
END;

. . .in:

PROCEDURE foo IS
     x NUMBER;
     y NUMBER;
BEGIN
     . . .
     x := varianceUniqueName(someNumber);
END;


%ROWTYPE oder %TYPE in Variablen-Deklarationen erforderlich

  Beispiele

Der PL/SQL V8 Compiler gibt bei der folgenden unzulässigen Syntax eine Fehlermeldung aus (die der PL/SQL V2 Compiler fälschlicherweise zuläßt):

return variable-expression

procedure (parameter IN <table_name>)

procedure (parameter IN <table_name>.<column_name>)

Die korrekte Syntax wäre:

return variable-type

procedure (parameter IN <table_name>%ROWTYPE)

procedure (parameter IN <table_name>.<column_name>%TYPE)

Um den Fehler zu vermeiden, benutzen Sie den Datentyp des Ausdrucks und hängen %ROWTYPE an den Tabellennamen oder %TYPE an den Spaltennamen an.


Beispiele für Variablen-Deklarationen

  Verwandte Themen 	   Alle Beispiele

In diesen Beispiel wird zuerst PL/SQL V2-Code dargestellt, der den Fehler generiert. Danach wird dargestellt, wie Sie den Code bearbeiten können, um den Fehler zu vermeiden.

Beispiel 1:

Ändern Sie diesen Code:

FUNCTION return_column RETURN dept.dname IS
. . .

. . .in:

FUNCTION return_column RETURN dept.dname%TYPE IS
. . .

Ändern Sie diesen Code:

PROCEDURE foo (name IN dept.dname) IS
. . .

. . .in:

PROCEDURE foo (name IN dept.dname%TYPE) IS
. . .

Beispiel 2:

Ändern Sie diesen Code:

FUNCTION return_table RETURN dept IS
. . .

. . .in:

FUNCTION return_table RETURN dept.%ROWTYPE IS
. . .

Ändern Sie diesen Code:

PROCEDURE foo (name IN dept) IS
. . .

. . .in:

PROCEDURE foo (name IN dept%ROWTYPE) IS
. . .

Beispiel 3:

In diesem Beispiel wird eine Ausnahme dargestellt, in der Sie %TYPE nicht benutzen können.

Bei der Deklaration von Parametern ändern Sie diesen Code:

FUNCTION return_parm (x IN NUMBER)
  RETURN x IS
. . .

.. . in:

FUNCTION return_parm (x IN NUMBER)
  RETURN number IS
. . .


Dialogfeld Datenbank-Bibliotheken

Im Dialogfeld Datenbank-Bibliotheken wird eine Liste der Bibliotheken angezeigt, die im Augenblick in der Datenbank gespeichert sind.

Bibliothek	Liste der Bibliotheken, die in der Datenbank verfügbar sind, bei der Sie angemeldet sind. Nur Bibliotheken, für die Sie die GRANT-Berechtigung haben, werden in der Liste angezeigt. Klicken Sie auf einen Bibliotheksnamen, um ihn auszuwählen.


Liste der Bibliotheken, die in der Datenbank verfügbar sind, bei der Sie angemeldet sind. Nur Bibliotheken, für die Sie die GRANT-Berechtigung haben, werden in der Liste angezeigt. Klicken Sie auf einen Bibliotheksnamen, um ihn auszuwählen.


Dialogfeld Neuer Programmblock

Im Dialogfeld Neuer Programmblock können Sie Namen und Typ eines zu erstellenden Programmblocks angeben.

Name	Geben Sie den Namen des Programmblocks ein.
Typ	Gibt den Typ des zu erstellenden Programmblocks an.
Prozedur	Ein PL/SQL-Unterprogramm, das eine bestimmte Folge von Aktionen ausführt.
Funktion	Ein PL/SQL-Unterprogramm, das eine bestimmte Folge von Aktionen ausführt und dann einen Wert zurückgibt.
Paketspez.	Datentypen und Unterprogramme, die von anderen Programmblöcken referenziert werden können.
Paketrumpf	Implementierung des Pakets. Kann private Unterprogramme und Datentypen enthalten. Ist optional, wenn das Paket nur aus Deklarationen besteht.
Typspez.	Deklariert Namen, Variablen (Attribute) und teilhabende Unterprogramme (Methoden) für einen Objekttyp oder Collection-Typ.
Typrumpf	Implementierung der teilhabenden Methoden (Funktionen und Prozeduren), die in der Typspezifikation für ein Objekt definiert sind. Für jede in einem Objekttyp angegebene Methode muß ein entsprechender Methodenrumpf vorhanden sein.
Hinweis: Typspez. Und Typrumpf sind nur aktiviert, wenn Sie bei Oracle8 angemeldet sind.


Geben Sie den Namen des Programmblocks ein.


Gibt den Typ des zu erstellenden Programmblocks an.


Dialogfeld Bibliothek öffnen

Im Dialogfeld Bibliothek öffnen können Sie bestehende Bibliotheken aus dem Dateisystem oder der Datenbank öffnen. Außerdem enthält dieses Dialogfeld eine grafische Benutzeroberfläche für den OPEN-Befehl des Interpreters.

Bibliothek	Geben Sie den Namen (und Pfad) der zu öffnenden Bibliothek ein.
Durchsuchen	Wenn im Feld In Dateisystem oder Beiden ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn im Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.
In	Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert ist.


Geben Sie den Namen (und Pfad) der zu öffnenden Bibliothek ein.


Wenn im Feld In Dateisystem oder Beiden ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn im Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.


Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert ist.


Dialogfeld Bibliothek zuordnen

Im Dialogfeld Bibliothek zuordnen können Sie Bibliotheken der aktuellen Sitzung zuordnen. Außerdem enthält dieses Dialogfeld eine grafische Benutzeroberfläche für den ATTACH-Befehl des Interpreters.

Bibliothek	Geben  Sie den Namen (und Pfad) der zuzuordnenden Bibliothek ein.
Durchsuchen	Wenn im Feld In Dateisystem oder Beiden ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn im Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.
In	Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert ist.
Zuordnen	Bestätigt Ihre Auswahlen, ordnet die Bibliothek zu und schließt das Dialogfeld.


Geben Sie den Namen (und Pfad) der zuzuordnenden Bibliothek ein.


Wenn im Feld In Dateisystem oder Beiden ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn im Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.


Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert ist.


Bestätigt Ihre Auswahlen, ordnet die Bibliothek zu und schließt das Dialogfeld.


Dialogfeld Interpreter-Protokoll

Im Dialogfeld Interpreter-Protokoll können Sie Protokollierungsaktivitäten verwalten. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für den LOG-Befehl des Interpreters dar.

Datei	Geben Sie den Namen der Datei ein, in der die zu protokollierende Sitzung aufgezeichnet werden soll.
Durchsuchen	Zeigt das Datei-Dialogfeld Ihres Betriebssystems an, in dem Sie nach einem Pfad bzw. einem bestehenden Dateinamen suchen und diesen auswählen können.
Anhängen	Wenn dieses Kontrollkästchen ausgewählt ist, wird die Option APPEND aktiviert, d.h. daß die aktuelle protokollierte Sitzung am Ende der bestehenden Protokoll-Datei angehängt wird, die Sie im Textfeld Datei angegeben haben. Sonst werden die aktuellen Protokollinformationen in der angegebenen Datei von der neuen zu protokollierenden Sitzung überschrieben.
Deaktiviert	Wenn dieses Kontrollkästchen ausgewählt ist, wird die Option DISABLED aktiviert, d.h. die Protokollierung in der angegebenen Datei wird vorübergehend unterbrochen, bis sie wieder aktiviert wird.
Protokoll anzeigen	Wenn dieses Kontrollkästchen ausgewählt ist, wird der Interpreter-Protokoll-Browser angezeigt, wenn das Dialogfeld Interpreter-Protokoll akzeptiert wird. Außerdem können Sie den Interpreter-Protokoll-Browser anzeigen, indem Sie Ansicht [image] Interpreter-Protokoll im Interpreter auswählen.


Geben Sie den Namen der Datei ein, in der die zu protokollierende Sitzung aufgezeichnet werden soll.


Zeigt das Datei-Dialogfeld Ihres Betriebssystems an, in dem Sie nach einem Pfad bzw. einem bestehenden Dateinamen suchen und diesen auswählen können.


Wenn dieses Kontrollkästchen ausgewählt ist, wird die Option APPEND aktiviert, d.h. daß die aktuelle protokollierte Sitzung am Ende der bestehenden Protokoll-Datei angehängt wird, die Sie im Textfeld Datei angegeben haben. Sonst werden die aktuellen Protokollinformationen in der angegebenen Datei von der neuen zu protokollierenden Sitzung überschrieben.


Wenn dieses Kontrollkästchen ausgewählt ist, wird die Option DISABLED aktiviert, d.h. die Protokollierung in der angegebenen Datei wird vorübergehend unterbrochen, bis sie wieder aktiviert wird.


IWenn dieses Kontrollkästchen ausgewählt ist, wird der Interpreter-Protokoll-Browser angezeigt, wenn das Dialogfeld Interpreter-Protokoll akzeptiert wird. Außerdem können Sie den Interpreter-Protokoll-Browser anzeigen, indem Sie Ansicht->Interpreter-Protokoll im Interpreter auswählen.


PL/SQL-Interpreter-Protokoll-Browser

Im PL/SQL-Interpreter-Protokoll-Browser werden die aufgezeichneten Meldungen aus der letzten protokollierten Sitzung angezeigt.

Deaktivieren/Aktivieren	Schaltet den aktiven Status der aktuellen Protokollierungssitzung um.
Aus	Beendet die aktuelle Protokollierungssitzung und schließt den Browser.
Listenfeld mit Meldungen	Ein schreibgeschützter Auswahlbereich, in dem eine Aufzeichnung der Ein- und Ausgabe im Interpreter-Ausschnitt angezeigt wird. Sie können den in dem Listenfeld angezeigten Text auswählen, kopieren und durchsuchen.


Schaltet den aktiven Status der aktuellen Protokollierungssitzung um.


Beendet die aktuelle Protokollierungssitzung und schließt den Browser.


Ein schreibgeschützter Auswahlbereich, in dem eine Aufzeichnung der Ein- und Ausgabe im Interpreter-Ausschnitt angezeigt wird. Sie können den in dem Listenfeld angezeigten Text auswählen, kopieren und durchsuchen.


Dialogfeld Anmelden

Im Dialogfeld Anmelden können Sie eine Verbindung zu einer Datenbankinstanz herstellen. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für den CONNECT-Befehl des Interpreters dar.

Benutzername	Geben Sie Ihre Datenbank-Benutzer-ID ein. Sie können die ganze DB-Adresse in dieses Textfeld eingeben, in diesem Fall wird das Kennwort jedoch zurückgegeben.
Kennwort	Geben Sie Ihr Datenbankkennwort ein. In diesem Feld wird das Kennwort nicht zurückgegeben, um die Kennwortsicherheit zu gewährleisten.
Datenbank	Geben Sie die DB-Adresse für die Datenbank ein, bei der Sie sich anmelden wollen. Diese Adresse hat im allgemeinen folgende Form:
	network_protocol:network_node[:database_name]
	Beachten Sie, daß die Felder durch einen Doppelpunkt (:) begrenzt werden. Der Datenbankadministrator gibt Ihnen die richtige DB-Adresse für Ihre Datenbank. Wenn Sie sich bei einer ODBC-Datenquelle anmelden, wird folgende Syntax verwendet:
	username/password@ODBC:datasource[:dbname] Wenn dbname nicht angegeben wird, wird die aktuelle Datenbank für die ODBC-Anmeldung benutzt.
Anmelden	Bestätigt die angegebenen Informationen und versucht, die Verbindung herzustellen. Wenn die Datenbankverbindung erfolgreich ist, wird das Dialogfeld geschlossen. Sonst wird eine Fehlermeldung ausgegeben.


Geben Sie Ihre Datenbank-Benutzer-ID ein. Sie können die ganze DB-Adresse in dieses Textfeld eingeben, in diesem Fall wird das Kennwort jedoch zurückgegeben.


Geben Sie Ihr Datenbankkennwort ein. In diesem Feld wird das Kennwort nicht zurückgegeben, um die Kennwortsicherheit zu gewährleisten.


Geben Sie die DB-Adresse für die Datenbank ein, bei der Sie sich anmelden wollen.


Bestätigt die angegebenen Informationen und versucht, die Verbindung herzustellen. Wenn die Datenbankverbindung erfolgreich ist, wird das Dialogfeld geschlossen. Sonst wird eine Fehlermeldung ausgegeben.


Dialogfeld Liste mit Zugriffsberechtigungen

Im Dialogfeld Liste mit Zugriffsberechtigungen können Sie die Zugriffsberechtigungen zu der gerade ausgewählten Bibliothek oder dem gespeicherten Programmblock im Datenbankserver anzeigen und ändern. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für die GRANT- und REVOKE-Befehle des Interpreters dar. Sie benötigen die GRANT-Zugriffsberechtigung für die Bibliothek, um anderen Benutzern eine Zugriffsberechtigung zu erteilen bzw. zu entziehen.

Listenfeld Benutzer	Listet die Benutzer auf, die im Augenblick eine Zugriffsberechtigung zu der ausgewählten Bibliothek oder dem gespeicherten Programmblock haben. Klicken Sie auf einen Benutzernamen, um diesen Namen in das Textfeld Benutzer einzugeben.
Benutzer	Geben Sie den Namen des Benutzers ein, dem Sie eine Zugriffsberechtigung für die ausgewählte Bibliothek oder den gespeicherten Programmblock erteilen oder entziehen wollen. Dieser Benutzername muß ein gültiger Benutzername für die aktuelle Datenbank sein. Wenn der Benutzer schon in dem Listenfeld Benutzer steht, klicken Sie einfach auf den Namen.
Hinzufügen	Fügt den Benutzernamen zu der Liste der Benutzer hinzu, die die GRANT-Zugriffsberechtigung zu der Bibliothek oder dem gespeicherten Programmblock  haben.
Löschen	Löscht den Benutzernamen aus der Liste der Benutzer, die die GRANT-Zugriffsberechtigung zu der Bibliothek oder dem gespeicherten Programmblock haben.


Listet die Benutzer auf, die im Augenblick eine Zugriffsberechtigung zu der ausgewählten Bibliothek haben. Klicken Sie auf einen Benutzernamen, um diesen Namen in das Textfeld Benutzer einzugeben.


Geben Sie den Namen des Benutzers ein, dem Sie eine Zugriffsberechtigung für die ausgewählte Bibliothek erteilen oder entziehen wollen. Dieser Benutzername muß ein gültiger Benutzername für die aktuelle Datenbank sein. Wenn der Benutzer schon in dem Listenfeld Benutzer steht, klicken Sie einfach auf den Namen.


Fügt den Benutzernamen zu der Liste der Benutzer hinzu, die die GRANT-Zugriffsberechtigung zu der Bibliothek haben.


Löscht den Benutzernamen aus der Liste der Benutzer, die die GRANT-Zugriffsberechtigung zu der Bibliothek haben.


Dialogfeld Bibliothek speichern

Im Dialogfeld Bibliothek speichern können Sie eine Bibliothek im Dateisystem oder der Datenbank speichern. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für den SAVE-Befehl des Interpreters dar.

Bibliothek	Geben Sie den Namen (und Pfad) der Bibliothek ein, die gespeichert werden soll.
Durchsuchen	Wenn in dem Feld In Dateisystem ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn in dem Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.
In	Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert wird.


Geben Sie den Namen (und Pfad) der Bibliothek ein, die gespeichert werden soll.


Wenn in dem Feld In Dateisystem ausgewählt wurde, wird das Datei-Dialogfeld Ihres Betriebssystems angezeigt. Wenn in dem Feld In Datenbank ausgewählt wurde, wird das Dialogfeld Datenbank-Bibliotheken angezeigt.


Gibt an, ob die Bibliothek im Dateisystem oder in der Datenbank gespeichert wird.


Dialogfeld Suchen/Ersetzen

Im Dialogfeld Suchen/Ersetzen können Sie Zeichenfolgen oder reguläre Ausdrücke in der Quelle Ihres Programmblocks suchen und ersetzen, die momentan im Programmblock- oder Gespeicherten Programmblock-Editor angezeigt werden.

Suchen nach	Geben Sie die zu suchende Zeichenfolge ein. Wenn diese Zeichenfolge als regulärer Ausdruck behandelt werden soll, klicken Sie auf das Kontrollkästchen Regulärer Ausdruck.
Ersetzen durch	Geben Sie die Zeichenfolge ein, durch die die gefundene Zeichenfolge ersetzt werden soll.
Regulärer Ausdruck	Wenn dieses Kontrollkästchen ausgewählt ist, wird die Suchfolge als regulärer Ausdruck und nicht als Zeichenfolge behandelt.
Groß-/Kleinschreibung beachten	Gibt an, ob bei der Suchfolge die Groß- und Kleinschreibung beachtet werden soll. Wenn dieses Kontrollkästchen nicht ausgewählt ist, werden alle Vorkommen der Suchfolge unabhängig von der Schreibweise gefunden.
Weitersuchen	Sucht nach dem nächsten Vorkommen der Suchfolge ab der Cursorposition.
Ersetzen	Ersetzt die zuletzt gefundene Zeichenfolge durch die Zeichenfolge, die in dem Textfeld Ersetzen durch angegeben wird. Wenn keine Übereinstimmung ausgewählt ist, wird nach dem nächsten Vorkommen der Suchfolge gesucht und diese ersetzt.
Alle ersetzen	Ersetzt jedes Vorkommen der Suchfolge durch die Ersetzenfolge (ab der Cursorposition bis zum Ende des Suchbereichs).


Geben Sie die zu suchende Zeichenfolge ein. Wenn diese Zeichenfolge als regulärer Ausdruck behandelt werden soll, klicken Sie auf das Kontrollkästchen Regulärer Ausdruck.


Geben Sie die Zeichenfolge ein, durch die die gefundene Zeichenfolge ersetzt werden soll.


Gibt an, ob bei der Suchfolge die Groß- und Kleinschreibung beachtet werden soll. Wenn dieses Kontrollkästchen nicht ausgewählt ist, werden alle Vorkommen der Suchfolge unabhängig von der Schreibweise gefunden.


Wenn dieses Kontrollkästchen ausgewählt ist, wird die Suchfolge als regulärer Ausdruck und nicht als Zeichenfolge behandelt.


Sucht nach dem nächsten Vorkommen der Suchfolge ab der Cursorposition.


Ersetzt die zuletzt gefundene Zeichenfolge durch die Zeichenfolge, die in dem Textfeld Ersetzen durch angegeben wird. Wenn keine Übereinstimmung ausgewählt ist, wird nach dem nächsten Vorkommen der Suchfolge gesucht und diese ersetzt.


Ersetzt jedes Vorkommen der Suchfolge durch die Ersetzenfolge (ab der Cursorposition bis zum Ende des Suchbereichs).


Dialogfeld PL/SQL-Programmstop

Das Dialogfeld PL/SQL-Programmstop stellt eine grafische Benutzeroberfläche für den BREAK-Befehl des Interpreters dar. Mit ihm können Sie Programmstops und Break-Trigger erstellen oder ändern.

Programmstop	Kennzeichnet den Programmstop und hat die Form Programmstop:  Neu oder Programmstop:  Zahl. Die Beschriftung ist "Neu", wenn Sie einen neuen Programmstop angeben, bzw. eine Zahl, wenn Sie einen bestehenden Programmstop ändern.
Aktiviert	Gibt an, ob der Programmstop aktiviert oder deaktiviert ist.
Programmblock	Kenzzeichnet den Zielprogrammblock, die Position, an der sich der bestehende Programmblock befindet oder an der der neue Programmstop erstellt wird.
Zeile	Kennzeichnet die Quellposition des Programmstops in dem Programmblock.
Trigger	Gibt einen Programmstop-Trigger ein. Falls erforderlich, geben Sie die PL/SQL-Anweisungen ein, die ausgelöst werden, wenn der Programmstop erreicht wird. BEGIN- und ENG-Schlüsselwörter sind in dem Trigger nicht erforderlich. Sie können z.B. DEBUG.INTERPRET verwenden, um einen Interpreter-Befehl auszuführen: DEBUG.INTERPRET('.SHOW LOCALS');.


Kennzeichnet den Programmstop und hat die Form Programmstop:  Neu oder Programmstop:  Zahl. Die Beschriftung ist "Neu", wenn Sie einen neuen Programmstop angeben, bzw. eine Zahl, wenn Sie einen bestehenden Programmstop ändern.


Gibt an, ob der Programmstop aktiviert oder deaktiviert ist.


Kennzeichnet den Zielprogrammblock, in dem sich der bestehende Programmstop befindet oder der neue  Programmstop erstellt wird.


Kennzeichnet die Quellposition des Programmstops in dem Programmblock.


Geben Sie die PL/SQL-Anweisungen ein, die ausgelöst werden, wenn der Programmstop erreicht wird. BEGIN- und END-Schlüsselwörter sind nicht erforderlich.


Dialogfeld PL/SQL-Trigger

Im Dialogfeld PL/SQL-Trigger können Sie einen Debug-Trigger erstellen. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für den TRIGGER-Befehl dar.

Trigger	Kennzeichnet den Debug-Trigger und hat die Form Trigger:  Neu oder Trigger:  Zahl. Die Beschriftung ist Neu, wenn Sie einen neuen Debug-Trigger angeben, bzw. eine Zahl, wenn Sie einen bestehenden Debug-Trigger ändern.
Aktiviert	Gibt an, ob der Debug-Trigger aktiviert oder deaktiviert ist.
Speicherort	Gibt die Quellposition des Debug-Triggers an.
	Mit der Option Programmblock (Standard) wird angegeben, daß sich der Debug-Trigger bei einer bestimmten Quellposition in dem Programmblock befindet.
	Mit der Option Debug-Anweisung wird angegeben, daß der Trigger ausgelöst wird, sobald die Ausführung des Programmblocks unterbrochen wird.
	Mit der Option Jede Anweisung wird angegeben, daß der Debug-Trigger direkt vor jeder ausführbaren Anweisung in dem Programmblock ausgelöst wird.
Programmblock	Gibt den Zielprogrammblock an.
Zeile	Gibt die Quellposition des Debug-Triggers in dem Programmblock an.
Triggerrumpf	Gibt die PL/SQL-Anweisungen ein, die als Rumpf der Debug-Trigger benutzt werden sollen. BEGIN- und  END-Schlüsselwörter sind nicht erforderlich. Ein Debug-Trigger kann mit einem bedingten Break-Trigger verglichen werden. Wenn Sie Bedingungen für das Auslösen einer Debug-Aktion angeben, wird der Trigger nur ausgelöst, wenn die Bedingungen wahr sind.   Sie können z.B. DEBUG.BREAK auslösen, wenn eine Variable gleich einem bestimmten Wert ist, z.B. 100.  IF DEBUG.GETC('vnumber') = 100 THEN   RAISE DEBUG.BREAK; END IF;.


Kennzeichnet den Debug-Trigger und hat die Form Trigger:  Neu oder Trigger:  Zahl. Die Beschriftung ist Neu, wenn Sie einen neuen Debug-Trigger angeben, bzw. eine Zahl, wenn Sie einen bestehenden Debug-Trigger ändern.


Gibt an, ob der Debug-Trigger aktiviert oder deaktiviert ist.


Gibt die Quellposition des Debug-Triggers an.


Gibt den Zielprogrammblock an.


Gibt die Quellposition des Debug-Triggers in dem Programmblock an.


Geben Sie die PL/SQL-Anweisungen ein, die als Rumpf des Debug-Triggers benutzt werden sollen.


Dialogfeld PL/SQL-Step

Im Dialogfeld PL/SQL-Step können Sie Optionen festlegen, mit denen Sie beim Debuggen schrittweise durch einen unterbrochenen Programmblockcode gehen können. Dieses Dialogfeld stellt außerdem eine grafische Benutzeroberfläche für den STEP-Befehl des Interpreters dar.

Modus	Gibt an, welche Step-Option benutzt werden soll.
	Bei HINEIN wird die Ausführung bis zur nächsten ausführbaren Anweisung wieder aufgenommen.
	Bei ÜBER wird die Ausführung bis zur nächsten ausführbaren Anweisung im aktuellen Programmblock wieder aufgenommen, wobei eventuelle Unterprogrammaufrufe übersprungen werden.
	Bei HERAUS wird die Ausführung über ein verschachteltes Unterprogramm wieder aufgenommen und bei der nächsten ausführbaren Anweisung in dem aufrufenden Programmblock angehalten.
	Bei AN wird die Ausführung wieder aufgenommen, bis der angegebene Speicherort erreicht ist.
Programmblock	Kennzeichnet den Ziel-Programmblockrumpf für die Befehlsoption STEP AN.
Zeile	Kennzeichnet den Speicherort innerhalb des Ziel-Programmblockrumpfs für die Befehlsoption STEP AN.
Anzahl	Gibt an, wie oft der STEP-Befehl wiederholt wird. Standardmäßig wird die Zahl eins benutzt.
Anwenden	Akzeptiert die angegebenen Optionen und nimmt die Ausführung des Programmblocks entsprechend wieder auf. Da Step-Vorgänge im allgemeinen nacheinander wiederholt werden, wird das Dialogfeld Step angezeigt, bis Sie es explizit schließen oder solange eine aktive Debug-Ebene vorhanden ist.


Gibt an, welche Step-Option benutzt werden soll.


Kennzeichnet den Ziel-Programmblockrumpf für die Befehlsoption STEP AN.


Kennzeichnet den Speicherort innerhalb des Ziel-Programmblockrumpfs für die Befehlsoption STEP AN.


Gibt an, wie oft der STEP-Befehl wiederholt wird. Standardmäßig wird die Zahl eins benutzt.


Akzeptiert die angegebenen Optionen und nimmt die Ausführung des Programmblocks entsprechend wieder auf. Da Step-Vorgänge im allgemeinen nacheinander wiederholt werden, wird das Dialogfeld Step angezeigt, bis Sie es explizit schließen oder solange eine aktive Debug-Ebene vorhanden ist.


Dialogfeld Programmblock laden

Im Dialogfeld Programmblock laden können Sie einen Programmblock importieren und kompilieren, der im Dateisystem gespeichert ist. Außerdem stellt dieses Dialogfeld eine grafische Benutzeroberfläche für den LOAD-Befehl des Interpreters dar.

Datei	Geben Sie den Namen (und Pfad) der Datei ein, die den Quelltext des Programmblocks enthält.
Durchsuchen	Zeigt das Datei-Dialogfeld des Betriebssystems an.
Bestätigungen unterdrücken	Unterdrückt alle Bestätigungsmeldungen während des Laden- und Kompilierenvorgangs, z.B. wenn ein bestehender Programmblock überschrieben wird. Dieses Kontrollkästchen ist standardmäßig deaktiviert, d.h. daß die Bestätigungen nicht unterdrückt werden.
Laden	Bestätigt Ihre Auswahlen, lädt den Programmblock und schließt das Dialogfeld.


Geben Sie den Namen (und Pfad) der Datei ein, die den Quelltext des Programmblocks enthält.


Zeigt das Datei-Dialogfeld des Betriebssystems an.


Unterdrückt alle Bestätigungsmeldungen während des Laden- und Kompilierenvorgangs, z.B. wenn ein bestehender Programmblock überschrieben wird. Dieses Kontrollkästchen ist standardmäßig deaktiviert, d.h. daß die Bestätigungen nicht unterdrückt werden.


Bestätigt Ihre Auswahlen, lädt den Programmblock und schließt das Dialogfeld.


Dialogfeld Debug-Skript interpretieren

Im Dialogfeld Debug-Skript interpretieren können Sie ein Skript importieren und ausführen, das eine beliebige Kombination von Interpreter-Befehlen, PL/SQL-Quellcode oder SQL-Anweisungen enthält. Dieses Dialogfeld stellt außerdem eine grafische Benutzeroberfläche für den INTERPRET-Befehl dar.

Datei	Geben Sie den Namen (und Pfad) der Datei ein, die das zu interpretierende Debug-Skript enthält.
Durchsuchen	Zeigt das Datei-Dialogfeld Ihres Betriebssystems an.
Anzeigen Quelltext	Aktiviert oder deaktiviert das Anzeigen des Quelltextes. Standardmäßig ist dieses Kontrollkästchen deaktiviert, d.h. daß nicht jede Zeile des Skripts auf der Interpreter-Befehlszeile beim Laden des Skripts wiedergegeben wird.
Meldungn nicht anzeigen	Aktiviert oder deaktiviert die Anzeige von Meldungen. Standardmäßig ist dieses Kontrollkästchen deaktiviert, d.h. beim Laden des Skripts werden Statusmeldungen angezeigt.
Bestätigungen unterdrücken	Unterdrückt alle Bestätigungen während des Vorgangs, z.B. beim Überschreiben eines bestehenden Programmblocks. Standardmäßig ist diese Option deaktiviert, d.h. die Bestätigungen werden nicht unterdrückt.
Interpretieren	Bestätigt Ihre Auswahlen, führt das Skript aus und schließt das Dialogfeld.


Geben Sie den Namen (und Pfad) der Datei ein, die das zu interpretierende Debug-Skript enthält.


Zeigt das Datei-Dialogfeld Ihres Betriebssystems an.


Aktiviert oder deaktiviert das Anzeigen des Quelltextes. Standardmäßig ist dieses Kontrollkästchen deaktiviert, d.h. daß nicht jede Zeile des Skripts auf der Interpreter-Befehlszeile beim Laden des Skripts wiedergegeben wird.


Aktiviert oder deaktiviert die Anzeige von Meldungen. Standardmäßig ist dieses Kontrollkästchen deaktiviert, d.h. beim Laden des Skripts werden Statusmeldungen angezeigt.


Unterdrückt alle Bestätigungen während des Vorgangs, z.B. beim Überschreiben eines bestehenden Programmblocks. Standardmäßig ist diese Option deaktiviert, d.h. die Bestätigungen werden nicht unterdrückt.


Bestätigt Ihre Auswahlen, führt das Skript aus und schließt das Dialogfeld.


Dialogfeld Kompilieren

Im Dialogfeld Kompilieren werden Kompilierungsfehlermeldungen während der Stapelkompilierung angezeigt. In diesem Dialogfeld können Sie die Kompilierung anhalten und wieder aufnehmen und zu der Fehlerquelle gehen.

Statuszeile	Zeigt folgende Informationen an, während Programmblöcke kompiliert werden:
	Name und Typ des gerade kompilierten Programmblocks
	[UNTERBROCHEN], wenn Sie auf Unterbrechen klicken
	Prozentsatz von Programmblöcken, die kompiliert wurden
Listenfeld mit Kompilierungs-fehlern	Ein Auswahlbereich, der auf Mausaktionen reagiert und in dem Fehler angezeigt werden, die während der Kompilierung der ausgewählten Programmblöcke auftreten. Klicken Sie auf einen Fehler in dem Listenfeld mit den Kompilierungsfehlern, um den Programmblock-Editor und den Programmblock aufzurufen, in dem der Fehlker aufgetreten ist. Wenn Sie während einer unterbrochenen Kompilierung (nach Klicken auf Unterbrechen) auf einen Fehler in dem Listenfeld mit den Kompilierungsfehlern klicken, werden Sie in einem Warnfenster unterrichtet, daß die Stapelkompilierung abgebrochen wird, wenn Sie zu der Quelle eines Fehlers gehen.
Unterbrechen	Unterbricht die Kompilierung vorübergehend, z.B. wenn zu viele Fehler generiert wurden.
Wiederaufnehmen	Nimmt die Kompilierung nach einer Unterbrechung wieder auf.
Gehe zu Fehler	Zeigt den Programmblock-Editor an, der die Programmblockquelle bei der Position des ersten Fehlers enthält. Wenn Sie während einer unterbrochenen Kompilierung (nach Klicken auf Unterbrechen) auf diese Schaltfläche klicken, werden Sie in einem Warnfenster unterrichtet, daß die Stapelkompilierung abgebrochen wird, wenn Sie zu der Quelle eines Fehlers gehen. Zeigt außerdem das Dialogfeld PL/SQL-Kompilierungsmeldungen an, ein Auswahlfeld, in dem Sie nach allen Fehlern suchen können, die während der Kompilierung der ausgewählten Programmblöcke aufgetreten sind. Klicken Sie auf einen Fehler in dem Listenfeld, um den Programmblock-Editor und den Programmblock anzuzeigen, in dem der Fehler aufgetreten ist.
Gehe zu Fehler	Zeigt den PL/SQL-Editor an, der die Programmblockquelle bei der Position des ersten Fehlers enthält.

Wenn die Kompilierung fehlerfrei beendet wird, wird die Meldung Erfolgreich kompiliert in der Statuszeile angezeigt. Wenn die Kompilierung mit Fehlern beendet wird, wird die Meldung Fehler bei Kompilierung angezeigt.

Das Dialogfeld PL/SQL-Kompilierungsmeldungen ein Auswahlfeld, in dem Sie nach allen Fehlern suchen können, die während der Kompilierung der ausgewählten Programmblöcke aufgetreten sind. Klicken Sie auf einen Fehler in dem Listenfeld, um den Programmblock-Editor und den Programmblock anzuzeigen, in dem der Fehler aufgetreten ist.


Zeigt folgende Informationen an, während Programmblöcke kompiliert werden: Name und Typ des gerade kompilierten Programmblocks, sowie Prozentsatz von Programmblöcken, die kompiliert wurden.


Unterbricht die Kompilierung vorübergehend, z.B. wenn zu viele Fehler generiert wurden. Wenn Sie auf Unterbrechen klicken, wird [UNTERBROCHEN] in der Statuszeile angezeigt.


Nimmt die Kompilierung nach einer Unterbrechung wieder auf.


Zeigt den Browser für PL/SQL-Kompilierungsmeldungen an und ruft den Programmblock-Editor auf, der die Programmblockquelle bei der Position des ersten Fehlers enthält.


 Reguläre Ausdrücke

Reguläre Ausdrücke sind Zeichenfolgen, die eines der folgenden Stellvertreterzeichen enthalten können.

.	Entspricht einem einzelnen Zeichen. So würde z.B. .ie sowohl die als auch sie entsprechen.
( )	Wird benutzt, um die Prioritätsfolge von Operatoren zu erzwingen (z.B. +), wenn die Standardprioritätsfolge nicht eingehalten werden soll. So kommt z.B. die Verkettung von Zeichen (z.B. die) vor anderen Operatoren wie +, so daß die+A gleichbedeutend mit (die)+A ist. Wenn Sie nun dieeeeeeA suchen möchten, können Sie mit Klammern erzwingen, daß + vor der Verkettung steht: di(e+)A.
[ ]	Entspricht einem einzelnen Zeichen in eckigen Klammern. Die eckigen Klammern sind ein logischer OR-Operator. So würde z.B. t[hr]e dem the in Othello und dem tre in Trend entsprechen.
|	Wird zwischen zwei regulären Ausdrücken benutzt. Eine Übereinstimmung wird gefunden, wenn einer der regulären Ausdrücke übereinstimmt.
\	Entspricht dem Sonderzeichen, das auf den umgekehrten Schrägstrich folgt. So würde z.B. \*  dem Zeichen *. entsprechen. Der Backslash ist das Escape-Zeichen. Ein Sonderzeichen, das auf den Backslash folgt, wird nicht als Sonderzeichen behandelt. Nachfolgend einige Verwendungszwecke für das Escape-Zeichen:
	\n entspricht dem Zeichen für neue Zeile
	\t entspricht dem Tabulatorzeichen
	\b entspricht einem Leerzeichen
	\w entspricht \n, \t, \b oder \0
*	Entspricht 0 oder mehreren Vorkommen des regulären Ausdrucks. So würde z.B. (die)*A dem Ausdruck A, dieA und diedieA entsprechen.
+	Entspricht einem oder mehreren Vorkommen des regulären Ausdrucks. So würde z.B. (die)+A sowohl dieA als auch diedieA entsprechen, würde jedoch dem A alleine nicht entsprechen, wie dies bei (die)*A der Fall wäre.

Diese Zeichen haben in eckigen Klammern eine besondere Bedeutung:

~	Entspricht als erstes Zeichen einem Zeichen, das nicht in den Zeichen oder Bereichen innerhalb der eckigen Klammern gefunden wird. So würde z.B. t[~hr]e dem Wort tie, jedoch nicht dem Wort the entsprechen.
-	Entspricht zwischen Zeichenpaaren beliebigen Zeichen in dem Bereich. So würde z.B. [A-E] den Buchstaben A, B, C, D und E entsprechen. Paare von Zeichenbereichen können sein:
	• Buchstaben in derselben Schreibweise, wobei das erste Zeichen vor dem zweiten Zeichen in dem Alphabet steht (bzw. identisch mit diesem ist).
	• Ziffern, wobei die erste Ziffer kleiner als oder gleich der zweiten Ziffer ist  (z.B. [4-9] oder [0-3]).
	Sie können auch das Escape-Zeichen in eckigen Klammern benutzen.
Regeln:  Die Prioritätsfolge von Sonderzeichen in regulären Ausdrücken ist wie folgt: ( ), [ ], verkettete Zeichen (z.B. abc), *, +, ~,  , |, .

In den folgenden Beispielen werden einige der Implikationen der Prioritätsfolge dargestellt:

•	Start|Ende ist gleichbedeutend mit (Start)|(Ende)

•	Start* ist gleichbedeutend mit (Start)*

•	Start|Ende* ist gleichbedeutend mit (Start)|((Ende)*)


Auswahl PL/SQL-Tabellenelemente

Das Dialogfeld Auswahl PL/SQL-Tabellenelemente enthält Indizes für Zeilen in einer ausgewählten Tabelle. In diesem Dialogfeld können Sie die Zeilen auswählen, die voll im Objektnavigator eingeblendet werden sollen.

Listenfeld Datensatzindex	Ein Auswahlbereich, der auf Mausaktionen reagiert und eine Liste mit Indizes für alle Zeilen in der gerade ausgewählten Tabelle enthält.
Alle auswählen	Wählt alle Elemente in der Tabelle aus.
Auswahl ganz aufheben	Hebt die Auswahl aller Elemente in der Tabelle auf.
Standardmäßig sind alle Indizes ausgewählt. Heben Sie einzelne Auswahlen auf, indem Sie mit gedrückter Strg-Taste in der Liste auf diese klicken.


Dialogfeld Suchen/Ersetzen in Programmblöcken

Mit dem Dialogfeld Suchen/Ersetzen in Programmblöcken können Sie einen globalen Suchen- und Ersetzenvorgang über mehrere Programmblöcke hinweg vornehmen.

Suchen nach	Geben Sie die zu suchende Zeichenfolge ein.   Wenn die Zeichenfolge als regulärer Ausdruck behandelt werden soll, wählen Sie das Kontrollkästchen Ausdruck verwenden aus.
Ausdruck	Zeigt eine Liste der regulären Ausdrücke an, die Sie in Ihren Suchkriterien verwenden können. Klicken Sie auf einen Ausdruck, um ihn in das Feld Suchen nach einzugeben.
Ersetzen durch	Geben Sie die Zeichenfolge ein, durch die die Suchfolge ersetzt werden soll.
Ausdruck verwenden	Wählen Sie dieses Kontrollkästchen aus, wenn Sie reguläre Ausdrücke in den Suchkriterien verwenden möchten. Heben Sie die Auswahl des Kontrollkästchens auf, wenn Sie keine regulären Ausdrücke in den Suchkriterien benutzen möchten.
Groß-/Kleinschreibung beachten	Wählen Sie dieses Kontrollkästchen aus, wenn die Schreibweise bei der Suche berücksichtigt werden soll. Heben Sie die Auswahl des Kontrollkästchens auf, wenn alle Vorkommen der Suchfolge unabhängig von der Schreibweise gefunden werden sollen.
Wo suchen	Geben Sie an, wo der Suchen- oder Suchen-/Ersetzen-Vorgang durchgeführt werden soll. In Procedure Builder Standalone stellt / den obersten Programmblöcke-Knoten im Objektnavigator dar. Alle geöffneten PL/SQL-Bibliotheken in der aktuellen Sitzung werden unter / aufgeführt.   Alle Knoten sind standardmäßig ausgewählt. Wenn Sie nur in einem bestimmten Knoten suchen möchten, klicken Sie auf den Knoten.
Alle suchen	Sucht nach jedem Vorkommen der angegebenen Suchfolge. Die Suchfolge wird nicht ersetzt.
All  ersetzen	Ersetzt jedes Vorkommen der Suchfolge durch die angegebene Ersetzenfolge. In einem Meldungsfeld werden Sie zur Bestätigung aufgefordert, bevor der Ersetzenvorgang im Stapelverfahren durchgeführt wird.
Schließen	Schließt das Dialogfeld.
Hilfe	Zeigt dieses Hilfethema an.
Listenfeld Ergebnisse	Zeigt die Vorkommen der gefundenen Zeichenfolgen an. Die Position jeder gefundenen Zeichenfolge wird mit dem Knoten, dem Namen des Programmblocks sowie den Zeilen- und Spaltennumern der Quellzeile angegeben. In der Statusleiste über dem Listenfeld wird die Anzahl von gefundenen Übereinstimmungen dargestellt. Klicken Sie auf ein Vorkommen, um es auszuwählen, damit es bearbeitet oder ersetzt werden kann. Sie können mehr als ein Vorkommen auswählen.
Ersetzen	Ersetzt die Suchfolge durch die Ersetzenfolge nur bei den Vorkommen, die im Listenfeld Ergebnisse ausgewählt wurden.
Bearbeiten	Öffnet die Quelle des ausgewählten Vorkommens im Programmblock-Editor.


Dialogfeld PL/SQL V1-Konvertierungsoptionen

Mit dem Dialogfeld PL/SQL V1-Konvertierungsoptionen können Sie festlegen, wie das Dienstprogramm fortfahren soll, wenn es den jeweiligen Typ der unterstützten PL/SQL V1- oder V2-Syntax antrifft: Ihre Voreinstellungen werden über mehrere Aufrufe des Konvertierungsdienstprogramms hinweg gespeichert: entweder in der Registrierung für Microsoft Windows oder in einem UNIX-Profil.

Problemtyp	Liste der V1 oder V2 PL/SQL-Situationen, die von dem Konvertierungsdienstprogramm unterstützt werden:  CHAR ersetzt durch VARCHAR2  Zeichenfolgenlänge für VARCHAR2 erforderlich  Standardausdrücke für OUT und IN OUT nicht zulässig  RETURN erfordert einen Ausdruck  Veraltete vordefinierte Prozeduren ersetzt  Funktion LENGTH gibt NULL für Zeichenfolgen mit der Länge null zurück  Übergabe von NULL an überladenes Unterprogramm wird nicht richtig aufgelöst  Fehlende RETURN-Anweisung in Funktion
Konvertieren	Alle Instanzen des ausgewählten Problemtyps werden automatisch ohne Bestätigung konvertiert.
Alle konvertieren	Mit dieser Option können alle Problemtypen schnell auf Konvertieren eingestellt werden. Das Dienstprogramm konvertiert automatisch den gesamten PL/SQL V1-oder V2-Code ohne Bestätigung.
Ignorieren	Alle Instanzen des ausgewählten Problemtyps werden ignoriert. Um Compiler-Fehler zu vermeiden, müssen Sie den V1-oder V2-Code manuell ändern.
Alle ignorieren	Mit dieser Option werden alle Problemtypen schnell auf Ignorieren eingestellt. Das Dienstprogramm ignoriert alle Problemtypen und führt keine Konvertierung durch. Um Compiler-Fehler zu vermeiden, müssen Sie den V1- oder V2-Code manuell ändern.
Bitte fragen	Wenn diese Option für einen Problemtyp ausgewählt wird, wird jede Instanz dieses Problems individuell im Dialogfeld Konvertierung angezeigt. Aus dem Dialogfeld können Sie dann Konvertieren oder Ignorieren wählen.
Alle fragen	Mit dieser Option werden alle Problemtypen schnell auf Bitte fragen eingestellt. Das Dienstprogramm fordert Sie zur Bestätigung (im Dialogfeld Konvertierung) auf, bevor eine V1 oder V2 PL/SQL-Folge konvertiert wird.
OK	Bestätigt Ihre Auswahlen und schließt das Dialogfeld.
Abbrechen	Bricht Änderungen an dem Modul ab und schließt das Dialogfeld.


Dialogfeld Konvertierung

Mit dem Dialogfeld Konvertierung können Sie den Konvertierungsvorgang von PL/SQL V1 zu V2 interaktiv steuern. Um Optionen für spätere Konvertierungsvorgänge festzulegen, klicken Sie auf Optionen.

Quellbereich	Zeigt die Programmblockquelle an, bei der die Konvertierungsbedingung erkannt wird. Die zu konvertierende Syntax wird hervorgehoben. Sie können innerhalb dieses Bereichs einen Bildlauf nach oben oder unten vornehmen, um die bislang durchgeführte Konvertierung zu überprüfen.
Bedingung:	Die PL/SQL V1- oder V2-Anweisung, die konvertiert werden muß.
Aktion:	Gibt an, was das Konvertierungsdienstprogramm tut, wenn Sie auf Konvertieren klicken.
Erläutern. . .	Zeigt weitere Details über das Problem an und gibt an, was geschieht, wenn Sie die Konvertierung ignorieren.
Konvertieren	Akzeptiert die empfohlene Standardaktion und geht zur nächsten Anweisung.
Alle konvertieren	Konvertiert alle PL/SQL V1-oder V2-Syntaxprobleme im gesamten Modul, wobei dies mehrere Programmblöcke umfassen kann. Alle Standardaktionen werden akzeptiert.
Ignorieren	Konvertiert die PL/SQL V1- oder V2-Anweisung nicht, die im Feld Problem beschrieben wird; geht zur nächsten Anweisung.
Alle ignorieren	Umgeht den Konvertierungsvorgang für das ganze Modul, in dem mehrere Programmblöcke enthalten sein können.
Optionen. . .	Zeigt das Dialogfeld PL/SQL V1-Konvertierungsoptionen an, in dem Sie Optionen zur Steuerung des Konvertierungsprozesses angeben können.


Dialogfeld Zusammenfassung Konvertierung PL/SQL V1

Das Dialogfeld Zusammenfassung Konvertierung PL/SQL V1 enthält Informationen wie:

•	Quellzeilen, die erfolgreich konvertiert wurden

•	Quellzeilen, die ignoriert wurden

• Quellzeilen, die PL/SQL-Compiler-Fehler generiert haben.

Schaltflächen in der Symbolleiste:

Symbol X	Schließt das Dialogfeld.
Symbol ?	Zeigt den Hilfetext zu dem Dialogfeld an.
Bereich Zusammenfassung:

Suchen	Bietet Standardsuchfunktionen für eingeblendete und ausgeblendete Knoten.
Knoten	Ein Knoten für jeden Programmblock in dem Modul. Wenn der Knoten ein Pluszeichen enthält, klicken Sie auf den Knoten, um eine Zusammenfassung dessen zu erhalten, was konvertiert wurde (und wie es konvertiert wurde) und was ignoriert wurde. Wenn ein Knoten leer ist (kein Plus- oder Minuszeichen), war keine Konvertierung für den Programmblock erforderlich. Um Compiler-Fehler zu beheben - oder um die konvertierte Quelle bzw. die ignorierten Elemente zu überprüfen - doppelklicken Sie auf eine Zeile in einem eingeblendeten Knoten. (Sie können auch die Zeile auswählen und Programm [image] Programmblock-Editor auswählen.) Der Editor wird geöffnet, wobei der Cursor bei der ausgewählten Zeile steht. Hinweis:  Nachdem Sie die Quelle mit dem Programmblock-Editor geändert haben, wird der Cursor möglicherweise nicht richtig positioniert, wenn Sie das nächste Mal auf eine Zeile doppelklicken oder die Schaltfläche Bearbeiten verwenden.
Menüpunkte:

Das Menü Programm enthält zwei Optionen:

Programm-block-Editor	Öffnet die Quelle im Programmblock-Editor. Der Cursor steht in der ausgewählten Zeile.
Konvertie-rungs-optionen	Zeigt das Dialogfeld Konvertierungsoptionen an, damit Sie die angegebenen Optionen anzeigen oder ändern können.
Popup-Menü:

Klicken Sie mit der rechten Maustaste, um ein Popup-Menü anzuzeigen.

Bearbeiten	Öffnet die Quelle im Programmblock-Editor. Der Cursor steht in der ausgewählten Zeile.
Erläutern	Zeigt die Online-Hilfe über die Art der Konvertierung an, die für die ausgewählte Zeile erforderlich ist.


Oberfläche des Programmblock-Editors

  Verwandte Themen

Folgende Schaltflächen und Dropdown-Listen sind vorhanden:

Kompilieren	Kompiliert den aktuellen Programmblock. Als Folge der Kompilierung generierte Fehlermeldungen werden in dem Auswahlausschnitt Kompilierungsmeldungen angezeigt.
Anwenden	Speichert Änderungen, die im Editor an dem Programmblock vorgenommen wurden, seit dieser das erste Mal geöffnet wurde oder seit dem letzten Anwenden- bzw. Wiederherstellenvorgang. Der Programmblock wird nicht neu kompiliert. Der Editor bleibt geöffnet. Der Rückgängig-/Wiederholen-Stack wird gelöscht.
Wiederherstellen	Stellt den Programmblock in dem Status wieder her, den er beim letzten Anwenden- oder Wiederherstellenvorgang hatte. Wenn kein Anwenden- oder Wiederherstellenvorgang stattfand, wird der Programmblock in seinen Originalzustand versetzt.
Neu	Zeigt das Dialogfeld Neuer Programmblock an, in dem Sie Typ und Namen des zu erstellenden Programmblocks angeben können.
Löschen	Löscht den angezeigten Programmblock. Sie werden in einem Meldungsfeld zur Bestätigung aufgefordert.
Schließen	Schließt den Programmblock-Editor.
Hilfe	Zeigt dieses Hilfethema an.
Name	Zeigt den Namen des aktuellen Programmblocks an. Klicken Sie auf den Pfeil rechts neben dem Feld, um eine Dropdown-Liste anderer bestehender Programmblöcke anzuzeigen. Klicken Sie auf einem Programmblock in dieser Liste, um diesen Programmblock im Editor anzuzeigen.

Der Editor enthält außerdem folgende Elemente:

Quellausschnitt	In diesem Ausschnitt wird der Quelltext des PL/SQL-Programmblocks eingegeben und bearbeitet. Mit Bildschirmteilern können Sie bis zu vier separate Ansichten des aktuellen Programmblocks erstellen. Durch jede Ansicht kann ein unabhängiger Bildlauf durchgeführt werden. Um horizontale Ansichten im Quellausschnitt zu erstellen, setzen Sie den Cursor zu dem Bildschirmteiler am oberen Rand der vertikalen Bildlaufleiste und doppelklicken Sie. Dadurch wird der Quellausschnitt horizontal in zwei Ansichten mit gleicher Größe geteilt. Sie können auch auf den Bildschirmteiler klicken und diesen nach unten ziehen, um die gewünschten Ansichtgrößen zu erstellen. Um vertikale Ansichten im Quellausschnitt zu erstellen, setzen Sie den Cursor zu dem Bildschirmteiler ganz außen links in der horizontalen Bildlaufleiste und doppelklicken Sie. Dadurch wird der Quellausschnitt vertikal in zwei Ansichten mit gleicher Größe geteilt. Sie können auch auf den Bildschirmteiler klicken und diesen nach rechts ziehen, um die gewünschten Ansichtgrößen zu erstellen. Um die Größe der Ansichten zu ändern, klicken Sie auf den Bildschirmteiler, der die Ansichten teilt, und ziehen Sie ihn. Um eine horizontale oder vertikale Ansicht zu entfernen, doppelklicken Sie auf den Bildschirmteiler, der die Ansichten teilt, und ziehen Sie diesen an den Rand des Ausschnitts. Um alle vier Ansichten gleichzeitig zu entfernen, setzen Sie den Cursor auf den Schnittpunkt der Bildschirmteiler und ziehen ihn in eine Ecke des Ausschnitts. Um eine Codezeile auszuwählen, setzen Sie den Cursor auf den linken Rand und klicken Sie.
Ausschnitt Kompilierungs-meldungen	Zeigt gegebenenfalls Fehlermeldungen an, die als Folge der Kompilierung generiert wurden. Wenn Sie auf eine Fehlermeldung klicken, wird diese markiert, wird im Quellausschnitt zu der Quellanweisung gegangen, die den Fehler erzeugt und der Cursor an die Position des Fehlers gesetzt. Standardmäßig wird der Ausschnitt Kompilierungsmeldungen nur angezeigt, wenn Kompilierungsfehlermeldungen generiert wurden. Sie können den Ausschnitt Kompilierungsmeldungen jedoch jederzeit manuell anzeigen, indem Sie den Cursor in die untere rechte Ecke des Editor-Fenster verschieben, bis er die Form eines Fadenkreuzes annimmt. Danach klicken und ziehen Sie den Cursor nach oben. Dadurch wird der Bildschirmteiler nach oben verschoben und der Ausschnitt Kompilierungsmeldungen wird sichtbar..
Bildschirmteiler	Der Bildschirmteiler trennt den Quellausschnitt und den Ausschnitt Kompilierungsmeldungen. Mit dem Bildschirmteiler können Sie die relative Größe der Ausschnitte ändern. Wenn der Ausschnitt Kompilierungsmeldungen nicht angezeigt wird, befindet sich der Bildschirmteiler am unteren Rand des Editor-Fensters.
Statuszeile	Zeigt Informationen über den aktuellen Status des Programmblocks am unteren Rand des Editors an.


Kompiliert den Programmblock, der im Quellausschnitt angezeigt wird. Als Folge der Kompilierung generierte Fehlermeldungen werden in dem Auswahlausschnitt Kompilierungsmeldungen angezeigt.


Speichert Änderungen, die im Editor an dem Programmblock vorgenommen wurden, seit dieser das erste Mal geöffnet wurde oder seit dem letzten Anwenden- bzw. Wiederherstellenvorgang. Der Programmblock wird nicht neu kompiliert. Der Editor bleibt geöffnet.


Stellt den Programmblock in dem Status wieder her, den er beim letzten Anwenden- oder Wiederherstellenvorgang hatte. Wenn kein Anwenden- oder Wiederherstellenvorgang stattfand, wird der Programmblock in seinen Originalzustand versetzt.


Zeigt das Dialogfeld Neuer Programmblock an, in dem Sie Typ und Namen des zu erstellenden Programmblocks angeben können.


Löscht den angegebenen Programmblock mit Bestätigung.


Versucht, den Editor zu schließen. Wenn Änderungen vorgenommen, jedoch nicht angewandt wurden, werden Sie in einem Meldungsfeld aufgefordert, die Änderungen anzuwenden oder wiederherzustellen bzw. den Vorgang abzubrechen. Nachdem alle Änderungen angewandt oder wiederhergestellt wurden, wird der Programmblock-Editor geschlossen.


Gibt den Typ des Programmblocks (Trigger, Prozedur usw.) an, der gerade im Editor angezeigt wird.


Gibt an, mit welchem Objekt das Programm verknüpft ist.


Zeigt den Namen des aktuellen Programmblocks an. Klicken Sie auf den Pfeil rechts neben dem Feld, um eine Dropdown-Liste anderer bestehender Programmblöcke anzuzeigen. Klicken Sie auf einem Programmblock in dieser Liste, um diesen Programmblock im Editor anzuzeigen.


Geben Sie den Quelltext des PL/SQL-Programmblocks ein bzw. bearbeiten Sie diesen.


Zeigt Fehlermeldungen an, die während der Kompilierung aufgetreten sind. Klicken Sie auf einen Fehler, um zu der Quelle im Programmblock zu gehen.


Mit dem Bildschirmteiler können Sie den relativen Platz ändern, den zwei Ausschnitte (Quelle und Kompilierungsmeldungen) im Programmblock-Editor belegen. Standardmäßig wird der Ausschnitt Kompilierungsmeldungen nur angezeigt, wenn während der Kompilierung Fehlermeldungen generiert werden.


Auf der linken Seite der Statusleiste werden folgende Meldungen angezeigt:

Nicht geändert	Es wurden keine Änderungen an dem Programmblock vorgenommen, seit dieser das erste Mal angezeigt oder das letzte Mal angewandt wurde.
Geändert	Eine oder mehrere Änderungen wurden an dem Programmblock vorgenommen, seit er das erste Mal angezeigt oder das letzte Mal angewandt wurde.

Auf der rechten Seite der Statusleiste werden die folgenden Meldungen angezeigt:

Nicht kompiliert	Der gerade angezeigte Quelltext des Programmblocks wurde nicht kompiliert.
Erfolgreich kompiliert	Der gerade angezeigte Quelltext des Programmblocks wurde ohne Fehler kompiliert.
Mit Fehlern kompiliert	Der gerade angezeigte Quelltext des Programmblocks wurde mit Fehlern kompiliert. Die Fehler werden im Ausschnitt Kompilierungsmeldungen angezeigt.


Editierfunktionen

  Verwandte Themen

Diese Editierfunktionen werden nur im Programmblock-Editor (und dem Gespeicherten Programmblock-Editor) unterstützt:

Automatisches Ein-/ Ausrücken	Während Sie Code in den Editoren eingeben, werden Zeilen automatisch entsprechend den Syntaxregeln von PL/SQL ein- oder ausgerückt.
Farbige Markierung der Syntax	Schlüsselwörter, Kommentare, Zeichenfolgen und Symbole wie z.B. = und || werden mit verschiedenen Farben dargestellt.
Auswahl von Spalten und Zeilen	Sie können Textspalten und Zeilen mit Quellcode auswählen. Um eine Spalte auszuwählen, drücken Sie die ALT-Taste. Danach klicken und ziehen Sie horizontal. Um eine Zeile auszuwählen, klicken Sie auf dem äußersten linken Rand der Zeile im Quellausschnitt.
Textverarbeitung mit Drag-and-Drop	Der ausgewählte Text kann mit Drag-and-Drop kopiert oder verschoben werden. Um Text zu kopieren, drücken Sie die Strg-Taste und ziehen den ausgewählten Text. Um Text zu verschieben, ziehen Sie einfach den ausgewählten Text.
Zeilen ein-/ausrücken	Mit den Befehlen Einrücken/Ausrücken im Menü Bearbeiten können Sie ausgewählte Quellzeilen ein- oder ausrücken. Sie können Zeilen auch mit TAB und Umschalttaste-TAB ein- und ausrücken.
Mehrere geteilte Ansichten	Sie können bis zu vier separate Ansichten des aktuellen Programmblocks erstellen. Um horizontale Ansichten zu erstellen, setzen Sie den Cursor auf den Bildschirmteiler am oberen Rand der vertikalen Bildlaufleiste. Danach klicken und ziehen Sie den Bildschirmteiler nach unten. Um vertikale Ansichten zu erstellen, setzen Sie den Cursor auf den Bildschirmteiler ganz außen links in der horizontalen Bildlaufleiste. Danach klicken und ziehen Sie den Bildschirmteiler nach rechts. Um eine horizontale oder vertikale Ansicht zu entfernen, doppelklicken Sie auf den Bildschirmteiler, der die Ansichten teilt.
Drucken	Wählen Sie Datei [image] Drucken, um den aktuellen Programmblock zu drucken.
Unbegrenzte Wiederholung der Befehle Rückgängig/Wieder-holen	Mit den Befehlen Rückgängig/Wiederholen im Menü Bearbeiten können Sie Änderungen bis zum letzten Speichernvorgang rückgängig machen bzw. wiederholen.

Hinweis: Diese Funktionen sind nur in Microsoft Windows verfügbar. In UNIX können Sie nur folgende Funktionen ausführen:

•	Aktuellen Programmblock ausführen

•	Ausgewählte Zeilen mit TAB und Umschalttaste-Tab ein- und ausrücken

•	Ausgewählten Text mit Drag-and-Drop verschieben


 Maus im Editor benutzen

  Verwandte Themen

Die folgenden Mausaktionen werden bei der Benutzung des Programmblock-Editors (oder Gespeicherten Programmblock-Editors) in Microsoft Windows unterstützt:

Funktion:	Mausaktion:
Zeichen in einem Bereich auswählen	Klicken und ziehen Sie den Cursor vom ersten Zeichen bis zum letzten Zeichen in dem auszuwählenden Bereich (wird auch bei UNIX unterstützt). Oder Klicken Sie auf das erste Zeichen, drücken Sie die Umschalttaste, und klicken Sie auf das letzte Zeichen in dem auszuwählenden Bereich.
Wort unter Cursor auswählen	Doppelklicken Sie auf das Wort (wird auch in UNIX unterstützt). Oder  Drücken Sie die Strg-Taste, und klicken Sie dann auf das auszuwählende Wort.
Wörter in einem Bereich auswählen	Drücken Sie die Strg-Taste, klicken Sie, und ziehen Sie den Cursor vom ersten Wort bis zum letzten Wort in dem auszuwählenden Bereich.
Zeile auswählen	Setzen Sie den Cursor auf den linken Rand der auszuwählenden Zeile. Klicken Sie, wenn der Cursor die Form eines Pfeils annimmt.
Mehrere Zeilen auswählen	Setzen Sie den Cursor auf den linken Rand der ersten auszuwählenden Zeile. Wenn der Cursor die Form eines Pfeils annimmt, klicken und ziehen Sie den Cursor zur letzten auszuwählenden Zeile.
Textspalten auswählen	Drücken Sie die Alt-Taste, klicken Sie, und ziehen Sie den Cursor von der ersten Spalte bis zur letzten Spalte in dem auszuwählenden Bereich.
Ausgewählten Text verschieben	Markieren Sie zuerst den Text. Danach klicken und ziehen Sie den ausgewählten Text an die gewünschte Stelle (wird auch in UNIX unterstützt).
Ausgewählten Text kopieren	Markieren Sie zuerst den Text. Danach drücken Sie die Strg-Taste, und ziehen Sie den ausgewählten Text an die Stelle, an der eine Kopie stehen soll, und lassen Sie die Maustaste los.
Fenster in zwei horizontale Ansichten teilen	Doppelklicken Sie auf den Bildschirmteiler am oberen Rand der vertikalen Bildlaufleiste. Oder Klicken und ziehen Sie den Bildschirmteiler am oberen Rand der vertikalen Bildlaufleiste.
Fenster in zwei vertikale Ansichten teilen	Doppelklicken Sie auf den Bildschirmteiler am äußersten linken Rand der horizontalen Bildlaufleiste. Oder Klicken und ziehen Sie den Bildschirmteiler am äußersten linken Rand der horizontalen Bildlaufleiste.
Relative Größe von geteilten Ansichten anpassen	Klicken und ziehen Sie den Bildschirmteiler, der die Ansichten teilt.
Geteilte Ansichten entfernen	Doppelklicken Sie auf den Bildschirmteiler, der die Ansichten teilt. Oder Klicken und ziehen Sie den Bildschirmteiler bis zum Rand des Fensters. Um alle vier Ansichten gleichzeitig zu entfernen, doppelklicken Sie auf den Schnittpunkt, an dem die Bildschirmteiler aufeinandertreffen, oder ziehen Sie den Bildschirmteiler in eine beliebige Ecke des Fensters.


Tastatur im Editor benutzen

  Verwandte Themen

Die folgenden Tastaturaktionen werden unterstützt, wenn Sie den Programmblock-Editor (und Gespeicherten Programmblock-Editor) in Microsoft Windows und UNIX verwenden:

Funktion:	Tastenkombination:
Cursor ein Zeichen nach links verschieben	Pfeiltaste nach links
Zeichen auswählen, während Cursor nach links verschoben wird	Umschalttaste + Pfeiltaste nach links
Cursor ein Zeichen nach rechts verschieben	Pfeiltaste nach rechts
Zeichen auswählen, während Cursor nach rechts verschoben wird	Umschalttaste + Pfeiltaste nach rechts
Ausgewählte Zeichen oder Wörter kopieren	Strg + C
Ausgewählte Zeichen oder Wörter ausschneiden	Strg + X
Inhalt der Zwischenablage einfügen	Strg + V
Zeichen rechts neben der Cursorposition löschen bzw. ausgewählte Zeichen oder Wörter löschen	Entf-Taste
Zeichen links neben der aktuellen Cursorposition löschen	Rücktaste
Cursor zum Ende des Programmblocks verschieben	Strg + Ende	(nur Windows)
Cursor an den Anfang des Programmblocks verschieben	Strg + Pos1	(nur Windows)
Quellzeilen von der aktuellen Cursorposition bis zum Ende des Programmblocks auswählen	Strg + Umschalttaste + Ende	(nur Windows)
Quellzeilen von der aktuellen Cursorposition bis zum Anfang des Programmblocks auswählen	Strg + Umschalttaste + Pos1	(nur Windows)
Cursor zum Ende der aktuellen Zeile verschieben	Ende	(nur Windows)
Cursor zum Anfang der aktuellen Zeile verschieben	Pos1	(nur Windows)
Zeichen von der aktuellen Cursorposition bis zum Ende der aktuellen Zeile markieren	Umschalttaste + Ende	(nur Windows)
Zeichen von der aktuellen Cursorposition bis zum Anfang der aktuellen Zeile markieren	Umschalttaste + Pos1	(nur Windows)
Ausgewählte Zeile oder Zeichen rechts neben der aktuellen Cursorposition	Tabulatortaste
Ausgewählte Zeile ausrücken	Umschalttaste + Tabulatortaste
Cursor eine Zeile nach unten verschieben	Pfeiltaste nach unten
Zeile markieren, während der Cursor nach unten verschoben wird	Umschalttaste + Pfeiltaste nach unten
Cursor eine Zeile nach oben verschieben	Pfeiltaste nach oben
Zeile markieren, während der Cursor nach oben verschoben wird	Umschalttaste + Pfeiltaste nach oben
Um die Anzahl von Zeilen, die im Quellausschnitt dargestellt werden, im Programmblock nach unten blättern	Bild-Ab-Taste
Um die Anzahl von Zeilen, die im Quellausschnitt dargestellt werden, im Programmblock nach unten blättern und die Zeilen gleichzeitig markieren	Umschalttaste + Bild-Ab-Taste
Um die Anzahl von Zeilen, die im Quellausschnitt dargestellt werden, im Programmblock nach oben blättern	Bild-Auf-Taste
Um die Anzahl von Zeilen, die im Quellausschnitt dargestellt werden, im Programmblock nach oben blättern und die Zeilen gleichzeitig markieren	Umschalttaste + Bild-Auf-Taste
Letzte Aktion rückgängig machen	Strg + Z	(nur Windows)
Letzte Rückgängig-Aktion wiederherstellen	Strg + Y	(nur Windows)


 Oberfläche des Gespeicherten Programmblock-Editors

  Verwandte Themen Topics

Folgende Schaltflächen und Dropdown-Listen sind vorhanden:

Neu	Zeigt das Dialogfeld Neuer Programmblock an, in dem Sie Typ und Name des zu erstellenden gespeicherten Programmblocks angeben können.
Speichern	Kompiliert den gespeicherten Programmblock, der im Quellausschnitt angezeigt wird. Als Folge der Kompilierung generierte Fehlermeldungen werden in dem Auswahlausschnitt Kompilierungsmeldungen angezeigt. Der Rückgängig-/Wiederholen-Stack wird gelöscht
Wiederherstellen	Stellt den gespeicherten Programmblock in dem Status wieder her, den er bei dem letzten Speichern- oder Wiederherstellenvorgang hatte. Wenn kein Speichern- oder Wiederherstellenvorgang aufgetreten ist, wird der Programmblock wieder in seinen Originalzustand versetzt.
Löschen	Löscht den aktuellen gespeicherten Programmblock aus der Datenbank. Löscht den angezeigten Programmblock. Sie werden in einem Meldungsfeld zur Bestätigung aufgefordert.
Schließen	Schließt den Programmblock-Editor.
Hilfe	Zeigt dieses Hilfethema an.
Eigentümer	Zeigt die Datenbank-Benutzer-ID des Eigentümers des aktuellen Programmblocks an. Klicken Sie auf den Pfeil auf der rechten Seite dieses Feldes, um eine Dropdown-Liste mit Benutzernamen anzuzeigen. In der Liste Eigentümer werden nur die Namen der Benutzer angezeigt,  zu deren gespeicherten Programmblöcken Sie eine Zugriffsberechtigung haben.
Name	Zeigt den Namen des aktuellen gespeicherten Programmblocks an. Klicken Sie auf den Pfeil auf der rechten Seite dieses Feldes, um eine Dropdown-Liste der gespeicherten Programmblöcke anzuzeigen, die der Benutzer-ID gehören, die im Feld Eigentümer angezeigt wird. In der Namensliste werden nur die Namen der gespeicherten Programmblöcke angezeigt, zu denen Sie eine Zugriffsberechtigung haben.

Außerdem enthält das Editor-Fenster folgende Elemente:

Quellausschnitt	In diesem Ausschnitt wird der Quelltext des gespeicherten Programmblocks eingegeben und bearbeitet. Mit Bildschirmteilern können Sie bis zu vier separate Ansichten des aktuellen gespeicherten Programmblocks erstellen. Durch jede Ansicht kann ein unabhängiger Bildlauf durchgeführt werden. Um horizontale Ansichten im Quellausschnitt zu erstellen, setzen Sie den Cursor zu dem Bildschirmteiler am oberen Rand der vertikalen Bildlaufleiste und doppelklicken Sie. Dadurch wird der Quellausschnitt horizontal in zwei Ansichten mit gleicher Größe geteilt. Sie können auch auf den Bildschirmteiler klicken und diesen nach unten ziehen, um die gewünschten Ansichtgrößen zu erstellen. Um vertikale Ansichten im Quellausschnitt zu erstellen, setzen Sie den Cursor zu dem Bildschirmteiler ganz außen links in der horizontalen Bildlaufleiste und doppelklicken Sie. Dadurch wird der Quellausschnitt vertikal in zwei Ansichten mit gleicher Größe geteilt. Sie können auch auf den Bildschirmteiler klicken und diesen nach rechts ziehen, um die gewünschten Ansichtgrößen zu erstellen. Um die Größe der Ansichten zu ändern, klicken Sie auf den Bildschirmteiler, der die Ansichten teilt, und ziehen Sie ihn. Um eine horizontale oder vertikale Ansicht zu entfernen, doppelklicken Sie auf den Bildschirmteiler, der die Ansichten teilt, und ziehen Sie diesen an den Rand des Ausschnitts. Um alle vier Ansichten gleichzeitig zu entfernen, setzen Sie den Cursor auf den Schnittpunkt der Bildschirmteiler und ziehen ihn in eine Ecke des Ausschnitts. Um eine Codezeile auszuwählen, setzen Sie den Cursor auf den linken Rand und klicken Sie.
Ausschnitt Kompilierungs-meldungen	Zeigt gegebenenfalls Fehlermeldungen an, die als Folge der Kompilierung generiert wurden. Wenn Sie auf eine Fehlermeldung klicken, wird diese markiert, wird im Quellausschnitt zu der Quellanweisung gegangen, die den Fehler erzeugt und der Cursor an die Position des Fehlers gesetzt. Standardmäßig wird der Ausschnitt Kompilierungsmeldungen nur angezeigt, wenn Kompilierungsfehlermeldungen generiert wurden.  Sie können den Ausschnitt Kompilierungsmeldungen jedoch jederzeit manuell anzeigen, indem Sie den Cursor in die untere rechte Ecke des Editor-Fenster verschieben, bis er die Form eines Fadenkreuzes annimmt. Danach klicken und ziehen Sie den Cursor nach oben. Dadurch wird der Bildschirmteiler nach oben verschoben und der Ausschnitt Kompilierungsmeldungen wird sichtbar..
Bildschirmteiler	Der Bildschirmteiler trennt den Quellausschnitt und den Ausschnitt Kompilierungsmeldungen. Mit dem Bildschirmteiler können Sie die relative Größe der Ausschnitte ändern.  Wenn der Ausschnitt Kompilierungsmeldungen nicht angezeigt wird, befindet sich der Bildschirmteiler am unteren Rand des Editor-Fensters.
Statuszeile	Zeigt Informationen über den aktuellen Status des Programmblocks am unteren Rand des Editors an.


Zeigt das Dialogfeld Neuer Programmblock an, in dem Sie Typ und Name des zu erstellenden Programmblocks angeben können.


Kompiliert den gespeicherten Programmblock, der im Quellausschnitt angezeigt wird. Als Folge der Kompilierung generierte Fehlermeldungen werden in dem Auswahlausschnitt Kompilierungsmeldungen angezeigt.


Stellt den gespeicherten Programmblock in dem Status wieder her, den er bei dem letzten Speichern- oder Wiederherstellenvorgang hatte. Wenn kein Speichern- oder Wiederherstellenvorgang aufgetreten ist, wird der Programmblock wieder in seinen Originalzustand versetzt.


Löscht den aktuellen gespeicherten Programmblock aus der Datenbank, wobei eine Bestätigung angefordert wird.


Zeigt die Datenbank-Benutzer-ID des Eigentümers des aktuellen Programmblocks an. Klicken Sie auf den Pfeil auf der rechten Seite dieses Feldes, um eine Dropdown-Liste mit Benutzernamen anzuzeigen, zu deren gespeicherten Programmblöcken Sie eine Zugriffsberechtigung haben.


Zeigt den Namen des aktuellen gespeicherten Programmblocks an. Klicken Sie auf den Pfeil auf der rechten Seite dieses Feldes, um eine Dropdown-Liste der gespeicherten Programmblöcke anzuzeigen, die der Benutzer-ID gehören, die im Feld Eigentümer angezeigt wird. In der Namensliste werden nur die Namen der gespeicherten Programmblöcke angezeigt, zu denen Sie eine Zugriffsberechtigung haben.


Wird benutzt, um den Quelltext des Gespeicherten PL/SQL-Programmblocks einzugeben und zu bearbeiten.


Zeigt Syntaxfehler an, die während der Kompilierung angetroffen wurden. Klicken Sie auf einen Fehler, um zu dem Quellort in dem Programmblock zu gehen.


Mit dem Bildschirmteiler können Sie den relativen Platz ändern, den die beiden Ausschnitte im Gespeicherten Programmblock-Editor belegen. Beachten Sie, daß der Ausschnitt Kompilierungsmeldungen standardmäßig nur angezeigt wird, wenn Fehlermeldungen während der Kompilierung generiert werden.


Oberfläche Syntaxpalette

Mit der Syntaxpalette können Sie die Konstrukte von PL/SQL-Sprachelementen und vordefinierten Paketen anzeigen und kopieren. Mit ihr können Sie die ausgewählte Syntax nur in den Programmblock-Editor oder Gespeicherter Programmblock-Editor kopieren.

Die Syntaxpalette besteht aus folgenden Komponenten:

Register PL/SQL	Mit diesem Register können Sie PL/SQL-Sprachelemente anzeigen und auswählen, um sie zu kopieren. Die PL/SQL-Sprachelemente sind nach Kategorien gruppiert, wie z.B. Flußsteuerung, Cursor, Exceptions usw.
Register Vordefinierte Prozeduren	In diesem Register können Sie PL/SQL-Konstrukte (Funktion oder Prozedur) für das Kopieren anzeigen und auswählen. Die vordefinierten Pakete sind nach Paketnamen wie z.B. EXEC_SQL, DEBUG, DDE usw. gruppiert.

Jede Seite hat folgende Komponenten:

Dropdown-Liste	Zeigt einen PL/SQL-Kategoriennamen oder den Namen eines vordefinierten Pakets an. Klicken Sie auf den Pfeil auf der rechten Seite, um eine PL/SQL-Kategorie oder ein vordefiniertes Paket auszuwählen.
Listenbereich	Zeigt die einzelnen Sprachelemente in einer ausgewählten PL/SQL-Kategorie oder die Konstrukte in einem ausgewählten vordefinierten Paket an. Das erste Element in der Liste ist standardmäßig markiert (ausgewählt).  Klicken Sie auf ein Sprachelement oder Konstrukt, um es auszuwählen und die vollständige Syntax im Anzeigebereich anzuzeigen.
Anzeigebereich	Zeigt die vollständige Syntax eines ausgewählten PL/SQL-Sprachelements oder -Konstrukts an. Reservierte Wörter stehen in Objekten in Großbuchstaben. Nachdem die Syntax in den Editor eingefügt wurde, ersetzen Sie Objekte in Kleinbuchstaben, die nicht in Kommentaren stehen, durch die entsprechenden Werte.  Objekte in Kleinbuchstaben innerhalb von Kommentaren sind optional.
Einfügen	Klicken Sie, um das ausgewählte Objekt in dem Listenbereich an die aktuelle Cursorposition im aktiven Editor-Fenster zu kopieren.
Schließen	Klicken Sie, um die Syntaxpalette zu schließen.
Hilfe	Zeigt dieses Hilfethema an.


Syntaxpalette anzeigen

So zeigen Sie die Syntaxpalette an:

  Wählen Sie Programm [image] Syntaxpalette.


Syntaxpalette schließen

So schließen Sie die Syntaxpalette:

  Klicken Sie auf die Schaltfläche Schließen.


Syntax in einen Editor einfügen

  Verwandte Themen

So fügen Sie Syntax in einen Editor ein:

1	Prüfen Sie, ob der Programmblock-Editor oder Gespeicherter Programmblock-Editor das aktuelle (zuletzt ausgewählte) Fenster ist.

2	Setzen Sie den Cursor an der Stelle in den Editor, an der die Syntax eingefügt werden soll.

3	Klicken Sie in der Syntaxpalette auf das Register PL/SQL oder das Register Vordefinierte Prozeduren.

4	Wählen Sie eine PL/SQL-Kategorie oder ein vordefiniertes Paket aus der Dropdown-Liste.

Wenn Sie auf eine Kategorie oder ein Paket klicken, werden die PL/SQL-Sprachelemente oder PL/SQL-Konstrukte, die zur Auswahl verfügbar sind, in dem darunterstehenden Listenbereich angezeigt.

5	Wählen Sie ein PL/SQL-Sprachelement oder -Konstrukt in dem Listenbereich.

Wenn Sie auf ein PL/SQL-Sprachelement oder -Konstrukt klicken, wird die Syntax in dem Anzeigebereich unter dem Listenbereich angezeigt.

6	Klicken Sie auf Einfügen, um die ausgewählte Syntax zu kopieren.

Die ausgewählte PL/SQL-Syntax mit Platzhaltern wird bei der aktuellen Cursorposition in den aktiven Editor eingefügt.  Reservierte Wörter werden in Großbuchstaben geschrieben.

Ersetzen Sie alle Platzhalter in Kleinbuchstaben, die in innerhalb von Kommentaren stehen, durch die entsprechenden Werte. Objekte innerhalb von Kommentaren sind optional.


Liste der PL/SQL-Kategorien

Abfragen

Benutzertypen

Blöcke

Cursor

Datensätze

Datentypen

Exceptions

Flußsteuerung

Funktionen

Kommentare

Loops

Objekttypen

Pakete

PL/SQL-Tabellen

Prozeduren

SQL-Cursor

Tabellen/Ansichten

Transaktionen

Variablen


Liste der vordefinierten Pakete

EXEC_SQL

TOOL_SQL

ORA_FFI

ORA_DE

ORA_PROF

ORA_NLS

TOOL_RES

TOOL_ENV

TEXT_IO

TOOL_ERR

STPROC

LIST

OLE2

DDE

DEBUG

PLITBLM

STANDARD


Über die Versionskontrolle

  Verwandte Themen

Mit der Versionskontrolle können mehrere Versionen derselben Datei in einem Archiv verwaltet und gepflegt werden.

Ein Archiv ist ein benutzerdefinierter Ordner, der eine Textversion der Datei sowie Informationen über jede Revision der Datei enthält, einschließlich einer Beschreibung aller Dateiänderungen und der Angabe des Zeitpunkts dieser Änderungen.

Mit einem Archiv kann ein Mitglied Ihres Entwicklungsteams jede Revision einer Datei sicher und konsistent abrufen, ändern und wieder zurückgeben.

Bei Komponenten (z.B. Form Builder) wird die Versionskontrolle über eine allgemeine Schnittstelle zu einem beliebigen Versionskontrollprogramm realisiert, das Sie verwenden möchten. Plugin-Module sind augenblicklich erhältlich für das Polytron Version Control System (PVCS) von INTERSOLV und Pure-Atria Clearcase, wobei weitere Hersteller hinzukommen werden.

Für Informationen über die Installation und Benutzung von PVCS wird auf die INTERSOLV-Dokumentation verwiesen.

PVCS unterstützt auch das Sperren von Dateien und das Erstellen von Archivberichten.


Über Konfigurationsdateien

Es gibt vier Umgebungsvariablen, die für eine optimale Leistung der Versionskontrolloberfläche eingestellt werden müssen. Unter Windows 3.1 werden sie in oracle.ini eingestellt, während sie unter Windows NT oder Windows 95/98 in der Registrierung in dem Schlüssel SOFTWARE/ORACLE festgelegt werden.

Mit DEV2000_SOURCECONTROL wird angegeben, welches Versionskontrollsystem benutzt werden soll. Diese Umgebungsvariable muß auf  "PVCS" eingestellt werden. Da Komponenten (z.B. Form Builder) standardmäßig PVCS benutzt, kommt es in dieser Version zu keinen spürbaren Auswirkungen, wenn diese Variable weggelassen wird. Sobald jedoch zusätzliche Versionskontrollsysteme hinzugefügt werden, stellt die Einstellung dieser Variablen sicher, daß die Versionskontrolle wie gewünscht funktioniert.

DEV2000_PROJECT tritt anstelle der Variablen TVCCFG aus Forms Developer Version 1.0 und 1.1. Sie identifiziert die PVCS-Projektkonfigurationsdatei (.CFG), die benutzt werden soll. Wenn Sie keine Projektkonfigurationsdatei über eine Umgebungsvariable angeben, müssen Sie in jeder Sitzung eine Datei aus dem Dialogfeld Versionskontrolloptionen auswählen.

Mit DEV2000_SCVIEWER wird festgelegt, welches Programm zur Anzeige der Ergebnisse eines Versionskontrollprotokolls oder eines Differenzberichts verwendet werden soll. Um die Anzeige der Ergebnisse zu dekativieren, muß diese Variable auf null (kein Wert) eingestellt werden.

Mit DEV2000_SCCONVERT wird festgelegt, ob Dateien in ASCII konvertiert werden, bevor sie in PVCS eingetragen werden, und wieder zurück in das Binärformat, bevor sie ausgetragen werden. Es sei denn, Sie haben PVCS schon mit einer früheren Version von Forms Developer benutzt und möchten dieses Verhalten beibehalten, sollten Sie bei diesem Eintrag den Standardwert FALSE beibehalten.

Hier ein Beispielauszug aus oracle.ini:

...

DEV2000_SOURCECONTROL=PVCS

DEV2000_PROJECT=C:\PROJECTS\MYPROJ\MYPROJ.CFG

DEV2000_SCVIEWER=NOTEPAD.EXE

DEV2000_SCCONVERT=FALSE

...


Über die Implementierung von PVCS

Wenn Sie bestimmte Objekte (Forms, Menüs, Berichte, grafische Anwendungen, PL/SQL-Bibliotheken) eintragen, wird die Binärdatei automatisch in ein Textdateiäquivalent konvertiert, und die Textdatei wird in die Versionskontrolle eingetragen. Wenn Sie z.B. MYFORM.FMB eintragen würden, würde MYFORM.FMB automatisch in MYFORM.FMT (das Textäquivalent) konvertiert und MYFORM.FMT in die Versionskontrolle eingetragen.

Wenn Sie eine archivierte Datei austragen, wird die Textversion der Datei wiederum in das entsprechende Binärformat konvertiert, das von den Designer-Schnittstellen gelesen werden kann. Wenn Sie z.B. MYFORM.FMT austragen würden, würde die Datei in MYFORM.FMB konvertiert, damit Sie sie bearbeiten können.

Die Archivierung erfolgt für die Textversion der Datei, damit aussagefähigere Differenzberichte zwischen verschiedenen Revisionen einer Datei generiert werden können. Während PVCS die Archivierung von Binärdateien unterstützt, sind Differenzberichte zwischen Revisionen von Binärdateien nicht möglich.

Diese Dateikonvertierung kann zu zusätzlichen Dateien führen, die in Ihrem Arbeitsordner stehen bleiben, je nach PVCS-Einstellungen. Wenn Ihr Projekt so konfiguriert ist, daß Arbeitsdateien nach dem Check-In schreibgeschützt werden, ist sowohl die Binärdatei als auch eine schreibgeschützte Datei im Textformat in Ihrem Ordner vorhanden. Wenn Ihr Projekt jedoch so konfiguriert ist, daß Arbeitsdateien nach dem Check-In gelöscht werden, bleibt nur die Binärdatei in Ihrem Arbeitsordner stehen.


Über das Eintragen einer Datei

  Verwandte Themen

Jedesmal, wenn Sie eine Datei ändern und in ein Archiv eintragen, wird sie zu einer neuen Revision. Wenn Sie eine Datei eintragen (z.B. eine PL/SQL-Bibliotheksdatei mit der Dateinamenerweiterung .pll), führt PVCS automatisch eine Binär-nach-Text-Konvertierung durch und archiviert die Datei in dem angegebenen Pfad als Textdatei mit der entsprechenden Dateinamenerweiterung (z.B. .pld). PVCS verwendet die Textdatei, um Archivberichte zu erstellen.

Eine Versionsbezeichnung kennzeichnet eine Revision als Bestandteil einer Gruppe von Revisionen, die normalerweise eine vollständige Version Ihrer Anwendung darstellen. Mit Versionsbezeichnungen können Sie mit allen Dateien, die mit einer bestimmten Version verknüpft sind, gleichzeitig arbeiten, indem Sie einen einzigen Namen referenzieren. Wenn Sie schon eine Version des aktuellen Moduls archiviert haben, werden die entsprechenden Informationen automatisch in das Feld Archiv eingegeben.


Über das Austragen einer Datei

  Verwandte Themen

Wenn Sie eine Datei aus einem Archiv austragen, können Sie die Datei durchsuchen, bearbeiten oder ausdrucken. Standardmäßig kann immer nur ein Benutzer gleichzeitig eine bestimmte Version mit einer Sperre austragen.

Wenn Sie eine Datei austragen, wird die Datei automatisch von der archivierten Textversion in das richtige Format konvertiert (z.B. wird eine PL/SQL-Bibliotheksdatei von .pld in .pll konvertiert). Die Datei, die Sie aus einem Archiv austragen, wird als Arbeitsdatei bezeichnet. Jedesmal, wenn Sie eine neue Variation einer Arbeitsdatei eintragen, wird sie zu einer Revision.


Über das Erstellen von Archivberichten

  Verwandte Themen

Mit PVCS können Sie Berichte generieren, in denen die folgenden Archivaktivitäten zusammengefaßt werden:

•	Erstellen von Archiven

•	Attribute von archivierten Dateien

•	Nachfolgende Revisionen

•	Bezeichnungen

•	In der letzten Revision geänderte Zeilen

•	Beschreibung der Arbeitsdatei


Über Promotionsmodelle

Ein Promotionsmodell entspricht einer Hierarchie von Meilensteinen in einem Entwicklungszyklus. Mit der Promotion kontrollieren Sie die Entwicklung des Quellcodes von der Entwurfsphase bis zum endgültigen Release. Jeder Meilenstein wird von einer Promotionsgruppe dargestellt. Beispiele für Promotionsgruppen umfassen Entwicklung, Qualitätssicherung und Produktion. Ein Promotionsmodell ist eine hochentwickelte Funktion. Es wird für Anlagen mit formalen Software-Turnover-Prozeduren empfohlen.

Ein Promotionsmodell kann eine oder mehrere Gruppen auf niedrigster Ebene bzw. Entwicklungsgruppen enthalten. Wenn ein Promotionsmodell aktiv ist, können Benutzer nur Revisionen ändern, die mit einer Entwicklungsgruppe verknüpft sind. Um eine mit einer höheren Gruppe verknüpfte Revision zu bearbeiten, muß ein Benutzer diese aus der Versionskontrolle austragen und beim Austragen wieder mit einer Entwicklungsgruppe verknüpfen. Nach dem erneuten Eintragen der Revision muß diese dann wieder auf eine höhere Ebene gesetzt werden.

Wenn das Promotionsmodell nur eine Entwicklungsgruppe enthält, kann immer nur eine Revision in dem Archiv gleichzeitig gesperrt werden. Um ein Promotionsmodell für die parallele Entwicklung zu entwerfen, müssen Sie mindestens zwei Entwicklungsgruppen vorsehen.

Sie können eine beliebige Anzahl von Zwischen-Promotionsgruppen über der bzw. den Entwicklungsgruppen für die verschiedenen Teststadien oder für Vorab-Releases definieren. Die höchste Ebene ist die Produktionsgruppe, die im allgemeinen darauf hinweist, daß Revisionen für das endgültige Release bereit sind.

Mit einem Promotionsmodell können Sie:

•	Den Projektstatus schnell bestimmen.  Sie können einen Archivbericht über ein Projekt in einem Projekt ausführen, um sofort festzustellen, welche Module einen bestimmten Meilenstein im Entwicklungszyklus noch nicht erreicht haben.

•	Den Revisionszugriff auf Nicht-Entwicklungs-Ebenen steuern.  Da Benutzer keine Revisionen ändern können, die mit Promotionsgruppen nach der Entwicklung verknüpft sind, ist gewährleistet, daß alle Revisionen sorgfältig getestet sind.

•	Ihr eigenes Modell individuell gestalten.  Sie können eine benutzerdefinierte Promotionsstruktur gestalten, die für jedes Projekt speziell zugeschnitten ist, wobei eine beliebige Anzahl von Meilensteinen in der Promotionsstruktur möglich ist.


Archivordner erstellen

  Nächster Schritt	  Verwandte Themen

So erstellen Sie einen Archivordner:  Hinweis:

1	Wählen Sie Datei [image] Verwaltung [image] Versionskontrolloptionen, um das Dialogfeld Versionskontrolle: Optionen anzuzeigen.

2	Wählen Sie das Registertab Projekt aus, wenn es noch nicht ausgewählt ist.

3	Geben Sie den Namen und Pfad Ihres Archivordners in das Feld Neuer Archivordner ein.

4	Klicken Sie auf Neuen Ordner zur Liste hinzufügen, und klicken Sie dann auf Schließen, um das Dialogfeld zu schließen.


Sie können nur dann Archivordner hinzufügen, wenn Sie schon den Parameter DEV2000_PROJECT in der Datei oracle.ini definiert haben. Bei Microsoft Windows definieren Sie den Parameter DEV2000_PROJECT wie folgt:

DEV2000_PROJECT=C:\PVCS\PROJECT1\PROJECT1.CFG

Sie bearbeiten den Parameter DEV2000_PROJECT mit der Datei Oracle.ini für Windows 3.1 und der Registrierung für Windows 95/98 and NT.


Dateien eintragen

  Nächster Schritt	  Verwandte Themen

So tragen Sie eine Datei ein:

1	Wählen Sie Datei [image] Verwaltung [image] Check-In, um das Dialogfeld Versionskontrolle: Check-In anzuzeigen.

2	Geben Sie den Namen der zu archivierenden Datei in das Textfeld Dateiname ein.

3	Geben Sie den Pfad für das Archiv in das Feld Archiv ein.

4	(Optional) Geben Sie gegebenenfalls eine Version, Promotionsgruppe und Beschreibung an.

5	(Optional) Klicken Sie auf das Kontrollkästchen Datei nach Check-In gesperrt lassen, wenn eine nicht schreibgeschützte Kopie der Archivdatei weiter lokal verfügbar sein soll, nachdem die Datei eingetragen wurde. Mit einer nicht schreibgeschützten Kopie der Datei können Sie nachfolgende Änderungen an der Datei ändern und prüfen, ohne die Datei zuerst austragen zu müssen.

6	Klicken Sie auf OK, um die Datei einzutragen.

PVCS archiviert die Datei.


Dateien austragen

  Nächster Schritt	  Verwandte Themen

So tragen Sie eine Datei aus:

1	Wählen Sie Datei [image] Verwaltung [image] Check-Out, um das Dialogfeld Versionskontrolle: Check-Out anzuzeigen.

2	Geben Sie den Pfad des Quellarchivs in das Feld Aus Archiv ein.

3	Geben Sie den Namen der auszutragenden Datei in das Textfeld Dateiname ein.

4	Wählen Sie die gewünschte Dateirevision im Feld Revisionen aus.

5	(Optional) Geben Sie das gewünschte Ziel an, indem Sie einen Pfad in das Feld Ziel eingeben.

6	(Optional) Wenn die auszutragende Datei gesperrt werden soll, müssen Sie die Promotionsgruppe auf Entwicklungsebene auswählen, die der auszutragenden Revision zugewiesen wird.

7	(Optional) Klicken Sie auf das Kontrollkästchen Datei bei Check-Out sperren. Hinweis:

8	(Optional) Klicken Sie auf das Kontrollkästchen  Datei nach Check-Out öffnen. Wenn dieses Kontrollkästchen ausgewählt ist, wird die ausgetragene Datei im Designer geöffnet, nachdem sie aus dem PVCS ausgetragen wurde.

9	Klicken Sie auf OK, um die Datei auszutragen.


Wenn Sie eine Archivdatei ändern möchten, müssen Sie das Kontrollkästchen Datei bei Check-Out sperren aktivieren, um die Änderungen eintragen zu können. Sonst wird eine schreibgeschützte Version der Datei ausgetragen.


Archivberichte erstellen

  Verwandte Themen

So erstellen Sie einen Archivbericht:

1	Wählen Sie Datei [image] Verwaltung [image] Versionskontrolloptionen.

2	Klicken Sie auf das Registertab Bericht, um das Register Versionskontrolle: Berichte anzuzeigen.

3	Geben Sie den Pfad des Archivs in das Feld Archiv ein.

4	Geben Sie den Namen der gewünschten Archivdatei in das Feld Quelldatei ein. PVCS generiert einen Bericht aufgrund des Vergleichs zwischen dieser Datei und der Zieldatei.

5	Geben Sie den Namen der Zieldatei in das Feld Zieldatei ein. Hinweis

6	Wählen Sie die gewünschten Dateirevisionen in den Feldern Quelle bzw. Ziel aus.

7	Geben Sie den Namen und Pfad Ihres Berichts in dem Feld Ausgabedatei an, und klicken Sie dann auf Bericht erstellen.

PVCS erstellt Ihren Bericht. Wenn über die Umgebungsvariable DEV2000_SCVIEWER oder einen Parameter in oracle.ini ein Anzeigeprogramm angegeben wurde, wird dieses zur Anzeige der Berichtausgabe aufgerufen. Sonst öffnen Sie die Berichtdatei mit einem Editor.


Wenn Sie zwei Revisionen mit demselben Archiv vergleichen, geben Sie den Namen der Archivdatei ein, den Sie in Schritt 4 angegeben haben. Wenn Sie unterschiedliche Archivdateien vergleichen, geben Sie eine andere Archivdatei in das Feld Ziel ein.


Dialogfeld Versionskontrolle: Check-In

  Verwandte Themen

In diesem Dialogfeld wird die gewünschte Datei in das angegebene Archiv gemischt.

Das Dialogfeld Check-In enthält die folgenden Optionen:

Arbeitsdatei	Gibt den Namen der einzutragenden Datei an. Wählen Sie Durchsuchen, um ein Datei-Dialogfeld aufzurufen, aus dem Sie eine Datei auswählen können.
In Archiv	Eine Dropdown-Liste aller verfügbaren Archive für das aktuelle Projekt. Wählen Sie ein Archiv aus der Liste, in das die Datei eingetragen werden soll.
Version	(Optional) gibt die Dateiversion an.
Promotionsgruppe	Wenn für Ihr PVCS-Projekt ein Promotionsmodell definiert ist, ist diese Liste aktiviert. Wählen Sie die Promotionsgruppe auf Entwicklungsebene, die der einzutragenden Revision zugewiesen werden soll.
Beschreibung	Gibt eine Beschreibung der Änderungen an, die für diese Revision vorgenommen werden. Auch wenn diese Angabe optional ist, wird empfohlen, daß Sie eine Änderungsbeschreibung eingeben, um die Revisionen beim Check-Out einfacher kennzeichnen zu können.
Datei nach Check-In gesperrt lassen	Gibt an, ob lokal eine nicht schreibgeschützte Kopie der Archivdatei behalten werden soll, selbst nachdem sie eingetragen wurde. Mit einer nicht schreibgeschützten Kopie der Datei können Sie nachfolgende Änderungen an der Datei vornehmen, ohne die Datei zuerst austragen zu müssen.


Dialogfeld Versionskontrolle: Check-Out

  Verwandte Themen

In diesem Dialogfeld wird die angegebene Datei aus einem Archiv abgerufen, damit Sie sie bearbeiten können.

Das Dialogfeld Check-Out enthält folgende Optionen:

Quellarchiv	Gibt den Ordnernamen des Archivs an, aus dem die Datei ausgetragen werden soll.
Dateiname	Gibt den Namen der Datei an, die aus der Versionskontrolle abgerufen werden soll. Wählen Sie Durchsuchen, um ein Datei-Dialogfeld aufzurufen, aus dem Sie eine Datei auswählen können.
Revisionen	Zeigt die verfügbaren Revisionen und Versionen der Datei an, die in dem Feld Dateiname ausgewählt wurden.
Beschreibung	Führt Beschreibungen der verfügbaren Revisionen auf, die in der Liste Revisionen angezeigt werden.
Ziel	(Optional) Gibt den Zielordner für die auszutragende Datei an.
Promotionsgruppe	Wenn ein Promotionsmodell für Ihr PVCS-Projekt definiert ist, ist diese Liste aktiviert. Wenn Sie die Datei nach dem Austragen sperren möchten, müssen Sie die Promotionsgruppe auf Entwicklungsebene wählen, die der auszutragenden Revision zugewiesen wird.
Datei bei Check-Out sperren	Gibt an, ob die auszutragende Datei als gesperrt markiert werden soll. Eine gesperrte Datei ist vor Aktualisierungen durch andere Benutzer geschützt.
Datei nach Check-Out öffnen	Wenn Sie dieses Kontrollkästchen auswählen, wird die ausgetragene Datei im Designer geöffnet, nachdem sie aus PVCS ausgetragen wurde.


Dialogfeld Versionskontrolle: Optionen

  Verwandte Themen

Das Dialogfeld Optionen enthält drei Register:

Projektoptionen

Dateioptionen

Berichtoptionen


Register Versionskontrolle: Projektoptionen

  Verwandte Themen

In diesem Register können Sie Archivordner aus der Projektkonfigurationsdatei hinzufügen und entfernen.

Das Register Projektoptionen enthält folgende Einstellungen:

Aktuelles Projekt	Der Name der aktuellen PVCS-Projektkonfigurationsdatei. Der Ausgangswert ist der Wert von DEV2000_PROJECT in der Datei oracle.ini. Sie können einen Dateinamen direkt eingeben oder können auf Durchsuchen klicken, um das Dialogfeld mit den Betriebssystemdateien anzuzeigen.
Neuer Archivordner	Gibt einen neuen Archivordner an, der zu der Liste mit verfügbaren Archivordnern im aktuellen Projekt hinzugefügt werden soll. Sie können einen Ordnernamen eingeben oder auf Durchsuchen klicken, um das Dialogfeld mit den Betriebssystemdateien anzuzeigen.
Archivordner-Liste	Zeigt die Archivordner an, die im aktuellen Projekt verfügbar sind.
Neuen Ordner zur Liste hinzufügen	Nachdem Sie einen Archivordner in das Textfeld Neuer Archivordner eingegeben haben, klicken Sie auf Neuen Ordner zur Liste hinzufügen, um den Ordner zu dem aktuellen Projekt hinzuzufügen. Der Ordner wird in der Liste angezeigt, nachdem er hinzugefügt wurde.
Ausgewählten Ordner aus der Liste entfernen	Wählen Sie einen Archivordner aus der Liste aus, und klicken Sie auf Ausgewählten Ordner aus der Liste entfernen, um den Ordner aus dem Projekt zu entfernen.


Register Versionskontrolle: Dateioptionen

  Verwandte Themen

Mit diesem Register können Sie ein Archiv sperren oder entsperren bzw. ein Protokoll der Aktivitäten für dieses Archiv generieren.

Das Register Dateioptionen enthält folgende Einstellungen:

Archiv	Eine Dropdown-Liste aller Archivordner in der aktuellen Projektkonfigurationsdatei.
Dateiname	Gibt die aufzurufende Archivdatei an. Sie können den Namen direkt eingeben oder eine Datei mit Durchsuchen wählen. Wenn das PVCS-Projekt so konfiguriert ist, daß Pfade von Arbeitsdateien ignoriert werden, können Sie entweder eine Arbeitsdatei oder eine Archivdatei angeben. Sonst dürfen Sie nur eine Archivdatei angeben.
Revision	In dieser Dropdown-Liste werden alle verfügbaren Revisionen und Versionen der ausgewählten Datei angezeigt. Außerdem enthält diese Liste einen leeren Eintrag, mit dem keine Auswahl angegeben wird. Wenn Sie eine bestimmte Revision auswählen, wird diese Revision gesperrt oder entsperrt. Wenn Sie keine Revision auswählen, hängt das Verhalten beim Sperren davon ab, ob ein Promotionsmodell definiert ist. Wenn kein Modell definiert ist, wird die Tip-Revision gesperrt. Wenn ein Modell definiert ist, wird die der angegebenen Promotionsgruppe zugewiesene Revision gesperrt. Das Verhalten bei Sperren aufheben ohne ausgewählte Revision besteht immer darin, daß alle Sperren freigegeben werden, die Sie für die Datei haben.
Promotionsgruppe	Wenn ein Promotionsmodell für Ihr PVCS-Projekt definiert ist, ist diese Liste aktiviert und enthält alle Promotionsgruppen auf Entwicklungsebene in Ihrem Promotionsmodell. Wenn Sie eine Revision sperren, wird die in dieser Liste angezeigte Promotionsgruppe der Revision zugewiesen.
Protokolldatei	Gibt den Namen der Protokolldatei an.
Protokolltyp	Gibt den Typ der Aktualisierungen an, die in die angegebene Protokolldatei eingetragen werden sollen, wenn eine Datei ein- oder ausgetragen wird.
Revision sperren	Sperrt die im Feld Dateiname angegebene Datei, ohne sie aus der Versionskontrolle abzurufen. Eine gesperrte Datei ist vor Aktualisierungen durch andere Benutzer geschützt. Wenn Sie eine bestimmte Revision aus der Liste Revisionen auswählen, wird diese Revision gesperrt. Wenn Sie keine Revision ausgewählt haben, wird die Tip-Revision (bzw. die Revision, die der angegebenen Promotionsgruppe aktuell zugewiesen ist, gesperrt). Wenn für Ihr PVCS-Projekt ein Promotionsmodell definiert ist, wird die angegebene Promotionsgruppe der gesperrten Revision zugewiesen.
Sperren aufheben	Hebt die Sperre der Datei auf, die in dem Feld Dateiname angegeben ist, so daß andere Benutzer die Archivdatei austragen und ändern können. Wenn Sie eine bestimmte Revision aus der Liste Revision ausgewählt haben, wird die Sperre dieser Revision aufgehoben. Wenn Sie keine Revision ausgewählt haben, werden alle Sperren, die Sie an Revisionen der Datei besitzen, aufgehoben.
Protokoll generieren	Generiert eine Protokolldatei mit dem angegebenen Namen. Der Typ der Einträge in der Protokolldatei wird von der Einstellung der Option Protokolltyp bestimmt. Wenn über die Umgebungsvariable DEV2000_SCVIEWER oder über einen Parameter in oracle.ini ein Editor angegeben wurde, wird dieser zur Anzeige der Ausgabe aufgerufen.


Register Versionskontrolle: Berichtoptionen

  Verwandte Themen

Mit diesem Register können Sie Archivberichte definieren und erstellen.

Das Register Berichtoptionen enthält die folgenden Einstellungen:

Archiv	Eine Dropdown-Liste aller Archivordner in der aktuellen Projektkonfigurationsdatei.
Quelldatei	Gibt die erste Datei zur Benutzung für Differenzberichte an. Sie können den Namen direkt eingeben oder eine Datei mit der Schaltfläche Durchsuchen auswählen. Wenn das PVCS-Projekt so konfiguriert ist, daß Pfade von Arbeitsdateien ignoriert werden, können Sie entweder eine Arbeitsdatei oder eine Archivdatei angeben. Sonst dürfen Sie nur eine Archivdatei angeben.
Quellrevision	Eine Dropdown-Liste aller verfügbaren Revisionen und Versionen der Quelldatei.
Zieldatei	Gibt den Namen der Zieldatei an. PVCS generiert einen Bericht aufgrund eines Vergleichs der Quelldatei mit der Zieldatei.
Zielrevision	Eine Dropdown-Liste aller verfügbaren Revisionen und Versionen der Zieldatei.
Ausgabedatei	Gibt den Ordner und Namen der Zieldatei an, in die der Differenzbericht geschrieben werden soll, nachdem die Dateien miteinander verglichen wurden.
Bericht erstellen	Erstellt einen Bericht entsprechend den angegebenen Optionen. Wenn über die Umgebungsvariable DEV2000_SCVIEWER oder einen Parameter in oracle.ini ein Editor angegeben wurde, wird dieses zur Anzeige der Ausgabe aufgerufen.


Fehlermeldungen

Als nächstes werden die Fehlermeldungen aufgeführt, die bei Benutzung der Versionskontroll-Dialogfelder angezeigt werden können:

D2SCP-001:	Dateizugriff vom Dateisystem abgelehnt

 Ursache:	Sie haben keine ausreichende Zugriffsberechtigung für das Lesen der Archivdatei, das Schreiben der Arbeitsdatei oder das Schreiben von Protokoll- bzw. Berichtdateien.

 Maßnahme:	Wenn Sie die Zugriffsberechtigung für diese Dateien benötigen, nehmen Sie Verbindung mit dem Systemadministrator auf.

D2SCP-002:	Zugriffsberechtigungen reichen nicht aus

 Ursache:	Sie haben die PVCS-Berechtigungen für den Zugriff auf das angegebene Archiv nicht. Diese Fehlermeldung wird auch angezeigt, wenn das Ändern von Archivordnern im Masterprojekt deaktiviert wurde und Sie versuchen, diese Ordner im Register Projektoptionen des Dialogfelds Optionen zu ändern.

 Maßnahme:	Wenn Sie die Berechtigung zu diesem Archiv benötigen, nehmen Sie Verbindung mit dem PVCS-Administrator auf.

D2SCP-003:	Archiv ist schon vorhanden

 Ursache:	Diese Fehlermeldung weist auf einen internen Fehler und sollte eigentlich nicht angezeigt werden.

 Maßnahme:	Wenn die Fehlermeldung bei Wiederholung des Vorgangs wieder angezeigt wird, nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

D2SCP-004:	Angegebenes Archiv nicht gefunden

 Ursache:	Sie haben eine Datei eingegeben oder ausgewählt, bei der es sich nicht um ein Archiv handelte, während eine Archivdatei erwartet wurde. Dieser Fehler ist im allgemeinen darauf zurückzuführen, daß eine Arbeitsdatei anstelle der Archivdatei ausgewählt wurde (z.B. MYFORM.FMB antelle von MYFORM.FMV).

 Maßnahme:	Klicken Sie auf die Schaltfläche Durchsuchen, um eine Archivdatei zu wählen.

D2SCP-005:	Ungültige Zeichen im Dateinamen bzw. ungültige Laufwerks- oder Pfadangabe

 Ursache:	Der eingegebene Dateiname ist kein gültiger Name einer Betriebssystemdatei.

 Maßnahme:	Prüfen Sie die Syntax des Dateinamens auf Fehler.

D2SCP-006:	Datei wird von einem anderen Prozeß benutzt

 Ursache:	Die Datei, die Sie aufrufen wollten, wird von einem anderen PVCS-Benutzer verwendet.

 Maßnahme:	Wenn Sie den Vorgang nach einer bestimmten Zeit wiederholen, verläuft er im allgemeinen erfolgreich.

D2SCP-007:	Konvertierung nicht erfolgreich. Die Arbeitsdatei ist schreibgeschützt oder wird nicht unterstützt.

 Ursache:	Dieser Fehler kann folgende Ursachen haben:

A.	Die Arbeitsdatei ist möglicherweise schreibgeschützt. Dies geschieht, wenn Sie die Datei austragen, ohne sie zu sperren und sie dann später aus dem Dialogfeld Optionen sperren.

B.	Sie haben versucht, eine Datei ein- oder auszutragen, die nicht erkannt wird.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Benutzen Sie den Windows Datei-Manager oder Explorer, um den Schreibschutz der Datei aufzuheben, bevor Sie fortfahren.

Bei B.	Tragen Sie die Datei mit der eigenständigen PVCS-Oberfläche ein oder aus.

Sie können jede Datei austragen, können jedoch nur Dateien eintragen, die erkannt werden. Forms Developer nämlich nur anhand der Arbeitsdatei bestimmen, ob es sich um einen unterstützten Dateityp handelt. Beim Eintragen verwenden Sie die Arbeitsdatei, so daß Forms Developer die Datei vor dem Eintragen prüft. Beim Austragen wird die Datei zuerst ausgetragen, um dann die Arbeitsdatei zu erhalten. Nur dann kann Forms Developer die Datei testen. Sie können diesen Fehler also beim Austragen problemlos ignorieren, wenn Sie wissen, daß Sie einen fremden Dateityp austragen.

D2SCP-008:	Ungültige oder nicht ausreichende Werte

 Ursache:	Diese Meldung weist auf einen internen Fehler und sollte nicht angezeigt werden.

 Maßnahme:	Wenn diese Meldung nach Wiederholung des Vorgangs immer noch angezeigt wird, nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

D2SCP-010:	Angegebene Version ist schon vorhanden

 Ursache:	Sie haben eine Version im Dialogfeld Check-In angegeben, die schon für die einzutragende Datei vorhanden ist. Bei PVCS müssen Versionen eindeutig sein.

 Maßnahme:	Ändern Sie die Version. Um die benutzten Versionen anzuzeigen, verwenden Sie die Protokollfunktion aus dem Register Dateioptionen des Dialogfelds Optionen.

D2SCP-011:	Angegebene Revision ist nicht vorhanden

 Ursache:	Diese Fehlermeldung weist auf einen internen Fehler und sollte nicht angezeigt werden.

 Maßnahme:	Wenn die Fehlermeldung nach Wiederholung des Vorgangs immer noch angezeigt wird, nehmen Sie Verbindung mit der Zentralen Kundenunterstützung von Oracle auf.

D2SCP-012:	Ungültige Konfigurationsdatei angegeben

 Ursache:	Dieser Fehler kann folgende Ursachen haben:

A.	Die Datei, die Sie im Register Projektoptionen im Dialogfeld Optionen ausgewählt haben, ist keine gültige PVCS-Konfigurationsdatei.

B.	Wenn dieser Fehler auftritt, während Sie die Dialogfelder Check-In oder Check-Out öffnen, bedeutet dies, daß die in der Umgebungsvariablen DEV2000_PROJECT angegebene Konfigurationsdatei ungültig ist.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Wählen Sie eine andere, gültige Datei aus.

Bei B.	Ändern Sie die Variable, oder legen Sie im Register Projektoptionen im Dialogfeld Optionen eine gültige Konfigurationsdatei fest.

D2SCP-013:	Sie müssen zuerst ein Projekt aus 'Versionskontrolloptionen' auswählen

 Ursache:	Sie haben versucht, die Dialogfelder Check-In oder Check-Out zu öffnen, haben jedoch kein Projekt entweder über die Umgebungsvariable DEV2000_PROJECT in der Datei ORACLE.INI oder im Register Projektoptionen im Dialogfeld Optionen angegeben.

 Maßnahme:	Wählen Sie im Register Projektoptionen ein Projekt, bevor Sie fortfahren.

D2SCP-014:	Projektkonfigurationsdatei kann nicht aktualisiert werden.

 Ursache:	Sie haben versucht, Archivordner aus der Projektkonfigurationsdatei hinzuzufügen oder zu entfernen, haben jedoch keine Schreibberechtigung für die Datei oder den Ordner, in dem die Datei gespeichert ist.

 Maßnahme:	Wenn Sie diese Zugriffsberechtigung benötigen, nehmen Sie Verbindung mit dem PVCS- oder Systemadministrator auf.

D2SCP-015:	Revision ist nicht gesperrt.

 Ursache:	Sie haben versucht, eine Revision einzutragen, die Sie nicht gesperrt haben, bzw. die Sperre einer Revision aufzuheben, die nicht gesperrt war (aus dem Register Dateioptionen).

 Maßnahme:	Wenn Sie Änderungen vorgenommen haben, sperren Sie die Revision im Register Dateioptionen, bevor Sie sie eintragen.

D2SCP-016:	Angegebene Revision kann nicht gesperrt werden.

 Ursache:	Sie haben versucht, eine Revision mit einer Sperre aus dem Dialogfeld Check-Out auszutragen bzw. eine Revision im Register Dateioptionen zu sperren, PVCS konnte die Sperre jedoch nicht zuweisen. Dieser Fehler kann folgende Ursachen haben:

A.	Die Revision wurde schon von Ihnen oder einem anderen Benutzer gesperrt.

B. 	Ihr Projekt läßt mehrere Sperren nicht zu, und die Revision ist schon gesperrt.

C. 	Wenn das Projekt ein Promotionsmodell hat, ist die angegebene Promotionsgruppe möglicherweise schon einer gesperrten Revision zugewiesen.

 Maßnahme:	Dieser Fehler kann wie folgt behoben werden:

Bei A.	Ermitteln Sie mit der Protokollfunktion, welcher Benutzer die Sperre hat, und wenn Sie die Revision schon gesperrt haben, tragen Sie sie aus, ohne eine Sperre anzufordern. Wenn ein anderer Benutzer die Datei gesperrt hat, warten Sie, bis dieser die Sperre aufhebt, bevor Sie die Datei zur Änderung austragen.

Bei B.	Warten Sie, bis die Revision oder Datei verfügbar wird, oder lassen Sie möglicherweise mehrere Sperren pro Datei in dem Projekt zu.

Bei C.	Warten Sie, bis die Promotionsgruppe verfügbar wird (keiner gesperrten Revision zugewiesen ist), oder benutzen Sie eine andere Promotionsgruppe auf Entwicklungsebene.

D2SCP-017:	Angegebener Ordner ist nicht vorhanden.

 Ursache:	Sie haben einen nicht vorhandenen Ordner angegeben. Dieser Fehler ist wahrscheinlich darauf zurückzuführen, daß Sie eine Datei austragen, während der Pfad, aus dem sie eingetragen wurde, in Ihrer Workstation nicht vorhanden ist.

 Maßnahme:	Wenn dies der Fall ist, ändern Sie das Zielfeld so, daß es auf einen bestehenden Ordner zeigt.

D2SCP-018:	Ausgabe kann nicht an Datei umgeleitet werden

 Ursache:	Der Dateiname, den Sie für das Protokoll oder den Differenzbericht angegeben haben, ist ungültig, oder die Datei ist schreibgeschützt.

 Maßnahme:	Geben Sie eine gültige Datei ohne Schreibschutz an.

D2SCP-100:	PVCS Fehler-Nummer - Schlüsselwort

 Ursache:	Vom PVCS wurde ein Fehler zurückgegeben, den die Versionskontrolloberfläche von Developer/2000 nicht verarbeiten konnte.

Maßnahme:	Schlagen Sie in der PVCS-Dokumentation anhand der Fehlernummer oder dem Fehlerschlüsselwort nach, und beheben Sie den Fehler wie angegeben.


Warum zeigt die Oberfläche des PVCS-Konfigurationsmanagers die neuen Dateien oder Revisionen nicht an?

Nachdem Dateien eingetragen und Versionen zugewiesen wurden, zeigt die Oberfläche des PVCS-Konfigurationsmanagers die neuen Dateien oder Revisionen nicht an. Warum?

Der Projektordner muß mit den neuen Informationen aktualisiert werden, die in den Archiven stehen (neue Dateien und Revisionen). Hierzu wählen Sie Update Project Folder... aus dem Menü Project der obersten Ebene von PVCS. Die neuen Dateien sollten dann in dem PVCS-Fenster "Folders" angezeigt werden.


Warum sind die Versionskontroll-Menüoptionen nur in einem Produkt aktiviert?

Wenn mehrere Produkte ausgeführt werden, sind die Versionskontroll-Menüoptionen nur in einem Produkt aktiviert. Warum?

PVCS on Windows ist nicht reentrant. Dies bedeutet, daß nur ein Programm (entweder ein PVCS-aktiviertes Programm wie Report Builder oder die PVCS-Oberfläche selbst) gleichzeitig auf PVCS-Dienste zugreifen kann. Sie müssen sowohl das Programm beenden, in dem die Menüs aktiviert sind, als auch das Programm, aus dem Sie auf die PVCS-Dienste zugreifen möchten. Danach starten Sie das Programm neu, in dem Sie den PVCS-Zugriff benötigen.


Warum wird eine Fehlermeldung ausgegeben, daß PVCS das Archiv nicht finden kann?

Beim Versuch, einen Bericht auszutragen, wurde die .RDV-Datei (Archivdatei) ausgewählt. Daraufhin wird die Fehlermeldung ausgegeben, daß PVCS das Archiv nicht finden kann. Warum?

Auch wenn Sie eine .RDV-Datei gewählt haben, war diese möglicherweise nicht das Archiv. Report Builder schreibt die Zwischendateien (ASCII-Dateien) in eine Datei mit der Erweiterung .RDV, bevor sie eingetragen werden. (Weitere Einzelheiten finden Sie unter Über die Implementierung von PVCS.) Sie müssen unbedingt eine .RDV-Datei aus dem Archivordner und nicht aus dem Arbeitsordner auswählen. Es gibt drei Möglichkeiten, dieses Problem zu umgehen:

•	Stellen Sie die PVCS-Projektoption so ein, daß Arbeitsdateien nach der Eintragung gelöscht werden. Dadurch wird verhindert, daß .RDV-Zwischendateien von Reports weiter auf der Festplatte stehen.

•	Ändern Sie die Suffixregel, so daß einer .RDV-Datei beim Eintragen ein anderes Suffix zugewiesen wird, z.B. .VRD. Danach suchen Sie beim Austragen nach der .VRD-Datei und nicht nach .RDV.

•	Konfigurieren Sie das Projekt so, daß Arbeitsdateipfade ignoriert werden, wenn Sie nach Archiven suchen. Auf diese Weise können Sie die Arbeitsdatei (in diesem Fall .RDF) und nicht das Archiv beim Austragen angeben.

Diese Optionen können über die Benutzerschnittstelle des PVCS-Konfigurationsmanagers aus dem Menü Configure Project... ausgewählt werden.


Wie kann sichergestellt werden, daß der richtige Benutzername beim Sperren einer Datei benutzt wird?

Wenn eine Datei gesperrt (oder mit einer Sperre ausgetragen) wird, ist die Benutzer-ID auf "UNKNOWN" gesetzt. Auf diese Weise können andere Benutzer die Datei eintragen oder entsperren. Wie kann sichergestellt werden, daß der richtige Benutzername verwendet wird?

Es gibt eine PVCS-Option zur Projektkonfiguration, "Login Source", im Abschnitt "network" der PVCS-Optionen zur Projektkonfiguration (im PVCS Version Manager Interface), mit der Sie dies verhindern können. Mit dieser Option können Sie definieren, wie PVCS Ihre aktuelle Benutzer-ID bestimmt. Wenn Sie z.B. ein NETWARE-Netzwerk verwenden, können Sie PVCS anweisen, die aktuelle NETWARE Login-ID zu benutzen. Bei Windows NT können Sie die NT Login-ID verwenden, indem Sie die Login-Quelle "HOST" wählen. Weitere Einzelheiten finden Sie in der PVCS-Dokumentation.


Wie können Arbeitsdateien für das Austragen ausgewählt werden?

Wie können Arbeitsdateien und keine Archivdateien für das Austragen ausgewählt werden?

Es gibt eine PVCS-Option zur Projektkonfiguration, "Ignore Workfile Path", im Abschnitt "Archive Searching" der PVCS-Optionen zur Projektkonfiguration (im PVCS Version Manager Interface), die Sie verwenden können. Wenn Sie diese Option einschalten, können Sie Arbeitsdateien oder Archivdateien in den Dialogfeldern Check-Out und Versionskontrolle: Optionen auswählen.


Warum wird eine Fehlermeldung ausgegeben, daß VCSDIR in der Projektkonfigurationsdatei nicht zulässig ist?

Das Masterprojekt wurde so konfiguriert, daß das Ändern der Archivordner nicht zulässig ist. Im PVCS Version Manager Interface können Archivordner in einem Unterprojekt nicht geändert werden, was korrekt ist. In Forms Developer war dies jedoch möglich. Nachher wurde vom PVCS Version Manager Interface eine Fehlermeldung ausgegeben, daß VCSDIR in der Projektkonfigurationsdatei nicht zulässig ist. Warum?

Das PVCS Version Manager Interface sucht im Stammverzeichnis nach einer Standarddatei MASTER.CFG und hat diese wahrscheinlich gefunden. Deshalb wurde die Fehlermeldung ausgelöst, nachdem Sie Archivordner in geändert haben. Damit die Masterkonfigurationsdatei erkannt wird, müssen Sie PVCS mit dem Befehl VCONFIG konfigurieren. Dadurch wird der Name der Masterkonfigurationsdatei in den PVCS-Bibliotheken codiert und wird gewährleistet, daß niemand die Liste mit Archivordnern versehentlich ändern kann. Hierzu wird auf die Abschnitte über Masterkonfigurationsdateien und den Befehl VCONFIG in dem INTERSOLV PVCS Command-Line Reference Guide verwiesen.


• 9


Auf fremde Datenquellen zugreifen

  Verwandte Themen

Über Oracle Open Client Adapter (OCA) kann sich die Anwendung bei jeder ODBC-Datenquelle anmelden. Für die unten aufgeführten Datenquellen erhalten Sie spezifische Informationen.

Klicken Sie auf die Datenquelle, auf die Sie zugreifen möchten:

Personal Oracle Lite

Microsoft SQL Server  (Versionen 4.2, 6.0 und 6.5)

Microsoft Access  (Version 2.0 und höher)

Oracle Rdb  (Versionen 5.1, 6.1 und 7.0)

Sybase   (SQL Server Version 4.9, System 10 und System 11)

Tandem NonStop SQL

Informix   (SE und Online Versions 5.x, 6.x und 7.x)


Vorbereitung zur Benutzung von Open Client Adapter (OCA)

  Verwandte Themen

So richten Sie Ihr System zur Benutzung von OCA ein:

1	Installieren Sie die erforderliche Datenbank-Server- und Client-Software, einschließlich Netzwerkbibliotheken. Konfigurieren Sie die Datenbank, erstellen Sie Datenbank-Accounts, und erteilen Sie die entsprechenden Zugriffsberechtigungen für die Benutzer. Beachten Sie, daß bei einigen Einzelbenutzer-, Einzelplatz-Datenquellen, wie z.B. bei Microsoft Access, kein Hinweis auf einen Datenbank-Server und Datenbank-Client vorhanden ist und daß keine besondere Einrichtung erforderlich ist (Sie müssen jedoch die Datenbankdatei erstellen, um Datenbanktabellen zu speichern).

2	Installieren Sie die erforderlichen ODBC-Treiber auf dem Client-Rechner, und konfigurieren Sie die Datenquelle mit dem Microsoft ODBC Administrator (der automatisch mit den Treibern installiert wird). ODBC-Treiber von Intersolv (für SQL Server, Rdb, Sybase, Informix, Ingres und viele andere Datenbanken) können von der Installations-CD installiert werden. Außerdem können Sie Treiber von Microsoft, IBM und anderen Herstellern von ODBC-Treibern verwenden.


Auf Personal Oracle Lite zugreifen

  Verwandte Themen 	  Open oca_info.pdf

So greifen Sie auf Personal Oracle Lite zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

7	Wenn Sie bereit sind, sich bei der Datenquelle von Personal Oracle Lite anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Personal Oracle Lite finden Sie unter oca_info.pdf.


Init_Form ist die OPENDB-Routine, die Ihre Attribute auf Formebene automatisch ändert, so daß Sie mit einer ODBC-Datenquelle kommunizieren können.


OCA.PLL ist in dem Verzeichnis ORACLE_HOME\oca20 gespeichert. Damit Form Builder die Datei OCA.PLL finden kann, müssen Sie das Verzeichnis ORACLE_HOME\oca20 zu der Umgebungsvariablen FORMS50_PATH in der Registrierung hinzufügen.


Auf Microsoft SQL Server zugreifen

  Verwandte Themen	  Open oca_info.pdf

So greifen Sie auf Microsoft SQL Server zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf)..

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

7	Wenn Sie bereit sind, sich bei der Datenquelle von Microsoft SQL Server anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Microsoft SQL Server finden Sie unter oca_info.pdf.


Auf Oracle Rdb zugreifen

  Verwandte Themen 	  Open oca_info.pdf

So greifen Sie auf Oracle Rdb zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6	(Nur Form Builder). Ordnen Sie die Bibliothek OCA.PLL Ihrer Anwendung zu. Erstellen Sie dann einen Pre-Form- oder When-New-Form-Instance-Trigger, der die Routine OPENDB.Init_Form umfaßt.

7	Wenn Sie bereit sind, sich bei der Oracle Rdb-Datenquelle anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Oracle Rbd finden Sie unter oca_info.pdf.


Auf Microsoft Access zugreifen

  Verwandte Themen	  Open oca_info.pdf

So greifen Sie auf Microsoft Access zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	(Optional) Führen Sie die SQL-Skripts aus, um Demotabellen mit dem UBT-Dienstprogramm zu erstellen und aufzufüllen:

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Verbindung erstellt.

1. 	Starten Sie den Builder-

1. 	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

6	Wenn Sie bereit sind, sich bei der Microsoft Access-Datenquelle anzumelden, geben Sie die DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Microsoft Access finden Sie unter oca_info.pdf.


Auf Sybase zugreifen

  Verwandte Themen 	  Open oca_info.pdf

So greifen Sie auf Sybase zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6.	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

5	Wenn Sie bereit sind, sich bei der Sybase-Datenquelle anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein.

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Sybase finden Sie unter oca_info.pdf.


Auf Tandem NonStop SQL zugreifen

  Verwandte Themen 	  Open oca_info.pdf

So greifen Sie auf Tandem NonStop SQL zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6.	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

7	Wenn Sie bereit sind, sich bei der Datenquelle von Tandem NonStop SQL anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Tandem NonStop SQL finden Sie unter oca_info.pdf.


Auf Informix zugreifen

  Verwandte Themen 	  Open oca_info.pdf

So greifen Sie auf Informix zu:

1	Richten Sie Ihr System zur Benutzung von Open Client Adapter (OCA) ein.

2	Lesen Sie die Versionshinweise und das PDF-Dokument (oca_info.pdf).

3	Führen Sie die SQL-Skripts aus, um Data-Dictionary-Ansichten auf der Serverseite zu erstellen, mit denen Entwurfskomponenten Datenbankobjektnamen zur Auswahl beim Entwurf anzeigen können. Hinweis

UBT32.EXE user/password@ODBC:datasource[:dbname] @sqlscript  Beispiel

Wenn dbname nicht angegeben wird, werden die Ansichten in der 'aktuellen' Datenbank für die ODBC-Anmeldung erstellt.

4.	Starten Sie den Builder.

5	(Optional)  Führen Sie die SQL-Skripts aus, um Demotabellen zu erstellen und aufzufüllen.  Beispiel

6.	(Nur Form Builder) Stellen Sie das Attribut Primärschlüssel für jedes Datenobjekt auf Ja ein. Datenobjekte entsprechen Spalten in Ihrer Datenquelle.

7	Wenn Sie bereit sind, sich bei der Informix-Datenquelle anzumelden, geben Sie die folgende DB-Adresse in das Dialogfeld Anmelden ein:

[user[/password]]@ODBC:datasource[:dbname]  Beispiel

Weitere Informationen über den Zugriff zu Informix finden Sie unter oca_info.pdf.


Über Open Client Adapter (OCA)

 oca_info.pdf öffnen

Mit Oracle Open Client Adapter (OCA) für ODBC können Anwendungen auf Microsoft Windows 3.1, Windows 95/98 und Windows NT auf OBDC-konforme Datenquellen über ODBC-Treiber zugreifen. OCA erfordert, daß der ODBC-Treiber mit ODBC Ebene 1 konform ist. OCA benutzt auch eine bestimmte ODBC-Funktionalität der Ebene 2, um eine bessere Leistung zu erzielen, wenn diese Möglichkeit vom ODBC-Treiber vorgesehen ist.

Mit OCA kann eine Anwendung konsistent auf verschiedene Datenquellen zugreifen. Auf diese Weise kann ein Anwendungsentwickler eine Anwendung erstellen, die ohne Änderung mit einer von mehreren Datenquellen ausgeführt werden kann. Alternativ kann die Anwendung für eine spezifische Datenquelle bestimmt sein und die für dieses System spezifischen Funktionen nutzen.

OCA wird mit dem Oracle-Installer installiert, der alle erforderlichen Dateien in den Ordner ORACLE_HOME kopiert. Eine dieser Dateien ist oca.pll, eine PL/SQL-Bibliothek mit Funktionen, die Sie in Anwendungen benutzen können, um folgende Schritte auszuführen:

•	Zusätzliche Anmeldungen bei anderen Datenquellen neben der Hauptanmeldung der Anwendung.

•	Ausführung beliebiger SQL-Anweisungen und Gespeicherter Prozedur-Aufrufe bei einer beliebigen Anmeldung.

•	Abrufen von Ergebnisgruppen aus fremden gespeicherten Prozeduren.

•	Abrufen der DBMS- und ODBC-Treibernamen und Versionen für eine bestimmte Anmeldung.

•	Automatische Anpassung von Form- und Datenblockattributen zur Laufzeit entsprechend der Datenquelle.

Klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um mehr über diese Funktionen zu erfahren.

Weitere Einzelheiten über installierte Dateien finden Sie in den Versionshinweisen.


Standardmäßig ist oca_info.pdf in ORACLE_HOME\TOOLS\DOC60\US installiert. Wenn Adobe Acrobat Reader im Standardverzeichnis installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Hilfethemas, um dieses Dokument anzuzeigen. Sonst starten Sie den PDF-Viewer, und öffnen Sie oca_info.pdf.


Über das UBT-Dienstprogramm

Oracle Open Client Adapter (OCA) für ODBC umfaßt ein SQL*Plus-ähnliches Dienstprogramm mit der Bezeichnung Universal Backend Tester (UBT). Mit UBT können SQL-Befehle innerhalb des Interpreters oder über Befehlsdateien bearbeitet werden.

Die ausführbare UBT-Datei (UBT32.EXE bei Windows NT und Windows 95/98 und UBT.EXE bei Windows 3.1) ist in ORACLE_HOME\BIN installiert.

Weitere Informationen über Oracle Client Adapter finden Sie unter oca_info.pdf (einschließlich Informationen über das UBT-Dienstprogramm).


Die Versionshinweise zu OCA sind in RELNOTES.TXT auf der Installations-CD enthalten.


Standardmäßig sind die Informationen über den Zugriff zu Personal Oracle Lite in ORACLE_HOME\TOOLS\DOC60\US\\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardverzeichnis installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Hilfethemas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Dies ist optional bei der Anwendungsentwicklung und zur Laufzeit nicht obligatorisch. Bei einigen Datenbanken (z.B. Microsoft Access) können Data-Dictionary-Ansichten wegen einer nicht ausreichenden Darstellung der Datenbank-Kataloginformationen und wegen fehlender Unterstützung beim Erstellen von Ansichten nicht erzeugt werden. In diesem Fall können Sie die Namen der Datenbankobjekte beim Entwurf eingeben, anstatt sie aus einer Liste auszuwählen.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten für Personal Oracle Lite in ORACLE_HOME\OCA20\SQL\POLITE installiert:

polvudrp.sql	Entfernt alte Versionen der Ansichten.

polvubld.sql	Erstellt die erforderlichen Ansichten.


UBT32.EXE scott/tiger@ODBC:polite_ds @polvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Personal Oracle Lite in ORACLE_HOME\OCA20\SQL\POLITE installiert:

poldmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen von Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:polite_ds @poldmbld.sql


scott/tiger@ODBC:polite_ds


Standardmäßig sind Informationen über den Zugriff zu Microsoft SQL Server in ORACLE_HOME\ TOOLS\DOC60\US\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardverzeichnis installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um dieses Dokument anzuzeigen. Sonst starten Sie den PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten für Microsoft SQL Server in ORACLE_HOME\OCA20\SQL\SQLSRV installiert:

sqsvudrp.sql	Entfernt alte Versionen der Ansichten.

sqsvubld.sql	Erstellt für SQL Server Version 4.2 die erforderlichen Ansichten.

sqs60bld.sql	Erstellt für SQL Server Version 6.0 die erforderlichen Ansichten.


UBT32.EXE scott/tiger@ODBC:sqlserver_ds @sqsvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Microsoft SQL Server in ORACLE_HOME\OCA20\SQL\SQLSRV installiert:

sqsdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:sqlserver_ds @sqsdmbld.sql


scott/tiger@ODBC:sqlserver_ds


Standardmäßig sind Informationen über den Zugriff zu  Microsoft Access in ORACLE_HOME\ TOOLS\DOC60\US\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardordner installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Microsoft Access in ORACLE_HOME\OCA20\SQL\ACCESS installiert:

accdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:access_ds @accdmbld.sql


scott/tiger@ODBC:access_ds


Standardmäßig sind Informationen über den Zugriff zu Oracle Rdb in ORACLE_HOME\ TOOLS\DOC60\US\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardordner installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Hilfethemas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten für Oracle Rdb in ORACLE_HOME\OCA20\SQL\RDB installiert:

rdbvudrp.sql	Entfernt alte Versionen der Ansichten.

rdbvubld.sql	Erstellt die erforderlichen Ansichten.

rdbdual.sql	Erstellt View Dual (zur Unterstützung von SYSDATE).


UBT32.EXE scott/tiger@ODBC:rdb_ds @rdbvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Oracle Rdb in ORACLE_HOME\OCA20\SQL\RDB installiert:

rdbdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:rdb_ds @rdbdmbld.sql


scott/tiger@ODBC:rdb_ds


Standardmäßig sind Informationen über den Zugriff zu Sybase in ORACLE_HOME\TOOLS\DOC60\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardordner installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten für Sybase in ORACLE_HOME\OCA20\SQL\SYBASE installiert:

sybvudrp.sql	Entfernt alte Versionen der Ansichten.

sybvubld.sql	Erstellt die erforderlichen Ansichten.


UBT32.EXE scott/tiger@ODBC:sybase_ds @sybvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Sybase in ORACLE_HOME\OCA20\SQL\SYBASE installiert:

sybdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:sybase_ds @sybdmbld.sql


scott/tiger@ODBC:sybase_ds


Standardmäßig sind die Informationen über den Zugriff zu Tandem NonStop SQL in ORACLE_HOME\TOOLS\DOC60\US\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardordner installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten für Tandem NonStop SQL in ORACLE_HOME\OCA20\SQL\NONSTOP installiert:

nssvudrp.sql	Entfernt alte Versionen der Ansichten.

nssvubld.sql	Erstellt erforderliche Ansichten.


UBT32.EXE scott/tiger@ODBC:nonstop_ds @nssvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Tandem NonStop SQL in ORACLE_HOME\OCA20\SQL\NONSTOP installiert:

nssdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:nonstop_ds @nssdmbld.sql


scott/tiger@ODBC:nonstop_ds


Standardmäßig sind Informationen über den Zugriff zu Informix in ORACLE_HOME\TOOLS\DOC60\US\oca_info.pdf installiert. Wenn Adobe Acrobat Reader im Standardordner installiert ist, klicken Sie auf die Schaltfläche [image] am Anfang dieses Themas, um dieses Dokument anzuzeigen. Sonst starten Sie PDF-Viewer, und öffnen Sie oca_info.pdf.


Standardmäßig sind die SQL-Skripts für das Erstellen von Data-Dictionary-Ansichten und Demotabellen für Informix in ORACLE_HOME\OCA20\SQL\INFORMIX installiert:

infvudrp.sql	Entfernt alte Versionen der Ansichten.

infvubld.sql	Erstellt erforderliche Ansichten.


UBT32.EXE scott/tiger@ODBC:informix_ds @infvubld.sql


Standardmäßig ist das SQL-Skript für das Erstellen von Demotabellen für Informix in ORACLE_HOME\OCA20\SQL\INFORMIX installiert:

infdmbld.sql	Erstellt Demotabellen.

Das SQL-Skript für das Auffüllen der Demotabellen ist in ORACLE_HOME\OCA20\DEMO installiert:

demodata.sql	Fügt Daten in Demotabellen ein.


UBT32.EXE scott/tiger@ODBC:informix_ds @infdmbld.sql


scott/tiger@ODBC:informix_ds


Fehlerbehebung

Wenn eine Anwendung, die früher mit Oracle funktionierte, jetzt mit einer ODBC-Datenquelle nicht ausgeführt werden kann, ist dies wahrscheinlich darauf zurückzuführen, daß eine Einschränkung oder Begrenzung bei ODBC oder der Datenquelle vorliegt.

Um die von OCA ausgegebenen SQL-Anweisungen und die von dem ODBC-Treiber oder der Datenbank generierten Meldungen anzuzeigen, gehen Sie folgendermaßen vor:

1	Prüfen Sie, ob der folgende Eintrag in der ORACLE.INI-Datei bei Windows 3.1 oder in der Registrierung bei Windows NT und Windows 95/98 eingestellt ist:

•	UB=ORACLE_HOME\OCA20

2	Fügen Sie die folgenden Einträge zu der ORACLE.INI-Datei bei Windows 3.1 oder zu der Registrierung unter SOFTWARE\ORACLE bei Windows NT und Windows 95/98 hinzu:

•	OCA_DEBUG_SQL=TRUE

•	OCA_DEBUG_ERROR=TRUE

3	Führen Sie die Anwendung mit der ODBC-Datenquelle aus, um die SQL-Anweisungen oder Fehlermeldungen im Debug-Fenster anzuzeigen. Klicken Sie auf OK, um das Debug-Fenster zu schließen und die Verarbeitung fortzuführen.

4	Wenn das Problem nicht gelöst werden kann, nehmen Sie Verbindung mit Oracle Support auf auf.


OCA-Meldungen

Code	Meldungsbeschreibung

30000	Allgemeiner OCA-Fehler

30001	NULL hostdef

30002	Funktion nicht unterstützt

30003	NULL-Benutzername in DB-Adresse

30004	NULL-Hostname in DB-Adresse

30005	Alle Cursor werden benutzt

30006	Fehler beim Erstellen von Analysebaum

30007	NULL SQL-Anweisung

30008	Speicherzuordnung nicht erfolgreich

30009	Fehler beim Verarbeiten von Bindevariablen

30010	Fehler bei Konvertierung von Oracle- nach ODBC-Datentyp

30011	Fehler bei Konvertierung von ODBC- nach Oracle-Datentyp

30012	Fehler beim Binden von Referenzwert

30013	Keine zu bindenden Parameter

30014	Hostname zu lang

30015	Gespeicherte Prozeduren bei dieser Datenquelle nicht unterstützt

30016	Sequenzen bei dieser Datenbank nicht unterstützt

30017	Fehler beim Anmelden bei Fremddatenbank

30018	Benutzername oder Kennwort zu lang

30019	Fehler beim Bearbeiten von fremden gespeicherten Prozeduren

30020	Name der gespeicherten Prozedur fehlt

30021	Fehler beim Vorbereiten/Ausführen von SQL-Anweisung

30022	Fehler beim Abrufen der Spalte

30023	Fehler beim Abrufen der Ergebnismenge

30024	Fehler beim Abrufen von Spalten-Deskriptoren

30025	Fehler bei Einlesen der Anzahl von Spalten in Ergebnismenge

30026	Fehler beim Abrufen von Prozedur-Deskriptoren

30027	Fehler beim Einstellen von ODBC-Anmelde-/Anweisungsoption

30028	Fehler bei Commit/Rollback

30029	Fehler beim Binden der Spalte

30030	Fehler beim Binden von Parameter

30031	Fehler beim Abrufen von Informationen über Treiber/Datenbank

30032	Fehler bei der Freigabe von Speicherplatz

30033	Fehler bei Zeilenstatus

30034	Tabelle nicht gefunden

30035	Spalte nicht gefunden

30036	Ungültige Berechtigungsangabe

30037	Datenquelle nicht verfügbar

30038	Ungültige Spaltennummer

30039	Unzulässige Kombination gebündelter Vorgänge

30040	Ungültiger Cursor-Kontext

30041	Bindevariable ist nicht vorhanden

30042	Keine Daten gefunden

30043	Abgerufener Spaltenwert ist NULL

30044	Abgerufener Spaltenwert war abgeschnitten

30045	Fehler bei Rückgabe von Ergebnisdaten

30046	Kein Name von Datenquelle angegeben

30047	Nicht unterstützte Transaktions-Isolationsebene

30048	Binden von Arrays nicht unterstützt

30049	Nicht angemeldet

30050	Fehler bei Freigabe von SQL-Anweisung

30051	Fehler beim Abruf von Daten. Nach Commit-Vorgang für diese Datenquelle erneut ausführen

30052	Parameterwert nach Ausführung abgeschnitten

31000	Allgemeiner ODBC-Fehler vom benutzten ODBC-Treiber ausgegeben

Wenn ein Fehler auftritt und die Anwendung die Meldung nicht aus der Meldungsdatei lesen kann, prüfen Sie, ob der folgende Eintrag in der Datei ORACLE.INI in Windows 3.1 oder in der Registrierung bei Windows NT und Windows 95/98 steht:

•	UB=ORACLE_HOME\OCA20


PDF-Dokument

Um das PDF-Dokument anzuzeigen, müssen Sie PDF-Viewer starten und oca_info.pdf aus dem Ordner öffnen, in dem es installiert ist.


Glossar

A

    Abfrage
    Abfragefilterfunktion
    Abgleichen
    Abhängige Daten
    Abhängigkeitsansicht
    Abhängigkeitsbaum
    Abschnitt
    Abtrennbares Menü
    Achsendiagramm
    ActiveX
    Ada
    Adreßetikettenlayout
    Aggregatfunktion
    Aktion
    Aktives Fenster/Aktive Ansicht
    Aktiviert
    Aktualisieren
    Alias
    Anhang
    Anker
    Ankerpunkt
    Anmelden
    Anonymer Block
    Ansicht
    Anweisung
    Anwendung
    Anzeigeobjekt
    Applet
    Argument
    Argument für ausführbares Programm
    ASCII
    Attribut
    Attribut
    Attributklasse
    Attributmaske
    Attributspalte
    Attributwert
    Aufgelöstes Objekt
    Aufgliedern
    Aufrufschnittstelle
    Aufrufstapel
    Ausdruck
    Ausführen
    Ausführung
    Ausrichtung
    Ausschneiden
    Ausschnitt
    Auswahl
    Auswahlskript
    Äußere Umrandung

 B

    Bedingung
    Beenden
    Befehlszeile
    Benutzerdefinierte Aktion
    Benutzerdefinierter Makro
    Benutzerdefiniertes Maß
    Benutzerdefinierter Typ
    Benutzerregistrierung
    Beschriftung
    Bibliothek
    Bild
    Bildschirmteiler
    Bindereferenz
    Bindevariable
    Blatt
    Block
    Boilerplate
    Break-Trigger
    Builder

C

    Cache (Speicher)
    cartridge
    CGI
    CGM
    CHAR-Datentyp
    Client
    Client-/Server-Architektur
    CMDFILE
    Collection-Typ
    Cursor

D

    Darstellungstyp
    Data Dictionary
    DATE
    Dateiknoten
    Datenbank
    Datenbank-Trigger
    Datenlink
    Datenmodell
    Datenquelle
    Datensatz
    Datensatzgruppe
    Datenstruktur-Knoten
    Datentyp
    Datumsachse
    DB-Adresse
    Deaktiviert
    Debug-Aktion
    Debuggen
    Debugger
    Debug-Trigger
    Designer
    Designer (Oracle)
    Detail-Abfrage
    Diagrammelement
    Diagrammobjekt
    Diagrammvorlage
    Dialogfeld
    DIANA
    Dimension
    Dimensionshierarchie
    Dimensionswert
    Dokumentvorlage
    Druckersteuercode
    Duplizieren
    Dynamisch gespeicherte Auswahl

E

    EBCDIC
    Ebene
    Editor
    Einfügen
    Einfügen-Modus
    Eingabeobjekt
    Element
    Elementtyp
    Entfernte Datenbank
    Ersetzen-Modus
    Exception
    Exportdatei
    Exportieren
    Externe Abfrage
    Externe PL/SQL-Bibliothek

F

    Familie
    Farbpalette
    Feld
    Feldvorlage
    Fenster
    Filter
    Firewall
    Flattened Object
    Flex-Modus
    Fokus
    Formatmaske
    Format-Trigger
    Formel
    Formelspalte
    Formlayout
    Fremdschlüssel
    Füllbereich
    Funktion

G

    Gefangen-Modus
    Geltungsbereich
    Generieren
    Generieren
    Gespeicherte Auswahl
    Gespeicherter Programmblock
    Gespeichertes Unterprogramm
    Gleichrangiges Objekt
    Gleichzeitigkeit
    Globale Registrierung
    Globale Variable
    Grafische Anwendung
    Gruppe
    Gruppenbaum
    Gruppenfilter
    Gruppenwechselbericht
    Gruppenwechseldiagramm
    Gültige XML
    GUI

H

    Handle
    Hauptknoten
    Hauptteil
    Hierarchie
    Hintergrundelement
    Hintergrundprozeß
    HTML
    HTTP
    Hyperlink
    Hypertext

I

    ICD
    Implizites Objekt
    Importieren
    Index
    Innere Umrandung
    Integritätsregel
    Internet
    Interpreter-Skript
    Intranet
    IP (Internet Protocol)-Adresse

J

    JAR
    Java
    Join
    Justierung

K

    Kaskadierende Dokumentvorlage
    Kategorie
    Kategorienachse
    Kategorienachse
    Klassifizierung
    Klausel
    Knoten
    Kommentar
    Kompilieren
    Komponente
    Konstrukt
    Kontextbereich
    Kontrollgruppe
    Kontrollkästchen
    Kontrollspalte
    Kontrollsumme
    Koordinaten (x, y)
    Koordinatenebene
    Koordinatensystem
    Korrelierte Unterabfrage
    Kopieren
    Kreuzprodukt
    Kreuztabelle

L

    Laufzeit
    Laufzeit-Parametermaske
    Launcher
    Layouteinheit
    Layout
    Leinwandausschnitt
    Leinwand
    Lesekonsistenz
    Lexikalische Referenz
    Link
    Link-Datei
    Listenfeld
    Listenobjekt
    Logische Operatoren
    Logische Seite
    Lokale Datenbank
    Lokale Registrierung
    Lokale Variable

M

    Makro
    Master-/Detail-Layout
    Maß
    Matrixbericht
    Matrixlayout
    Matrixzelle
    Megabyte (MB)
    Mehrzeilenfeld
    Meldungsfeld
    Methode
    Modales Fenster
    Modul
    Muster

N

    NA-Wert
    Nach unten erweiterbar
    Nicht im Cache vorhandene Spalte
    Nicht-modales Fenster
    NOCACHE
    NULL-Wert
    Numerische Operatoren

O

    Objekte auf Berichtebene
    Objekt
    Objekt
    Objektgruppe
    Objekt-Handle
    Objektknoten
    Objektnavigator
    Objektspalte
    Objekttabelle
    Objekttyp
    ODBC
    OLE
    OLE-Container
    OLE-Server
    Optionsgruppe
    Optionsschaltfläche
    Oracle-Datentyp
    Oracle Designer
    ORACLE_HOME
    Organisationsknoten

P

    Paket
    Paketrumpf
    Paketspezifikation
    Palette
    Parameter
    Parameterliste
    Pcode
    PDF
    Physikalische Seite
    Platzhalter-Benutzername
    PL/SQL
    pld-Datei
    pll-Datei
    pls-Datei
    plx-Datei
    Popup-Liste
    Port
    Primärschlüssel
    Programmblock
    Programmstop
    Projekt
    Projektansicht
    Projekt-Assistent
    Projektdatei
    Projektknoten
    Projektnavigator
    Projektobjekt
    Projektregistrierung
    Protokoll
    Prozedur
    prt-Datei
    Puffer

Q

    Qualifizierende Dimension
    Quelle

R

    Rahmen
    Rand/Auffüllen/Textanzeige
    Rand
    Rand
    Rand
    Rasterlinien
    RC4
    RDBMS
    rdf-Datei
    Referenzlinie
    REF-Spalte
    Registrieren
    Registrierung
    Relationale Operatoren
    rep-Datei
    Reports Background Engine (RWRBE60)
    Reports Queue Manager (RWRQM60)
    Reports Server (RWMTS60S)
    Reports Web Cartridge
    Reports Web CGI (RWCGI60)
    rex-Datei
    RGB
    Richtig formatierte XML
    Routine
    RTF
    Runfile

S

    Schalter
    Schaltfläche
    Schaltfläche Auslassungszeichen
    Schaltflächenprozedur
    Schema
    Schleife
    Schlüsselwort
    Seite
    Seitenumbruch
    SELECT-Anweisung
    Selektor
    Serienbrief-Layout
    Sitzung
    Skript
    Socket
    Spalte
    Spaltenobjekt
    Speichern
    Spezifikation
    SQL
    SQL-Anweisung
    SQL-Datei
    SQL-Skript
    Stamm
    Standard
    Stapel
    Stapel
    Stapelkompilierung
    Statische gespeicherte Auswahl
    Stellvertreterzeichen
    Steuerungspunkt
    Summenspalte
    SYLK
    Symbol
    Symbolleiste
    Syntax
    Systemvariable

T

    Tabellarisch
    Tabelle
    Tabellentyp
    TCP
    Textobjekt
    Titel
    Titelleiste
    Titelseite
    Transaktion
    Trigger
    Typ

U

    Übergeordneter Knoten
    Übergeordnetes Objekt
    Übergeordnetes Objekt
    Überlauf
    Umgebung
    Umrandung
    Umschließendes Objekt
    Unabhängige Daten
    Untergeordnete Abfrage
    Untergeordnetes Objekt
    Untergeordnetes Objekt
    Unterprogramm
    Unterprojekt
    Unterprojektknoten
    URL
    Ursprung
    User Exit

V

    Variable
    Variierender Array-Typ
    VBX
    VBX-Steuerfeld
    Veränderung
    Verborgen
    Vererben
    Vergleichsoperatoren
    Verschachtelte Matrix
    Verschlüsselung
    Virtueller Ordner
    Virtuelles Dateisystem
    Visuelles Attribut
    Vordefinierte Aktion
    Vordefinierte Funktion
    Vordefinierte Prozeduren
    Vordefinierter Datentyp
    Vordefinierter Makro
    Vordefinierter Typ
    Vordergrundelement
    Voreinstellungen
    Vorgänger
    Vorgängergruppe
    Vorschau
    Vorschau

W

    Warnfenster
    Web
    Web-Browser
    Web-Cartridge
    Web-Link
    Web-Server
    Werkzeug
    Werkzeug Abgleichen
    Werkzeug Alle
    Werkzeug Attribut
    Werkzeug Bereich
    Werkzeug Ebene
    Werkzeug Exception
    Werkzeug Familie
    Werkzeug Gespeicherte Auswahl
    Werkzeug Liste
    Werkzeug Oben/Unten
    Werkzeug Selektor
    Werkzeug Sortieren
    Werkzeugpalette
    Wert der Basislinie
    Werteachse
    Werteachse
    Werteliste
    Wertkonstrukt
    Wiederholungsrahmen
    WRB
    WKS
    WWW

X

    XML

Y

Z

    Zeile
    Zeilenobjekt
    Zelle
    Ziehen
    Ziel
    Zielknoten
    Zoom
    Zugeordnete Bibliothek
    Zugriffsberechtigung
    Zustellen
    Zwischenablage


In Project Builder eine Befehlsfolge, die entweder von Project Builder oder vom Benutzer angegeben wird, der für Dateien eines bestimmten Typs zuständig ist. Eine Aktion ist nicht auf einen einzelnen Dateityp beschränkt. Wenn die Aktion "Kompilieren" z.B. sowohl für Forms als auch für C-Quelldateien definiert ist, werden bei Auswahl von "Projekt kompilieren" alle .fmb- und .c-Dateien mit den entsprechenden Tools kompiliert. Siehe auch vordefinierte Aktion, Benutzerdefinierte Aktion


Eine Programmiersprache auf hoher Ebene, die vom U.S. Department of Defense zur Benutzung in eingebetteten Computersystemen entwickelt wurde.


Ein Fenster oder eine Ansicht, die eine Benutzereingabe aufnehmen kann.


(Oracle Express) Die Konsolidierung von Daten für verschiedene Dimensionswerte zu einem einzigen Wert, wie z.B. die Gesamtanzahl von Einheiten, die in allen Städten verkauft wurden, oder zu kleineren Wertegruppen, wie z.B. die durchschnittlich in den Städten einer Region verkauften Einheiten. Daten werden häufig auf der niedrigsten Detailebene erfaßt und mit der Aggregatfunktion im Hinblick auf die Analyse auf höheren Ebenen verbunden.


Ein modales Fenster, das Sie über eine Bedingung unterrichtet, die aufgrund der als letztes von Ihnen ausgeführten Aktion aufgetreten ist. Sie müssen auf ein Warnfenster reagieren.


Mit Ausrichtung wird angegeben, wie die Daten in einem Feld positioniert sind. Die Daten können linksbündig, rechtsbündig, zentriert, im Flattersatz linksbündig, im Flattersatz rechtsbündig oder im Flattersatz zentriert innerhalb der definierten Breite eines Feldes ausgerichtet werden.


Ein sekundärer Name, der in einer SQL-Anweisung zur Bezugnahme auf eine Tabelle, eine Ansicht oder eine Spalte benutzt wird.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem Sie alle Werte in einer Dimension oder alle Werte in einer Dimension bei einer bestimmten Hierarchie auswählen können.


(Oracle Express) Ein Dimensionswert auf einer beliebigen Ebene über einem bestimmten Wert in einer Hierarchie. Der Vorgängerwert entspricht der aggregierten Gesamtsumme der Werte der untergeordneten Objekte. Im folgenden Beispiel wird der Dimensionswert "Europa" als Vorgänger von "Frankreich", "Lyon" und "Paris" in der Dimension GEOGRAPHY dargestellt.


Eine Gruppe, die direkt oder indirekt Eigentümer einer anderen Gruppe ist.


Ein Layoutobjekt, mit dem ein Punkt auf einem Objekt an einem Punkt auf einem anderen Objekt fixiert wird, wobei die Position des ersten Objekts in bezug auf das zweite Objekt verankert wird.


(Oracle Express) Ein spezifischer Dimensionswert, der benutzt wird, wenn Dimensionswerte basierend auf deren Familienzugehörigkeit ausgewählt werden oder durch eine Hierarchie navigiert wird.


Ein PL/SQL-Programmblock, der keinen Namen hat und das Vorhandensein der Schlüsselwörter BEGIN und END zur Einrahmung der ausführbaren Anweisungen nicht explizit fordert. Da anonyme Blöcke unbenannt sind, können andere Programmblöcke sie nicht referenzieren.


Ein Objekt, das im Gruppenbaum eines anderen Objekts über diesem anderen Objekt steht. Jedes Objekt ist ein übergeordnetes Objekt des entsprechenden untergeordneten Objekts.


 Ein Java-Ausdruck für kleine Programme, die dynamisch nach Bedarf in Web-Seiten oder Anwendungen importiert werden können.


Ein oder mehrere Programmodule, mit denen ein bestimmtes Ergebnis erzielt wird. Anwendungen können innerhalb von anderen Anwendungen verschachtelt sein. So könnte z.B. eine Anwendung zur Kontrolle des Lagerbestands einer Firma aus verschiedenen Form Builder-Anwendungen zur Eingabe von Daten und verschiedenen Graphics Builder-Anwendungen zur visuellen Darstellung der Daten bestehen.


1. Ein optionaler Ausdruck, der an einen Programmblock übergeben wird, damit der Programmblock diesen bearbeitet.
2. Klauseln, die Schlüsselwörter und die entsprechenden Werte enthalten.


Akronym für American National Standard Code for Information Interchange.


Eine schreibgeschützte Sammlung von PL/SQL-Unterprogrammen, die im allgemeinen mit einer Anwendung geliefert werden und die entsprechende PL/SQL-Quelle darstellen. Programmblöcke in einer zugeordneten Bibliothek werden implizit geladen, wenn sie zuerst beim Kompilieren oder zur Laufzeit von einem anderen Programmblock aufgerufen werden. Sie bleiben geladen, damit sie schnell wieder benutzt werden können, wodurch die Speicheranforderungen zur Laufzeit reduziert werden und die Leistung einer Anwendung verbessert wird. Siehe auch:  Bibliothek


1. Siehe Attribut.
2.  Ein Teil oder eine Komponente einer Oracle8-Objekttypdefinition. Jedes Attribut hat einen Namen und einen Oracle8-Datentyp. Wenn eine Objekttabelle basierend auf dem Objekttyp erstellt wird, entsprechen die Spalten in der Tabelle den Attributen in der Objekttypdefinition. Wenn ein Spaltenobjekt in einer relationalen Tabelle basierend auf dem Objekttyp erstellt wird, enthält das Spaltenobjekt das Äquivalent von Unterspalten, von denen eine jede einem Attribut in der Objekttypdefinition entspricht. Jedes Oracle8-Objektattribut wird in einer Tabelle als separates Datenobjekt behandelt, so als wäre es eine separate Spalte. Dies gilt sowohl für Objekttabellen als auch für Spaltenobjekte in relationalen Tabellen.
3. (Oracle Express) Eine beschreibende Eigenschaft, die von Dimensionswerten gemeinsam benutzt wird. Attribute stellen logische Gruppierungen dar, mit denen Benutzer Daten basierend auf ähnlichen Eigenschaften auswählen können. In einer Datenbank für Schuhe können Sie z.B. das Attribut Schuhfarbe verwenden, um alle Stiefel, Loafers und Slipper, die dieselbe Farbe haben, auszuwählen.


Die Spalten, aus denen ein Spaltenobjekt besteht (Oracle8).


In Graphics Builder das erste Element in einem Attribut-Deskriptor. Hier handelt es sich um eine 32-Bit-Maske, die das Toolkit über die Attribute unterrichtet, die von einem nachfolgenden Funktionsaufruf gesetzt oder abgerufen werden. Nur die Elemente, bei denen die entsprechenden Bits in der Attributmaske gesetzt sind, werden eingestellt oder abgerufen.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem Sie Dimensionswerte basierend auf Attributen und Attributwerten auswählen können. In einer Datenbank für Soft Drinks könnten Sie z.B. alle Produkte auswählen, deren Größe 1 Liter entspricht. In diesem Beispiel ist Größe ein Attribut und 1 Liter ein Attributwert.


(Oracle Express) Die Werte in der Datenbank, aus denen ein Attribut besteht. In einer Datenbank für Eiscreme könnten die folgenden Attribute zu einem Geschmacksattribut in einer Dimension Produkt gehören: Vanille, Schokolade und Erdbeere. Dimensionswerte auf verschiedenen Ebenen in der Dimension Produkt - z.B. Marke, Präsentation und Größe  -- könnten denselben Wert für Geschmack verwenden.


Eine Diagrammart, bei der die Daten entsprechend ihrer Position auf der Diagrammachse dargestellt werden Ein Achsendiagramm kann zwei oder drei Achsen enthalten, wobei jede eine Werteachse, Kategorienachse oder Datumsachse sein kann.


Der weiße Teil eines Musters. Mit der Füllfarbenpalette weisen Sie dem Hintergrundelement Farben zu.


Ein nicht interaktiver Prozeß, der in einer Betriebssystemumgebung abläuft und einen bestimmten Dienst bzw. eine bestimmte Aktion ausführt. Bestimmte Oracle-Produkte verwenden Hintergrundprozesse für verschiedene Aufgaben, wie z.B. die Ausführung und Koordinierung von Aufgaben für gleichzeitige Benutzer der Datenbank, die Verarbeitung und Zustellung von E-Mails und die Verwaltung von Druckdiensten.


Der Wert, der als Anfangspunkt für die Darstellung von Feldern auf der Werteachse eines Diagramms benutzt wird.


Die ausführbare Datei, die eine Anwendung im Stapelmodus ausführt, ohne ein Fenstersystem zu benutzen.


Bei der Stapelkompilierung werden mehrere PL/SQL-Programmblöcke auf einmal in eine maschinenausführbare Form umgesetzt.


Eine Bezugnahme auf einen Parameter, der einen einzelnen literalen Wert (z.B. eine Zeichenfolge, eine Zahl oder ein Datum) ersetzt, der an einer beliebigen Stelle in einem PL/SQL-Konstrukt oder einer SQL SELECT-Anweisung auftritt. Bei einer Bindereferenz muß vor dem Parameternamen ein Doppelpunkt (:) stehen.


Eine globale Variable, die Sie erstellen und außerhalb eines PL/SQL-Pakets verwenden können.


1. Der Hauptprogrammblock in PL/SQL, der mit den Schlüsselwörtern DECLARE, BEGIN, EXCEPTION und END definiert wird.

2. In Form Builder ein logischer Container, der zu einer Datenbanktabelle oder Ansicht gehört.


1. Enthält dieselben Informationen wie die Programmblockspezifikation und umfaßt außerdem die tatsächliche Implementierung des Unterprogramms (d.h. die Folge von Aktionen). In den meisten Fällen muß nur ein Hauptteil für ein Unterprogramm definiert werden.

2. In Report Builder ein Bereich, der den Großteil des Berichtlayouts enthält (Text, Grafiken, Daten und Berechnungen) und in diesem Fall als Rumpf bezeichnet wird. Der Berichtrumpf steht zwischen den Titel- und Schlußseiten des Berichts.


Text und/oder Grafiken, die bei jeder Ausführung des Berichts in einem Bericht angezeigt werden. Bei einigen Produkten wird dies als "konstanter" Text bzw. "konstante" Grafiken bezeichnet.


Eine benutzerdefinierte Einrahmung eines Layoutobjekts, mit der im allgemeinen der Inhalt des Objekts hervorgehoben wird. Ränder werden so gezeichnet, daß die eine Hälfte der Randbreite außerhalb der Objekteinrahmung und die Hälfte innerhalb der Einrahmung liegt.


Siehe Innere Umrandung, Äußere Umrandung


Ein Achsendiagramm, bei dem zwei Datenkategorien auf einer Achse dargestellt werden.


Eine Abfragespalte, die einer Kontrollgruppe zugewiesen ist.


Eine Gruppe, mit der Berichtdaten aufgeteilt oder kategorisiert werden. Alle Daten in Abfragespalten, die einer Kontrollgruppe zugewiesen sind, werden über den Daten in den Spalten angezeigt, die zu anderen Gruppen gehören. Jeder Datensatz, der für eine Kontrollgruppe abgerufen wird, wird nur einmal angezeigt, während mehrere zusammengehörige Datensätze in anderen Gruppen angezeigt werden können.


Ein Bericht, der Kategorien enthält, mit denen die Berichtdaten in Gruppen aufgeteilt werden.


Ein PL/SQL -Block, der immer dann ausgeführt wird, wenn ein Programmstop erreicht wird. Siehe auch:  Programmstop.


Eine Debug-Aktion, die Sie in eine beliebige ausführbare Quellzeile in einem PL/SQL-Unterprogramm setzen können. Ein Programmstop unterbricht die Ausführung des Programmblocks und übergibt die Kontrolle an den PL/SQL-Interpreter. Mit Programmstops können Sie ein Unterprogramm inkremental ausführen und nach Laufzeitfehlern suchen. Siehe auch: Break-Trigger


Bezieht sich auf eine Komponente, mit der eine bestimmte Art von Dokument erstellt wird. So wird Form Builder z.B. benutzt, um Forms zu erstellen, während mit Report Builder Berichte erstellt werden.


Ein Datentyp, der von dem Oracle-Server definiert und unterstützt wird.


Eine Reihe von Erweiterungen der PL/SQL-Sprache, die zur Benutzung mit der Software ausgelegt sind. Vordefinierte Prozeduren umfassen Datentypen, Prozeduren, Funktionen, Exceptions und Konstanten.


In Project Builder ein mit Project Builder gelieferter Makro. Siehe auch Makro..


Ein temporärer Speicherbereich für Daten während der Übertragung dieser Daten zwischen dem Computer und einem Peripheriegerät oder zwischen Teilen eines Computers. Ein Puffer verhindert einen Datenverlust aufgrund von Differenzen in der Geschwindigkeit bzw. zeitlichen Steuerung des Transfers und beschleunigt bestimmte Funktionen.


1. Ein Oberflächenelement, mit dem ein Aktionsobjekt ausgewählt, ein Dialogfeld angezeigt oder die aktuelle Bedingung bestätigt werden kann.

2. Ein Objekt in einer Anwendung, mit dem eine PL/SQL-Prozedur verknüpft ist. Die Prozedur wird im allgemeinen aufgrund eines vom Benutzer ausgelösten Mausereignisses ausgeführt.


Eine PL/SQL-Prozedur, die mit einem Anwendungsobjekt verknüpft ist, das ausgeführt wird, wenn zur Laufzeit ein bestimmtes Mausereignis für das Objekt eintritt (z.B. das Klicken auf eine Schaltfläche). Die Prozedur wird ausgeführt, indem eine Hierarchie für die abgerufenen Daten mit einer Kontrollgruppe erstellt wird.


Ein temporärer Speicherbereich für Daten der Datenbank, auf die gerade zugegriffen wird oder die von Benutzern geändert werden, bzw. für Daten, die Oracle-Server zur Unterstützung der Benutzer benötigt. Die Begriffe werden häufig austauschbar verwendet.


Eine Schnittstelle, mit der Sie ausführbare Routinen der Forms Developer- oder Reports DeveloperKomponente für andere Oracle-Produkte oder ein 3GL-Programm aufrufen können.


Eine Folge von Unterprogrammaufrufen von der ursprünglichen Eintrittsstelle nach unten bis zu dem gerade ausgeführten Unterprogramm. Jeder Unterprogrammaufruf wird durch einen Rahmen in dem nach unten erweiterbaren Aufrufstapel dargestellt, wobei neu eingegebene Unterprogramme am Ende des Stapels hinzugefügt werden.


Siehe Editor


In Form Builder das Hintergrundobjekt, auf dem Sie die Schnittstellenobjekte positionieren, mit denen die Benutzer in der Laufzeitanwendung arbeiten. Ein Leinwandausschnitt ist im allgemeinen einem Fenster zugeordnet.


Verwaltbare Objekte, die über eine Open API in Client, Anwendungs-Server oder Datenbank eingesteckt werden.


Siehe Dokumentvorlage


Eine Beschriftungskomponente, mit der zwischen Informationen auf der Grundlage einer nicht hierarchischen Darstellung bzw. Einteilung und nicht auf der Grundlage von Empfindlichkeitsebenen unterschieden werden kann. Bei der Klassifizierung werden Kategorien benutzt, um den Zugriff zu Informationen einzuschränken.


Siehe Kategorienachse


Eine Dateninstanz in einem Kalkulationsblatt (z.B. Microsoft Excel).


Akronym für Common Gateway Interface. Die dem Industriestandard entsprechende Technik zur Ausführung von Anwendungen auf einem Web-Server. Während standardmäßige HTML-Dokumente, die von einem Web-Server abgerufen werden, statisch sind (es wird jedesmal genau derselbe Text abgerufen), kann ein auf dem Web-Server ausgeführtes Programm über CGI mit einem anderen Computer kommunizieren, um "dynamische" HTML-Dokumente als Antwort auf vom Benutzer eingegebene Seiten zu generieren.


Akronym für Computer Graphics Metafile. Ein Dateiformat, das international anerkannt ist und für die Speicherung bzw. den Transport objektorientierter Grafiken von einem System oder Programm zu einem anderen benutzt wird.


Ein Oracle-Datentyp, der im Hinblick auf die ANSI/ISO-Kompatibilität enthalten ist. Eine CHAR-Spalte ist eine Spalte mit fester Länge. Sie kann ausdruckbare Zeichen enthalten, wie z.B. A, 3, & oder Leerzeichen und kann von 1 bis 255 Zeichen umfassen bzw. gleich null sein.


Ein Balken, eine Linie, ein Symbol oder ein anderes Grafikobjekt, das einen einzelnen Wert für ein Feld darstellt.


Ein Rechteck mit beliebiger Größe mit einem Rand, mit dem Graphics Builder-Diagramme in eine Form oder einen Bericht eingebettet werden können.


Eine Sammlung von Attributen und Eigenschaften, die das Format eines Diagramms definieren.


Ein Oberflächenelement, das als kleines Quadrat angezeigt wird, das ein Benutzer ein- oder ausschalten kann.


Ein Algorithmus zur Fehlerprüfung.


1. Ein Objekt, das Bestandteil einer Gruppe ist und unmittelbar unter dem Gruppenobjekt in dem entsprechenden Gruppenbaum steht. Die Objekte, die ein Gruppenobjekt bilden, sind untergeordnete Objekte dieser Gruppe. Jedes Objekt ist ein untergeordnetes Objekt des entsprechenden übergeordneten Objekts.

2. (Oracle Express) Ein Dimensionswert auf der Ebene unmittelbar unter einem bestimmten Wert in einer Hierarchie. Werte von untergeordneten Objekten sind in der Berechnung enthalten, die die aggregierte Gesamtsumme für ein übergeordnetes Objekt erzeugt. Ein Dimensionswert kann ein untergeordnetes Objekt von mehr als einem übergeordneten Objekt sein, wenn die Dimension mehr als eine Hierarchie hat. Im folgenden Beispiel werden die Dimensionswerte "Lyon" und "Paris" als untergeordnete Objekte von "Frankreich" in der Dimension GEOGRAPHY dargestellt.


Siehe Detail-Abfrage


Eine hierarchische Ebene, mit der die Empfindlichkeit der beschrifteten Informationen angegeben wird. Mit Klassifizierungen kann der Zugriff zu Informationen begrenzt werden.


Ein Teil einer SQL-Anweisung, der nicht die ganze Anweisung darstellt, z.B. eine "WHERE-Klausel".


Ein Benutzer, eine Softwareanwendung oder ein Computer, der die Dienste, Daten oder eine Verarbeitung von einer anderen Anwendung bzw. einem anderen Computer (dem "Server") anfordert. In einer Zwei-Task-Umgebung ist der Client der Benutzer-Prozeß. In einer Netzwerkumgebung ist der Client der lokale Benutzerprozeß, und der Server kann lokal oder entfernt sein.


Aufteilung der Verarbeitung zwischen zwei Zentraleinheiten, wobei eine als Server dient, der Dienste in einer Transaktion leistet, und die andere als Client in der Transaktion, der Dienste anfordert und empfängt. Alle Verantwortlichkeiten der gemeinsamen Datenverwaltung können von dem Computer verarbeitet werden, auf dem das Datenbankverwaltungssystem ausgeführt wird, während die Workstations, die die Datenbankanwendung ausführen, sich auf die Interpretation und Anzeige von Daten konzentrieren.


Ein Speicherpuffer. Ein Objekt bleibt in der Zwischenablage, bis Sie ein weiteres Objekt ausschneiden oder kopieren bzw. bis Sie die Anwendung beenden.


Ein benutzerdefinierter Datentyp, der eine Dateneinheit beschreibt, die aus einer unbestimmten Anzahl von Elementen besteht, die alle denselben Datentyp aufweisen. Variierende Array-Typen und Tabellentypen sind Collection-Typen.  (Oracle8)


Ein Argument, mit dem Sie eine Datei angeben können, die eine Gruppe von Befehlszeilenargumenten für ausführbare Prozeduren von Forms Developer enthält.


Enthält alle Farben, die für das Fenstersystem, die Zeichnungsoberfläche oder ein Fenster und die zugehörigen Ansichten verfügbar sind.


1. Ein vertikaler Bereich in einer Datenbanktabelle, der eine bestimmte Datendomäne darstellt. Eine Spalte hat einen Spaltennamen (z.B. ENAME) und einen bestimmten Datentyp (z.B. CHAR). In einer Tabelle mit Mitarbeiterdaten würden z.B. die Namen aller Mitarbeiter eine Spalte darstellen. Eine Datensatzgruppenspalte stellt eine Datenbankspalte dar.
2. In Report Builder ein Datenmodellobjekt, das automatisch für jeden Spaltenausdruck in der SELECT-Liste einer Abfrage bzw. manuell erstellt wird, um Summen bzw. Formeln zu berechnen oder als Platzhalter zu fungieren.


In einer relationen Oracle8-Tabelle oder Objekttabelle, eine Spalte, deren Definition auf einem Objekttyp basiert.  Die Spalte ist ein zusammengesetztes Objekt, das den Attributen des Objekttyps entspricht.


Eine Befehlszeile auf Betriebssystemebene. Die meisten Oracle-Produkte können aus einer Befehlszeile mit einer Reihe von Argumenten für ausführbare Programme aufgerufen werden.


Ein Sprachkonstrukt für die Aufnahme von erläuterndem Text in einem Programm, dessen Ausführung davon nicht betroffen wird.


Wenn die Änderung von Daten in der Datenbank festgeschrieben wird, spricht man vom Speichern. Bevor Änderungen gespeichert werden, sind sowohl die alten als auch die neuen Daten vorhanden, so daß Änderungen gespeichert oder die Daten im vorherigen Zustand wiederhergestellt werden können.


(Oracle Express)

>	Größer als

<	Kleiner als

=	Gleich

<=	Kleiner als oder gleich

>=	Größer als oder gleich

<>	Ungleich

Bei Zahlen werden die Operanden auf den niedrigsten gemeinsamen Typ erweitert (Ganzzahl ist vorrangig gegenüber Long, was wiederum vorrangig gegenüber einfacher Genauigkeit ist, was vorrangig gegenüber doppelter Genauigkeit ist). Bei Zeichenfolgen muß die Schreibweise bei dem Vergleich berücksichtigt werden. Der Vergleich basiert auf der Sortierfolge, die von der in der Windows-Systemsteuerung angegebenen Sprache benutzt wird. Das Ergebnis ist 0 bei FALSE und -1 bei TRUE.


Übersetzung eines Quellprogramms in ein binäres, ausführbares Format. PL/SQL-Programmblöcke müssen kompiliert werden, bevor sie ausgeführt werden können.


Ein bestimmtes Zielobjekt, das Bestandteil einer größeren Anwendung ist, z.B. eine Form in einem System zur Auftragseingabe oder eine Bibliothek, die von vielen anderen Elementen gemeinsam genutzt wird. Siehe auch Ziel.


Der gleichzeitige Zugriff auf dieselben Daten durch mehrere Benutzer, die verschiedene Datenbankanwendungen oder dieselbe Anwendung ausführen. Bei der Datenbanksoftware erfordert eine Gleichzeitigkeit eine zusätzliche Logik, um zu gewährleisten, daß alle Benutzer konsistente Daten erhalten und daß alle Änderungen in der richtigen Reihenfolge durchgeführt werden.


Ein Ausdruck, dessen Wert entweder wahr oder falsch ist wie z.B. X> 100. So können Sie z.B. eine Bedingung in einer Abfrage festlegen, wenn die Abfrage nur die Zeilen anzeigen soll, deren Auswertung in dem Ausdruck wahr ist.


Layouteditor-Modus, der verhindert, daß untergeordnete Objekte verschoben oder innerhalb bzw. außerhalb der übergeordneten Objekte skaliert werden.


Zur Anmeldung bei einer Datenbank wird eine DB-Adresse verwendet. Sie müssen sich anmelden, wenn Sie Abfragen erstellen oder ändern bzw. auf Anwendungen zugreifen möchten, die in einer Datenbank gespeichert sind.


Die Gruppe von Parametern, einschließlich einem Protokoll, die SQL*Net benutzt, um sich bei einer bestimmten Oracle-Instanz im Netzwerk anzumelden.


Eine Regel oder Einschränkung, die sich auf bestimmte Daten bezieht (wie z.B. eine NOT NULL-Einschränkung für eine Spalte), die auf Datenbankebene und nicht auf Objekt- oder Anwendungsebene durchgesetzt wird.


Eine PL/SQL-Codestruktur. Es gibt zwei Arten von Konstrukten: Nicht-Wert-Konstrukte, die keinen Wert zurückgeben, und Wert-Konstrukte, die einen Wert zurückgeben.


Ein Arbeitsbereich, in dem Oracle-Server die aktuelle SQL-Anweisung sowie die Spaltenüberschriften und eine Zeile des Ergebnisses speichert, wenn es sich bei der Anweisung um eine Abfrage handelt. Wird auch als Cursor bezeichnet.


Eine Achse, auf der Werte dargestellt werden, die mit einem Wert beginnen und fortgeführt werden, bis ein anderer Wert erreicht ist. Auf diese Weise sind diese Werte mathematisch miteinander verbunden. Abhängige Daten werden im allgemeinen auf dieser Achse dargestellt, die auch als Werteachse bezeichnet wird.


Die vier Eckpunkte des virtuellen Rechtecks, das die Idealform eines Objekts darstellt. Wenn Sie ein Objekt in dem Layout auswählen, werden die Steuerungspunkte angezeigt. Je nach ausgewähltem Objekt können Sie das Objekt ändern, indem Sie einen Steuerungspunkt ziehen.


Das zweidimensionale Raster, in dem gezeichnet wird.


Die Art von x-, y-Einheiten, mit denen Objekte in der Layouteditor-Ansicht positioniert und skaliert werden. Die verfügbaren Koordinatensysteme sind 1) Zeichen, das die ursprüngliche Größe der Zeicheneinheit der Plattform verwendet, und 2) reell, bei dem in Pixel-, Zentimeter-, Zoll- oder Punkt-Einheiten gemessen wird.


Die Positionspunkte für Objekte in dem Layout. Die x- und y-Koordinaten bestimmen die horizontale (x) und vertikale (y) Position von Objekten.


Speichern einer Replik eines ausgewählten Objektes in der Zwischenablage, damit das Objekt gegebenenfalls an einer anderen Stelle im Editor eingefügt werden kann.


Eine Unterabfrage, die auf denselben Tabellen basiert, wie die übergeordnete Abfrage (d.h. Spalten in den Tabellen referenziert, die in der übergeordneten Abfrage enthalten sind).


Gruppe, die zwei oder mehr andere Gruppen besitzt und ein mathematisches Kreuzprodukt erzeugt (d.h. eine Korrelation zwischen den Werten berechnet).


Siehe Matrixzelle


1. Ein kleines Symbol, mit dem die Position der Maus dargestellt wird. Die Cursorform variiert je nach ausgewähltem Tool.

2. Ein interner Zeiger auf Daten, die von einer Abfrage abgerufen werden. Der Cursor zeigt immer nur auf eine Datenzeile gleichzeitig. Sie können jedoch vordefinierte Unterprogramme verwenden, um den Cursor zu einer beliebigen Zeile in der Datengruppe zu setzen.


(Oracle Express) Eine von einem Benutzer erstellte Formel, mit der die Datenanalyse optimiert werden kann. Sie erstellen benutzerdefinierte Maße anhand von Basismaßen in der Datenbank. Wenn die Datenbank z.B. das vorhandene Maß Volume Share enthält, können Sie mit diesem Maß ein benutzerdefiniertes Maß mit der Bezeichnung Volume Share Year Ago erstellen. Mit diesem benutzerdefinierten Maß können Sie den absoluten Anteil eines Produkts im vergangenen Jahr ermitteln.


Löschen von einem oder mehreren Objekten und Speichern dieser Objekte in der Zwischenablage, damit sie gegebenenfalls an einer anderen Stelle im Editor eingefügt werden können.


Eine Ansicht wird verändert, wenn sie voll oder teilweise von einer anderen Ansicht verdeckt wird.


Eine Gruppe von Tabellen und Ansichten, die dem Datenbankadministrator gehören. Dies ist die zentrale Informationsquelle für Oracle-Server und andere relationale Datenbanken.


Ein Datenmodellobjekt, mit dem eine Master-/Detail-Beziehung (Beziehung zwischen übergeordnetem und untergeordnetem Objekt) zwischen einer Gruppe und einer Abfrage definiert wird.


Ein relationales Modell, mit dem definiert wird, welche Daten aus der Datenbank abgerufen werden sollen, welche Daten berechnet werden sollen und wie Daten in einem Bericht angeordnet werden sollen. Report Builder-Objekte, die das Datenmodell definieren, sind Abfragen, Gruppen, Spalten, Parameter und Links.


Eine Quelle für Daten, die von einer Abfrage zurückgegeben werden, einschließlich Datenbankobjekten, wie Tabellen, Ansichten, Synonymen, Snapshots und als Ansichten gespeicherte Abfragen.


In Project Builder ein Knoten im Projektnavigator, der das Projektobjekt angibt, das die Struktur eines offenen Projekts bestimmt. So gibt z.B. der Knoten Globale Registrierung die Globale Registrierung an, die eine Liste von lokalen Registrierungen und eine Liste von globalen Definitionen enthält.


Eine Gruppe von Dictionary-Tabellen und Benutzertabellen, die als eine Einheit benutzt werden.


Ein gespeicherter PL/SQL-Block, der implizit ausgeführt wird, wenn eine triggerauslösende Anweisung INSERT, UPDATE oder DELETE für die zugehörige Tabelle in der Datenbank ausgegeben wird. Siehe auch: Debug-Trigger.


Eine Standardform von Daten. Einige gebräuchliche Oracle-Datentypen sind CHAR, VARCHAR2, DATE, NUMBER, LONG, RAW und LONG RAW.


Ein Datentyp von Oracle-Server. Eine Datumsspalte kann ein Datum und eine Zeit zwischen dem 1. Januar 4712 v.Chr. und dem 31. Dezember 4712 n.Chr. enthalten.


Eine Achse, auf der Datumswerte dargestellt werden, die bei einem Datum beginnen und fortgeführt werden, bis ein anderes Datum erreicht ist.


Erkennen, Diagnostizieren und Beheben von Laufzeitfehlern in Programmen.


Ein vom Benutzer angegebenes Ereignis, das in ein PL/SQL-Unterprogramm gesetzt wird, im allgemeinen im Hinblick auf die Behebung von Laufzeitfehlern.


Eine bedingte Debug-Aktion, die Sie in jede Quellzeile in einem PL/SQL-Unterprogramm setzen können. Wenn die angegebene Bedingung erfüllt wird, wird die angegebene Aktion ausgelöst, bevor die Ausführung des Unterprogramms wiederaufgenommen wird. Siehe auch: Datenbank-Trigger.


Die Funktionalität von Procedure Builder innerhalb einer Software-Komponente, die für das Testen und Debuggen benutzt wird.


In Oracle8 sind Objekttypen und Objekte zusammengesetzte Objekte, die aus Bestandteilen oder Attributen bestehen. Forms Developer oder Reports Developer behandelt jeden Bestandteil bzw. jedes Attribut als unabhängiges, individuell auswählbares Datenobjekt. Dies führt zu einem aufgelösten Objekt (gelegentlich auch als Flattened Object bezeichnet).  Das Objekt ist keine homogene Entität innerhalb der Developer-Umgebung.


Eine Datengruppe, deren Wert von anderen Daten abhängt. So kann z.B. die Betriebsangehörigkeit eines Mitarbeiters den Wert 10 haben, der vom Wert des Mitarbeiternamens abhängt. Wird auch als Wertdaten bezeichnet.


Ein Wert, der vom System geliefert wird, wenn ein Benutzer keinen erforderlichen Befehlsparameter bzw. kein erforderliches Befehlsattribut angibt.


Vorbereitung und Bereitstellung einer fertigen Anwendung zur Verteilung und Benutzung.


In Project Builder der Mechanismus, mit dem Project Builder bestimmt, wie Dateien kompiliert werden, die in Projekten referenziert werden. Objekte am oberen linken Rand des Baums hängen von den Objekten am unteren linken Rand ab. Wenn z.B. eine Kopfzeilendatei entweder veraltet oder neuer ist als die ausführbare Datei, mit der sie generiert wurde, generiert Project Builder die ausführbare Datei mit einem Build-Befehl neu. Abhängigkeiten erstrecken sich auch auf Unterprojekte. Wenn z.B. ein Unterprojekt aus einer Funktionsbibliothek besteht, die neu generiert wurde, weiß Project Builder, daß das abhängige Projekt neu generiert werden muß, um die aktualisierten Bibliotheksfunktionen zu benutzen. Siehe auch Abhängigkeitsansicht


Zeigt in Project Builder die Dateien im Projektnavigator in der Reihenfolge an, in der sie voneinander abhängen, wobei Projektknoten am obersten Punkt in der Hierarchie stehen, gefolgt von Zielknoten, auf die wiederum generierbare Komponenten dieser Ziele folgen. So hängt eine ausführbare Form z.B. von einer .fmb-Datei ab, die auf die Form folgt, die wiederum von einer Bibliothek abhängt und von dieser gefolgt wird, die für eine USEREXIT-Prozedur benutzt wird usw. Siehe auch Projektansicht, Ziel


1. Ein Objekt, das in dem Gruppenbaum eines anderen Objekts an einer beliebigen Stelle unterhalb dieses anderen Objekts steht. Jedes Objekt ist ein untergeordnetes Objekt der entsprechenden übergeordneten Objekte.

2. (Oracle Express) Ein Dimensionswert auf einer beliebigen Ebene unter einem bestimmten Wert in einer Hierarchie. Werte von untergeordneten Objekten sind in der Berechnung enthalten, die die aggregierte Summe für ein Vorgängerobjekt erzeugt. Im folgenden Beispiel werden die Dimensionswerte "Frankreich", "Lyon" und "Paris" als untergeordnete Objekte von "Europa" in der Dimension GEOGRAPHY dargestellt


Die Oberfläche, auf der verschiedene Komponenten einer Forms Developer- oder Reports Developer-Anwendung entworfen werden.


Siehe Oracle Designer..


Eine Gruppe von Werkzeugen zur Modellierung, Entwicklung und Generierung von Anwendungen. Mit Oracle Designer können Sie Forms und Menüs aus Moduldefinitionen generieren, die im Oracle-Repository aufgezeichnet sind.


Bei der Definition eines Master-/Detail-Berichts ruft die Detailabfrage alle zusammengehörigen Datensätze für jeden Datensatz ab, der von der Master- oder übergeordneten Abfrage abgerufen wird.


Ein Teilbildschirm bzw. ein Fenster, in dem Sie aufgefordert werden, die zur Ausführung eines Vorgangs erforderlichen Informationen einzugeben.


Eine Zwischendarstellung eines Programmblocks, die vom Compiler generiert wird. DIANA umfaßt alle syntaktischen und semantischen Informationen für einen kompilierten Programmblock. Um eine Referenz auf einen Programmblock zu kompilieren, muß der Compiler Zugriff zu der referenzierten DIANA-Darstellung des Programmblocks haben. Wenn z.B. Programmblock A Programmblock B aufruft, muß die DIANA-Darstellung für B verfügbar sein, bevor A kompiliert werden kann.


(Oracle Express) Ein Typ eines Datenbankobjekts, bei dem es sich um eine Werteliste handelt, die Kategorien für Daten bereitstellt. Eine Dimension fungiert als Index zur Kennzeichnung von Werten einer Variablen. Angenommen, Umsatzdaten mit separaten Umsatzzahlen für jeden Monat sind vorhanden. In diesem Fall haben die Daten eine Dimension MONTH, d.h. die Daten sind nach Monat organisiert. Eine Dimension kann mit einem Schlüssel in einer relationalen Datenbank verglichen werden.

Jedes Datenobjekt innerhalb einer mehrdimensionalen Variablen kann eindeutig und vollständig ausgewählt werden, indem ein Element aus jeder der Dimensionen der Variablen angegeben wird. Wenn z.B. eine Variable Gehalt nach MONTH, PRODUCT und MARKET dimensioniert ist, wobei "Januar" für die Dimension MONTH, "Stereos" für die Dimension PRODUCT und  "Osten" für die Dimension MARKET angegeben wird, wird nur eine Zelle in der Variablen eindeutig angegeben. Somit bieten Dimensionen eine präzise und intuitive Möglichkeit Daten zu organisieren und auszuwählen, um Abrufen-, Aktualisieren- und Berechnenvorgänge durchzuführen.

Eine Dimension kann einfach sein, mit Werten, bei denen es sich um einfache Text- oder ganzzahlige Werte handelt. Sie kann jedoch auch eine Conjoint-Dimension sein, mit Werten, bei denen es sich um Kombinationen aus anderen Werten in anderen Dimensionen handelt. Ein zusammengesetztes Objekt ist keine Dimension, sondern ein conjoint-ähnliches Objekt, das Express im Hinblick auf die Verarbeitung von selten auftretenden Daten als Dimension behandelt.


 (Oracle Express) Ein Element in der Liste, aus der eine Dimension besteht. Eine Computerfirma könnte z.B. Dimensionswerte mit der Bezeichnung "LAPPC" und "DESKPC" in der Dimension PRODUCT haben. Werte in der Dimension GEOGRAPHY könnten "Boston" und "Paris" umfassen. Werte in der Dimension TIME könnten "MAY96" und "JAN97" umfassen.


Der Status eines Oberflächenelements, mit dem angegeben wird, daß ein Menüpunkt, eine Schaltfläche usw. im aktuellen Kontext nicht benutzt werden kann, d.h. daß das Objekt nicht auf eine Tastatur- oder Mauseingabe reagiert.


Eine Achse, auf der verschiedene Werte in festen Intervallen dargestellt werden. Diese Werte stehen mathematisch nicht in Beziehung zueinander. Unabhängige Daten werden im allgemeinen auf dieser Achse dargestellt.


Ein Graphics Builder-Dokument, das eine beliebige Kombination von Diagrammen, Bildern, Textobjekten und Formeln enthält.


In Form Builder ein Objekt, in dem Informationen gespeichert und angezeigt werden, die mit PL/SQL abgerufen oder programmgesteuert zugewiesen werden müssen.


Zum Aufrufstapel gehörig, in dem neu eingegebene Unterprogramme am Ende des Stapels hinzugefügt werden. Der früheste Rahmen, der dem ursprünglichen Eintrittspunkt in das Programm entspricht, befindet sich am oberen Rand des Stapels, während der letzte Rahmen, der mit dem am tiefsten verschachtelten Unterprogrammaufruf verknüpft ist, am unteren Ende des Stapels steht.


Beim Ziehen halten Sie eine Maustaste gedrückt, während Sie den Mauszeiger zu einer bestimmten Stelle in einem Fenster schieben.


(Oracle Express) Beim Aufgliedern wird in den Aggregationsebenen in einer Dimension, die eine Hierarchie hat, nach oben und unten navigiert. Wenn Sie Dimensionswerte auswählen oder Daten anzeigen, können Sie eine Dimensionshierarchie ein- oder ausblenden, indem Sie in ihr nach oben oder unten aufgliedern. Beim Aufgliedern nach unten wird die Ansicht eingeblendet, damit die untergeordneten Objekte aufgenommen werden, die mit übergeordneten Werten in der Dimensionshierarchie verknüpft sind. Beim Aufgliedern nach oben wird die Liste mit untergeordneten Werten ausgeblendet, die mit einem übergeordneten Wert in der Dimensionshierarchie verknüpft sind.

Sie können auf ein Plus-Symbol ( [image]) klicken, um die Hierarchie einzublenden oder auf ein Minus-Symbol ( [image]), um sie auszublenden.

Im Selektor können Sie auf das Symbol Aufgliedern ( [image]) klicken, um das Dialogfeld Aufgliedern anzuzeigen, so daß Sie eine Detail-Ebene für die ganze Dimension auswählen können.


Eine Option, mit der Sie Objekte direkt auf dem Layout kopieren können, ohne daß sich dies auf den Inhalt der Zwischenablage auswirkt.


(Oracle Express) Eine gespeicherte Auswahl kann bei jeder Auswertung verschiedene Dimensionswerte aufweisen. Die ausgewählten Dimensionswerte können sich von Benutzung zu Benutzung unterscheiden. Dagegen ist eine statische gespeicherte Auswahl eine Liste mit Dimensionswerten, die sich nicht ändert. Ein Skript für eine dynamisch gespeichertes Auswahl könnte "Select the last three Months" enthalten, während ein Skript für eine statisch gespeicherte Auswahl  "Select February 1996, March 1996, and April 1996" enthalten könnte.


Akronym für Extended Binary-Coded Decimal Interchange Code.


Die Umrandung eines Objekts.


Ein Anzeigefeld in der Werkzeugpalette des Layouteditors, in dem die aktuellen Einstellungen für Rand, Füllung, Textmuster und Farben dargestellt werden.


Ein Arbeitsbereich, in dem Sie bestimmte Aufgaben ausführen, wie z.B. einen Programmblock erstellen oder eine Anwendung entwerfen.


Ein wichtiges Objekt, zu dem Sie Informationen aufzeichnen müssen. Elemente werden von Attributen und Verknüpfungen mit anderen Elementen beschrieben.


Ein beliebiges Element im Dictionary wird als Element eines bestimmten Typs eingeordnet. Beispiele für Elementtypen sind Entität, Attribut, Programmodul, Tabelle, Diagramm, Text, Softbox. Vorkommen bzw. Instanzen dieser Elemente werden ebenfalls als Elemente bezeichnet.


(Oracle Express) Diese Schaltfläche zeigt ein Dialogfeld für die gerade ausgeführte Aufgabe an, im allgemeinen, damit Sie einen oder mehrere benötigte Werte auswählen können.


Status eines Oberflächenelements, der angibt, daß ein Menüpunkt, eine Schaltfläche usw. im aktuellen Kontext benutzt werden kann, d.h. auf eine Tastatur- und/oder Cursor-/Mauseingabe reagiert.


Ein Objekt, das ein anderes Objekt enthält. Ein Objekt ist nur dann von einem anderen Objekt umschlossen, wenn folgende Bedingungen alle wahr sind: Beide Objekte gehören zum selben Bereich (Hauptteil, Rand, Titel oder Anhang), das äußerste der beiden Objekte ist ein Rahmen oder Wiederholungsrahmen, das äußerste der beiden Objekte steht hinter dem anderen Objekt, das innerste der beiden Objekte liegt voll innerhalb der Umrandung des anderen Objekts.


Beim Verschlüsseln werden Daten so codiert, daß nur der beabsichtigte Empfänger sie decodieren (entschlüsseln) und lesen kann.


Der Computer-Arbeitsplatz des Benutzers, einschließlich der Tools, die normalerweise benutzt werden, und deren Konfiguration. Bei Project Builder bezieht sich dies auf die Teilmenge von Tools, mit denen verschiedene Aufgaben im Zusammenhang mit der Entwicklung von Forms Developer-Anwendungen ausgeführt werden.


Eine Warn- oder Fehlerbedingung, die von einem PL/SQL-Unterprogramm generiert wird.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer Dimensionswerte auswählen kann, die mit den Daten verknüpft sind, die den von Benutzer angegebenen Bedingungen entsprechen. So könnte der Benutzer z.B. alle Produkte auswählen, deren Umsätze in der Woche, die am 23.Dezember 1995 endet, im Bereich München höher als 10.000 DM waren.


Ein Argument, das Sie an die ausführbare Routine eines Produkts übergeben können, wie z.B. 'OPENFILE=my_disp' und 'PRINT=YES'. Diese Argumente werden im allgemeinen angegeben, wenn die ausführbare Routine über die Befehlszeile aufgerufen wird.


Siehe Ausführen


Speichern einer Kopie von Objekten, Modulen, ausgewählten Texten oder Bildern in einer Datei oder Datenbank. Bei Project Builder wird mit Exportieren der Prozeß bezeichnet, bei dem eine Datei, die Projekt-, Typ-, Aktions- und/oder Makro-Definitionen enthält, in ein portierbares Format zur Verteilung an andere Benutzer geschrieben wird, die möglicherweise auf heterogenen Plattformen arbeiten. Siehe auch Exportdatei, Importieren.


In Project Builder die gemeinsam benutzbare, portierbare Datei, die durch das Exportieren eines Projekts erstellt wird.


1. Ein PL/SQL-Konstrukt, in dem Variablen, Konstanten, Literale und Vorgänge mit den Werten kombiniert werden.

2. (Oracle Express) Ein oder mehrere Datenwerte, die in einem Programm in der Express-Sprache angegeben werden. Sie können z.B. Ausdrücke als Argumente für Programme und Funktionen angeben. Ein Ausdruck kann aus einem der folgenden Elemente bestehen:

•	Ein einfacher, literaler Wert (z.B. 10)

•	Eine Variable oder Formel, die einen oder mehrere Werte enthält

•	Eine Funktion, die einen oder mehrere Werte zurückgibt

•	Eine Berechnung, mit der Werte, wie z.B. Variablen, Formeln oder Funktionen mit arithmetischen oder Booleschen Operatoren kombiniert werden.


Siehe Bibliothek


Eine SQL SELECT-Anweisung im ANSI-Standard, auf die von anderen Oracle-Produkten Bezug genommen werden kann.


(Oracle Express) Eine Gruppe mit zusammengehörigen Dimensionswerten, die den Ebenen der Dimensionshierarchie entsprechen. Dimensionswerte innerhalb einer Familie können in einer Beziehung Vorgänger, übergeordnetes Objekt, untergeordnetes Objekt und Nachfolger zueinander stehen. In dem folgenden Beispiel werden die Familienbeziehungen für den Dimensionswert "Frankreich" in der Dimension GEOGRAPHY dargestellt.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer eine Familie mit Dimensionswerten für eine bestimmte Hierarchie auswählen kann. Eine Familie umfaßt ein übergeordnetes Objekt und alle untergeordneten Dimensionswerte. Der Benutzer kann z.B. alle Familienmitglieder unter der Ebene des Marktes Chicago in der Dimension Geography auswählen.


1. Ein Oberflächenelement, in dem Sie Daten eingeben, bearbeiten oder löschen. 2. In Graphics Builder oder Report Builder ein Layoutobjekt, mit dem definiert wird, wie die Daten für eine bestimmte Abfragespalte angezeigt werden.


In Graphics Builder eine Sammlung von Attributen und Eigenschaften, mit denen bestimmt wird, wie abhängige Daten (Werte) als Diagrammfelder dargestellt werden, wie z.B. Balken oder Linien.


In Project Builder ein Knoten im Projektnavigator, der eine Datei angibt, die im Dateisystem gespeichert ist. So entsprechen z.B. die globalen und lokalen Registrierungsknoten den globalen und lokalen Registrierungsdateien.


Der Bereich innerhalb eines Objekts, für den eine Füllfarbe bzw. ein Füllmuster angewandt werden soll.


Eine PL/SQL-Funktion oder eine anonyme Funktion, die die Daten einschränkt, die von einer Gruppe angezeigt werden.


Ein Computer, der den Zugriff auf Computer in einem lokalen Netzwerk von außen und den Zugriff auf externe Computer aus dem lokalen Netzwerk reguliert.


Siehe Aufgelöstes Objekt.


Layouteditor-Modus, in dem übergeordnete Objekte automatisch skaliert oder verkleinert werden, wenn untergeordnete Objekte verschoben oder skaliert werden, und bei dem die Positionen von anderen Layoutobjekten angepaßt werden, die sonst von der Positionsänderung oder Skalierung der Objekte betroffen wären.


Status einer Entität, die auf die Eingabe vom Benutzer oder dem Client reagieren kann. Wenn eine Entity den Tastaturfokus hat, kann sie Ereignisse empfangen, wenn der Benutzer eine Taste drückt. Wenn eine gezeichnete Ansicht den Zeichnenfokus hat, kann sie auf Client-Routinen reagieren, die sich auf das Zeichnen auswirken.


Der schwarze Teil eines Musters. Mit der Randfarbpalette können Sie Farbe für das Vordergrundelement anwenden.


Ein Wert oder eine Spalte in einer Tabelle, die sich auf einen Primärschlüssel in einer anderen Tabelle bezieht.


In Report Builder ein Standard-Layoutstil, bei dem Beschriftungen links neben den Feldern angezeigt werden und bei dem jeder Datensatz auf einer separaten logischen Seite gedruckt wird.


In Report Builder ein Standard-Layoutstil, der Boilerplate und Felder mischt, wobei Zeilen bei ganzen Wörtern umbrochen werden.


(Feldattribute) Eine Einstellung, die das Format eines Feldwertes definiert. So wird z.B. eine Formatmaske benutzt, um die Anzeige von Währungsbeträgen und Datumsangaben zu bestimmen.


Eine PL/SQL-Funktion, mit der Sie die Formatierungsattribute eines Objekts dynamisch ändern können.


(Oracle Express) Ein Typ eines Datenbankobjekts, das eine gespeicherte Berechnung, einen Ausdruck oder eine Prozedur darstellt, die einen Wert erzeugt. Mit einer Formel können komplexe oder häufig benutzte Beziehungen innerhalb der Daten definiert und gespeichert werden, ohne daß die Daten selbst erneut gespeichert werden müssen. Immer wenn Sie eine Formel benutzen, führt Express die Berechnung oder Prozedur aus, die zur Erzeugung des Wertes erforderlich ist.


Eine vom Benutzer erstellte Spalte, die ihre Daten aus einer PL/SQL-Funktion bzw. einem PL/SQL-Ausdruck, einem User Exit, einer SQL-Anweisung oder einer beliebigen Kombination dieser erhält.


In Graphics Builder der Teil einer Diagrammvorlage, der die Grundstruktur eines Diagramms definiert, jedoch nicht bestimmt, wie die Daten dargestellt werden.
2. In Report Builder ein Layoutobjekt, mit dem andere Layoutobjekte umschlossen werden und mit dem Formatierung, Wiederholung und Position von mehreren Objekten gleichzeitig gesteuert wird.


Ein PL/SQL-Unterprogramm, das eine bestimmte Folge von Aktionen ausführt und dann einen Wert zurückgibt. Es kann auf dem Client und dem Datenbank-Server gespeichert sein und ausgeführt werden.


Speichern einer Anwendung in einer Datei oder Datenbank in einem Binärformat, das von ausführbaren Laufzeit- und Stapel-Routinen ausgeführt werden kann.


Die ausführbare Routine von Form Builder, mit der eine Anwendung in einer Datei oder Datenbank im Binärformat gespeichert wird.


Eine Registrierung von Project Builder, bei der Informationen gespeichert werden, die für die ganze Forms Developer- oder Reports Developer-Installation gelten. Diese Informationen sind auf Typdefinitionen und die zugehörigen Aktionen und vordefinierte bzw. benutzerdefinierte Attribute beschränkt. Die Benutzung der Globalen Registrierung ist optional; ihre Funktionen können von einzelnen Benutzerregistrierungen ausgeführt werden. Siehe auch Registrierung, Benutzerregistrierung


Ein logischer Container, der anwendungsübergreifend vorhanden ist. Wenn eine Anwendung eine globale Variable benutzt, verwaltet die Anwendung die Variable, bis die Anwendung beendet wird oder bis ein anderes Objekt sie explizit entfernt.


Mit einer Zugriffsberechtigung wird einem Benutzer der Zugriff auf ein Modul erteilt. Nur der Modulersteller kann anderen Benutzern den Zugriff auf das Modul erteilen.


In Graphics Builder die Linien, die Zeilen und Spalten im Layouteditor trennen.


1. Ein Objekt, das aus mehreren anderen Objekten besteht.
2. In Report Builder ein Datenmodellobjekt, das automatisch so erstellt wird, daß alle von einer Abfrage ausgewählten Spalten enthalten sind, oder das vom Benutzer so erstellt wird, daß die Hierarchie der Daten in einem Bericht geändert wird; das Modellobjekt wird in erster Linie für das Erstellen von Programmstops in einem Bericht verwendet sowie für das Zurücksetzen von Berechnungen.
3. In Project Builder Sammlungen von zusammengehörigen Objekten, die über Untermenüs aus dem Launcher aufgerufen werden können. Mit Gruppen können Benutzer den Launcher so konfigurieren, daß er im wesentlichen wie das Start-Menü von Windows 95 aussieht mit beliebigen "Gruppen" als Einträgen, die Zugang zu anderen Objekten und/oder Gruppen ermöglichen. So könnte ein Benutzer z.B. eine Gruppe namens "Project Docs" mit einem Projektplan, einer Liste von auszuführenden Aufgaben, Komponentenspezifikationen usw. definieren; bei einigen Dateien kann es sich um .txt-Dateien und bei anderen um .doc-Dateien handeln.


Eine PL/SQL-Funktion, die die Daten einschränkt, die von einer Gruppe abgerufen werden.


Ein hierarchisches Modell, das einem "Stammbaum" entspricht und die Beziehung zwischen Gruppenobjekten und den Objekten beschreibt, aus denen die Gruppenobjekte bestehen.


Akronym für Graphical User Interface (grafische Benutzeroberfläche). Die Benutzung von Bildern und nicht nur Wörtern zur Darstellung der Ein- und Ausgabe eines Programms. Programme mit GUIs laufen unter Systemen in Fenster-Technik (wie z.B. X Windows, Microsoft Windows, Apple Macintosh usw.). Bei GUI-Programmen werden Symbole, Schaltflächen usw. in Fenstern auf dem Bildschirm angezeigt. Benutzer steuern die GUI-Programme im wesentlichen, indem sie einen (typischerweise durch eine Maus gesteuerten) Zeiger bewegen. Wird auch als Bitmap-Oberfläche bezeichnet.


Ein interner Zeiger auf ein Anwendungsobjekt. Um Bezug auf ein Objekt in einem PL/SQL-Programmblock zu nehmen, müssen Sie dessen Handle als Argument an das entsprechende Unterprogramm übergeben.


Ein optionaler Berichtbereich, der einführendes Material für den Bericht enthalten kann, einschließlich Text, Grafiken, Daten und Berechnungen. Der Berichttitel wird zuerst vor dem Hauptteil und dem Anhang angezeigt.


Ein Knoten im Objektnavigator, der einen Objekttyp angibt, der in einem Bericht enthalten oder mit einem Bericht verknüpft sein kann. Durch Auswahl eines übergeordneten Knotens wird kein Objekt in dem Bericht ausgewählt.


(Feldattribute) Ein Attribut, mit dem angegeben wird, ob Report Builder das angegebene Feld bei der entsprechenden Position im Layout unterdrückt. Wenn Verborgen angegeben ist, wird der Feldwert nur angezeigt, wenn in Textobjekten (mit &fieldname) Bezug auf den Feldwert genommen wird.


(Oracle Express) Eine Möglichkeit, Daten zu organisieren und zu strukturieren. Von einer Hierarchie wird gesprochen, wenn Werte innerhalb einer Dimension in Ebenen geordnet sind, wobei jede Ebene die aggregierte Gesamtsumme der Daten aus der Ebene darunter darstellt. Einige Dimensionen haben mehrere Hierarchien, die auf ihnen basieren.

Im folgenden Beispiel wird eine Hierarchie basierend auf der Dimension GEOGRAPHY dargestellt, in der Dimensionswerte in fünf Ebenen angeordnet sind. Daten auf der Ebene Customers werden in der Ebene Cities aggregiert, die wiederum in den Ebenen Countries/Areas, Continents/Regions und Global aggregiert wird.


Akronym für Hypertext Markup Language.  Eine kennzeichen-orientierte ASCII-Sprache, mit der Inhalt und Links zu anderen Dokumenten auf Web-Servern im Internet angegeben werden. Endbenutzer mit Web-Browsern können HTML-Dokumente anzeigen und Links verfolgen, um anderen Dokumente anzuzeigen.


Akronym für Hypertext Transfer Protocol. Das Protokoll, mit dem der WWW-Verkehr zwischen einem Computer mit WWW- Browser und dem WWW-Server bewältigt wird, auf den zugegriffen wird.


Eine Referenz (ein Link) von einem bestimmten Punkt in einem Dokument zu einem bestimmten Punkt in einem anderen Dokument oder einem bestimmten Punkt in demselben Dokument. Ein Web-Browser zeigt im allgemeinen einen Hyperlink unterschiedlich (in einer anderen Farbe, einer anderen Schriftart oder einem anderen Stil) an. Wenn Benutzer Hyperlinks aktivieren (indem sie mit der Maus auf sie klicken), zeigt der Browser das Ziel des Links an.


Eine Sammlung von Dokumenten, die Querverweise enthalten, mit denen die Leser mit Hilfe eines Web-Browsers schnell von einem Dokument zu einem anderen wechseln können.


Querverweise, mit denen Leser mit Hilfe eines Web-Browsers direkt von einem Dokument zu einem anderen gehen können.


Akronym für Interface C Definition - eine PL/SQL-Anwendungsprogrammierschnittstelle zu der in C implementierten Funktionalität.


Eine grafische Darstellung eines Fensters oder Werkzeugs.


Ein Bitmap-Objekt, das in eine Anwendung gespeichert und geladen werden kann. Der Client kann ein importiertes Bild nicht ändern.


In Project Builder ein Projektobjekt, im allgemeinen das Ergebnis einer automatischen Generierung, das Project Builder erkennt und für das es automatisch Einträge im Projektnavigator erstellt. So kann Project Builder z.B. .obj-Dateien erkennen, die während der Kompilierung von C-Quelldateien als Zwischenschritt generiert werden, und kann Einträge für diese im Projektnavigator erstellen. Auch wenn das Zurücksetzen der Attribute eines impliziten Objekts nur von begrenztem Nutzen ist (die nächste Kompilierung zerstört die Änderungen), können derartige Objekte nützlich sein, da sie über Aktionen wie Bearbeiten, Ansicht und Drucken überprüft werden können. Siehe auch Objekt, Aktion.


1. Einlesen eines Moduls aus dem Dateisystem oder der Datenbank und Integration des Moduls in einer Anwendung.
2. Lesen in einer Datei, die Projektinformationen enthält.


Datenelemente, deren Wert nicht von anderen Daten abhängig ist. So kann z.B. der Name eines Mitarbeiters den Wert Johann enthalten, der unabhängig von den Werten der Namen der anderen Mitarbeiter oder zugehöriger Daten ist. Wird auch als Kategoriedaten bezeichnet.


Eine optionale Struktur, die mit einer Tabelle verknüpft ist, mit der Oracle-Server Zeilen der Tabelle schnell sucht und (optional) garantiert, daß jede Zeile eindeutig ist.


In Project Builder die Übernahme von Informationen für Aktionen, Typen, Makros oder Attributdefinitionen aus einem übergeordneten Knoten im Abhängigkeitsbaum. Wenn in einem übergeordneten Knoten zugehörige Attribute vorhanden sind, können diese vererbt werden. So können z.B. Dateisystem-Objekte wie Forms und Dokumente Aktionsdefinitionen von Unterprojekten, Projekten, der Benutzerregistrierung oder der Globalen Registrierung erben. Projekte können Typdefinitionen von der lokalen oder Globalen Registrierung erben usw.


Das virtuelle Rechteck, das die Idealform eines Objekts darstellt und die vier Steuerungspunkte verbindet, unabhängig von der Randstärke oder anderen Attributeinstellungen.


Die Datei, mit der ein Ziel generiert wird: zum Beispiel ist eine .fmb-Datei das Eingabeelement für eine .fmx-Datei. Wird auch als Quelle bezeichnet.


Ein Modus, bei dem jedes eingegebene Zeichen bei der Cursorposition eingefügt wird, wobei die nachfolgenden Zeichen nach rechts verschoben werden. Das Gegenteil von Einfügen-Modus ist Ersetzen-Modus.


Ein weltweites TCP/IP-gestütztes Computernetzwerk.


Eine Datei, die eine Mischung aus PL/SQL-Quellcode, Procedure Builder-Befehlen und SQL-Anweisungen enthält.


Ein internes TCP/IP-Netzwerk. Der Zugriff auf dieses Netzwerk ist (über einen Firewall) auf Einzelpersonen innerhalb eines Unternehmens oder einer Organisation beschränkt. Ein Intranet bietet innerhalb einer Organisation ähnliche Dienste wie das Internet, ist jedoch nicht notwendigerweise an das Internet angeschlossen. Ein allgemeines Beispiel für ein Intranet ist die Einrichtung von einem oder mehreren Web-Servern in einem internen Netzwerk innerhalb eines Unternehmens zur Verteilung von Informationen oder Anwendungen innerhalb des Unternehmens.


Eine aus vier Bestandteilen zusammengesetzte Zahl mit maximal drei Ziffern in jedem Teil, die einen Computer im Internet eindeutig kennzeichnet.


In Project Builder ein Objekt im Dateisystem, das mit dem Projekt verknüpft ist, wie z.B. eine Form oder ein Dokument, auf das ein Knoten im Projektnavigator zeigt bzw. das durch einen Knoten im Projektnavigator dargestellt wird.


In Project Builder ein Eintrag im Projektnavigator-Fenster, der aus einem Symbol und einem beschreibenden Titel besteht. Knoten weisen auf tatsächliche Objekte im Dateisystem hin, wie z.B. Form Builder-Dateien und Dokumente. Siehe auch Knoten, Objekt.


Akronym für Java ARchive.  Eine Datei, mit der viele Dateien (Java-Klassendateien, Bilder usw.) zu einer Datei verbunden werden.


Eine Computersprache, die die Programmierung für das Internet in Form von plattformunabhängigien "Applets" unterstützt.


Kombinieren von Daten aus zwei (oder mehr) Tabellen in einer einzigen SELECT-Anweisung.


Siehe Ausrichtung


1. Teil einer Befehlszeilensyntax, der mit einem entsprechenden Argument angegeben werden muß. 2. Ein obligatorischer Teil eines PL/SQL-Konstrukts.


Text, der die Werte bzw. die Bedeutung der visuellen Objekte einer Anwendung kennzeichnet.


(Oracle Express) Eine Position in einer Dimensionshierarchie. Jede Ebene über das Basisebene stellt die aggregierte Gesamtsumme der Daten aus der Ebene darunter dar. So könnte die Dimension TIME z.B. aufsteigende Ebenen wie Month, Quarter und Year haben. Innerhalb einer Dimensionshierarchie hat ein Dimensionswert auf einer Ebene eine Familienbeziehung mit den Dimensionswerten auf den Ebenen über und unter dieser Ebene.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer Dimensionswerte basierend auf deren Ebene in einer bestimmten Hierarchie auswählen kann. Der Benutzer kann z.B. alle Dimensionswerte auf der Ebene Key Account in der Dimension Geography auswählen.


Der Bereich eines Editors, in dem Sie Objekte erstellen, ändern, positionieren oder löschen können.


Eine Maßeinheit, mit der gewährleistet wird, daß ein konsistentes Maßsystem bei den verschiedenen Anzeigegeräten verwendet wird. Wird zur Angabe einer Position auf dem Layout oder zur Angabe der Abmessungen eines Objekts benutzt.


Eine Referenz auf einen Parameter, mit dem eine Textfolge in einer SQL SELECT-Anweisung dargestellt wird. Für eine lexikalische Referenz muß vor dem Parameternamen ein Et-Zeichen (&) stehen.


Eine Sammlung aus einem oder mehreren PL/SQL-Programmblöcken, die gemeinsam in einer Datei im Client-Dateisystem oder in der Datenbank gespeichert sind. In einer Bibliothek gespeicherte Programmblöcke können von mehreren Anwendungen gleichzeitig referenziert werden. Im Gegensatz zu gespeicherten Programmblöcken, die in der Datenbank gespeichert sind und ausgeführt werden, werden Programmblöcke in Bibliotheken immer innerhalb der PL/SQL-Engine auf der Client-Seite geladen und ausgeführt. Um Programmblöcke zu referenzieren, die in einer Bibliothek gespeichert sind, müssen Sie die Bibliothek zuerst zuordnen. Siehe auch: Zugeordnete Bibliothek..


Ein Datenmodellobjekt, mit dem eine Master-/Detail-Beziehung (Beziehung zwischen übergeordnetem und untergeordnetem Objekt) zwischen einer Gruppe und einer Abfrage definiert wird.


Name einer Datei, mit der ein Boilerplate-Objekt verknüpft ist. Zur Laufzeit importiert Report Builder den Inhalt der Datei in Ihr Berichtlayout.


Eine Liste mit Objekten innerhalb eines Dialogfeldes. Im allgemeinen enthält das Listenfeld verschiedene Optionen zur Auswahl. Außerdem kann ein Bildlauf durch das Listenfeld vorgenommen werden.


In Form Builder ein Objekt, das eine Liste mit Auswahlen anzeigt.


Eine Werteliste entspricht einem Popup-Fenster, durch das ein Bildlauf vorgenommen werden kann und das eine ein- oder mehrspaltige Auswahlliste für den Benutzer anzeigt.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem Sie Dimensionswerte aus einer Liste der momentan ausgewählten Werte in der Dimension auswählen können.


1. Die Datenbank auf dem Computer, auf dem die Anwendung ausgeführt wird. 2. Die Datenbank, mit der eine Anwendung verbunden ist. Diese Datenbank analysiert und führt alle SQL-Anweisungen aus, die von der Anwendung generiert werden.


Siehe Benutzerregistrierung.


Eine PL/SQL-Variable, die nur im Geltungsbereich des aktuellen Programmblocks deklariert wird.


(Oracle Express)

Not	Unäres Not -- Operand kann vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise (Einerkomplement) durchgeführt.

And	And - Operanden können vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise durchgeführt.

Or	Inklusives Or  -- Operanden können vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise durchgeführt.

Xor	Exklusives Or -- Operanden können vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise durchgeführt.

Eqv	Äquivalenz -- Operanden können vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise durchgeführt. (A Eqv B) ist identisch mit (Not (A Xor B)).

Imp	Implikation -- Operanden können vom Typ Ganzzahl oder Long sein. Der Vorgang wird bitweise durchgeführt. (A Imp B) ist identisch mit ((Not A) OR B).


Eine Seite des tatsächlichen Berichts (es können eine oder mehrere physikalische Seiten angezeigt werden).


In einem PL/SQL-Unterprogramm eine Bedingungsanweisung, die wiederholt wird, bis die Bedingung nicht mehr erfüllt wird.


In Project Builder eine typspezifische Variable, mit der Aktionen individuell gestaltet und erweitert werden können. Bei einem Makro kann es sich entweder um eine Konstante oder einen einfachen Ausdruck handeln (der wiederum andere Konstanten und/oder Ausdrücke enthalten kann). Durch die Benutzung von Makros wird die Ausgabe von Befehlsoptionen wesentlich flexibler gestaltet. Außerdem kann der Benutzer Befehlssätze einfacher ändern, indem er eine Attributdefinition ändert.


Ein Standardlayout, bei dem Datensätze in einer oder mehreren Spalten auf der Seite angezeigt werden. In einem einzelnen Wiederholungsrahmen werden Felder direkt untereinander angezeigt.


Ein optionaler Berichtbereich, der am oberen und unteren Ende jeder logischen Seite im Hauptteil angezeigt wird. Der Rand kann ein beliebiges Layoutobjekt enthalten, enthält jedoch typischerweise Boilerplates und Felder (für Seitennummern, Gesamtanzahl von Seiten, Gesamtsummen und laufendes Datum und Uhrzeit).


Ein Standardlayout, bei dem Detail-Datensätze unter den Master-Datensätzen stehen. Master-Datensätze werden im Form-Layoutstil angezeigt, während Detail-Datensätze im tabellarischen Layoutstil angezeigt werden.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer Dimensionswerte auswählen kann, indem Zeichen in den Namen von Dimensionswerten mit den vom Benutzer angegebenen Zeichen abgeglichen werden. Der Benutzer kann z.B. alle Dimensionswerte in der Dimension Produkt auf der Ebene Marke auswählen, die die Zeichen "neu" enthalten.


Eine Wiederholungsrichtung, bei der jeder Datensatz eines Wiederholungsrahmens als eine Zelle einer Matrix angezeigt wird.


Ein Standardlayout, das einem Raster entspricht, das die vier Datengruppen formatiert, die für einen Matrixbericht erforderlich sind. Eine Datengruppe wird als eine Zeile mit Beschriftungen angezeigt, eine andere als eine Spalte mit Beschriftungen, eine Datengruppe erstellt das Raster, und eine Datengruppe füllt die Zellen des Rasters auf.


Eine Kreuztabellierung von vier Datengruppen: Eine Datengruppe wird horizontal auf der Seite angezeigt, eine Datengruppe wird vertikal auf der Seite angezeigt, eine Datengruppe ist das Kreuzprodukt, das alle möglichen Positionen bestimmt, bei denen horizontale und vertikale Daten in Bezug zueinander stehen, und das eine Zelle an diese Stellen setzt. Schließlich wird noch eine Datengruppe als "Füller" der Zellen angezeigt.


(Oracle Express) Daten die überprüft und analysiert werden können, wie z.B Umsatzzahlen oder Kostendaten. Sie können die Daten in einem Maß auswählen. Maße können als Variablen oder Beziehungen gespeichert werden. Maße können auch mit Hilfe von Formeln berechnet werden.


Eine Speichereinheit, die 1.048.576 Byte (1024 x 1024) entspricht. Wird häufig auf eine Million Byte gerundet.


Ein modales Fenster, das Sie über eine Bedingung unterrichtet, die aufgrund Ihrer letzten Aktion aufgetreten ist. Sie müssen auf ein Meldungsfeld reagieren.


Ausführbarer Code, der über die Objekttypdefinition einem Oracle8-Objekt zugeordnet ist.


Ein Fenster, das eine Antwort vom Operator erfordert, bevor die Anwendung fortgesetzt werden kann.


Ein nicht eingeschränktes Fenster, das so viel Funktionalität aufweisen kann, wie das zur Laufzeit benutzte Fensterverwaltungsprogramm unterstützt.


1. Ein Objekt, das von mehreren Anwendungen benutzt werden kann. Externe Abfragen und PL/SQL-Bibliotheken sind Beispiele für Module. 2. In Form Builder eine wichtige Komponente einer Anwendung (d.h. ein Menümodul).


Ein Feld in einem Fenster oder Dialogfeld, das sich über mehrere Zeilen erstreckt, so daß Sie einen vertikalen Bildlauf durch die Informationen vornehmen können.


(Oracle Express) Ein besonderer Datenwert, mit dem angegeben wird, daß die Daten "nicht anwendbar" (NA) bzw. nicht verfügbar sind. NA entspricht dem Wert einer Zelle, der kein bestimmter Wert zugewiesen wurde oder für die keine Daten berechnet werden können.


Matrixbericht, bei dem die horizontale und/oder vertikale Dimension eine oder mehrere Master-/Detail-Beziehungen enthält. Es gibt keine Grenze für die zulässige Verschachtelungstiefe.


Ein Datentyp, mit dem angegeben wird, daß die Daten abgerufen werden, wenn die Seite formatiert wird, auf der die Daten stehen (und nicht abgerufen und gepuffert werden, bis die Formatierung abgeschlossen ist).


1. Eine bestimmte Position in der Objekthierarchie des Objektnavigators. Knoten können eingeblendet werden, um Informationen über ein Objekt zu geben, wie z.B. Querverweise auf andere Objekte. 2. In Project Builder ein Eintrag im Projektnavigator. Siehe auch Objekt, Objektkknoten, Organisationsknoten.


Eine Berichtspalte, die eine Datenbankspalte vom Typ NOCACHE referenziert.


Das Fehlen eines Wertes.


(Oracle Express)

^	Potenzierung

-,+	Unäres Minus und Plus

*, /	Numerische Multiplikation oder Division. Bei der Division entspricht das Ergebnis einer Zahl mit doppelter Genauigkeit.

\	Ganzzahlige Division. Die Operanden können Ganzzahlen oder Zahlen mit dem Datentyp Long sein.

Mod	Modulus oder Rest. Die Operanden können Ganzzahlen oder Zahlen mit dem Datentyp Long sein.

-, +	Numerische Addition und Subtraktion. Der Operator + kann auch für die Zeichenfolgenverkettung benutzt werden.


1. Ein Objekt, das in das Layout gesetzt werden kann. Beispiele für Objekte sind Rechteck, Linie, Ellipse, Bogen, Polygon, Polygonzug, abgerundetes Rechteck, Freihandzeichnung, Diagramm, Text, Symbol und Textfeld.2.  In Oracle8 eine Instanz eines Objekttyps. Bei einem Objekt kann es sich um eine Zeile in einer Objekttabelle  oder um den Teil einer Zeile handeln, der in einem Spaltenobjekt in einer relationalen Tabelle enthalten ist.


Siehe Spaltenobjekt.


Ein Container für eine Gruppe von Objekten, der die Möglichkeit bietet, zusammengehörige Objekte zu kopieren bzw. zu referenzieren.


Siehe Handle


Ein Fenster, das die hierarchische Liste der Objekte für die aktuelle Sitzung enthält. Die Liste wird gegliedert angezeigt. Mit ihr kann der Benutzer verschiedene Aufgaben ausführen, wie z.B. Objekte erstellen, bearbeiten, umbenennen und löschen.


In Oracle8 eine Tabelle, deren Definition auf einem Objekttyp basiert. Jedes Attribut in dem Objekttyp wird zu einer Spalte in der Objekttabelle. Jede Zeile in der Tabelle ist ein individuelles Oracle8-Objekt.


In Oracle8 eine Benutzerdefinition oder benutzerdefinierte Vorlage, auf der Objekte aufgebaut werden können. Ein Objekttyp ist ein zusammengesetztes Objekt, das aus Attributen besteht. Jedes Attribut hat einen Namen und einen Datentyp. Der Objekttyp als Ganzes hat einen Namen. Ein Objekttyp kann auch eine oder mehrere Methoden umfassen.


Akronym für Open Database Connectivity.  Ein Standard für den Zugriff auf verschiedene Datenbanksysteme. Eine Anwendung kann Anweisungen an ODBC weiterleiten, indem die ODBC-Möglichkeiten von SQL verwendet werden.  ODBC konvertiert diese dann in die Sprache, die die Datenbank versteht. Mit dem Oracle Open Client Adapter (OCA) kann eine Anwendung dann konsistent auf verschiedene Datenbankverwaltungssysteme zugreifen.  Auf diese Weise kann ein Anwendungsentwickler eine Anwendung entwickeln, kompilieren und verteilen, ohne sich nach einem bestimmten DBMS richten zu müssen.


Object Linking and Embedding (Verknüpfen und Einbetten von Objekten).


Eine Anwendung, die OLE-Objekte speichern und anzeigen kann.


Eine Anwendung, die OLE-Objekte erstellt.


Siehe Vordefinierter Datentyp.


Eine Umgebungsvariable, die das Hauptverzeichnis für Oracle-Produkte angibt.


Ein Eintrag im Projektnavigator, wie z.B. "Typen", "Projekte", "Form-Dateien" usw., mit dem der Navigator gegliedert werden kann und der den Dateityp der untergeordneten Objekte angibt. Der Eintrag kann auch einer Datenstruktur innerhalb bestimmter Typen von Dateisystemobjekten entsprechen.


In x- und y-Koordinaten dargestellt. Der Ursprung einer Ansicht gibt die Position der Ansicht auf der übergeordneten Leinwand an. Der Ursprung einer Leinwand gibt die Position der Zeichnung in einer gezeichneten Ansicht an.


Das kleinste virtuelle Rechteck, das ein Objekt vollständig umschließt.


Wenn der Inhalt eines Objekts nicht auf die aktuelle logische Seite paßt, spricht man von Überlauf. Bei einem Überlauf wird ein Teil des Inhalts auf die nächste logische Seite verschoben.


Eine PL/SQL-Funktionder Software, auf die an einer beliebigen Stelle innerhalb eines Programmblocks Bezug genommen werden kann.


Eine Methode für das Verpacken und Speichern zusammengehöriger Prozeduren, Funktionen, Variablen und anderer Paketkonstrukte als eine Einheit in der Datenbank oder auf dem Client. Während Pakete dem Datenbankadministrator oder Anwendungsentwickler Organisationsvorteile bieten, gewährleisten sie außerdem verbesserte Funktionalität und Datenbankleistung. Die Software stellt verschiedene vordefinierte Pakete bereit, die PL/SQL-Konstrukte enthalten, die von client-seitigen Programmblöcken referenziert werden können (z.B. Paket TEXT_IO). Außerdem werden verschiedene Pakete mit dem Oracle Datenbank-Server geliefert, mit denen gespeicherte Programmblöcke referenziert werden können (z.B. Paket DBMS_OUTPUT).


Umfaßt die aktuelle Implementierung des Pakets, das private Unterprogramme und Datentypen enthalten kann. Der Hauptteil ist optional, wenn das Paket nur aus Deklarationen besteht.


Deklariert die öffentliche Schnittstelle zu dem Paket, d.h. die Datentypen und Unterprogramme, die andere Programmblöcke referenzieren können.


(Oracle Express) 1. Ein Datensegment, das in einem Bericht enthalten ist. Auf zusätzlichen Seiten werden zusätzliche Datensegmente angezeigt.

In der folgenden Abbildung werden drei Seiten mit Daten dargestellt.

2. In Express kann eine Seite auch eine Speichereinheit in einer Express-Datenbank referenzieren.


(Oracle Express) Mit dem Seitenumbruch wird angegeben, wie für eine Abfrage ausgewählte Daten in Ihrem Kalkulationsblatt dargestellt werden. Das Seitenlayout hat drei Ränder - Horizontal, Vertikal und Seite. Mit den Rändern wird angegeben, wie ein mehrdimensionaler Datenkubus, der von der Abfrage definiert wird, in einem zweidimensionalen Kalkulationsblatt dargestellt wird. In Dimensionsbeschriftungen werden die Namen und Positionen der Dimensionen angegeben. Mit einer Beschriftung auf dem Horizontalen Rand wird angegeben, daß diese Dimesion als Spalte angezeigt wird. Mit einer Beschriftung auf dem Vertikalen Rand wird angegeben, daß diese Dimension als Zeile angezeigt wird. Mit einer Beschriftung auf dem Rand Seite wird angegeben, daß diese Dimension in einem Seitenfeld über den Ergebnissen angezeigt wird.


Eine Einstellung, mit der festgelegt wird, ob das aktuelle Objekt und die untergeordneten Objekte auf die nächste logische Seite verschoben werden. Sie können Seitenumbrüche vor oder hinter dem aktuellen Objekt in der Berichtausgabe festlegen.


Ein Oberflächenelement, das Werkzeuge, Farben und Muster in einem Editor anzeigt.


Ein bestimmter Teil eines Editors, in dem die Arbeit ausgeführt wird. Die Größe des Ausschnitts kann im allgemeinen geändert werden.


Die Anzahl physikalischer Seiten, die für das Ausdrucken einer logischen Seite erforderlich sind.


1. Ein PL/SQL-Konstrukt, mit dem Informationen an ein Unterprogramm übergeben werden. In dem Unterprogrammaufruf MYPROC (x) ist z.B x ein Parameter. 2. In Forms Developer werden Parameter für die Übergabe von Informationen zwischen Komponenten benutzt, wie z.B. Form Builder und Graphics Builder. 3. Eine Variable, die Sie zur Laufzeit ändern können.


Eine Gruppe mit Parameternamen und zugehörigen Werten zur Übergabe von Informationen zwischen Forms Developer-Komponenten.


1.Ein Objekt, das unmittelbar über einem anderen Objekt in dem entsprechenden Gruppenbaum steht. Ein Gruppenobjekt ist das übergeordnete Objekt von jedem der Objekte, aus denen das Gruppenobjekt besteht. Jedes Objekt ist das übergeordnete Objekt der entsprechenden untergeordneten Objekte.

2. (Oracle Express) Ein Dimensionswert auf der Ebene unmittelbar über einem bestimmten Wert in einer Hierarchie. Der übergeordnete Wert ist die aggregierte Summe der Werte der untergeordneten Objekte. Im folgenden Beispiel wird der Dimensionswert "Frankreich" als übergeordnetes Objekt von "Lyon" und "Paris" in der Dimension GEOGRAPHY dargestellt.


Beim Einfügen wird der Inhalt der Zwischenablage (ausgeschnittene oder kopierte Objekte) bei der aktuellen Cursorposition eingefügt.


Ein grafisches Attribut, das Sie für den Rand oder als Füllmuster für die meisten Objekte benutzen können.


Der Maschinencode oder die Instruktionsliste für einen kompilierten Programmblock.


Akronym für Portable Document Format.  Ein Dateiformat (von Adobe Acrobat) zur Darstellung von Dokumenten auf eine Weise, die unabhängig von der Original-Anwendungssoftware, der Hardware und dem Betriebssystem ist, mit denen die Dokumente erstellt wurden. Eine PDF-Datei kann Dokumente beschreiben, die eine beliebige Kombination von Text, Grafiken und Bildern in einem geräteunabhängigen und auflösungsunabhängigen Format enthalten.


Die Größe einer Seite, die von Ihrem Drucker ausgegeben wird.


Die Elementart, mit der ein Feld in einem Diagramm dargestellt wird, wie z.B. Balken, Linien oder Symbol.


Die Oracle-eigene Erweiterung der SQL-Sprache. Fügt prozedurale und andere Konstrukte zu SQL hinzu, mit denen Anwendungen geschrieben werden können.


Eine Datei, die ein Interpreter-Skriptdatei von Procedure Builder enthält.


Eine PL/SQL-Bibliotheksdatei, die Quellcode und kompilierten Code enthält. Die Datei kann zur Bearbeitung in Procedure Builder geöffnet werden.


Eine Textdatei, die den  PL/SQL-Quellcode eines einzigen Programmblocks enthält.


Eine PL/SQL-Laufzeitbibliothek, die nur ausführbaren Code enthält. Die Datei kann nicht zur Bearbeitung in Procedure Builder geöffnet werden.


Eine Liste, die angezeigt wird, wenn der Benutzer eine bestimmte Aktion ausführt.


Eine Zahl, mit der TCP übertragene Daten zu und von einem bestimmten Programm weiterleitet.


Eine in Project Builder enthaltene Aktion, die dem Benutzer automatisch über einen Menüpunkt und/oder eine Schaltfläche in der Symbolleiste zur Verfügung steht. Vordefinierte Aktionen umfassen Generieren, Zustellen sowie bestimmte Versionskontrolloptionen. Wenn eine vordefinierte Aktion für einen unterstützten Dateityp definiert wird, wird die Aktion für jedes ausgewählte Objekt dieses Typs aufgerufen, wenn der Benutzer die Aktion aus Project Builder aufruft. Siehe auch Aktion, Benutzerdefinierte Aktion.


Siehe Vordefinierten Datentyp


Eine Einstellung, die das Verhalten der Anwendungsschnittstelle beeinflußt.


(Oracle Express) In der Vorschau wird das Skript angezeigt, das generiert wird, wenn Sie die aktuellen Kriterien akzeptieren.  In dem Dialogfeld für jedes Selektor-Werkzeug können Sie die Auswahl anzeigen, indem Sie auf die Schaltfläche Vorschau klicken.


Die Schnittstelle, mit der Sie die Berichtausgabe online anzeigen und einen Bildlauf durch die Berichtausgabe vornehmen können.


Eine Spalte in einer Datenbanktabelle, deren Bestandteile aus eindeutigen Werten bestehen, mit denen eine Zeile in einer Tabelle identifiziert wird.


Siehe Vordefinierter Datentyp.


In einer Druckerdefinitionsdatei eine Escape-Folge, der Sie einen Druckercode zuweisen, der in einem Bericht referenziert werden kann.


Eine Datei, die eine Druckerdefinition im Textformat (z.B. ASCII oder EBCDIC) enthält.


Ein PL/SQL-Unterprogramm, das eine bestimmte Folge von Aktionen ausführt. Das Unterprogramm kann auf dem Client und dem Datenbank-Server gespeichert sein.


Eine PL/SQL-Codestruktur, die von dem PL/SQL-Compiler unabhängig erkannt und verarbeitet werden kann. Anonyme Blöcke, Unterprogrammspezifikationen und -rümpfe (Prozeduren und Funktionen) sowie Paketspezifikationen und -rümpfe sind Typen von Programmblöcken. Programmblöcke können auf dem Client und dem Datenbank-Server gespeichert sein und ausgeführt werden.  Siehe auch: Gespeicherter Programmblock.


Das Projekt ist die Basis-Datenstruktur, die von Project Builder erstellt wird. Projekte sind Sammlungen von Pointern auf alle Dateien, die Sie als Bestandteil der Anwendung betrachten, oder die Sie anderweitig konzeptionell gruppieren möchten. Sie können Editoren, Compiler und andere Werkzeuge definieren, mit denen Sie die in dem Projekt enthaltenen Datenobjekte bearbeiten möchten. Alle Projektinformationen sind in der Projektregistrierung gespeichert. Siehe auch: Projektobjekt, Projektdatei, Exportieren.


In Project Builder sind Projektdateien alle Dateien, die mit einer Anwendung verknüpft sind. Projektdateien können einen beliebigen Typ aufweisen, einschließlich Forms, Berichten, grafischen Anwendungen, 3GL-Modulen, Dokumentation und Testskripts. Siehe auch: Projekt, Projektobjekt.


In Project Builder werden alle Objekte als Projektobjekt bezeichnet, für die Attribute definiert werden können, einschließlich aller Entitäten, die unter dem Knoten Projekte, unter Typen, Aktionen und Makros gespeichert sind. Siehe auch: Projekt, Projektdatei..


Das Fenster mit einer hierarchischen Liste der Projektobjekte für die aktuelle Sitzung. Die Liste wird in Form einer Gliederung angezeigt. Mit ihr kann der Benutzer verschiedene Aufgaben ausführen, wie z.B. Objekte erstellen, bearbeiten, umbenennen und löschen. Auch wenn immer nur ein Schema gleichzeitig sichtbar ist, kann der Benutzer unter zwei verschiedenen Schemata wählen, nach denen die Objekte angeordnet werden sollen.


Der Knoten der obersten Ebene für ein Projekt. Er stellt die Projektdatei dar bzw. zeigt auf die Projektdatei. Siehe auch Projekt, Projektdatei.


In Project Builder die Datei, in der alle mit einem Projekt verknüpften Informationen gespeichert sind: Dateien, die zu dem Projekt gehören, Typen, Aktionen und Makros, die für das Projekt definiert sind, usw.


In der Projektansicht werden Objekte nach Typ und nach Projekt-/Unterprojekt-Beziehung geordnet dargestellt. Die Projekte werden alphabetisch nach Projektdatei und dann alphabetisch nach Kategorie geordnet. Siehe auch  Abhängigkeitsansicht, Projekt, Projektdatei, Ansicht.


Ein Dialogfeld, das den Benutzer bei der Ausführung der Schritte unterstützt, die beim Erstellen eines neuen Projekts oder Unterprojekts erforderlich sind.


Eine Eigenschaft eines Objekts, mit der das Verhalten oder Erscheinungsbild dieses Objekts bestimmt wird.


Ein benanntes Objekt, das eine Liste mit Attributen und deren Einstellungen enthält, mit denen das Erscheinungsbild und die Funktionalität von Objekten aufgrund dieser Klasse global gesteuert wird.


Eine Zeichenfolge, die Sie bei der Anmeldung bei einer Datenbank oder einem Server eingeben können und mit der Sie die Verbindung zu einer entfernten Datenbank bzw. einem entfernten Server herstellen können.


(Oracle Express) Wenn Sie Werte für eine der Dimensionen in einem Maß auswählen, werden die anderen Dimensionen, aus denen das Maß besteht, als qualifizierende Dimensionen bezeichnet.

Angenommen, das Maß Sales ist nach Product, Month und Geography dimensioniert. Wenn Sie die obersten zehn Städte basierend auf Sales auswählen, müssen Sie außerdem angeben, welches Produkt und welcher Monat betrachtet werden woll, wenn Sie die Sales-Werte vergleichen. In diesem Fall sind Product und Month die qualifizierenden Dimensionen.


Eine SQL SELECT-Anweisung, mit der die Daten angegeben werden, die Sie aus einer oder mehreren Tabellen bzw. Ansichten einer Datenbank abrufen möchten.


Eine PL/SQL-Funktion, die bei der Ausführung Daten filtert, die von einer Abfrage abgerufen wurden. Nur die Daten, die den Bedingungen in den Funktionen gerecht werden, werden grafisch dargestellt.


Eine Option, mit der die laufende Sitzung beendet wird und mit der der Benutzer zur Betriebssystemebene zurückkehrt.


Ein Steuerelement (wie z.B. ein Kontrollkästchen), das in Gruppen von zwei oder mehr Schaltflächen auftritt, von denen zu einem bestimmten Zeitpunkt immer nur eine "eingeschaltet" oder "ausgeschaltet" sein kann.


Eine Gruppe aus zwei oder mehr Optionsschaltflächen, von denen immer nur eine "eingeschaltet" oder "ausgeschaltet" sein kann.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer fortlaufende Zeiträume als Dimensionswerte auswählen kann. Diese Zeiträume können auf folgenden Werten basieren:

•	Einer bestimmten Anzahl der letzten Zeiträume

•	Eine Anfangszeitraum und einem letzten Zeitraum

•	Einem Anfangs- und einem Endzeitraum.

Der Benutzer kann z.B. Dimensionswerte für den Bereich ab der Woche wählen, die am 25. November 1996 endet, bis zu der Woche, die am 30. Dezember 1996 endet.


Eine von RSA Data Security, Inc entwickelte Kennung, die Schlüssel mit unterschiedlicher Länge akzeptieren kann und im wesentlichen ein Zufallszahlengenerator ist, wobei die Ausgabe des Generators einem XOR mit dem Datenstrom unterzogen wird, um die verschlüsselten Daten zu generieren. Aus diesem Grund darf derselbe RC4-Schlüssel niemals zur Verschlüsselung von zwei verschiedenen Datenströmen benutzt werden.


Akronym für Relational Database Management System. Eine Datenbank, die die Definition von Datenstrukturen, Speichern- und Abrufenvorgängen und Integritätsregeln ermöglicht. In einer derartigen Datenbank sind die Daten und die Beziehungen zwischen den Daten in Tabellen angelegt.


Eine Datei, die eine einzelne Berichtdefinition im Binärformat enthält. Mit .RDF-Dateien können Berichte sowohl ausgeführt als auch bearbeitet werden.


Eine Datei, die eine einzelne Berichtdefinition im Binärformat enthält. .rep-Dateien werden nur zur Ausführung von Berichten benutzt. Eine .rep-Datei kann nicht bearbeitet werden.


Die Möglichkeit, Daten in der ganzen Datenbank ab einem bestimmten Zeitpunkt abzufragen.


Eine Zeile, die von einer SQL SELECT-Anweisung abgerufen wird.


Ein internes Datenstrukturobjekt mit einem Spalten-/Zeilengerüst, das zu dem Formmodul gehört, in dem es definiert wird.


Ein Spaltentyp, der auf Daten in anderen Spaltenobjekten oder Objekttabellen (Oracle8) zeigt.


Eine Linie, die bei einem bestimmten Wert in einem Diagramm angezeigt wird.


(Oracle Express) Beim Abgleichen werden die neuesten Daten aus einer Express-Datenbank abgerufen, nachdem die Abfrageergebnisse in Ihrem Bericht angezeigt wurden. Wenn Sie eine gespeicherte Express-Abfrage öffnen, werden die Ergebnisse automatisch abgeglichen.


Beim Registrieren wird die Definition eines Typs oder eines neuen Projekts zu der globalen oder lokalen Registrierung hinzugefügt. Nach der Registrierung können für einen neuen Typ Aktionen definiert werden, während bei einem neuen Projekt die Typen der referenzierten Dateien identifiziert werden können, so daß für diese bestimmte Aktionen aufgerufen werden können. Siehe auch Registrierung.


Eine globale und/oder benutzerspezifische Konfigurationsdatei, mit der Projektdefinitionen und Umgebungsinformationen gespeichert werden. Siehe auch Globale Registrierung, Benutzerregistrierung.


Ein Symbol in Suchkriterien, mit dem ein Vergleich zwischen zwei Werten angegeben wird, wie z.B. das Gleichheitszeichen in "WHERE DEPTNO = 10." Zeilen, bei denen der Vergleich "wahr" ergibt, werden in dem Ergebnis zurückgegeben (abgerufen), während Zeilen, bei denen der Vergleich "falsch" ergibt, vom Ergebnis ausgeschlossen werden.


Eine Datenbank auf einem Computer, bei dem es sich nicht um die lokale Datenbank handelt. Im allgemeinen ein Computer im selben Netzwerk, jedoch auf einem anderen Knoten (d.h. eine Datenbank, die Sie über einen Datenbank-Link benutzen).


Ein Layoutobjekt, mit dem Datenzeilen angezeigt werden, die für eine Gruppe abgerufen werden.


Ein Modus, bei dem jedes eingegebene Zeichen das aktuelle Zeichen bei der Cursorposition ersetzt. Das Gegenteil von Einfügen-Modus.


Die Objekte, mit denen das Datenmodell und Layout eines Berichts definiert wird. Objekte auf Berichtebene werden einem einzelnen Bericht zugeordnet und können nicht von anderen Berichten oder anderen Oracle-Produkten gemeinsam benutzt werden. Objekte umfassen Berichte, Abfragen, externe Abfragen, externe PL/SQL-Bibliotheken, Gruppen, Spalten, Parameter, Links, Rahmen, Wiederholungsrahmen, Felder, Boilerplate und Anker.


Nur bei Windows NT und Windows 95 verfügbar. Wartet, bis Befehlszeilen einen Bericht ausführen, setzt diesen Bericht in die Warteschlange zur Ausführung im Hintergrund auf dem lokalen Server. Typischerweise werden Befehlszeilen von Form Builder oder Graphics Builder über RUN_PRODUCT oder von einem anderen Bericht über SRW.RUN_REPORT empfangen. Sie können auch RWISV60 benutzen, um einen Bericht an die Reports Background Engine zu übergeben.


Behält Zeitstempel- und Statusinformationen über Berichte bei, die von Reports Server verwaltet werden.


Bei Windows NT, Windows 95 und UNIX verfügbar. Ermöglicht die Ausführung von Berichten auf einem entfernten Server. Stellt Jobanforderungen in die Warteschlange und ermöglicht eine zeitliche Planung der Ausführung der Berichte durch den Benutzer. RWCLI60 wird verwendet, um einen Bericht an den Reports Server zu senden.


Stellt eine Schnittstelle zwischen dem Web-Server und Reports Runtime dar, so daß Berichte dynamisch aus dem Web-Browser ausgeführt werden können.


Stellt eine Schnittstelle zwischen einem Web Server und dem Reports Server dar.


Eine Datei, die eine Berichtdefinition im Textformat (z.B. ASCII oder EBCDIC) enthält. .REX-Dateien werden für das Portieren von Berichten von einer Plattform zu einer anderen benutzt. Beachten Sie, daß .REX-Dateien nicht mehr erforderlich sind. Sie sind aus Gründen der Abwärtskompatibilität verfügbar.


Bezieht sich auf die Intensität der Rot-, Grün- und Blaukomponenten einer Farbe.


Das Gruppenobjekt, zu dem alle anderen Objekte in einer Anwendung gehören.


Der Knoten auf oberster Ebene für ein Projekt, der die Benutzerumgebung darstellt. Kann der Benutzerregistrierung oder Globalen Registrierung entsprechen, je nachdem, mit welcher Registrierung die Standardwerte festgelegt wurden.


Eine Gruppe mit Feldwerten in einer Tabelle, z.B. die Felder, die einen Mitarbeiter in der Beispieltabelle EMP darstellen.


Ein Objekt in einer Oracle8-Objekttabelle. Jede Zeile in der Tabelle ist ein Objekt. In Forms Developer wird eine Objekttabelle in einzelne Spalte aufgelöst, so daß das Zeilenobjekt nicht mehr als einzelne Entität vorhanden ist (nur als die entsprechenden separaten Attribute).


Ausführung einer Laufzeitversion einer Anwendung oder eines Programmblocks.


Akronym für Rich Text Format. Ein nicht-plattformspezifisches Dateiformat, das auf Steuerwörtern basiert, mit denen unformatierter Text und Bilder in verschiedenen Anwendungen und Betriebssystemen dargestellt werden. RTF benutzt den ANS-I, PC-8-, Macintosh- oder IBM PC-Zeichensatz, um die Darstellung und Formatierung eines Dokuments sowohl auf dem Bildschirm als auch auf dem Ausdruck zu steuern.


Siehe rep-Datei


Die Schnittstelle, mit der die Benutzer eine Laufzeitanwendung anzeigen und mit dieser arbeiten.


Ein Bildschirm oder Fenster, das optional zur Laufzeit angezeigt wird und in dem der Benutzer Druckoptionen und Parameter vor Ausführung des Berichts ändern kann.


(Oracle Express) Eine Gruppe von Dimensionswerten, die entweder als Werteliste oder als Skript gespeichert werden. Sie können von Ihnen generierte Auswahlen speichern, oder der Datenbankadministrator kann gespeicherte Auswahlen erstellen und Ihnen diese zur Verfügung stellen.

Gespeicherte Auswahlen sind eine zeitsparende Funktion: immer wenn Sie eine Auswahl erneut benutzen müssen, rufen Sie einfach eine gespeicherte Auswahl auf, ohne diese neu erstellen zu müssen.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem Sie eine Auswahl von gespeicherten Dimensionswerten abrufen können.


Eine Sammlung zusammengehöriger Datenbankobjekte, die im allgemeinen nach einer Datenbank-Benutzer-ID gruppiert sind. Schemaobjekte umfassen Tabellen, Ansichten, Sequenzen, gespeicherte Programmblöcke, Synonyme, Indizes, Cluster und Datenbank-Links.


Die Ebene, auf der ein Objekt angewendet wird, bzw. der Bereich, in dem ein Objekt angewendet wird. Bei Project Builder: 1. Beschreibt den Dateibereich, der von den Befehlen Kompilieren und Alles kompilieren betroffen ist, die für kompilierbare Projektobjekte aufgerufen werden. 2. Beschreibt den Dateibereich, der von vererbbaren Definitionen betroffen ist.


 Siehe SQL-Skript, Interpreter-Skript


In Report Builder eines von mehreren Layouts in demselben Bericht, wobei ein jedes eine andere Zielperson, ein anderes Ausgabeformat, ein anderes Seitenlayout, eine andere Seitengröße oder Darstellung hat. Ein einziger Bericht kann z.B. eine Zusammenfassung für die Geschäftsleitung in einem Abschnitt und eine detaillierte Aufgliederung für einzelne Manager in einem anderen Abschnitt enthalten.


Eine SQL-Anweisung, mit der angegeben wird, welche Zeilen und Spalten aus einer oder mehreren Tabellen oder Ansichten abgerufen werden sollen.


(Oracle Express) Die Gruppe von Dimensionswerten, die momentan für eine Dimension ausgewählt sind, bzw. das Skript, das Bedingungen oder Kriterien zur Angabe dieser Werte enthält.


(Oracle Express) Wie in verschiedenen Dialogfeldern im Selektor dargestellt, entspricht das Auswahlskript einer Beschreibung der Auswahlen, die der Benutzer bei der Wahl von Dimensionswerten getroffen hat. Bei diesem Skript handelt es sich um eine Übersetzung des Skripts in der Express-Sprache in ein Skript in der normalen Sprache.


(Oracle Express) Eine Gruppe von Werkzeugen, mit denen Sie Dimensionswerte auswählen, die z.B. in einem Bericht, einer Tabelle, einer Grafik oder einem Listenfeld aufgenommen werden sollen. Mit dem Selektor können Sie z.B. die wichtigsten 10 Städte basierend auf Umsätzen oder die Städte auswählen, bei denen die Umsätze die Quote von 15% überschritten haben. Mit dem Selektor können Sie außerdem Dimensionswerte sortieren und gespeicherte Auswahlen erstellen und abrufen.


(Oracle Express) Ein Dialogfeld oder eine Gruppe von Dialogfeldern, mit denen Dimensionswerte auf eine bestimmte Weise ausgewählt oder sortiert werden können. Jedes Selektor-Werkzeug ist Bestandteil des Selektors. Mit den Selektor-Werkzeugen können Sie Dimensionswerte basierend auf deren Ebene in der Hierarchie, deren Attributen, den Zeichen in dem Wertnamen usw. auswählen. Mit den Selektor-Werkzeugen können Sie außerdem die Dimensionswerte sortieren.


Der Zeitraum zwischen dem Aufrufen und Beenden des ausführbaren Programms.


Eines von zwei oder mehr Objekten, die dasselbe übergeordnete Objekt in dem entsprechenden Gruppenbaum haben. Alle Objekte, die zu einem Gruppenobjekt gehören, sind gleichrangig.


Die Kombination einer IP-Adresse und einer Port-Nummer.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem Sie die Reihenfolge der Dimensionswerte in einer angezeigten Auswahl neu ordnen können. Sie können eine Auswahl in aufsteigender oder absteigender Reihenfolge wie folgt sortieren:

•	Nach Alphabet

•	Nach Reihenfolge in der Datenbank

•	Nach Datenwert

•	Nach Reihenfolge oder Ebene in der Hierarchie

•	Nach Zeitraum

Sie können eine Auswahl auch manuell sortieren, indem Sie die Dimensionswerte mit Drag-and-Drop verschieben.


In PL/SQL: Anweisungen in einem Unterprogramm oder Paket. Sie benötigen den Quellcode für einen Programmblock, bevor Sie diesen zu einer ausführbaren Form kompilieren können. In Project Builder: Die Eingabetypen, die für das Erstellen der Zieltypen erforderlich sind.


Definiert nur Namen, Parameter und Rückgabetyp (gilt nur bei Funktionen) des Unterprogramms.


Ein kleines Rechteck am unteren Ende der vertikalen Bildlaufleiste und links neben der horizontalen Bildlaufleiste in einem Editor. Wenn Sie die Maustaste ziehen und loslassen, wird ein neuer Ausschnitt erstellt und die Bildlaufleiste in separate Bildlaufleisten für jeden Ausschnitt geteilt.


Eine Standard-Schnittstelle für das Speichern und Abrufen von Informationen in einer relationalen Datenbank. SQL ist ein Akronym für Structured Query Language.


Eine Datei, die eine im Textformat (ASCII oder EBCDIC) gespeicherte Abfrage enthält.


Eine Datei, die SQL-Anweisungen enthält, die Sie ausführen können, um die Datenbankverwaltung schnell und einfach zu gestalten. Mit Oracle-Produkten werden verschiedene SQL-Skripts geliefert.


Eine SQL-Instruktion für Oracle. Eine SELECT-Anweisung ist eine Art von SQL-Anweisung.


Siehe Aufrufstapel


Ein PL/SQL-Konstrukt, das für konditionale, iterative und sequentielle Steuerungen und für die Fehlerbehandlung benutzt wird. Jede PL/SQL-Anweisung muß mit einem Semikolon (;) abgeschlossen werden.


(Oracle Express) Eine gespeicherte Auswahl, die bei jeder Auswertung dieselben Dimensionswerte enthält. In statisch gespeicherten Auswahlen werden die auszuwählenden Dimensionswerte aufgeführt und nicht die Auswahlkriterien. Ein statisches gespeichertes Auswahlskript könnte z.B. "Februar 1996, März 1996 und April 1996 auswählen" enthalten, während das Skript für eine dynamisch gespeicherte Auswahl "Letzte drei Monate auswählen" enthalten könnte.


Eine Prozedur, eine Funktion oder ein Paket, das in einem Oracle-Datenbankserver gespeichert ist und in diesem ausgeführt wird.


Eine Prozedur oder Funktion, die in einem Oracle-Datenbankserver gespeichert ist und in diesem ausgeführt wird.


HTML-Erweiterungen, die leistungsfähige Formatierungsmöglichkeiten in HTML-Dokumenten bereitstellen. Um ein  HTML-Dokument anzuzeigen, das Dokumentvorlagen verwendet, zeigen Sie dieses in einem Browser an, der Dokumentvorlagen unterstützt.


Eine PL/SQL-Prozedur oder -Funktion.


In Project Builder ein Projekt, das in einer anderen Projektdatei enthalten und nicht in einer eigenen Datei gespeichert ist. Siehe auch Projekt.


In Project Builder ein Knoten, der auf ein Unterprojekt verweist. Siehe auch Projekt, Projektknoten, Unterprojektknoten


Eine Spalte vom Typ Summe, in der Zwischensummen, Gesamtsummen, laufende Summen und andere Summen der Daten in einem Bericht berechnet werden, wobei eine der vordefinierten Summenfunktionen von Report Builder benutzt wird.


Das Dateiformat, das vom Microsoft Excel-Programm verwendet wird.


Das Ordnungssystem, nach dem Befehle, Bezeichner und Parameter zu gültigen Befehlsfolgen kombiniert werden.


Eine der Variablen, die in Reports Developer enthalten sind (z.B. &Logical Page, DESTYPE).


Eine benannte Sammlung zusammengehöriger Informationen, die in einem zweidimensionalen Raster in einer relationalen Datenbank oder einem Server gespeichert sind, wobei das Raster aus Zeilen und Spalten besteht.


Ein Collection-Typ, der eine Dateneinheit definiert, die aus einer ungeordneten Gruppe von Elementen besteht, die alle denselben Datentyp aufweisen. Bei der entsprechenden Dateneinheit handelt es sich um eine verschachtelte Tabelle mit einer einzigen Spalte, deren Spaltentyp ein vordefinierter Typ oder ein Objekttyp ist.  (Oracle8)


Ein Standardlayout, bei dem Beschriftungen am oberen Rand der Seite und Datenzeilen unter den Beschriftungen angezeigt werden.


In Project Builder ein Objekt in der Mitte des Abhängigkeitsbaums. So ist z.B. eine ausführbare Routine ein (Kompilier-) Ziel für eine Bibliothek, während eine Bibliothek ein Ziel für eine Gruppe von Objekten und ein Objekt ein Ziel für eine Quelldatei ist.


Ein Knoten, mit dem das Ziel angegeben wird. Siehe auch Ziel


Akronym für Transmission Control Protocol. Das zugrundeliegende Kommunikationsprotokoll für den Austausch von HTTP-Anforderungen zwischen Clients und Web-Servern.


Ein Untermenü, das der Benutzer mit einer Maus oder einem anderen Zeigegerät von der Quelle entfernen und zu einem anderen Teil des Bildschirms ziehen kann.


In Form Builder ein Objekt, mit dem ein Zeichenfolgenwert angezeigt wird.


Der horizontale Bereich am oberen Rand eines Fensters, in dem der Name der Anwendung oder des Oberflächenelements in diesem Fenster angezeigt wird.


Siehe Titel


Mit einem Schalter wird eine Einstellung ein- oder ausgeschaltet. So können Sie den Objektnavigator z.B. verbergen oder anzeigen.


Eine Schaltfläche in Form eines Symbols, mit der Objekte in einer Anwendung erstellt und bearbeitet werden.


Eine Sammlung von Schaltflächen in Symbolform, die Produktbefehle ausführen. Die Symbolleiste ist im allgemeinen horizontal am oberen Rand oder vertikal am seitlichen Rand eines Fensters ausgerichtet.


Eine Sammlung von Werkzeugen.


(Oracle Express) Ein Werkzeug im Dialogfeld Selektor, mit dem der Benutzer Dimensionswerte basierend auf den obersten x, untersten y oder obersten x und untersten y Datenwerten auswählen kann. Der Benutzer kann z.B. eine Dimensionsauswahl erzeugen, in der Produkte enthalten sind, deren Umsatzvolumen zu den obersten 10 Prozent der Produkte bei den gesamten Verkäufen in dem vierwöchigen Zeitraum gehört, der am 30. Dezember 1995 endet.


Ein optionaler Berichtbereich, der abschließendes Material für den Bericht enthalten kann, einschließlich Text, Grafiken, Daten und Berechnungen. Der Berichtanhang wird als letztes nach Titel und Hauptteil angezeigt.


Eine Folge von SQL-Anweisungen, die als eine einzige Einheit behandelt werden.


Eine PL/SQL-Prozedur, die bei einem bestimmten Ereignis ausgeführt oder "ausgelöst" wird.


Eine Beschreibung eines Dateityps, wie z.B. eine Form, ein Dokument usw., die Informationen wie Typname und Beschreibung enthält. Jede Beschreibung gilt für einen einzigen Dateityp. Außerdem gibt es vier Metatypen "updtext", der für alle Textdateien gilt, "updproj", der für alle Projektdateien gilt, "updlink", der für alle Projekt-Links gilt, und "all", der für jeden Dateityp gilt. Sie sind die Grundlage für die Definition von Aktionen und Makros.


Beim Aktualisieren werden die Werte von Tabellendaten geändert, insbesondere durch Änderung der Datenwerte mit dem SQL-Befehl UPDATE, jedoch auch durch Löschen von Werten mit dem SQL-Befehl DELETE oder durch Einfügen von Werten mit dem SQL-Befehl INSERT.


Akronym für Uniform Resource Locator. Die "Adresse", mit der ein WWW-Server und eine Home Page angegeben werden. Zum Beispiel:
http://www.acme.com/
Dieses Beispiel gibt an, daß die Host-Adresse www.acme.com ist. Ein URL ist in den meisten Fällen ein Dateiname (wahrscheinlich mit einem langen Pfad und im allgemeinen mit einer Erweiterung HTML oder .HTM (bei PC-DOS Dateinamen)).


Eine Möglichkeit zur Übergabe der Kontrolle (und möglicherweise auch von Argumenten) von Forms Developer zu einem anderen Oracle-Produkt oder 3GL und danach zur Rückgabe der Kontrolle (und möglicherweise der Argumente) an Forms Developer.


Eine Aktion, die von einem Benutzer von Project Builder definiert wird. Derartige Aktionen können für einen einzelnen Dateityp oder für alle Dateitypen gelten. Siehe auch  Aktion, Vordefinierte Aktion.


Siehe Objekttyp.


Ein Makro, der von einem Benutzer von Project Builder definiert wird. Mit derartigen Makros können sowohl vordefinierte Aktionen als auch benutzerdefinierte Aktionen geändert werden. Siehe auch Makro, Vordefinierter Makro, Aktion, Vordefinierte Aktion


Eine Projektdatei, in der Konfigurationsinformationen pro Benutzer gespeichert werden. Auf diese Weise können Benutzer ihre individuellen Entwicklungsumgebungen gestalten. Die Benutzerregistrierung übernimmt die Typinformationen von der Globalen Registrierung. In der Benutzerregistrierung können neue Typen definiert und Aspekte der Typdefinitionen außer Kraft gesetzt werden, die in der Globalen Registrierung gespeichert sind. Außerdem enthält die Benutzerregistrierung Umgebungs- und Voreinstellungsinformationen, wie z.B. die DB-Adresse eines bestimmten Benutzers, Benutzeroberflächeneinstellungen, wie z.B. "Symbolleiste anzeigen" und bestimmte allgemeine Projektinformationen wie "Autor". Siehe auch Registrierung, Globale Registrierung.


Siehe Werteachse axis


Eine PL/SQL-Codestruktur, die einen Wert zurückgibt. Wertkonstrukte umfassen Funktionen und Ausdrücke.


Ein benanntes Objekt, dem ein Wert zugewiesen werden kann und dessen zugewiesener Wert sich im Laufe der Zeit ändern kann.


Ein Collection-Typ, der eine Dateneinheit definiert, die aus einer geordneten Gruppe von Elementen besteht, die alle denselben Datentyp aufweisen. Bei der entsprechenden Dateneinheit handelt es sich um ein variierendes Array oder VARRAY. Die Anzahl von Elementen in einem VARRAY (Größe) ist variabel. Bei der Deklaration eines variierenden Array-Typs müssen Sie jedoch eine maximale Größe angeben.


Visual Basic-Dateinamenerweiterung. Wird als Dateinamenerweiterung für bestimmte dynamische Link-Bibliotheken verwendet, die mit Dateien verteilt werden, die vordefinierte VBX-Steuerelemente enthalten.


Ein mit der Microsoft Visual Basic-Sprache generiertes Widget, mit dem die Benutzeroberfläche erweitert, Benutzereingaben empfangen und Ausgaben angezeigt werden (z.B. Schieberegler, Raster und Bedienungsknöpfe).


Eine virtuelle Tabelle, deren Zeilen nicht wirklich in der Datenbank vorhanden sind, die jedoch auf einer Tabelle aufgebaut ist, die physikalisch in der Datenbank gespeichert ist.


Ein symbolischer Ordnername (im allgemeinen eine Abkürzung oder ein Synonym), mit dem das virtuelle Dateisystem Dateien zuordnet, die im Dateisystem des Hostrechners gespeichert sind.


Eine Zuordnung, die in URL verwendete Pfadnamen mit dem Dateisystem verknüpft, das vom Betriebssystem des Hostrechners verwaltet wird.


Schriftart-, Farb- und Musterattribute, die Sie für Objekte festlegen, die auf Ihrer Anwendungsoberfläche angezeigt werden.


Siehe WWW


Ein Programm, das Endbenutzer verwenden, um HTML-Dokumente und Programme zu lesen, die auf einem Computer (der von einem Web-Server bedient wird) gespeichert sind.


Ein Programm, das auf einem Web-Server über den Web Request Broker ausgeführt wird.


Ein Server-Prozeß (HTTP-Daemon), der auf einem Web-Site ausgeführt wird und Web-Seiten als Antwort auf HTTP-Anforderungen von entfernten Web-Browsern sendet.


Ein Zeichen, das für ein 'beliebiges Zeichen' oder eine 'fortlaufende Folge von Zeichen' innerhalb eines Wortes oder Begriffs steht.


1. Ein rechteckiger Bereich auf dem Desktop, der eine Anwendung enthält. Jedes Fenster hat einen Bereich, in dem Sie mit der Anwendung zusammenarbeiten können. Fenster können geöffnet, skaliert, verschoben, als Symbol oder als Vollbild angezeigt werden. 2. In Form Builder ein Objekttyp, den Sie mit einer Leinwandansicht verknüpfen können.


Ein Dateiformat, das von einigen Spreadsheet-Programmen benutzt wird, wie z.B. SQL*Calc oder von Lotus 1-2-3 Programmen.


Akronym für Oracle Web Request Broker. Stellt eine leistungsfähige verteilte Laufzeitumgebung zur Entwickling und Weiterleitung von Anwendungen für das Web dar. Mit der WRB-Laufzeitplattform können Anwendungsentwickler Anwendungen schreiben, die unabhängig von Web-Servern sind und mit einer Reihe von Web-Servern benutzt werden können.


Akronym für World Wide Web. Das Netzwerk mit Servern im Internet, von denen ein jeder eine oder mehrere Home Pages hat, die Informationen und Links zu anderen Dokumenten auf diesem und (im allgemeinen) anderen Servern bereitstellen.


Vergrößern eines Objekts, damit mehr Platz für das Bearbeiten des Feldinhalts vorhanden ist.


Die sekundäre Symbolleiste, die (standardmäßig) auf der linken Seite des Projektnavigators angedockt ist. Die sekundäre Symbolleiste verfügt über Funktionen zur Vereinfachung von Anordnung und Starten von Anwendungen.


 Die neueste Version von OLE-Steuerelementen (OCX).


XML-Ausgabe, die den allgemeinen XML-Prinzipien entspricht, wie richtiges Markieren, Verschachteln sowie die Aufnahme einer XML-Deklaration, z.B.. <?xml version="1.0" encoding="UTF-8"?>.


Mit einem Platzhalter-Benutzernamen können sich Benutzer bei der Datenbank mit ihrem persönlichen Benutzernamen und nicht mit dem Oracle-Datenbankbenutzernamen anmelden (z.B. $user_name@database), wenn Berichte aus einem Web-Browser ausgeführt werden.


Extensible Markup Language -- eine Metasprache, die SGML zur Definition und Strukturierung von Daten verwendet. Report Builder unterstützt die XML-Ausgabe im Hinblick auf Web-Veröffentlichungen sowie den elektronischen Datenaustausch mit Anwendungen von Fremdherstellern. Mit XML können Sie auch Berichtdefinitionen generieren, die zur Laufzeit mit anderen Berichtdefinitionen zusammengeführt oder separat ausgeführt werden können.


XML-Ausgabe, bei der Stuktur und Elementinhalt einer Dokumenttypdefinition (DTD) entspricht. Eine gültige XML weist auch das richtige Format auf.


Online-Hilfe benutzen

Die folgenden Richtlinien sollen Ihnen beim optimalen Einsatz des Online-Hilfesystems helfen:

•	Machen Sie sich mit dem Register Inhalt vertraut, um eine Vorstellung vom Umfang der Themen in der Online-Hilfe zu erhalten.

•	Klicken Sie auf die Schaltfläche Verwandte Themen direkt unter den Titeln, um eine Liste der Themen aufzurufen, die mit dem aktuellen Thema verknüpft sind.

•	Klicken Sie auf die Schaltfläche Optionen am Anfang jedes Themas, um festzulegen, daß die Hilfethemen immer im Vordergrund angezeigt werden sollen, so daß die Hilfethemen bei der Entwicklung von Anwendungen stets auf dem Bildschirm bleiben.

•	Klicken Sie auf die Schaltfläche Glossar am Anfang jedes Themas, um Definitionen für Begriffe aufzurufen, mit denen Sie nicht vertraut sind..


Wegweiser zur Dokumentation

So machen Sie sich mit Oracle Developer vertraut:

1	Verschaffen Sie sich in der Kurzanleitung einen Überblick über die einzelnen Komponenten von Oracle Developer:

•	Wählen Sie Hilfe [image] Kurzanleitung.

2	Führen Sie das Lernprogramm aus, in dem die gebräuchlichsten Aufgaben Schritt für Schritt erläutert werden.

• 	Wählen Sie Hilfe [image] Lernprogramm.

3	Rufen Sie die Online-Handbücher ab (sie sind auch in gedruckter Form verfügbar):

• 	Wählen Sie Hilfe [image] Handbücher.

4	Rufen Sie das Online-Hilfesystem auf:

• 	Wählen Sie Hilfe [image] Hilfethemen.

• 	Für kontextbezogene Hilfetexte drücken Sie [Hilfe] (bei den meisten Plattformen ist dies die Taste F1).


Information Desk


National Language Support in Forms Developer

  Verwandte Themen

Wenn Sie Anwendungen für den internationalen Gebrauch entwerfen, müssen diese Anwendungen mit Benutzern in deren Landessprache kommunizieren, wobei die spezifischen Ländereinstellungen für die Anzeige der Daten verwendet werden. Der National Language Support (NLS) von Oracle umfaßt die drei folgenden Hauptebenen:

•	Unterstützung von Zeichencodierungsschemata verschiedener Länder.

•	Unterstützung von sprach- und länderspezifischen Regeln.

•	Übersetzung der Oberfläche.

Diese Kombination der Unterstützung auf Zeichenebene, auf Ebene der Datenanzeige und auf Oberflächenebene stellt sicher, daß Ihre Anwendungen in den meisten europäischen und asiatischen Sprachen sowie Sprachen des Mittleren Ostens benutzt werden können, einschließlich Mehr-Byte-Zeichencodierungsschemata und Bidirektionalität.


NLS-Architektur

  Verwandte Themen

Die NLS-Architektur hat zwei Hauptbestandteile:

•	sprachunabhängige Funktionen

•	sprachabhängige Daten

Die sprachunabhängigen Funktionen übernehmen die Verarbeitung von Daten auf die entsprechende Weise, je nach Sprache und Land des Laufzeitoperators, und formatieren diese Daten automatisch entsprechend den lokalen Datums- und Zeitregeln.

Durch das Eingrenzen sprachabhängiger Daten muß Ihre Anwendung nur die Zeichenfolgen übersetzen, die für Ihre Anwendung eindeutig sind.


NLS-Umgebungsvariablen

  Verwandte Themen

Sie können die folgenden Parameter als Umgebungsvariablen zur Angabe der Ländereinstellungen verwenden, die von Forms Developer benutzt werden:

Parameter	Beschreibung:
NLS_CALENDAR	Das benutzte Kalendersystem.
NLS_CREDIT	Zeichenfolge zur Angabe eines positiven Währungsbetrages.
NLS_CURRENCY	Lokales Währungssymbol.
NLS_DATE_FORMAT	Standardformat für Datumsangaben.
NLS_DATE_LANGUAGE	Standardsprache für Datumsangaben.
NLS_DEBIT	Zeichenfolge zur Angabe eines negativen Währungsbetrages.
NLS_ISO_CURRENCY	ISO-Währungssymbol.
NLS_LANG	Die von Forms Developer benutzten Spracheinstellungen.
DEVELOPER_NLS_LANG	Die Sprache für die Forms Developer Builder.
USER_NLS_LANG	Die Sprache für die Laufzeitkomponente von Forms Developer.
NLS_LIST_SEPARATOR	Trennzeichen für Objekte in einer Liste.
NLS_MONETARY_CHARACTERS	Dezimalzeichen und Tausenderzeichen bei Währungsbeträgen.
NLS_NUMERIC_CHARACTERS	Dezimalzeichen und Gruppentrennzeichen bei numerischen Werten.
NLS_SORT	Sortierfolge für Zeichendaten.

Weitere Informationen über diese Parameter finden Sie in Oracle8 Reference.


Umgebungsvariable NLS_LANG

  Beispiele	  Verwandte Themen

Mit der Umgebungsvariablen NLS_LANG werden die Ländereinstellungen festgelegt, die von Forms Developer verwendet werden.

NLS_LANG bestimmt:

•	die Sprache für die Anzeige von Meldungen für den Benutzer, z.B. die Meldung "In Arbeit...".

•	Standardformatmasken für Datums- und Zahlenangaben.

•	Sortierfolge.

•	Zeichen, aus denen der Zeichensatz besteht.

NLS_LANG hat folgende Syntax:

NLS_LANG=language_territory.charset

wobei:

language	die Sprache und deren Regeln zur Anzeige von Meldungen sowie zur Anzeige von Tag und Monat angibt. Wenn keine Sprache angegeben wird, wird standardmäßig Amerikanisch verwendet.
territory	das Land und die Regeln für das Standard-Datumsformat, das für Zahlen benutzte Dezimalzeichen, das Währungssymbol und die Berechnungsgrundlage für Wochen- und Tagesnummern angibt. Wenn kein Land angegeben wird, wird standardmäßig von Amerika ausgegangen.
charset	den Zeichensatz angibt, in dem die Daten dargestellt werden. Hier muß es sich um einen Zeichensatz handeln, der Ihrer Sprache und Plattform entspricht. Dieses Argument steuert außerdem den Zeichensatz, der für die Anzeige von Meldungen benutzt wird.

Weitere Informationen über  NLS_LANG finden Sie in Oracle8 Reference.


Umgebungsvariablen DEVELOPER_NLS_LANG und USER_NLS_LANG

  Beispiele	  Verwandte Themen

In den meisten Fällen reicht die Einstellung eines einzigen Wertes für NLS_LANG aus. Wenn Sie jedoch gleichzeitig auf demselben Rechner zwei Gruppen von Resource- und Meldungsdateien benötigen, stehen zwei weitere Umgebungsvariablen zur Verfügung:

•	DEVELOPER_NLS_LANG gibt die Sprache für den Builder des Produkts an.

•	USER_NLS_LANG gibt die Sprache für die Laufzeitkomponente des Produkts an.

Die Syntax von DEVELOPER_NLS_LANG und USER_NLS_LANG ist identisch mit der Syntax von NLS_LANG.

Benutzen Sie in den folgenden Fällen diese beiden Variablen anstelle der einfachen Variablen NLS_LANG:

•	Sie möchten den Builder in Englisch benutzen, entwickeln jedoch eine Anwendung für eine andere Sprache.

•	Sie erstellen eine Anwendung zur Ausführung in einer Sprache, die einen bidirektionalen Zeichensatz verwendet.

•	Sie erstellen eine Anwendung zur Ausführung in einer Sprache, für die keine lokale Sprachversion des Builder verfügbar ist.

Hinweis  Wenn diese Umgebungsvariablen nicht speziell eingestellt werden, übernehmen sie die Standardwerte von NLS_LANG.

Weitere Informationen über NLS_LANG finden Sie in Oracle8 Reference.


Umgebungsvariablen NLS_LANG einstellen

  Beispiele	  Verwandte Themen

So stellen Sie Umgebungsvariablen NLS_LANG ein:

  Definieren Sie Werte für diese Variablen genau so wie Sie andere Umgebungsvariablen in Ihrem Basisbetriebssystem definieren, wobei Sie plattformspezifische Regeln, wie Pfadlänge usw. berücksichtigen müssen.

So stellen Sie z.B. NLS_LANG für Microsoft Windows NT ein:

1	Wählen Sie Ausführen aus dem Menü Start.

2	Geben Sie 'regedit' ein, und klicken Sie auf OK, um den Registrierungseditor zu öffnen.

Hinweis  Die Windows-Registrierung reagiert empfindlich auf Änderungen. Ändern Sie Umgebungsvariablen nur, wenn dies absolut erforderlich ist. Wenn Sie einen Fehler machen, klicken Sie auf Abbrechen, und beginnen Sie von vorne.

3	Blenden Sie den Knoten HKEY_LOCAL_MACHINE ein. Danach blenden Sie den Knoten SOFTWARE ein.

4	Klicken Sie auf ORACLE, um die Oracle-Umgebungsvariablen im rechten Fensterbereich des Registrierungseditors anzuzeigen.

5	Doppelklicken Sie auf die Umgebungsvariable NLS_LANG.

6	Geben Sie den neuen Wert für NLS_LANG in das Textfeld Wertdaten ein, und klicken Sie auf OK.

Hinweis  Wenn Sie eine NLS-Funktion benutzen möchten, müssen Sie NLS_LANG mindestens so einstellen, daß das Produkt NLS-Komponenten finden kann.


Schriftartalias auf Windows-Plattformen verwenden

  Verwandte Themen

Es gibt möglicherweise Fälle, in denen Sie eine Anwendung mit einer bestimmten Schriftart erstellen, bei der Ausführung dieser Anwendung jedoch feststellen, daß eine andere Schriftart verwendet wird. Diese Probleme treten in den meisten Fällen auf, wenn eine englische Schriftart (wie z.B. MS Sans Serif oder Arial) in einer nicht-westeuropäischen Umgebung eingesetzt wird. Forms Developer prüft nämlich, ob der mit der Schriftart verknüpfte Zeichensatz dem Zeichensatz entspricht, der von der Sprach-Umgebungsvariablen angegeben wird. Wenn die beiden Zeichensätze nicht übereinstimmen, ersetzt Forms Developer die Schriftart automatisch durch eine andere Schriftart, deren zugehöriger Zeichensatz dem Zeichensatz entspricht, der von der Sprachumgebungsvariablen angegeben wird. Dieses automatische Ersetzen stellt sicher, daß die von der Datenbank zurückgegebenen Daten richtig in der Anwendung angezeigt werden.

Hinweis  Wenn Sie lokale Zeichen mit einer englischen Schriftart eingeben, nimmt Windows eine implizite Verknüpfung mit einer anderen Schriftart vor.

Nun gibt es jedoch möglicherweise Fälle, in denen diese Substitution nicht erfolgen soll. Sie können diese vermeiden, indem Sie alle gewünschten Schriftarten dem Zeichensatz WE8ISO8859P1 in der Schrifartalias-Datei zuordnen. Wenn Sie z.B. die Schriftart Arial in Ihrer Anwendung nicht benutzen können, fügen Sie folgende Zeile zu der Schriftartalias-Datei hinzu:

Arial.....=Arial...WE8ISO8859P1


Bei Microsoft Windows unterstützte Zeichensätze

Zeichensatzname	Beschreibung
AR8MSWIN1256	MS Windows Code Page 1256 8-Bit Latin/Arabic
BG8MSWIN	MS Windows 8-Bit Bulgarian Cyrillic
CL8MSWIN1251	MS Windows Code Page 1251 8-Bit Latin/Cyrillic
EE8MSWIN1250	MS Windows Code Page 1250 8-Bit East European
EL8MSWIN1253	MS Windows Code Page 1253 8-Bit Latin/Greek
ET8MSWIN923	MS Windows Code Page 923 8-Bit Estonian
IW8MSWIN1255	MS Windows Code Page 1255 8-Bit Latin/Hebrew
JA16SJIS	Shift-JIS 16-Bit Japanese
KO16KSC5601	KSC5601 16-Bit Korean
LT8MSWIN921	MS Windows Code Page 921 8-Bit Lithuanian
TH8TISASCII	Thai Industrial Standard 620-2533 - ASCII 8-Bit
WE8ISO8859P1	ISO 8859-1 West European
ZHS16CGB231280	CGB2312-80 16-Bit Simplified Chinese
ZHT16BIG5	BIG5 16-Bit Traditional Chinese


Unterstützte arabische Bildschirm-Zeichensätze

ID	Zeichensatzname	Beschreibung
61	AR8ASMO708PLUS	ASMO 708 Plus Client 8-Bit Latin/Arabic
72	AR8XBASIC	EBCDIC XBASIC Client 8-Bit Latin/Arabic
504	AR8NAFITHA711T	Nafitha Enhanced 711 Client 8-Bit Latin/Arabic
505	AR8SAKHR707T	SAKHR 707 Client 8-Bit Latin/Arabic
506	AR8MUSSAD768T	Mussa'd Alarabi/2 768 Client 8-Bit Latin/Arabic
507	AR8ADOS710T	Arabic MS-DOS 710 Client 8-Bit Latin/Arabic
508	AR8ADOS720T	Arabic MS-DOS 720 Client 8-Bit Latin/Arabic
509	AR8APTEC715T	APTEC 715 Client 8-Bit Latin/Arabic
511	AR8NAFITHA721T	Nafitha International 721 Client 8-Bit Latin/Arabic
514	AR8HPARABIC8T	HP ARABIC8 Client 8-Bit Latin/Arabic
567	AR8ARABICMACT	Mac Client 8-Bit Latin/Arabic


Sprach- und länderspezifische Regeln

  Verwandte Themen

Während die Zeichencodierungsschemata sicherstellen, daß die einzelnen für jede Sprache erforderlichen Zeichen verfügbar sind, ermöglicht die Unterstützung nationaler Regeln die richtig lokalisierte Anzeige von Datenobjekten.

Die angegebene Sprache bestimmt die Standardregeln für die folgenden Eigenschaften:

•	Sprache für Server-Meldungen

•	Sprache für Tages- und Monatsnamen und deren Abkürzung (wie in den SQL-Funktionen TO_CHAR und TO_DATE angegeben)

•	Symbole für die Äquivalente von AM, PM, AD und BC

•	Standardsortierfolge für Zeichendaten, wenn ORDER BY angegeben wird (GROUP BY benutzt eine binäre Sortierfolge, es sei denn, ORDER BY wird angegeben)

•	Schreibrichtung

•	bestätigende/negative Antwortfolgen

Wenn die Sprache z.B. auf Deutsch eingestellt ist, werden die Meldungen:

ORA-00942:  table or view does not exist
FRM-10043:  Cannot open file.

wie folgt angezeigt:

ORA-00942: Tabelle oder View nicht vorhanden.
FRM-10043: Datei kann nicht geöffnet werden.

Das angegebene Land bestimmt die Regeln für die folgenden Standardformatierungseigenschaften von Datum und Zahlen:

•	Datumsformat

•	Dezimalzeichen und Gruppentrennzeichen

•	lokales Währungssymbol

•	ISO-Währungssymbol

•	Anfangstag der Woche

•	Haben- und Sollsymbol

•	ISO-Flag für Wochen

•	Trennzeichen für Listen

Wenn das Land z.B. auf Deutschland eingestellt ist, werden Zahlen mit einem Komma als Dezimalzeichen formatiert.


Unterstützte Sprachen

Abkürzung	Sprache
ar	Arabisch
eg	Ägyptisch
us	Amerikanisch
bn	Bengali
ptb	Brasilianisches Portugiesisch
bg	Bulgarisch
dk	Dänisch
d	Deutsch
din	Deutsch DIN
zhs	Einfaches Chinesisch
gb	Englisch
et	Estonisch
sf	Finnisch
f	Französisch
el	Griechisch
iw	Hebräisch
nl	Holländisch
in	Indonesisch
is	Isländisch
I	Italienisch
ja	Japanisch
frc	Kanadisches Französisch
ca	Katalanisch
ko	Koreanisch
hr	Kroatisch
esa	Lateinamerikanisches Spanisch
lv	Lettisch
lt	Litauisch
ms	Malayisch
esm	Mexikanisches Spanisch
n	Norwegisch
pl	Polnisch
pt	Portugiesisch
ro	Rumänisch
ru	Russisch
s	Schwedisch
sk	Slowakisch
sl	Slowenisch
e	Spanisch
th	Thai
zht	Traditionelles Chinesisch
cs	Tschechisch
tr	Türkisch
uk	Ukrainisch
hu	Ungarisch
vn	Vietnamesisch

Hinweis  Die Tatsache, daß eine bestimmte Sprache unterstützt wird, bedeutet nicht unbedingt, daß eine Übersetzung für diese Sprache verfügbar ist.


Unterstützte Länder

Ägypten	Jemen	Rumänien
Algerien	Jordanien	Saudi Arabien
Amerika	Kanada	Schweden
Bahrain	Katalonien	Schweiz
Bangladesh	Korea	Slowakien
Brasilien	Kroatien	Slowenien
Bulgarien	Kuwait	Somalia
China	Lettland	Spanien
CIS	Libanon	Sudan
Dänemark	Libyen	Syrien
Deutschland	Litauen	Taiwan
Djibouti	Malaysia	Thailand
Estonien	Marokko	Tschechische Republik
Finnland	Mauritanien	Tschechoslowakei
Frankreich	Mexiko	Tunesien
Griechenland	Niederlande	Türkei
Hong Kong	Norwegen	Ukraine
Irak	Oman	Ungarn
Island	Österreich	Vereinigte Arabische Emirate
Israel	Polen	Vereinigtes Königreich
Italien	Portugal	Vietnam
Japan	Qatar	Zypern


Bidirektionale Unterstützung in Forms Developer

  Verwandte Themen

Die NLS-Unterstützung für die Sprachen des Mittleren Ostens und Nordafrika umfassen die bidirektionale Unterstützung bei Sprachen, deren natürliche Schreibrichtung von rechts nach links geht.

Mit der bidirektionalen Unterstützung können Entwickler folgendes kontrollieren:

•	Layoutrichtung, einschließlich der Anzeige von Objekten mit Beschriftungen am rechten Rand des Objekts und der richtigen Position der Kontrollkästchen und Optionsschaltflächen.

•	Lesereihenfolge, die die Textrichtung von rechts nach links oder von links nach rechts umfaßt.

•	Ausrichtung, die das Wechseln des Ursprungs von der oberen linken zur unteren rechten Ecke umfaßt.

•	Anfänglicher Tastaturstatus, der automatisch bestimmt, ob lokale oder römische Zeichen erzeugt werden, wenn der Endbenutzer mit der Dateneingabe in Forms beginnt (der Endbenutzer kann diese Einstellung außer Kraft setzen).

Neben der Umgebungsvariablen NLS_LANG können bidirektionale Anwendungen zwei zusätzliche Umgebungsvariablen verwenden:

•	DEVELOPER_NLS_LANG

•	USER_NLS_LANG

Wenn Sie z.B. eine amerikanische Oberfläche bei der Entwicklung einer arabischen Anwendung in einer Windows-Umgebung verwenden möchten, stellen Sie diese Umgebungsvariablen wie folgt ein:

DEVELOPER_NLS_LANG=AMERICAN_AMERICA.AR8MSWIN1256
USER_NLS_LANG=ARABIC_territory.charset


Bidirektionale Unterstützung in Form Builder

  Verwandte Themen

Mit fünf Attributen wird das Erscheinungsbild von Objekten in bidirektionalen Anwendungen angegeben: Richtung, Ausrichtung, Lesereihenfolge, Tastaturstatus und Anfänglicher Tastaturstatus.

Richtung ist ein umfassendes Attribut, das für jedes Objekt so viel Funktionalität wie möglich bereitstellt. Bei allen Objekten, mit Ausnahme von Textobjekten und Anzeigeobjekten, ist das Attribut Richtung das einzige bidirektionale Attribut. Mit seiner Einstellung werden die anderen Aspekte der bidirektionalen Funktion bestimmt. (Listenobjekte umfassen hingegen die Attribute Anfänglicher Tastaturstatus und Tastaturstatus.)

Textobjekte und Anzeigeobjekte haben kein Attribut Richtung. Statt dessen können Sie die Attribute Ausrichtung, Lesereihenfolge, Anfänglicher Tastaturstatus und Tastaturstatus für diese Objekte speziell festlegen.

Sie können den Tastaturstatus auf eine Sprache beschränken. Wenn Sie z.B. Tastaturstatus auf Lokal einstellen, kann der Benutzer die Tastatur nicht zu einer anderen Sprache umschalten.

Wenn die bidirektionalen Attribute auf Standard gesetzt sind, übernehmen diese Attribute ihre Werte von der natürlichen Schreibrichtung, wie mit der Sprach-Umgebungsvariablen angegeben. In den meisten Fällen gewährleistet dies die gewünschte Funktionalität. Sie müssen die bidirektionalen Attribute nur angeben, wenn Sie die geerbten Standardwerte außer Kraft setzen möchten.

In der folgenden Darstellung wird die Vererbung bei bidirektionalen Attributen angegeben:

	Standardeinstellung leitet Wert von diesem Objekt ab
Form	Sprach-Umgebungsvariable
Alle Objekte, wie z.B. Warnfenster, Blöcke, Wertelisten, Fenster und Leinwandausschnitte	Form
Alle Objekte, wie z.B. Textobjekte, Anzeigeobjekte, Kontrollkästchen, Schaltflächen, Optionsgruppen und Listenobjekte	Leinwandausschnitt

Die meisten Attribute, die mit der bidirektionalen Funktion verbunden sind, können programmgesteuert abgerufen und eingestellt werden. Weitere Informationen finden Sie in der Beschreibung des entsprechenden vordefinierten Unterprogramms. Für Informationen über das Abrufen des Wertes des Attributs Richtung für Schaltflächen lesen Sie die Beschreibung von GET_ITEM_PROPERTY.


Bidirektionale Unterstützung in Report Builder

  Verwandte Themen

Mit vier Attributen wird das Erscheinungsbild von Objekten in bidirektionalen Anwendungen angegeben: Ausrichtung, Richtung (bei einem Objekt) und Richtung (bei dem Bericht). Die bidirektionalen Attribute werden in folgender Reihenfolge zu Objekten hinzugefügt:

Modul

Boilerplate

Feld

Externer Boilerplate

Schaltfläche

Parametermasken-Boilerplate

Objekte, die in dieser Liste nicht aufgeführt werden, erfordern entweder keine bidirektionale Unterstützung (z.B. Bilder) oder verwenden automatisch die Standardwerte von einem der obigen Objektattribute.


Unterstützung von Unicode in Forms Developer

  Verwandte Themen

Unicode ist ein globaler Zeichensatz, mit dem mehrsprachige Texte in einer einzigen Anwendung angezeigt werden können. Auf diese Weise können multinationale Unternehmen eine einzige mehrsprachige Anwendung erstellen und diese weltweit einsetzen.

Globale Märkte erfordern einen Zeichensatz, der

•	eine einzige Implementierung eines Produkts für alle Sprachen ermöglicht und dennoch so einfach ist, daß er überall implementiert werden kann.

•	alle wichtigen lebenden Skripts enthält.

•	mehrsprachige Benutzer und Unternehmen unterstützt.

•	den weltweiten Austausch von Daten über das Internet ermöglicht.

Forms Developer unterstützt Unicode. Wenn Sie Unicode verwenden, können Sie mehrere Sprachen in einer Anwendung anzeigen, sowohl Einfach-Byte-Sprachen wie die westeuropäischen, osteuropäischen, bidirektionalen Sprachen des Mittleren Ostens als auch asiatische Mehrfach-Byte-Sprachen wie Chinesisch, Japanisch und Koreanisch.

Durch die Benutzung eines einzigen Zeichensatzes, der alle Sprachen umfaßt, müssen keine weiteren Zeichensätze für verschiedene Sprachen eingesetzt werden.

Um z.B. eine Mehrfach-Byte-Sprache wie Japanisch anzuzeigen, muß die Umgebungsvariable NLS_LANG (bei Windows-Plattformen) folgendermaßen eingestellt werden:

Japan_Japanese.JA16SJIS

Um eine Einfach-Byte-Sprache wie Deutsch anzuzeigen, muß NLS_LANG (bei Windows-Plattformen) folgendermaßen eingestellt werden:

German_Germany.WE8ISO8859P1

Dieses Schema hat den eindeutigen Nachteil, daß Anwendungen nur Zeichen aus jeweils einem Zeichensatz anzeigen können. Daten mit gemischtsprachigen Zeichensätzen können nicht angezeigt werden.

Mit dem Unicode-Zeichensatz können Sie den Zeichensatzabschnitt von NLS_LANG auf UTF8 anstelle des spezifischen Länderzeichensatzes einstellen. Auf diese Weise können Zeichen aus verschiedenen Sprachen und Zeichensätzen gleichzeitig angezeigt werden.

Um z.B. Japanisch und Deutsch gemeinsam auf dem Bildschirm anzuzeigen, muß die Variable NLS_LANG wie folgt eingestellt werden:

Japanese_Japan.UTF8

oder

German_Germany.UTF8

Die Unicode-Funktionalität von Forms Developer gibt dem Anwendungsentwickler und dem Endbenutzer die Möglichkeit, mehrsprachigen Text in einer Form anzuzeigen. Dies umfaßt Text aus einer Datenbank, der Unicode enthält, mehrsprachigen Text, Text in GUI-Objekten (z.B. Beschriftungen von Schaltflächen), Texteingabe über die Tastatur und Text aus der Zwischenablage. Forms Developer unterstützt momentan Unicode auf Windows NT 4.0 und Windows 95/98 (begrenzte Unterstützung).

Hinweis  Wenn Sie Anwendungen für das Web entwickeln, können Sie Unicode verwenden, weil Java Unicode unterstützt.


Erwägungen im Zusammenhang mit der Konfiguration

  Verwandte Themen

UNIX-Server können mehrere ORACLE_HOMEs unterstützen (wobei ORACLE_HOME das Verzeichnis ist, das von und für die Oracle-Software erstellt wird) und können somit mehrere NLS-Einstellungen unterstützen. Dies bedeutet, daß ein einziger UNIX-Server mehrere Sprachen unterstützen kann.

Windows NT kann jedoch nur ein einziges ORACLE_HOME unterstützen und läßt somit nur eine einzige NLS-Einstellung zu. Dies bedeutet, daß Windows NT nur eine Sprache unterstützen kann.


Unterstützung von Unicode-Schriftarten

  Verwandte Themen

Um mehrsprachigen Unicode-Text anzuzeigen, muß eine Schriftart verwendet werden, die die Symbole oder Zeichen der anzuzeigenden Sprachen enthält. Bei Windows NT und Windows 95/98 müssen Sie entweder die von Microsoft bereitgestellten TrueType 'Big Fonts' verwenden oder eine Unicode-Schriftart von einem anderen Hersteller. Wenn Sie versuchen, mehrsprachigen Text einzugeben, anzuzeigen oder auszudrucken und unerwartete Zeichen sehen, benutzen Sie wahrscheinlich keinen Big Font. Die von Microsoft unter NT 4.0 bereitgestellten Big Fonts umfassen:

•	Arial

•	Courier New

•	Lucida Console

•	Lucida Sans Unicode

•	Times New Roman

Wenn die Big Fonts von Windows den Anforderungen nicht gerecht werden, kann auch eine Schriftart von einem anderen Hersteller benutzt werden.


Unicode-Unterstützung aktivieren

  Verwandte Themen

Um die Unicode-Unterstützung in Forms Developer zu aktivieren, stellen Sie NLS_LANG wie folgt ein:

NLS_LANG=language_territory.UTF8


Konvertierung zwischen Zeichensätzen

  Verwandte Themen

Wenn Sie mit der Entwicklung von Anwendungen zur Benutzung in mehreren Sprachen beginnen, müssen Sie die Zeichensätze berücksichtigen, die die Endbenutzer der Anwendung verwenden, sowie die Zeichensätze, die die Anwendungsentwickler benutzen. Während die Konvertierung auf Zeichensatzebene zur Laufzeit automatisch erfolgt, wirkt sich die Konvertierung doch auf die Leistung aus.

Wenn Sie z.B. eine Anwendung in einem Zeichensatz generieren und sie in einem anderen Zeichensatz ausführen, werden Sie möglicherweise eine Verminderung der Leistung feststellen. Wenn ein Zeichensatz kein Äquivalent für ein bestimmtes Zeichen enthält, zeigt er statt dessen ein Ersatzzeichen an, z.B. ein Fragezeichen (?). Auch wenn Sie keinen sichtbaren Unterschied feststellen, werden Sie als Entwickler aufgrund von Leistungsfragen auf die Zeichensätze achten, mit denen Sie Ihre Anwendung generieren.

Hinweis  Forms Developer konvertiert nur zwischen Zeichensätzen für dieselbe Sprache, z.B. AR8MSWIN und AR8ISO oder IW8MSWIN und IW8ISO.

Wenn Sie Anwendungen zur Ausführung in mehr als einer Sprache oder auch zur Ausführung in derselben Sprache mit verschiedenen Zeichensätzen entwickeln, werden Sie Ihre Generierungs-Umgebung der Laufzeitumgebung anpassen, um die optimale Leistung zu erzielen:

•	Bestimmen Sie den Zeichensatz, der zur Laufzeit am häufigsten benutzt wird.

•	Stellen Sie die Sprachumgebungsvariable für die Generierung auf diesen Zeichensatz ein.

Hinweis  Bei Form Builder wird der bei der Generierung benutzte Zeichensatz auch zur Laufzeit benutzt, unabhängig von dem in der Laufzeitumgebung angegebenen Zeichensatz.


Benutzeroberfläche von Forms Developer

  Verwandte Themen

Oracle benutzt eine einzige ausführbare Datei bei der Software-Internationalisierung. Dies bedeutet, daß Sie keine separate ausführbare Datei (z.B. f60des.exe) benötigen, um die europäischen Einfach-Byte-Sprachen oder die asiatischen Mehrfach-Byte-Sprachen zu verarbeiten. Dieselben Werkzeuge können benutzt werden, um englische und anderssprachige Anwendungen zu erstellen.

Hinweis  Forms Developer baut auf dem Microsoft Windows-Betriebssystem bezüglich Schriftart und Eingabemethode für die verschiedenen Sprachen auf. Um Text in einer beliebigen Sprache einzugeben und anzuzeigen, müssen Sie eine Windows-Version ausführen, die diese Sprache unterstützt (d.h. um Thai anzuzeigen, müssen Sie Thai Windows ausführen).

Bei der Installation von Forms Developer wählen Sie die Sprache für die zu installierenden Meldungsdateien. Wenn Sie eine Komponente von Forms Developer verwenden (z.B. Form Builder), wird die entsprechende Meldungsdatei basierend auf der Sprach-Umgebungsvariablen benutzt, um die Oberfläche anzuzeigen. Dies umfaßt:

•	Meldungen

•	Menüs und Menüoptionen

•	Dialogfelder

•	Eingabeaufforderungen und Hinweise

•	Warnfenster

Wenn Forms Developer keine Meldungsdatei findet, die der aktuellen Spracheinstellung entspricht, werden standardmäßig die amerikanischen Meldungsdateien verwendet.

Hinweis  Während der Installation können Sie neben Amerikanisch nur eine Sprache angeben, für die Meldungsdateien installiert werden sollen. Wenn Sie Forms Developer später mit einer anderen Sprache benutzen möchten, müssen Sie Forms Developer mit den entsprechenden Meldungsdateien neu installieren.

Die Namen der Meldungsdateien geben sowohl die Forms Developer-Komponente als auch die Sprache an, wobei folgende Regeln für die Dateibenennung verwendet werden:

<Produkt_ID><Sprach_ID>.MSB

Bei Form Builder gilt z.B.:

FMDUS.MSB enthält standardmäßige (amerikanische) Builder-Meldungen

FMGUS.MSB enthält standardmäßige (amerikanische) Generierungs-Meldungen

FMFUS.MSB enthält standardmäßige (amerikanische) Runform-Meldungen

FMFI.MSB enthält italienische Runform-Meldungen

FMFD.MSB enthält deutsche Runform-Meldungen

Weitere Informationen über die Installation von sprachabhängigen Meldungsdateien finden Sie in dem Installation and User Guide für Ihre Plattform.

Hinweis  Sprachergänzungen sind nicht aufwärtskompatibel. Sie gelten nur für die Version von Forms Developer, mit der sie ausgegeben werden. Wenn Sie schon Sprachergänzungen aus früheren Releases haben, müssen diese aus Ihrem System entfernt werden.


Daten mit CONVERT konvertieren

Mit der SQL-Funktion CONVERT können Sie Daten zwischen Zeichensätzen konvertieren. Diese Funktion konvertiert die Binärdarstellung einer Zeichenfolge in einem Zeichensatz in eine andere Darstellung. Weitere Informationen über die Konvertierung finden Sie unter Konvertierung zwischen Zeichensätzen.

Eine vollständige Beschreibung von CONVERT finden Sie in Oracle8 Server SQL Reference.


Standardformatmasken

  Beispiele	  Verwandte Themen

Die Sprach-Umgebungsvariable legt nicht nur die für die Forms Developer-Oberfläche benutzte Sprache (sowohl Builder als auch Runtime) fest, sondern auch die Gruppe von Standardformatmasken, die für die Anzeige von Daten benutzt werden, es sei denn, der Standard wird durch explizite Formatmasken außer Kraft gesetzt. Als Anwendungsentwickler verfügen Sie außerdem über zusätzliche NLS-bezogene Formatmaskenzeichen, die verfügbar sind, wenn Sie die Standardformatmasken außer Kraft setzen wollen.

Alle in Forms Developer oder die Anwendung eingegebenen Daten benutzen die Standardformatmasken, die mit dem jeweiligen Land verknüpft sind. Somit können Sie also die Sprache wechseln, wenn Sie eine Anwendung generieren und diese ausführen, ohne die Datums- und Zahlenformate ändern zu müssen.

Forms Developer benutzt die Standardformatmasken insbesondere:

•	im Builder: Wenn der Builder Standardwerte für Objekte, Bereiche oder Parameter anzeigt.

•	zur Laufzeit: Wenn ein Benutzer Daten in ein Textobjekt eingibt, dessen Typ länderspezifisch ist, wie z.B. DATE oder NUMBER.

Während Sie bei mehrsprachigen Anwendungen mit Datums- und Währungsfeldern arbeiten, sollten Sie folgendes berücksichtigen:

•	Möglicherweise sollten alle angezeigten Objekte (Boilerplate, Textobjekte, Oberflächenobjekte, wie z.B. Schaltflächen und Wertelisten) länger gemacht werden, um die Übersetzung von Text und sprachspezifische Regeln bei der numerischen Anzeige zu berücksichtigen.

•	Ferner müssen Sie beachten, ob NLS-bezogene Formatmaskenzeichen benutzt werden müssen, um spezielle Formatmasken zu erstellen, oder ob die von NLS_LANG aufgerufenen Standardformatmasken ausreichend sind.


Tip
Für eine implizite Konvertierung von Datentypen erwartet PL/SQL, daß die Objekte das amerikanische Standardformat aufweisen (wie z.B. DD-MON-YY). Wenn Sie also in PL/SQL ein Objekt benutzen, dessen Typ länderspezifisch ist, müssen Sie die richtigen Formatmasken angeben. Oracle empfiehlt, daß Sie länderspezifische Objekte mit TO_DATE in PL/SQL übersetzen.

IF :emp.hiredate < TO_DATE(’30-12-1996’,’DD-MM-YYYY’) THEN
   ...


Formatmaskenzeichen

  Beispiele	  Verwandte Themen

Mit den folgenden Formatmaskenzeichen können Sie die Standardformatmasken außer Kraft setzen.

Datums-Formatmaskenzeichen

Zeichen	Rückgabewert
D	Ziffer für den Tag (1-7)
DY	Name des Tages (abgekürzt)
DAY	Name des Tages (mit Leerstellen auf eine Länge von 9 Zeichen aufgefüllt)
WW	Ziffer für die Woche, berechnet mit dem Algorithmus int((day-jan1)/7)
IW	Ziffer der ISO-Woche
MON	Name des Monats (abgekürzt)
MONTH	Name des Monats (mit Leerzeichen auf eine Länge von 9 Zeichen aufgefüllt)
RM	Zeichen für den römischen Monat
I,IY,IYY,IYYYY	Das letzte bzw. die zwei oder drei letzten Ziffern des ISO-Jahres bzw. das ISO-Jahr
BC,AD,B.C.,A.D.	BC- oder AD-Indikator (mit oder ohne Punkte)
AM,PM,A.M.,P.M.	AM- oder PM-Indikator (mit oder ohne Punkt)
Weitere Informationen über ISO und die zugehörigen Datumsformatmasken finden Sie in Oracle Server SQL Reference.

Zahlen-Formatmaskenzeichen

Zeichen	Rückgabewert
C	Internationales Währungssymbol
L	Lokales Währungssymbol
D	Dezimalzeichen
G	Gruppen- (Tausender-) Trennzeichen


Zeichendaten sortieren

  Einschränkungen	  Beispiele	  Verwandte Themen

Wenn Daten sortiert werden, basiert die Sortierfolge konventionell auf den numerischen Werten der Zeichen, wie mit dem Zeichencodierungsschema definiert. Ein derartiger Sortierenvorgang wird als binäres Sortieren bezeichnet und erzeugt vernünftige Ergebnisse für das englische Alphabet, da die ASCII- und EBCDIC-Standards die Buchstaben A bis Z in aufsteigender numerischer Folge definieren.  Hinweis

Wenn jedoch Zeichen vorhanden sind, die in anderen Sprachen benutzt werden, erzeugt ein binärer Sortierenvorgang im allgemeinen keine vernünftigen Ergebnisse. Eine aufsteigende ORDER BY-Abfrage würde z.B. die Zeichenfolgen ABC, ABZ, BCD, ÄBC in dieser Reihenfolge zurückgeben, wobei das Ä einen höheren numerischen Wert als B im Zeichencodierungsschema hat.

Um eine Sortierfolge zu erzeugen, die der alphabetischen Folge der Zeichen bei einer bestimmten Sprache entspricht, muß eine andere Sortierentechnik verwendet werden, die die Zeichen unabhängig von ihren numerischen Werten im Zeichencodierungsschema sortiert. Diese Technik wird als linguistisches Sortieren bezeichnet. Bei einem linguistischen Sortierenvorgang werden Zeichen durch andere Binärwerte ersetzt, die der richtigen linguistischen Folge des Zeichens entsprechen, so daß ein binärer Sortierenvorgang das gewünschte Ergebnis zurückgibt.

Linguistische Sonderfälle  Linguistische Sonderfälle sind Zeichenfolgen, die beim Sortieren als ein einziges Zeichen behandelt werden müssen. Derartige Sonderfälle werden automatisch berücksichtigt, wenn ein linguistischer Sortierenvorgang benutzt wird. Eine der linguistischen Sortierfolgen für Spanisch gibt z.B. an, daß die doppelten Zeichen ch und ll als einfache Zeichen zwischen C und D bzw. zwischen L und M sortiert werden.

Ein weiteres Beispiel ist das scharfe s (ß) im Deutschen. Bei der linguistischen Sortierfolge für Deutsch kann diese Folge als die beiden Zeichen SS sortiert werden, während die amerikanische linguistische Sortierfolge das Zeichen als SZ sortiert.

Sonderfälle wie diese werden ebenfalls behandelt, wenn Großbuchstaben in Kleinbuchstaben konvertiert werden und umgekehrt. Im Deutschen wird z.B. das scharfe s in Großbuchstaben mit SS geschrieben. Derartige Fälle der Konvertierung der Schreibweise werden von den Funktionen NLS_UPPER, NLS_LOWER und NLS_INITCAP behandelt, entsprechend den Konventionen, die von der linguistischen Sortierfolge festgelegt werden. (Die Standardfunktionen UPPER, LOWER und INITCAP können diese Sonderfälle nicht verarbeiten.)

NLSSORT-Funktion  Sie können die SQL-Funktion NLSSORT benutzen, um Zeichendaten zu sortieren. Diese Funktion ersetzt eine Zeichenfolge durch die entsprechende Sortierfolge, die von dem Sortiermechanismus benutzt wird. Bei einem binären Sortierenvorgang ist die Sortierfolge identisch mit der Eingabefolge. Wenn ein linguistischer Sortierenvorgang benutzt wird, gibt NLSSORT die Binärwerte zurück, durch die die Originalfolge ersetzt wird.


Hinweis
In ASCII-Standard stehen alle Großbuchstaben vor Kleinbuchstaben. Beim EBCDIC-Standard ist das Gegenteil der Fall, alle Kleinbuchstaben stehen vor den Großbuchstaben.


Einschränkungen beim linguistischen Sortieren

  Verwandte Themen

Bei Mehrfach-Byte-Zeichensätzen wird das linguistische Sortieren nicht unterstützt.


Zeichenfolgen in einer WHERE-Klausel vergleichen

  Beispiele	  Verwandte Themen

Zeichenfolgen in einer WHERE-Klausel werden mit den Binärwerten der Zeichen verglichen: Ein Zeichen ist 'größer als' ein anderes Zeichen, wenn es einen höheren Binärwert in dem Zeichensatz der Datenbank hat. Da die Folge von Zeichen aufgrund der Binärwerte möglicherweise nicht der alphabetischen Folge für eine Sprache entspricht, werden die Vergleiche den alphabetischen Regeln häufig nicht gerecht. Benutzen Sie die Funktion NLSSORT, um einen linguistischen Sortierenvorgang anstelle eines binären Sortierenvorgangs vorzunehmen.


ORDER BY-Klausel kontrollieren

  Verwandte Themen

Wenn eine linguistische Sortierfolge benutzt wird, wird NLSSORT implizit für jedes Zeichenobjekt in der ORDER BY-Klausel verwendet. Somit ist der für eine ORDER BY-Klausel benutzte Sortiermechanismus (linguistisch oder binär) für die Anwendung transparent.

Wenn jedoch die Funktion NLSSORT explizit für ein Zeichenobjekt in einer ORDER BY-Klausel angegeben wird, wird die implizite NLSSORT-Funktion nicht ausgeführt. Anders ausgedrückt, der linguistische NLSSORT-Ersetzenvorgang erfolgt nur einmal und nicht zweimal.

Die Funktion NLSSORT ist im allgemeinen in einer ORDER BY-Klausel nicht erforderlich, wenn standardmäßig ein linguistischer Sortierenvorgang erfolgt. Wenn jedoch standardmäßig eine binäre Sortierung durchgeführt wird, benutzt eine Abfrage wie

SELECT ENAME FROM EMP

ORDER BY ENAME

einen binären Sortierenvorgang. Ein linguistischer Sortierenvorgang (im folgenden Beispiel für Deutsch) kann wie folgt erhalten werden:

SELECT ENAME FROM EMP

ORDER BY NLSSORT(ENAME, ’NLS_SORT = GERMAN’)


ALTER SESSION benutzen

  Beispiele	  Verwandte Themen

Mit dem SQL-Befehl ALTER SESSION können Sie die NLS-Standardwerte außer Kraft setzen. Angenommen, Sie erstellen einige Parameter (wie z.B. Sprache, Land usw.), und ein Benutzer gibt Werte für diese Parameter an. In diesem Fall könnten Sie die Sitzung ändern, sobald diese Werte angegeben werden.

Hinweis  Zur Laufzeit führt der Server einen Befehl ALTER SESSION für den Client aufgrund der Werte aus, die in NLS_LANG angegeben sind. Wenn NLS_LANG nicht definiert ist, wird die Anweisung ALTER SESSION nicht ausgeführt.

In Form Builder können Sie jeden der folgenden NLS-Parameter für den Befehl ALTER SESSION angeben. Bei Report Builder und Graphics Builder können Sie jedoch nur den Parameter NLS_SORT angeben.

Parameter	Beschreibung
NLS_LANGUAGE	Vom Server zur Rückgabe von Meldungen und Fehlern benutzte Sprache
NLS_TERRITORY	Land für die Standard-Datums- und Währungsmasken
NLS_DATE_FORMAT	Standardformat für Datumsangaben
NLS_DATE_LANGUAGE	Standardsprache für Datumsangaben
NLS_NUMERIC_CHARACTERS	Dezimalzeichen und Gruppentrennzeichen
NLS_ISO_CURRENCY	Internationales ISO-Währungssymbol
NLS_CURRENCY	Lokales Währungssymbol
NLS_SORT	Zeichensortierfolge
NLS_CALENDAR	Aktuelles Kalendersystem

Weitere Einzelheiten über diese Parameter finden Sie in Oracle8 SQL Reference.


NLS-Parameter in SQL-Funktionen verwenden

  Verwandte Themen

Wo immer Sie SQL verwenden, können Sie das NLS-Standardverhalten mit den folgenden NLS-Parametern außerKraft setzen.

SQL-Funktion	NLS-Parameter
TO_DATE	NLS_DATE_LANGUAGE NLS_CALENDAR
TO_NUMBER	NLS_NUMERIC_CHARACTERS NLS_CURRENCY NLS_ISO_CURRENCY
TO_CHAR	NLS_DATE_LANGUAGE NLS_NUMERIC_CHARACTERS NLS_CURRENCY NLS_ISO_CURRENCY NLS_CALENDAR
NLS_UPPER	NLS_SORT
NLS_LOWER	NLS_SORT
NLS_INITCAP	NLS_SORT
NLSSORT	NLS_SORT

Weitere Einzelheiten über diese Parameter finden Sie in Oracle8 SQL Reference.


NLS-Parameter von Form Builder

  Verwandte Themen

Mit den vordefinierten Funktionen von Form Builder können Sie den aktuellen Wert der NLS-Umgebungsvariablen zur Benutzung in PL/SQL-Code abrufen:

	DEVELOPER_NLS_LANG	USER_NLS_LANG
Vordefinierte Prozedur	GET_FORM_PROPERTY	GET_APPLICATION_PROPERTY
Parameter	MODULE_NLS_LANG	USER_NLS_LANG

Da sowohl USER_NLS_LANG als auch DEVELOPER_NLS_LANG standardmäßig den Wert von NLS_LANG verwenden, enthalten die NLS-Parameter von Form Builder den Wert von NLS_LANG, wenn nicht ausdrücklich eine der Variablen gesetzt ist.

Beide NLS-Parameter von Form Builder haben vier Varianten, damit Sie entweder die vollständige Umgebungsvariable oder einen bestimmten Teil der Variablen abrufen können. In der folgenden Tabelle werden die vier Parameter der vordefinierten Prozedur GET_APPLICATION_PROPERTY dargestellt, die die Umgebungsvariable USER_NLS_LANG zurückgibt:

Parameter	Rückgabewert
USER_NLS_LANG	Ganze Variable USER_NLS_LANG
USER_NLS_LANGUAGE	Nur Sprachteil
USER_NLS_TERRITORY	Nur Landesteil
USER_NLS_CHARACTER_SET	Nur Zeichensatzteil

Um die Umgebungsvariable DEVELOPER_NLS_LANG abzurufen, rufen Sie GET_FORM_PROPERTY mit dem Parameter MODULE_NLS_LANG auf.


Druckerdefinitionsdateien und National Language Support

  Verwandte Themen

Wenn Sie Berichte im Zeichenmodus benutzen, sollten Sie die Breite der physikalischen Seite eines Berichts mit einem Zeichen weniger als die Seitenbreite angeben, die in der Druckerdefinitionsdatei definiert ist (.PRT-Datei). Sonst könnten Mehrfach-Byte-Zeichen mit dem letzten Zeichen einer Zeile beginnen und einen Umbruch zur nächsten Zeile vornehmen, um den Vorgang abzuschließen. Wenn die Breite der physikalischen Seite z.B. 80 Zeichen beträgt und die Breite in der Druckerdefinitionsdatei ebenfalls 80 Zeichen beträgt, könnte ein Mehrfach-Byte-Zeichen bei dem 80. Zeichen beginnen. Da Mehrfach-Byte-Zeichen nicht getrennt werden können, müßte bei dem 81. Zeichen ein Überlauf der Zeile erfolgen, um das Mehrfach-Byte-Zeichen zu vervollständigen. Um dies zu vermeiden, sollte die Breite der physikalischen Seite für den Bericht auf 79 eingestellt werden.

In der Druckerdefinitionsdatei können die folgenden für Arabisch und Hebräisch spezifischen NLS-Parameter eingestellt werden:

Benutzung:	Zweck:	Werte:
nls locale	Einstellung der lokalen Variablen der Druck-Engine	Hebräisch oder Arabisch
nls datastorageorder	Einstellung der logischen oder visuellen Datenspeicherung	Logisch oder Visuell
nls contextuallayout	Durchführung eines Prä-Kontext-Layouts bei arabischen Druckern	Nein oder Ja
nls contextualshaping	Durchführung einer Prä-Kontext-Gestaltung bei arabischen Druckern	Nein oder Ja
nls pcharset	Angabe des Zeichensatzes für den Drucker	Beliebiger Zeichensatz

Weitere Informationen über Druckerdefinitionsdateien finden Sie im Hilfesystem zu Report Builder.


Anwendungen übersetzen

  Verwandte Themen

Alle Fehlermeldungen und der gesamte Boilerplate-Text sollten in derselben Sprache angezeigt werden. Wenn Sie eine Anwendung ausführen, zeigt der Endbenutzer Meldungen und Boilerplate-Text aus drei verschiedenen Quellen an:

•	Fehlermeldungen aus dem Server

•	von Forms Developer erzeugte Laufzeit-Fehlermeldungen

•	als Bestandteil der Anwendung definierte Meldungen und Boilerplate-Text

Der National Language Support von Oracle übernimmt die Übersetzung der beiden ersten Quellen. Sie als Anwendungsentwickler sind für die Übersetzung der Meldungen und des Boilerplate-Texts bei der dritten Quelle verantwortlich.

Im allgemeinen gibt es zwei Arten von anwendungsspezifischen Texten, die Sie übersetzen müssen:

•	übersetzbarer Text, wie z.B. Menüs, Boilerplate-Text, Objektbeschriftungen, Meldungen und Hinweise

•	Zeichenfolgen in Triggern und Prozeduren, einschließlich Warnfenstern und Meldungen, die in Triggern definiert sind

Translation Builder hilft Ihnen bei der Übersetzung von 'übersetzbaren Textflgen' in der Benutzeroberfläche in mehrere Sprachen. Translation Builder unterstützt Sie bei der Übersetzung von nahezu allen mehrsprachigen Anwendungen von Forms Developer, indem separate Binärdateien für jede Sprache generiert werden.

Translation Builder hilft Ihnen zwar dabei, Zeichenfolgen in der Benutzeroberfläche zu suchen und zu übersetzen, kann jedoch nicht alle Zeichenfolgenkonstanten in PL/SQL-Triggern und -Prozeduren extrahieren. Konstanten-Text innerhalb von PL/SQL-Blöcken muß manuell übersetzt werden, da dieser Text nicht eindeutig begrenzt ist und häufig aus Variablen und Teilen von Zeichenfolgen besteht.

Eine vollständige Beschreibung von Translation Builder finden Sie in dem Hilfesystem zu Translation Builder.


Erwägungen im Zusammenhang mit dem Entwurf

  Verwandte Themen

Beim Entwurf einer Anwendung, die übersetzt wird, sollten Sie zusätzlichen Platz für Widgets und Boilerplate-Beschriftungen lassen. Um mehrere Zeichensätze zuzulassen und die durch die Übersetzung verursachte Erweiterung zu berücksichtigen, lassen Sie generell 30% Platz um Felder, Umrandungen und Boilerplate-Text frei.

Zum Beispiel:

Prompt auf der linken Seite des Feldes	Lassen Sie 30% Platz links neben dem Prompt frei.
Prompt über dem Feld	Lassen Sie 30% Platz rechts neben dem Prompt frei.
Schaltflächen, Kontrollkästchen, Optionsgruppen und Popup-Listen	Lassen Sie 30% zusätzlichen Platz frei.
Titel	Gestalten Sie die Größe von Umrandungen so, daß der Titel um 30% nach rechts erweitert werden kann.
Nur-Anzeige-Felder	Machen Sie die Größe 30% breiter als in der Ausgangssprache.
Alle Widgets	Machen Sie die Widgets groß genug für eine Übersetzung. So müssen z.B. Schaltflächen groß genug zur Aufnahme der übersetzten Beschriftungen sein. Überprüfen Sie Höhe und Länge der Schaltfläche, damit das höchste benutzte Zeichen aufgenommen werden kann. Berechnen Sie z.B. die Pixel, die zur Darstellung von Kanji-Zeichen erforderlich sind.


Translation Builder-Lösung benutzen

  Verwandte Themen

Sie können Translation Builder benutzen, um nahezu alle mehrsprachigen Anwendungen von Forms Developer zu übersetzen. Wenn die Endbenutzer bei einer Anwendung zur Laufzeit nicht zwischen den Sprachen umschalten müssen, können Sie Translation Builder benutzen und dann separate Binärdateien für jede Sprache generieren.

Wenn die Endbenutzer zur Laufzeit von einer Sprache zu einer anderen wechseln müssen, beenden die Benutzer die Anwendung, ändern die Sprachumgebungsvariable und starten die Anwendung neu.

Mit der Translation Builder-Lösung würden Sie Ihre Anwendung in folgenden Schritten entwickeln:

•	Erstellen einer grundlegenden Anwendungsdefinition (z.B. .FMB, .RDF) in der Quellsprache.

•	Benutzung von Translation Builder, um Zeichenfolgen zur Übersetzung zu extrahieren, die Übersetzung in eine oder mehrere Sprachen durchzuführen und die Zeichenfolgen dann wieder in die Anwendungsdefinition zurückzuspeichern.

•	Manuelles Übersetzen von Standardmeldungen in PL/SQL-Bibliotheken.

•	Benutzung des Generators, um eine Binärversion der Anwendung für jede Zielsprache zu generieren.

Vorteile  Dies ist der einfachste Weg zur schnellen Implementierung von mehrsprachigen Anwendungen. Mit dieser Lösung können Sie Translation Builder im Hinblick auf optimale Leistung einsetzen. Bei einer stabilen Anwendung kann diese Lösung problemlos benutzt werden.

Wenn Sie z.B. eine Anwendung in vier Sprachen erstellt haben und dann den Text einer Feldbeschriftung ändern müssen, würden Sie die Änderung im Builder vornehmen, die Änderung dann in der Definitionsdatei speichern, die neue Feldbeschriftung mit Translation Builder übersetzen und die neuen Meldungen dann in die Definitionsdatei einfügen und neu generieren, um eine Binärdatei mit der neuen Beschriftung zu erstellen.

Nachteile  Wenn Ihre Anwendungen mehrere Sprachen gleichzeitig unterstützen müssen, müssen Sie statt dessen zur Laufzeit zwischen den Sprachen wechseln.


Zur Laufzeit zwischen den Sprachen wechseln

  Verwandte Themen

Eine kleine Anzahl von Anwendungen muß mehrere Sprachen gleichzeitig unterstützen. Möglicherweise zeigt eine Anwendung als erstes ein Fenster in der englischen Sprache an, das während der ganzen Anwendung angezeigt bleibt, während ein Endbenutzer auf eine Schaltfläche in diesem Fenster klicken kann, um die Prompts in Deutsch anzuzeigen und dann wieder in Englisch.

Wenn bei Ihrer Anwendung zur Laufzeit zwischen den Sprachen gewechselt werden muß, können Sie mehr als eine Sprache in einer einzigen Anwendung aufnehmen, vorausgesetzt, die Sprachen benutzen denselben Zeichensatz. Allerdings können Sie den übersetzbaren Text nicht mit Translation Builder suchen, wenn Sie den Text dynamisch zur Laufzeit auffüllen. Statt dessen erstellen Sie Strukturen wie (IF...THEN...ELSIF), um die Anwendung in eine andere Sprache umzuschalten, indem Sie den Wert der NLS-Umgebungsvariablen mit der vordefinierten Prozedur GET_FORM_PROPERTY überprüfen.

Wenn Sie zur Laufzeit zwischen den Sprachen wechseln, würden Sie Ihre Anwendungen wie folgt entwickeln:

•	Entwicklung der ganzen Anwendung für eine Sprache, einschließlich Bibliotheken.

•	Manuelle Übersetzung jeder Bibliothek.

•	Entwurf von Boilerplate-Beschriftungen in Form von entsprechend skalierten Anzeigeobjekten, die dynamisch zur Laufzeit aufgefüllt werden.

Form Builder unterstützt die Zuordnung mehrerer Bibliotheken, so daß Sie eine Bibliothek speziell für Meldungen benutzen können, die übersetzt werden, und die andere Bibliothek für andere Zwecke.

Vorteile  Der Hauptvorteil dieser Lösung besteht darin, daß Sie hochentwickelte Anwendungen unterstützen können, bei denen die Forms hochdynamisch sein können. In diesen Fällen umgeht diese Lösung einige Wartungsprobleme, weil Sie keine separaten Dateien für jede Sprache generieren müssen, sobald sich die Form ändert.

Nachteile  Diese Lösung ist komplizierter, weil sie einen beträchtlichen Aufwand für das Erstellen des sprachspezifischen Meldungsspeichers, für das Auffüllen und Verwalten der Daten und für die manuelle Übersetzung erfordert. So würden Sie z.B. einen WHEN-NEW-FORM-INSTANCE-Trigger einrichten, mit dem Sie die Beschriftungen für jede Schaltfläche festlegen, wobei die korrekten Beschriftungen aus einer zugeordneten Bibliothek basierend auf dem Wert der NLS-Variablen abgerufen werden.


PL/SQL-Bibliotheken für Zeichenfolgen in Code benutzen

  Beispiele	  Verwandte Themen

Während Translation Builder den Benutzer bei der Übersetzung von Meldungen unterstützt, die Bestandteil der standardmäßigen Builder-Oberfläche sind, erfordern Meldungen, die programmgesteuert angezeigt werden, eine besondere Behandlung. Sie können die PL/SQL-Bibliotheken benutzen, um eine flexible Meldungsstruktur für Meldungen in Triggern oder Prozeduren zu integrieren.

Bei anwendungsspezifischen Meldungen – Meldungen, die programmgesteuert über die vordefinierten Routinen MESSAGE oder CHANGE_ALERT_MESSAGE oder durch Zuweisung einer Meldung an ein Anzeigeobjekt aus einem Trigger oder einer Prozedur auf dem Bildschirm angezeigt werden – können Sie die PL/SQL-Bibliotheken, die zugeordnet werden können, zur Implementierung einer flexiblen Meldungsfunktion verwenden. Die Bibliothek kann auf dem Host gespeichert und dann dynamisch zur Laufzeit zugeordnet werden. Zur Laufzeit können Sie basierend auf dem Suchpfad dann die der Form zugeordnete Bibliothek abrufen. (Eine Bibliothek könnte z.B. nur die italienischen Meldungen enthalten.)


Beispiele für National Language Support

  Verwandte Themen 	  Alle Beispiele

Beispiele für das Vergleichen von Zeichenfolgen

Beispiele für Formatmasken

Beispiele für NLS_LANG

Beispiele für PL/SQL-Bibliotheken


Beispiele für ALTER SESSION

  Verwandte Themen

Die folgende Anweisung ändert das Dezimalzeichen in ein Komma und das Tausendertrennzeichen in einen Punkt:

ALTER SESSION
   SET NLS_NUMERIC_CHARACTERS = ',.'

Diese neuen Zeichen werden zurückgegeben, wenn Sie deren Zahlenformatelemente D und G verwenden:

SELECT TO_CHAR(SUM(sal), 'L999G999D99') Total FROM emp

TOTAL
--------------
   FF29.025,00

Die nächste Anweisung ändert das ISO-Währungssymbol in das ISO-Währungssymbol für Amerika:

ALTER SESSION
   SET NLS_ISO_CURRENCY = America

Das für Amerika definierte ISO-Währungssymbol wird benutzt:

SELECT TO_CHAR(SUM(sal), 'C999G999D99') Total FROM emp

TOTAL
---------------
   USD29.025,00

Die nächste Anweisung ändert das lokale Währungssymbol in DM:

ALTER SESSION
   NLS_CURRENCY = 'DM'

Das neue lokale Währungssymbol wird zurückgegeben, wenn Sie das Zahlenformatelement L verwenden:

SELECT TO_CHAR(SUM(sal), 'L999G999D99') Total FROM emp

TOTAL
--------------
   DM29.025,00


Beispiele für das Vergleichen von Zeichenfolgen

  Verwandte Themen 	  Alle Beispiele

Angenommen, eine Spalte (COL1) enthält die Werte ABC, ABZ, BCD und ÄBC in dem ISO 8859/1 8-Bit-Zeichensatz. Außerdem wird davon ausgegangen, daß Sie die folgende Abfrage geschrieben haben:

SELECT COL1 FROM TAB1 WHERE COL1 > 'B'

Die Abfrage würde sowohl BCD als auch ÄBC zurückgeben, da Ä einen höheren numerischen Wert hat als B.

Sie können linguistische Vergleiche mit NLSSORT in der WHERE-Klausel wie folgt vornehmen:

WHERE NLSSORT(column) operator NLSSORT(string)

Beachten Sie, daß NLSSORT auf beiden Seiten des Vergleichsoperators benutzt werden muß.

SELECT COL1 FROM TAB1 WHERE NLSSORT(COL1) > NLSSORT('B')

Wenn eine deutschsprachige Sortierung vorgenommen wird, gibt diese Anweisung keine Folgen zurück, die mit Ä beginnen, da Ä im deutschen Alphabet vor B steht. Wenn nach der schwedischen Sprache sortiert würde, würden diese Folgen zurückgegeben, da Ä im schwedischen Alphabet hinter Z steht.


Beispiele für Formatmasken

  Verwandte Themen 	  Alle Beispiele

Bei NLS-konformen Anwendungen sollten Sie eine Zeichenfolge, die einen Monatsnamen enthält, nicht fest codieren. Wenn jedoch ein fest codierter Monatsname wichtig ist, sollten Sie die vordefinierte Prozedur COPY nicht benutzen. Wenn Sie COPY verwenden, ist der Monatsname möglicherweise falsch, je nachdem, welche Sprache angegeben ist. (Um ein Datum in einer Bibliothek anzugeben, benutzen Sie eine Variable für das Datum, und COPY kann einwandfrei benutzt werden.)

Sprachabhängiges Beispiel (nicht empfohlen):

:emp.hiredate := '30-DEC-96';

copy ('30-DEC-96','emp.hiredate');

Statt dessen verwenden Sie TO_DATE, wie im folgenden Beispiel dargestellt.

Sprachunabhängiges Beispiel (empfohlen):

:emp.hiredate := to_date(’30-12-1996’,’DD-MM-YYYY’);


Beispiele für NLS_LANG

  Verwandte Themen 	  Alle Beispiele

Angenommen, Ihre Anwendung soll in Französisch ausgeführt werden. Die Anwendung wird in Frankreich benutzt, und die Daten werden mit dem Zeichensatz WE8ISO8895P1 angezeigt. In diesem Fall würden Sie NLS_LANG folgendermaßen einstellen:

NLS_LANG=French_France.WE8ISO8895P1

Nun soll Ihre Anwendung zwar weiter in Französisch ausgeführt werden, dieses Mal wird sie jedoch in der Französischen Schweiz benutzt. In diesem Fall würden Sie NLS_LANG wie folgt einstellen:

NLS_LANG=French_Switzerland.WE8ISO8895P1

Weitere Beispiele:

NLS_LANG=Norwegian_Norway.NDK7DEC
NLS_LANG=Norwegian_Norway.WE8ISO8895P1
NLS_LANG=Japanese_Japan.JA16SJIS
NLS_LANG=Arabic_Egypt.AR8MSWIN1256
NLS_LANG=American_America.AR8MSWIN1256
NLS_LANG=American_America.WE8ISO8859P1


Beispiele für PL/SQL-Bibliotheken

  Verwandte Themen 	  Alle Beispiele

FUNCTION nls_appl_mesg(index_no NUMBER)

RETURN CHAR

IS

   msg CHAR(80);

BEGIN

   IF index_no = 1001 THEN

      msg := 'L''impiegato che Voi cercate non esiste...';

   ELSIF index_no = 1002 THEN

      msg := 'Lo stipendio non puo essere minore di zero.';

   ELSIF ...

   :

   ELSE

      msg := 'ERRORE: Indice messaggio inesistente.';

   END IF;

   RETURN msg;

END;

Eine Routine wie diese könnte überall dort benutzt werden, wo normalerweise ein Zeichenausdruck gültig ist; um z.B. eine Warnmeldung mit der entsprechend übersetzten Anwendungsmeldung anzuzeigen, könnten Sie folgenden Code in Ihrer Form aufnehmen:

Change_Alert_Message('My_Error_Alert', nls_appl_mesg(1001));

n := Show_Alert('My_Error_Alert');

Um die Anwendung in einer anderen Sprache anzuzeigen, ersetzen Sie einfach die PL/SQL-Bibliothek, die die Funktion nls_appl_mesg enthält, durch eine Bibliothek desselben Namens, die die Funktion nls_appl_mesg mit übersetztem Text enthält.

Wenn die Anwendung mehrere Sprachen gleichzeitig unterstützen soll, könnte die obige Funktion einen zusätzlichen Parameter akzeptieren, mit dem die gewünschte Sprache angegeben wird, und der Code würde eine zusätzliche Ebene von IF...THEN...ELSIF...ELSE...END IF enthalten, um die verschiedenen Sprachen zu berücksichtigen.


Hilfethema nicht gefunden. Prüfen Sie, ob die Online-Hilfe verwandte Themen enthält.


Beispiele für Oracle8-Objekte

  Verwandte Themen 	   Alle Beispiele

Objekttyp

Tabellentyp

Variierender Array-Typ

Spaltenobjekt

Objekttabelle

Objektansicht


Unterstützung von Oracle8-Server

  Verwandte Themen

Oracle8 Server stellt eine Reihe von neuen Funktionen bereit. Im allgemeinen fallen diese Funktionen in folgende Kategorien:

•	Größere Skalierbarkeit. Oracle8-Datenbanken können z.B. Datenmengen in Terabyte-Größenordnungen enthalten und unterstützen den gleichzeitigen Zugriff durch maximal 10000 Benutzer. Die Tabellen selbst können jetzt bis zu 1000 Spalten enthalten. Die Datentypen CHAR und VARCHAR2 können jetzt maximal 2000 bzw. 4000 Byte umfassen.

•	Größere Leistung und Effizienz. Die Benutzung dieser Oracle8-Funktionen erfolgt automatisch und erfordert kein Eingreifen Ihrerseits. Sie profitieren automatisch von der Geschwindigkeit und Verläßlichkeit, die sich durch die Speicherung von Daten im Oracle8-Server ergibt.

•	Große Objekte (werden gelegentlich als LOBs bezeichnet).

•	Benutzerdefinierte Objekte.

Weitere Unterstützung von Oracle7

Die Funktione von Oracle7-Server (Release 7.3.4 und höher) werden weiter unterstützt.


Unterstützte Oracle8-Datentypen

  Verwandte Themen

Dieses Release unterstützt weiterhin die folgenden Oracle8-Datentypen:

Große Objekte (LOBs)

In Oracle8 können Programmierer große Objekte definieren, die häufig als LOBs bezeichnet werden. In diesen Objekten können Text, Bilder, Klang oder Video gespeichert werden.

Dieses Release unterstützt momentan die folgenden LOB-Datentypen von Oracle8:

•	BLOB (für Binary Large Object)

•	CLOB (für Character Large Object - Einfachbyte)

•	BFILE (für Binary File) (wird gelegentlich als externe Datei bezeichnet).

Benutzerdefinierte Objekte

In Oracle8 können Programmierer Objekttypen (die auch als benutzerdefinierte Typen bezeichnet werden) definieren, bei denen es sich um zusammengesetzte Objekte handelt, basierend auf den bestehenden Einfachelement-Datentypen, die von Oracle8 unterstützt werden. Anhand dieser Objektdefinitionen können Programmierer dann verschiedene Arten von Tabellen erstellen.

Folgende Typen von Oracle8-Objekten werden momentan unterstützt:

•	Objekttabellen, wobei die ganzen Tabellen auf einem einzelnen Objekttyp basieren.

•	Spaltenobjekte in einer relationalen Tabelle, wobei diese Spalten auf einem Objekttyp basieren.

•	REF-Spalten in einer Objekt- oder relationalen Tabelle, wobei die Werte dieser Spalten Pointer auf Zeilen in einer anderen Objekttabelle sind.

Neue skalare Datentypen

Dieses Release unterstützt auch den neuen Oracle8-Datentyp FLOAT. Es ordnet diesen Datentyp seinem eigenen Datentyp NUMBER zu.


Über LOBs von Oracle8

Sie können auf LOB-Datentypen von Oracle8 zugreifen: BLOBs (Binary Large Objects); CLOBs (Character Large Objects) und BFILEs (Binary Files).

Auf einem Oracle8 Server können diese Datentypen Objekte mit maximal 4 GB speichern. Ihr Verwendungszweck entspricht den bekannten Datentypen LONG und LONG RAW von Oracle7, sie bieten allerdings eine Reihe zusätzlicher Vorteile.

Vergleich von LOBs und LONGs

LOBs	LONGs
Maximal 4 GB	Maximal 2 GB
Mehrere LOB-Spalten in einer einzigen Tabelle	Nur eine LONG-Spalte pro Tabelle
Replizierung unterstützt	Keine Replizierung
Wahlfreier Datenzugriff unterstützt	Nur sequentieller Zugriff unterstützt
Bessere Verwaltung des Tabellenspeicher-platzes (nur der LOB-Positionsanzeiger wird gespeichert)	Weniger effizient (Daten werden direkt in Tabellen gespeichert)
In benutzerdefinierten Objekttypen zulässig	Nicht zulässig
Können einfach an Prozeduren und externe Aufrufe übergeben werden	Keine einfache Übergabe
LOBs im Detail:

Mit BLOBs werden große Objekte im Binärformat gespeichert. Mit CLOBs werden Zeichendaten gespeichert. Diese beiden Typen sind auch als interne LOBs bekannt, da ihre Daten innerhalb des Servers gespeichert werden. Die Daten nehmen an Transaktionen und der Integritätskontrolle teil, einschließlich Commits und Rollbacks.

BFILEs hingegen werden außerhalb des Servers gespeichert. Der Server speichert nur die Betriebssystemadresse der Datei. Deshalb können BFILEs nicht an Datenbanktransaktionen teilhaben.

Kompatibilität

Wegen der vielen Vorteile der LOBs (siehe obige Tabelle) sollten Sie LOBs anstelle von LONGs in jeder neuen Anwendung verwenden.

Aus Gründen der Abwärtskompatibilität werden LONGs jedoch weiterhin voll unterstützt.

Forms-Typen

Innerhalb einer Form würde das LOB im allgemeinen einen Steuerelementtyp Text, Bild  oder Klang erhalten, je nach Verwendungsart.

Einschränkungen

•	BFILEs sind schreibgeschützt.

•	Auch wenn  Forms versuchen wird, das gesamte BFILE oder BLOB zu laden, wenn es zur Laufzeit gelesen wird, wird es doch durch den virtuellen Speicherplatz begrenzt, der zur Laufzeit verfügbar ist.

•	Bei CLOBs, hat Forms eine Größenbeschränkung von 65534 Byte.


Über benutzerdefinierte Objekte von Oracle8

  Verwandte Themen  [image]  Beispiele

Durch die Unterstützung des Oracle8-Servers ermöglicht dieses Release den Zugriff auf benutzerdefinierte Objekte von Oracle8. Diese umfassen Objekttabellen, Spaltenobjekte in relationalen Tabellen und eine besondere Art von Spaltenobjekt, die als REF-Spalte bezeichnet wird.

Objekttabellen

In Oracle8 basiert eine Objekttabelle auf der Objekttypdefinition eines Benutzers. Diese Definition selbst ist ein zusammengesetztes Objekt, wobei jedes Attribut bzw. jede Komponente auf einem bekannten vordefinierten Datentyp von Oracle8 basiert. (Eine Objekttypdefinition kann auf einer anderen Objekttypdefinition basieren, schlußendlich beruhen die Definitionen jedoch auf bekannten vordefinierten Oracle8-Datentypen.)

Deshalb wird jede Spalte in einer Objekttabelle als individuelles Datenobjekt behandelt, so wie es die Spalten einer relationalen Tabelle behandelt.

Spaltenobjekte in relationalen Tabellen

Ein Datenbankprogrammierer kann eine Spalte in einer relationalen Tabelle auch auf einer Objekttypdefinition basieren. Dies entspricht dem Einbetten eines zusammengesetzten Objekts in der relationalen Tabelle.

Das eingebettete Spaltenobjekt wird in die entsprechenden Bestandteile erweitert und jeder Teil wird als Spalte für sich selbst behandelt.

Wenn der Oracle8-Server z.B. eine 3spaltige relationale Tabelle enthalten würde, eine dieser Spalten ein Spaltenobjekt wäre und dieses Spaltenobjekt auf einer Objektdefinition basieren würde, die vier Bestandteile oder Attribute hat, würde die Tabelle als 6spaltige Tabelle behandelt (die 2 relationalen Spalten plus den 4 Spalten, aus denen das Objekt besteht).

Falls eines der individuellen Attribute der Definition des Spaltenobjekts auf einem anderen Objekttyp basieren würde, würde dieser Bestandteil weiter erweitert und als Gruppe mit individuellen Spalten behandelt.

REF-Spalten

Eine Spalte in einer Objekt- oder relationalen Tabelle kann als eine Spalte vom Typ REF definiert werden. Eine REF-Spalte enthält nicht direkt Daten, sondern Pointer (Referenzen) auf eine andere Objekttabelle, die die eigentlichen Daten enthält.

Die Referenz kann zur Laufzeit aufgelöst werden, so daß der Benutzer die konkreten referenzierten Daten sieht.


Benutzerdefinierte Objekte von Oracle8: Beispiele

  Verwandte Themen

Um Objekte im Oracle8-Server zu erstellen, definiert ein Datenbankprogrammierer zuerst einen Objekttyp. Danach erstellt er ein spezifisches Objekt basierend auf dieser Typdefinition. Bei dem Ergebnisobjekt kann es sich entweder um eine Objekttabelle oder ein Spaltenobjekt in einer relationalen Tabelle handeln.

Beispiele

Betrachten Sie die folgenden Definitionen. Mit der ersten Definition wird ein Objekttyp erstellt. Die zweite Definition erstellt eine Tabelle dieses Typs.

         CREATE TYPE  emp_type  AS OBJECT

                      (name     CHAR(30),

                       title    CHAR(20),

                       idnum    NUMBER);

         CREATE TABLE  emp  OF emp_type;

Im obigen Beispiel wird eine Objekttabelle mit der Bezeichnung emp erstellt. Sie hat drei Spalten, und diese Spalten haben die Namen und Datentypen, die in den Attributen der Objekttypdefinition emp_type festgelegt werden.

Als nächstes sehen Sie ein Beispiel für ein Spaltenobjekt in einer relationalen Tabelle:

         CREATE TYPE  address_type  AS OBJECT

                      (street    VARCHAR2(40),

                       city      VARCHAR2(25),

                       state     VARCHAR2(2)

                       zip       NUMBER);

         CREATE TABLE  customers

                       (cust_id  NUMBER,

                        name     VARCHAR(40),

                        address  address_type);

In diesem Beispiel wird eine relationale Tabelle mit der Bezeichnung customers erstellt. Die Tabelle hat drei Spalten. Bei den beiden ersten Spalten (cust_id und name) handelt es sich um die üblichen relationalen Spalten. Die dritte Spalte (address) ist ein Spaltenobjekt. Sie basiert auf der Objekttypdefinition mit der Bezeichnung address_type. Diese Adreßspalte hat die Struktur und die Datentypen, die von dieser Objektdefinition festgelegt wurden. Stellen Sie sich die Adreßspalte als eine Spalte mit vier Bestandteilen oder Komponenten vor (street, city, state und zip). Jede dieser Komponenten hat den Datentyp, der in der Objekttypdefinition address_type festgelegt wurde. (In diesem Fall haben alle Komponenten den Datentyp VARCHAR2 mit Ausnahme von zip, die den Datentyp NUMBER hat.)

In der folgenden Darstellung basiert die dritte Spalte einer dreispaltigen relationalen Tabelle auf einem Objekttyp, der selbst drei Bestandteile oder Komponenten hat.

Beachten Sie, daß es sich bei einem Oracle8-Objekt um ein zusammengesetztes Objekt handelt, das aus Bestandteilen oder Komponenten besteht. Jeder der Bestandteile hat einen Namen und einen bekannten Oracle8-Datentyp. Wenn es sich bei dem Objekt um eine Tabelle handelt (in Wirklichkeit eine Zeile in einer Objekttabelle), hat diese so viele Spalten oder Bestandteile, wie Attribute in der Objekttypdefinition vorhanden sind. Wenn eine Spalte in einer relationalen Tabelle auf einem Objekt basiert, können Sie sich jeden der Bestandteile des Objekts als eine zusätzliche Spalte in dieser Tabelle vorstellen. Da jeder dieser Bestandteile auf einem Attribut in der Objekttypdefinition basiert, werden diese Bestandteile gelegentlich als Attributspalten bezeichnet.

So behandelt Developer Objekte

Eine Objekttabelle wird weitestgehend wie eine relationale Tabelle behandelt. Jede Spalte kann individuell ausgewählt werden. Auch wenn alle Spalten ausgewählt werden können, wird jede Spalte als separates Objekt innerhalb der Anwendung behandelt. Die Tabelle selbst verfügt über keine besondere Identität als Objekt innerhalb der Umgebung.

Gleichermaßen wird ein Spaltenobjekt in einer relationalen Tabelle nicht als eine einzelne homogene Entität behandelt. Statt dessen wird jede der Komponenten des Spaltenobjekts als individuelles, unabhängiges Datenobjekt behandelt. Jede Komponente des Spaltenobjekts kann ausgewählt werden. Nachdem die Komponente ausgewählt wurde, wird jede Komponente als unabhängiges Datenobjekt behandelt. Selbst wenn alle Komponenten des Spaltenobjekts ausgewählt sind, hat das Spaltenobjekt selbst keine besondere Identität als Objekt innerhalb der Entwicklungsumgebung.

Datenobjekte, die aus einem Objekt ausgewählt werden, haben den Standardnamen ColumnObjectName_ItemName. Wenn also die Komponente mit der Bezeichnung zip aus dem Spaltenobjekt mit der Bezeichnung address im obigen Beispiel ausgewählt wird, hat das Datenobjekt den Namen address_zip innerhalb der Anwendung.


Über Oracle8-REFs

  Verwandte Themen

REF ist ein neuer Datentyp in Oracle8. Mit ihm wird ein Spaltenobjekt als Pointer auf Daten in einer anderen Objekttabelle festgelegt. Die REF-Spalte selbst enthält die Daten nicht.

Zum Beispiel:

           CREATE TYPE  dept_type  AS OBJECT

                        (deptname     VARCHAR2(24),

                         deptnumber   NUMBER);

           CREATE TABLE  dept_table OF dept_type;

           CREATE TABLE  emp

                         (empname    VARCHAR2(50),

                          empnumber  NUMBER,

                          empdept    REF  dept_type);

In der relationalen Tabelle mit der Bezeichnung emp ist die Spalte empdept eine REF-Spalte. Sie zeigt auf ein Objekt vom Typ dept_type.

Typen und Tabellen

Wenn eine REF-Spalte definiert wird, identifiziert sie einen Objekttyp - und keine bestimmte Objekttabelle. Eine Datenbank kann mehr als eine Objekttabelle basierend auf einer einzigen Objekttypdefinition enthalten. Somit identifiziert die REF-Spaltendefinition selbst die Zieltabelle(n) nicht.

Pointer-Auflösung

Wenn die Tabelle, die die REF-Spalte enthält, initialisiert wird, sind die Werte in der REF-Spalte Pointer auf Zeilen in der bzw. den spezifischen Tabellen, die die gewünschten Daten enthalten. Wenn Benutzer später zur Laufzeit die REF-Spalte betrachten, sehen sie die Daten, auf die gezeigt wird (und nicht die Pointer).

So zeigt Developer REFs beim Entwurf an

Wenn Sie beim Entwurf eine Tabelle sehen möchten, die eine REF-Spalte enthält, wird die REF-Spalte in der erweiterten Form angezeigt. Das heißt, die Attribute in dem Objekttyp, auf die die REF-Originaldefinition zeigt, werden dargestellt.

Im obigen Beispiel würde die REF-Spalte empdept so dargestellt, als enthielte sie zwei Komponenten oder Attributspalten: deptname und deptnumber. Dies waren die beiden Attribute in dem Objekttyp (dept_type), die in der REF-Definition identifiziert wurden.

Genau wie bei einem regulären Spaltenobjekt können Sie eine oder alle referenzierten Komponenten/Spaltenattribute auswählen, damit diese zu Datenobjekten in der Anwendung werden. Im Gegensatz zu den regulären Spaltenobjekten können Sie jedoch auch den REF-Namen selbst auswählen, damit dieser zu einem manipulierbaren Objekt innerhalb der Anwendung wird. Das heißt, Sie können die REF-Spalte in Ihrer PL/SQL-Codierung verwenden. Standardmäßig wird die REF-Spalte zu einem Bestandteil der Null-Leinwand.

So können Sie REF-Daten für die Benutzer anzeigen

Als Anwendungsentwickler können Sie wählen, wie der Laufzeitbenutzer die referenzierten Daten (die aufgelöste REF) sieht:

•	Daten, die in dem Datenblock angezeigt werden, in dem die REF-Spalte vorhanden ist (wird auch gelegentlich als Verweismethode bezeichnet)

•	Daten, die in dem Datenblock angezeigt werden, auf den die REF-Spalte zeigt (Master-Detail-Methode)

Die erste Auswahl (bei der die Daten als Bestandteil des Datenblocks angezeigt werden, in dem die REF vorhanden ist) ist die einfachste. Sie wählen die gewünschten REF-Komponenten als Objekte in Ihrem Datenblock. Zur Laufzeit lösen Developer und Oracle8 die Referenzen auf und setzen die referenzierten Daten in die Anzeigeobjekte. Der Benutzer muß nur einen Block betrachten.

Bei der anderen Auswahl (bei der die Daten in dem Datenblock angezeigt werden, auf den gezeigt wird) ist  die Einrichtung eines Master-Detail-Links erforderlich. Dies entspricht weitestgehend der Einrichtung eines Master-Detail-Links für zwei Blöcke, die eine Primär-/Fremdschlüssel-Beziehung haben. In diesem Fall erstellt die REF den Link zwischen den beiden Blöcken. Der Benutzer sieht beide Blöcke, sieht die REF-Daten jedoch nur in dem referenzierten Block.

Diese Master-/Detail-Beziehung kann mit dem Datenblock-Assistenten von Form Builder eingerichtet werden.


Symbole für Oracle8-Objekte

Der Objektnavigator und die Assistenten geben mit Hilfe von Symbolen an, auf welchen Typ von Oracle8-Daten Sie zugreifen. Diese Symbole und deren Bedeutung sind:

             Normale Tabelle

             Objekttyp

             Objektansicht

             Objekttabelle

             Verschachteltes Objekt

             Verschachtelte Tabelle

             Referenziertes Objekt

             Variierendes Array

             Methode

             Unbekannter Typ

             Server-seitiger Stack-Modus

             Server-seitiger Programmblock

             Datei

             Datentyp Date

             Datentyp Number

             Datentyp Character

             Datentyp Raw

           Datentyp BLOB

             Datentyp BFILE

             Datentyp CLOB

             Rowid

             MLSLABEL


Skalierbarkeit und Leistung bei Oracle8

Durch die Unterstützung des Oracle8-Servers kommen Sie in den Genuß einer Reihe von Verbesserungen bei Skalierbarkeit und Leistung. In den meisten Fällen erhalten Sie diese Vorteile automatisch.

Sie können z.B. auf folgende Funktionen von Oracle8 zugreifen:

•	Größere Größen. Die Datenbank selbst, die Anzahl von gleichzeitigen Benutzern und die Grenzwerte für die Tabellenspalten (jetzt bis zu 1000 Spalten) wurden alle erhöht.

•	Tabellen- und Indexpartitionierung

•	Client-seitiges Speichern von Objekten im Cache

Sie können jetzt außerdem verschiedene andere Oracle8-Funktionen nutzen, durch die die Leistung verbessert wird:

•	Prefetch. Forms benutzt diese Oracle8-Funktion (zusammen mit dem vorhandenen Mechanismus Array-Größe), um Round-Trips und Speichernutzung durch die Datenbank zu reduzieren. Dies geschieht automatisch, ohne Eingreifen des Benutzers.

•	Returning-Klausel. Forms benutzt diese neue DML-Funktion bei Einfügen- und Aktualisierenvorgängen. Durch die Returning-Klausel ist eine zweite Datenabfrage (um server-seitige Trigger-Änderungen an den Daten zu ermitteln) nicht mehr erforderlich, so daß die Verarbeitung beschleunigt wird. Benutzer können dies mit dem Attribut DML-Rückgabewert steuern.

•	INSTEAD-OF-Trigger für das Aktualisieren von Ansichten. Dieser server-seitige Trigger bietet einen Mechanismus für das Aktualisieren von relationalen und Objektansichten, die sonst nicht aktualisiert werden könnten.


Unterstützung von PL/SQL 8

  Verwandte Themen

Dieses Release verwendet PL/SQL 8 auf dem Client und dem Server. Client-seitige Programmblöcke können momentan keine objektbezogene Funktionalität von Oracle8 unterstützen. Gespeicherte Programmblöcke können jedoch alle neuen PL/SQL 8-Funktionen verwenden.

In Anhang A im Handbuch PL/SQL User's Guide and Reference Release 8  werden die neuen PL/SQL 8-Funktionen beschrieben. Dieses Handbuch kann online aufgerufen werden. Wählen Sie Hilfe -> Handbücher, und gehen Sie zu den Referenzhandbüchern unter Online-Handbücher.


Kompatibilität mit früheren PL/SQL-Releases

Bei clientseitigen Programmblöcken, die in PL/SQL 1 oder PL/SQL 2 geschrieben wurden, müssen Sie den Code auf die neue Ebene konvertieren. Das PL/SQL 1-Konvertierungsdienstprogramm automatisiert diesen Umstellungsprozeß.

Gespeicherte Programmblöcke, die mit früheren Releases erstellt wurden, können mit der PL/SQL 8-Engine auf dem Datenbankserver verwendet werden, werden jedoch möglicherweise mit Fehlern kompiliert. Diese Fehler entstehen in einigen Fällen, in denen die Syntax zwischen PL/SQL 8 und PL/SLQ 2 nicht kompatibel ist. Mit einem Kompatibilitäts-Flag in PL/SQL 8 können Sie einen PL/SQL 2-Kompatibilitätsmodus wählen, so daß die PL/SQL 8-Engine derartige Fehler nicht ausgibt, wenn PL/SQL 2-Code im Server kompiliert wird. In Kapitel 6 im Handbuch Oracle8 Server Migration werden die Fälle beschrieben, die von diesem Kompatibilitäts-Flag abgedeckt werden.


Noch nicht unterstützte Oracle8-Funktionen

  Verwandte Themen

In diesem Release werden noch nicht alle Oracle8-Funktionen unterstützt. Die wichtigsten nicht unterstützten Funktionen sind:

•	Collection-Typen (verschachtelte Tabellen und variierende Arrays bzw. Varrays)

•	Gespeicherte Prozeduren, die Objektwerte zurückgeben

•	Skalare Datentypen NCHAR und NVARCHAR2.

Auch  wenndieses Release PL/SQL 8 unterstützt, sollten Sie sich dessen bewußt sein, daß das client-seitige PL/SQL 8 noch nicht alle Funktionen im Oracle8-Server voll unterstützt. (Die server-seitige PL/SQL 8-Unterstützung ist vollständig.)


Unterstützung von Oracle8-Objekten im Objektnavigator

Die Oracle8-Funktionalität im Objektnavigator ermöglicht den Zugriff auf Objekt-Datentypen, so daß Sie einfacher mit Oracle8-Daten programmieren können. Mit der neuen Unterstützung von Oracle8-Objekten können Sie benutzerdefinierte Datentypen in einem hierarchischen Format anzeigen. Außerdem können Sie Tabellen, Ansichten, Spalten, Trigger, Attribute und Methoden suchen und anzeigen, die mit den benutzerdefinierten Datentypen verknüpft sind.

Der Knoten Datenbankobjekte enthält die Schemata und deren Objekte, auf die Sie in der gerade angemeldeten Datenbank zugreifen können. Wenn Sie bei einer Oracle8-Datenbank angemeldet sind, zeigt der Objektnavigator verfügbare benutzerdefinierte Datentypen (mit deren Attributen und Methoden) im Knoten Typen innerhalb jedes Schemas an. Mit den benutzerdefinierten Datentypen verknüpfte Tabellen, Ansichten, Spalten und Trigger werden in den Knoten Tabellen und Ansichten angezeigt.

Mit der Oracle8-Funktionalität im Objektnavigator können Sie insbesondere folgende Elemente anzeigen und suchen:

•	Objekttabellen und Spaltenobjekte im Knoten Tabellen

•	Objektansichten im Knoten Ansichten

•	Instead-Of-Trigger für Ansichten im Knoten Ansichten

•	Objekttypen, Tabellentypen und variierende Array-Typen im Knoten Typen

•	Attribute und Methoden von Objekttypen im Knoten Typen

Mit Symbolen können Sie relationale Objekte und Oracle8-Objekte im Objektnavigator unterscheiden. So werden z.B. unterschiedliche Symbole zur Darstellung von normalen, relationalen und Objekt-Tabellen sowie zur Darstellung von normalen und Objektansichten verwendet.

Weitere Informationen über benutzerdefinierte Oracle8-Datentypen finden Sie in der Oracle8-Dokumentation.

So erfahren Sie mehr über

Knoten Objekttyp

Knoten Tabellentyp

Knoten Variierender Array-Typ

Knoten Spaltenobjekt

Knoten Objekttabelle

Knoten Objektansicht

Alles einblenden

Symbole für Oracle8-Objekte


Knoten Objekttyp

  Beispiel	  Verwandte Themen

Objekttypen werden in dem Knoten Typen im Objektnavigator angezeigt. Ein Objekttyp-Knoten stellt einen Typ dar, der von der SQL-Anweisung CREATE TYPE AS OBJECT erstellt wurde. Der Objekttyp wird im Objektnavigator wie folgt dargestellt:

Objekttyp-Name ( Objekttyp [ * ] & -Rumpf [ * ] )

Die Beschriftung Objekttyp wird angezeigt, wenn eine Anweisung CREATE TYPE AS OBJECT an die Datenbank ausgegeben wurde. Ein Stern (*) wird angezeigt, wenn die Typspezifikation ungültig oder der Typ unvollständig ist. Ein unvollständiger Typ ist ein Platzhalter zur rekursiven Definition von Typen.

Die Beschriftung Objektrumpf wird angezeigt, wenn ein Typrumpf mit der Anweisung CREATE TYPE BODY erstellt wurde. Ein Stern (*) wird angezeigt, wenn der Typrumpf ungültig ist.

Wenn sowohl Objekttyp als auch Objektrumpf erfolgreich erstellt wurden, wird die Beschriftung in Form von Objekttyp & -rumpf angezeigt.

Bei Objekttyp-Knoten handelt es sich um zusammengesetzte Knoten. Sie verfügen über zwei Unterknoten, Attribute und Methoden. Ein Objekttyp-Knoten kann nur eingeblendet werden, wenn eine gültige Typspezifikation vorhanden ist.

Die Attribute eines Objekttyps werden als Knoten unter dem Unterknoten Attribute dargestellt.

Die Methoden eines Objekttyps werden als Knoten unter dem Unterknoten Methoden dargestellt. Die Methoden werden als Prozeduren und Funktionen angezeigt. Die Methodenbeschriftungen werden im Objektnavigator wie folgt dargestellt:

Methodenname (Prozedur)

und

Methodenname (Funktion)

Wenn eine Zuordnungs- oder Sortiermethode für einen Objekttyp angegeben wird, wird die Methodenbeschriftung wie folgt angezeigt:

Methodenname (Zuordnen-Funktion)

oder

Methodenname (Sortieren-Funktion)

Hinweis:  Die Argumentliste einer Methode wird nicht angezeigt.


Beispiel für den Knoten Objekttyp

  Verwandte Themen 	   Alle Beispiele

Die folgende SQL-Anweisung erstellt den Objekttyp emp_typ.

CREATE TYPE emp_typ AS OBJECT
  (ename VARCHAR2(30), esalary NUMBER(5,2),
  MEMBER PROCEDURE raise(amount NUMBER),
  MEMBER FUNCTION get_salary RETURN NUMBER,
  MAP MEMBER FUNCTION compare RETURN NUMBER);

Der Unterbaum für emp_typ ist:

- Types
  - EMP_TYP (Object Type)
    - Attributes
        ENAME (CHAR)
        ESALARY (NUMBER)
    - Methods
        COMPARE (Map Function)
        GET_SALARY (Function)
        RAISE (Procedure)


Knoten Tabellentyp

  Beispiel	  Verwandte Themen

Tabellentypen werden in dem Knoten Typen im Objektnavigator angezeigt. Ein Tabellentyp-Knoten stellt einen Typ dar, der von der SQL-Anweisung CREATE TYPE AS TABLE erstellt wurde. Der Tabellentyp wird im Objektnavigator wie folgt dargestellt:

Tabellentyp-Name (TABLE OF Tabellenuntertyp-Name)

Der Tabellentyp-Knoten kann nicht eingeblendet werden, wenn es sich bei dem Untertyp um einen vordefinierten Typ handelt. Wenn der Untertyp ein Objekttyp oder ein REF-Objekt ist, werden die Attribute des Objekts als Unterknoten angezeigt.


Beispiel für den Knoten Tabellentyp

  Verwandte Themen 	   Alle Beispiele

Die folgenden SQL-Anweisungen erstellen den Objekttyp emp_typ und den Tabellentyp emp_tbl.

CREATE TYPE emp_typ AS OBJECT
  (ename VARCHAR2(30), esalary NUMBER(5,2),
  MEMBER PROCEDURE raise(amount NUMBER),
  MEMBER FUNCTION get_salary RETURN NUMBER,
  MAP MEMBER FUNCTION compare RETURN NUMBER);

CREATE TYPE emp_tbl AS TABLE OF emp_typ;

Der Unterbaum für emp_tbl ist:

- Types
  - EMP_TBL (TABLE OF EMP_TYP)
      ENAME (CHAR)
      ESALARY (NUMBER)
  + EMP_TYP


Knoten Variierender Array-Typ

  Beispiel	  Verwandte Themen

Variierende Array-Typen werden in dem Knoten Typen im Objektnavigator angezeigt. Ein Knoten Variierender Array-Typ stellt einen Typ dar, der von der SQL-Anweisung CREATE TYPE AS VARYING ARRAY erstellt wurde. Der Variierende Array-Typ wird im Objektnavigator wie folgt dargestellt:

Variierender-Array-Typ-Name (VARRAY (Größe) Variierender-Array-Untertyp-Name)

Der Knoten Variierender Array-Typ kann nicht eingeblendet werden, wenn es sich bei dem Untertyp um einen vordefinierten Typ handelt. Wenn der Untertyp ein Objekttyp oder ein REF-Objekt ist, werden die Attribute des Objekts als Unterknoten angezeigt.


Beispiel für den Knoten Variierender Array-Typ

  Verwandte Themen 	   Alle Beispiele

Die folgenden SQL-Anweisungen erstellen den Objekttyp emp_typ und den Variierenden Array-Typ emp_ary.

CREATE TYPE emp_typ AS OBJECT
  (ename VARCHAR2(30), esalary NUMBER(5,2),
  MEMBER PROCEDURE raise(amount NUMBER),
  MEMBER FUNCTION get_salary RETURN NUMBER,
  MAP MEMBER FUNCTION compare RETURN NUMBER);

CREATE TYPE emp_ary AS VARRAY(7) OF emp_typ;

Der Unterbaum für emp_ary ist:

- Types
  - EMP_ARY (VARRAY(7) OF EMP_TYP)
      ENAME (CHAR)
      ESALARY (NUMBER)
  + EMP_TYP


Knoten Spaltenobjekt

  Beispiele	  Verwandte Themen

Spaltenobjekte werden als Knoten in dem Knoten Spalten angezeigt. Jedes Objekt ist mit einem Namen und dem Typ in Klammern beschriftet. Bei Spaltenobjekt-Knoten handelt es sich um zusammengesetzte Knoten, wobei die Attribute des Typs als Unterknoten angezeigt werden.

Es gibt vier Untertypen von Spaltenobjekten - verschachtelter Objekttyp, Tabellentyp, Variierender Array-Typ und REF-Objekttyp. Spaltenobjekte sind im Objektnavigator wie folgt beschriftet:

Spaltenname (verschachtelter_Objekttyp)

Spaltenname (Tabellentyp-Name:TABLE OF Tabellenuntertyp-Name)

Spaltenname (Variierender_Array-Typ-Name: VARRAY(Größe) OF Variierender_Array-Untertyp-Name)

Spaltenname (REF Referenz-Typ-Name)


Beispiele für den Knoten Spaltenobjekt

  Verwandte Themen 	   Alle Beispiele

In dem folgenden Beispiel ist die Spalte emp_col von Tabelle emp_tab ein verschachteltes Objekt vom Typ emp_typ.

CREATE TYPE emp_typ AS OBJECT (ename VARCHAR2(30), esalary NUMBER(5,2));
CREATE TABLE emp_tab (emp_col emp_typ, dept VARCHAR2(2));

Der Unterbaum für emp_tab ist:

- Tables
  - EMP
    + Trigger
    - Columns
      - EMP_COL (EMP_TYP)
         ENAME (CHAR)
         ESALARY (NUMBER)
        DEPT (CHAR)

Im nächsten Beispiel ist die Spalte emps von Tabelle dept_tab eine verschachtelte Tabelle mit dem Untertyp emp_tab. Die verschachtelte Tabelle enthält Zeilen vom Typ emp_typ.

CREATE TYPE emp_typ AS OBJECT (ename (CHAR(30), esalary NUMBER);
CREATE TYPE emp_tab AS TABLE OF emp_typ;
CREATE TABLE dept (dname CHAR(20), emps emp_tab);

Der Unterbaum für dept_tab is:

- Tables
  - DEPT
    + Triggers
    - Columns
        DNAME (CHAR)
      - EMPS (EMP_TAB: TABLE OF EMP_TYP)
         ENAME (CHAR)
         ESALARY (NUMBER)

Im folgenden Beispiel ist die Spalte emps von Tabelle dept_tab_ary ein Variierendes Array mit dem Untertyp emp_ary. Das Variierende Array enthält Zeilen vom Typ emp_typ.

CREATE TYPE emp_typ AS OBJECT (ename (CHAR(30), esalary NUMBER);
CREATE TYPE emp_ary AS VARRAY (30) OF emp_typ;
CREATE TABLE dept (dname CHAR(20), emps emp_ary);

Der Unterbaum für dept_tab_ary ist:

- Tables
  - DEPT
    + Triggers
    - Columns
        DNAME (CHAR)
      - EMPS (EMP_ARY: VARRAY(30) OF EMP_TYP)
         ENAME (CHAR)
         ESALARY (NUMBER)

Im nächsten Beispiel ist die Spalte manager von Tabelle dept_ref ein referenziertes Objekt vom Typ emp_typ.

CREATE TYPE emp_typ AS OBJECT (ename (CHAR(30), esalary NUMBER);
CREATE TABLE dept (dname CHAR(30), manager REF emp_typ);

Der Unterbaum für dept_ref ist:

- Tables
  - DEPT
    + Triggers
    - Columns
        DNAME (CHAR)
      - MANAGER (REF EMP_TYP)
         ENAME (CHAR)
         ESALARY (NUMBER)


Knoten Objekttabelle

  Beispiel	  Verwandte Themen

Objekttabellen werden in dem Knoten Tabellen im Objektnavigator angezeigt. Ein Objekttabellen-Knoten stellt eine Tabelle dar, die mit der SQL-Anweisung CREATE TABLE OF erstellt wurde. Objekttabellen-Knoten sind im Objektnavigator wie folgt beschriftet:

Objekttabellen-Name (Objekttyp-Name)

Jeder Objekttabellen-Knoten hat zwei Unterknoten, Trigger und Spalten. Der Unterknoten Trigger enthält alle mit der Objekttabelle verknüpften Trigger. Diese Trigger werden genau wie Trigger angezeigt, die mit normalen, relationalen Tabellen verknüpft sind. Der Knoten Spalten enthält alle relationalen Spalten und Spaltenobjekte, die mit einer bestimmten Objekttabelle verknüpft sind. Jede Spalte ist mit einem Namen und dem Typ in Klammern beschriftet.


Beispiel für den Knoten Objekttabelle

  Verwandte Themen 	   Alle Beispiele

Die folgenden SQL-Anweisungen erstellen den Objekttyp person_typ und die Objekttabelle person_tab.

CREATE TYPE person_typ AS OBJECT
  (name VARCHAR2(30), address VARCHAR2(60));

CREATE TABLE person_tab OF person_typ;

Der Unterbaum für person_tab ist:

- Tables
  - PERSON_TAB (PERSON_TYP)
    + Triggers
    - Columns
        NAME (CHAR)
        ADDRESS (CHAR)


Knoten Objektansicht

  Beispiel	  Verwandte Themen

Objektansichten werden in dem Knoten Ansichten im Objektnavigator angezeigt. Ein Objektansicht-Knoten stellt eine Ansicht dar, die mit der Klausel OF object_type erstellt wurde. Objektansicht-Knoten sind mit einem Namen und dem Typ in Klammern beschriftet. Die Attribute des Objekts werden nicht angezeigt.

Jeder Objektansicht-Knoten hat zwei Unterknoten, Trigger und Spalten. Der Unterknoten Trigger enthält alle Trigger, die mit der Objektansicht verknüpft sind, einschließlich Instead Of-Triggern. Wenn ein Instead Of-Trigger mit einer Ansicht verknüpft ist, wird die Beschriftung folgendermaßen angezeigt:

Trigger-Name (INSTEAD OF Trigger-Anweisungen)


Beispiel für den Knoten Objektansicht

  Verwandte Themen 	   Alle Beispiele

Die folgenden SQL-Anweisungen erstellen eine Objektansicht.

CREATE TYPE emp_typ AS OBJECT (ename CHAR(30)), dname CHAR(20));
CREATE TABLE emp (ename CHAR(30), dname CHAR(20));
CREATE VIEW dev_emp OF emp_typ AS
  SELECT ename, dname FROM emp WHERE dname='DEVELOPMENT';

Der Unterbaum für die Objektansicht dev_emps ist:

- Views
  - DEV_EMP (EMP_TYP)
    + Triggers
    + Columns


Alle Oracle8-Objektknoten einblenden

  Verwandte Themen

Der Vorgang Alles einblenden im Objektnavigator blendet die Oracle8-Datentyp- und Attributknoten nicht rekursiv ein.

Wenn z.B. ein Attribut mit der Bezeichnung manager und dem Typ emp_typ als untergeordnetes Attribut von einem anderen Typ emp_typ angezeigt wird, wird das Attribut manager mit Alles einblenden nicht eingeblendet.


Umgebungsvariablen

  Verwandte Themen

CA_GPREFS

CA_UPREFS

CUE_PREFS

DEV2000_PROJECT

DEV2000_SOURCECONTROL

DOC60

FORMS60_DEFAULTFONT

FORMS60_EDITOR

FORMSnn_ERROR_DATE/DATETIME_FORMAT

FORMS60_JAVADIR

FORMS60_MAPPING

FORMS60_OUTPUT

FORMSnn_OUTPUT_DATE/DATETIME_FORMAT

FORMS60_PATH

FORMSnn_PLSQLV1_NAME_RESOLUTION

FORMS60_REPFORMAT

FORMS60_TIMEOUT

FORMSnn_USER_DATE/DATETIME_FORMAT

FORMS60_USEREXITS

GRAPHICS60_PATH

INTERRUPT (DOS SQL*Net users only)

LOCAL

NLS_LANG

OleCreateObjPoolInMemory

OleDoNotUpdateLinks

OleUpdateLinksPrompt

ORACLE_HOME

ORACLE_PATH

ORAINFONAV_DOCPATH

REPORTS60_CGIDIAGBODYTAGS

REPORTS60_CGIDIAGHEADTAGS

REPORTS60_CGIHELP

REPORTS60_CGIMAP

REPORTS60_CGINODIAG

REPORTS60_CGIPATHONLYURL

REPORTS60_COOKIE_EXPIRE

REPORTS60_DB_AUTH

REPORTS60_ENCRYPTION_KEY

REPORTS60_OWSDIAGBODYTAGS

REPORTS60_OWSDIAGHEADTAGS

REPORTS60_OWSHELP

REPORTS60_OWSMAP

REPORTS60_OWSNODIAG

REPORTS60_OWSPATHONLYURL

REPORTS60_PATH

REPORTS60_REPORTS_SERVER

REPORTS60_SYS_AUTH

REPORTS60_TERMINAL

REPORTS60_TMP

REPORTS60_USEREXIT

REMOTE

UI_ICON

USERNAME

WIN_REMOTE_SESSIONS

XMITTR(nur DOS-Benutzer)


Registrierung (Windows 95 und Windows NT)

  Umgebungsvariablen

Das Oracle-Installationsprogramm erstellt einen neuen Abschnitt ORACLE in Ihrer Registrierung. Die Oracle-Registrierung enthält Konfigurationsparameter, mit denen Angaben gesteuert werden, wie z.B. der Name des Oracle-Standardverzeichnisses, der Speicherort der Voreinstellungsdatei sowie der Speicherort der Hilfedateien.

Registrierung anzeigen und ändern

Sie können die Microsoft Windows-Registrierung mit dem Registrierungseditor anzeigen und optional bearbeiten. Dieser Editor ist in dem Verzeichnis gespeichert, in dem die Windows-Software installiert ist. Um den Editor zu starten, wählen Sie Start [image] Ausführen, geben REGEDIT ein, und klicken auf OK.

Im Registrierungseditor blenden Sie den Knoten HKEY_LOCAL_MACHINE und danach den Knoten SOFTWARE ein. Klicken Sie auf den Schlüssel ORACLE, um die Oracle-Konfigurationsparameter anzuzeigen.

Sie können jeden Parameterwert ändern, indem Sie auf den Parameternamen doppelklicken, um das Dialogfeld Zeichenfolge bearbeiten anzuzeigen. Ändern Sie den Wert im Textfeld Wert, und klicken Sie dann auf OK, um den neuen Wert zu akzeptieren.


Konfigurationsparameter

  Umgebungsvariablen

Das Oracle-Installationsprogramm stellt viele Parameter automatisch ein. Einige dieser Parameter werden von Oracle-Produkten benötigt, während Sie mit anderen Parametern das Verhalten der Produkte individuell ändern können.

Obligatorische Parameter

Die in diesem Abschnitt aufgeführten Parameter werden automatisch von dem Oracle-Installationsprogramm eingestellt oder entfernt. Sie werden von verschiedenen Oracle-Produkten benötigt, damit diese einwandfrei funktionieren.

Achtung: Ändern Sie die Einstellungen der Parameter nicht, die in diesem Abschnitt aufgeführt werden. Sonst könnten ein oder mehrere Oracle-Produkte nicht mehr einwandfrei funktionieren.

Mit nn bei den unten aufgeführten Parametern wird eine Release-Nummer für ein Produkt oder eine Komponente angegeben. Diese Nummer kann sich ändern, wenn Sie auf eine neue Version eines Oracle-Produkts umstellen.

Parameter	Standardwert
BROWSERnn	ORACLE_HOME\BROWSE25
DEnn	ORACLE_HOME\TOOLS\COMMON60
FORMSnn	ORACLE_HOME\FORMS60
GRAPHICSnn	ORACLE_HOME\GRAPH60
MMnn	ORACLE_HOME\TOOLS\COMMON60
OCLnn	ORACLE_HOME\GRAPH60
PROnn	ORACLE_HOME\PRO18
RDBMSnn	ORACLE_HOME\RDBMS73
RWnn	ORACLE_HOME\REPORT60
TKnn	ORACLE_HOME\TOOLS\COMMON60
VGSnn	ORACLE_HOME\TOOLS\COMMON60
Benutzerdefinierbare Parameter

Die in diesem Abschnitt aufgeführten Parameter steuern verschiedene Aspekte Ihrer Oracle-Produkte. Sie können die Einstellungen dieser Parameter ändern, um das Verhalten des Produkts individuell zu gestalten.

In den folgenden Abschnitten wird die Standardeinstellung (sofern vorhanden) jedes Parameters aufgeführt, die automatisch vom Oracle-Installationsprogramm festgelegt wird. Außerdem werden die Parameter, die nicht automatisch eingestellt werden, ebenfalls aufgeführt. Schließlich finden Sie Beschreibungen der gültigen Werte und Beispiele für die Einstellungen.


CA_GPREFS

Standardwert:  ORACLE_HOME

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

CA_GPREFS=C:\orawin95

Dieser Parameter gibt den Speicherort der globalen Voreinstellungsdatei CAGPREFS.ORA an. Globale Voreinstellungen werden von den Benutzern in einem Netzwerk gemeinsam benutzt. Produkte suchen nicht nur in dem mit dem Parameter CA_GPREFS angegebenen Verzeichnis, sondern auch im aktuellen Verzeichnis nach der Datei CAGPREFS.ORA.

Die Datei CAGPREFS.ORA wird automatisch vom Oracle-Installationsprogramm erstellt. Um die globalen Voreinstellungen zu ändern, benutzen Sie einen Texteditor, wie z.B. Notepad, um diese Datei manuell zu ändern. Globale Voreinstellungen in CAGPREFS.ORA können durch die lokale Voreinstellungsdatei, CAUPREFS.ORA, außer Kraft gesetzt werden, die mit dem Parameter CA_UPREFS definiert wird.


CA_UPREFS

Standardwert:  ORACLE_HOME

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

CA_UPREFS=C:\orawin95

Dieser Parameter gibt den Speicherort der Benutzervoreinstellungsdatei, CAUPREFS.ORA, an. Die Datei CAUPREFS.ORA enthält die Voreinstellungen, die Sie mit dem Menübefehl Werkzeuge [image] Voreinstellungen in den Produkten festlegen. Das Produkt sucht nicht nur in dem Verzeichnis, das mit dem Parameter CA_UPREFS angegeben wird, sondern auch im aktuellen Verzeichnis nach der Datei CAUPREFS.ORA.

Verschiedene Oracle-Produkte schreiben ihre Voreinstellungsinformationen in die Datei CAUPREFS.ORA. Um die Benutzervoreinstellungen manuell zu ändern, benutzen Sie einen Texteditor wie Notepad, um diese Datei zu bearbeiten. In CAUPREFS.ORA festgelegte Benutzervoreinstellungen setzen die globalen Voreinstellungen in der Datei CAGPREFS.ORA außer Kraft, die mit dem Parameter CA_GPREFS definiert wird.


CUE_PREFS

Standardwert:  ORACLE_HOME

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

CUE_PREFS=C:\orawin95

Dieser Parameter gibt den Speicherort der Voreinstellungsdatei für das Lernprogramm, CUEPREF.RES, an. Die Datei CUEPREF.RES enthält die Lernprogrammvoreinstellungen, die Sie im Dialogfeld Lernprogrammoptionen festlegen können.

Ihre Voreinstellungen werden jedesmal, wenn Sie eine Anwendung beenden, in der Datei CUEPREF.RES gespeichert. Sie können diese Datei nicht manuell ändern.


DEV2000_SOURCECONTROL

Standardwert:  Keiner

Gültige Werte:  Schlüsselwörter, mit denen angegeben wird, welches Versionskontrollsystem mit Forms Developer oder Reports Developer benutzt werden soll.

Beispiel:

DEV2000_SOURCECONTROL=PVCS

Mit diesem Parameter wird angegeben, welches Versionskontrollsystem mit Forms Developer oder Reports Developer benutzt werden soll. Momentan können Sie entweder kein Versionskontrollsystem angeben oder diesen Parameter auf den Wert 'PVCS' einstellen. Sobald zusätzliche Versionskontrollsysteme unterstützt werden, können Sie auch Schlüsselwörter für diese zusätzlichen Versionskontrollsysteme angeben.


DEV2000_PROJECT

Standardwert:  Keiner

Gültige Werte:  Schlüsselwörter, die die Projektdatei des Versionskontrollsystems angeben, das mit Forms Developer oder Reports Developer benutzt werden soll.

Beispiel:

DEV2000_PROJECT=c:\pvcs\project1\project1.cfg

Dieser Parameter gibt den Namen der Projektdatei für das Versionskontrollsystem an, das Sie mit dem Parameter DEV2000_SOURCECONTROL ausgewählt haben.


DOC60

Standardwert:  Oracle_Home\tools\doc60

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

DOC60=c:\orawin95\tools\doc60

Dieser Parameter gibt den Speicherort der Online-Dokumentationsdateien an, einschließlich Online-Hilfe, Lernprogramm und Kurzanleitung.


FORMS60_DEFAULTFONT

Standardwert:  Keiner

Gültige Werte:  Eine Textfolge, die eine beliebige gültige Schriftart angibt.

Beispiel:

FORMS60_DEFAULTFONT="MS Sans Serif.8"

Dieser Parameter gibt die Standardschriftart für Boilerplates im Layouteditor von Form Builder an.


FORMS60_EDITOR

Standardwert:  Keiner

Gültige Werte:  Name und Pfad eines Systemeditors

Beispiel:

FORMS60_EDITOR=C:\windows\notepad.exe

Dieser Parameter definiert den Editor, der von mehrzeiligen Objekten von Form Builder im Designer oder den Runform-Komponenten aufgerufen werden kann. Erst nachdem dieser Parameter definiert wurde, kann ein benutzerdefinierter Editor gestartet werden.

Hinweis:  Wenn Sie den Editor verlassen, muß die Datei wieder als "Nur Text"-Datei gespeichert werden. Eigene Formate von Textverarbeitungsprogrammen werden nicht unterstützt.


FORMSnn_ERROR_DATE/DATETIME_FORMAT

Zweck: Diese beiden Umgebungsvariablen legen die Formatmasken fest, die Forms beim Generieren von Laufzeitfehlermeldungen verwendet, die ausgegeben werden, wenn ein Endbenutzer einen ungültigen Wert in ein Datums- oder Datumzeit-Element eingibt.

Standardwert: Hierzu wird auf das Hilfethema Über Formatmasken für Datumsangaben verwiesen.

Gültige Werte:  Beliebige gültige Datum-/Datumzeit-Formatmaske.

Beispiel:

FORMS65_ERROR_DATE_FORMAT YYYY/MM/DD


FORMS60_JAVADIR

Standardwert:  Oracle_Home\forms60\java

Gültige Werte:  Name und Pfad der Oracle Java-Laufzeitumgebung

Beispiel:

FORMS60_JAVADIR=C:\orant\forms60\java

Dieser Parameter definiert den Speicherort der Oracle Java-Laufzeitumgebungsdateien, die zur Benutzung von Java Bean-Bereichen und zur Vorschau von Web-orientierten Forms aus Form Builder erforderlich sind.


FORMS60_MAPPING

Standardwert:  Keiner

Gültige Werte: Virtueller Pfad des temporären Arbeitsverzeichnisses

Beispiel:

FORMS60_MAPPING=http://myhost.com/webtemp

Um Bilder auf dem Weg zu verarbeiten, überträgt der Forms Server temporäre komprimierte JPEG-Dateien. Wenn Sie Bilder oder Symbole in den Web Forms-Anwendungen verwenden, müssen Sie ein temporäres und ein virtuelles Verzeichnis erstellen (z.B. C:\ORANT\WEBTEMP), das der Forms Server für Bild- und andere Arbeitsdateien verwendet. Sie müssen außerdem die Umgebungsvariablen FORMS60_OUTPUT und FORMS60_MAPPING auf dem Rechner erstellen, auf dem der Forms Server läuft.


FORMS60_OUTPUT

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk auf dem Rechner, auf dem der Forms Server ausgeführt wird.

Beispiel:

FORMS60_OUTPUT=C:\ORANT\WEBTEMP\

Um Bilder auf dem Web zu verarbeiten, überträgt der Forms Server temporäre komprimierte JPEG-Dateien. Wenn Sie Bilder oder Symbole in den Web Forms-Anwendungen verwenden, müssen Sie ein temporäres Verzeichnis erstellen (z.B. C:\ORANT\WEBTEMP), das der Forms Server für Bilder und andere Arbeitsdateien benutzt. Außerdem müssen Sie die Umgebungsvariablen FORMS60_OUTPUT und FORMS60_MAPPING auf dem Rechner erstellen, auf dem der Server läuft.


FORMSnn_OUTPUT_DATE/DATETIME_FORMAT

Zweck:  Diese beiden Umgebungsvariablen legen die Formatmasken fest, die Forms für Laufzeitausgabevorgänge bei Datums- und Datumzeitelementen verwendet, die keine eigenen, individuellen Masken haben.

Standardwert:  Siehe das Hilfethema Über Formatmasken für Datumsangaben.

Gültige Werte: Beliebige gültige Datum-/Datumzeit-Formatmaske.

Beispiel:

FORMS65_OUTPUT_DATETIME_FORMAT YYYY/MM/DD HH24:MI:SS


FORMS60_PATH

Standardwert:  ORACLE_HOME\FORMS60\PLSQLLIB

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

FORMS60_PATH=C:\oracle\apps\forms;C:\myfiles

Dieser Parameter gibt den Suchpfad für Dateien an, die in einer Laufzeitanwendung von Form Builder benutzt werden. Dies umfaßt Formdateien (.fmx), Menüdateien (.mmx), PL/SQL-Bibliotheken (.pll) und andere Objekte, die die Anwendung zur Laufzeit aus einer Datei lädt. Wenn Sie z.B. die Bilddatei scooter.tif importieren, sucht Form Builder in den mit FORMS60_PATH angegebenen Verzeichnissen nach dieser Datei.

Mit FORMS60_PATH können mehrere Verzeichnisse angegeben werden. Trennen Sie die Verzeichnisnamen in einer Liste mit Pfaden durch Semikolon (;).


FORMSnn_PLSQLV1_NAME_RESOLUTION

Standardwert:  OFF

Gültige Werte:  ON, OFF

Beispiel:

FORMS6i_PLSQLV1_NAME_RESOLUTION=ON

Mit dieser Umgebungsvariablen können Sie zwischen dem Verhalten von R4.5 und R5-und-höher für die Auflösung von Programmblocknamen zur Laufzeit wählen. Ein Wert von ON wählt das R4.5-Verhalten. Ein Wert von OFF (oder das Weglassen dieser Umgebungsvariablen überhaupt) wählt das R5-und-höher-Verhalten.

R4.5-Verhalten:

Wenn Forms einen Aufruf eines Programmblocks antrifft, sucht es zuerst in der aktuellen Form oder dem aktuellen Menü nach dem Programmblock. Danach werden die zugeordneten Bibliotheken durchsucht. Dieses Verhalten entspricht einer einfachen dynamischen Namensauflösung, da der aufgerufene Programmblock nicht identisch mit dem Programmblock ist, der während der Kompilierung aufgelöst wurde. In Situationen, in denen dieselbe Bibliothek mehreren Forms zugeordnet wird, behält darüber hinaus jede Form ihre eigenen eindeutigen Bibliotheksinformationen, einschließlich Instantiierungen, Paketstatus und Abhängigkeiten. Dies bedeutet, daß Abhängigkeitsinformationen nicht Forms-übergreifend gemeinsam benutzt werden.

Das R4.5-Verhalten hat folgende Nachteile:

•	Keine Forms-übergreifende gemeinsame Benutzung von Informationen. SHARE_LIBRARY_STATE bleibt wirkungslos.

•	Verlängerte Ausführungszeiten und höhere Speicherplatzbelegung (im Vergleich zu R5+).

R5+-Verhalten:

Wenn Forms einen Aufruf eines Programmblocks antrifft, sucht es ebenfalls zuerst in der aktuellen Form oder dem aktuellen Menü und danach in den zugeordneten Bibliotheken nach dem Programmblock. In den Fällen, in denen dieselbe Bibliothek mehreren Forms zugeordnet wird, behält jede Form jedoch nicht ihre eigenen eindeutigen Bibliotheksinformationen. Statt dessen werden die Instantiierungen von Programmblöcken Forms-übergreifend gemeinsam benutzt. Dies bedeutet, daß Abhängigkeitsinformationen Forms-übergreifend gemeinsam benutzt werden können.

Empfehlung:

Wegen der oben aufgeführten Nachteile und weil diese Umgebungsvariable in künftigen Releases nicht immer unterstützt werden wird, wird empfohlen, daß Sie das R4.5-Verhalten nicht auswählen.

Um eine dynamische Namensauflösung zu erhalten, verwenden Sie statt dessen die vordefinierte Prozedur Execute-Trigger. Wenn Argumente benötigt werden, benutzen Sie globale Variablen.


FORMS60_REPFORMAT

Standardwert:  Keiner

Gültige Werte:  HTML, PDF

Beispiel:

FORMS60_REPFORMAT=HTML

Wenn Sie einen Browser aufrufen, um einen Bericht aus einer Form über RUN_PRODUCT auszuführen, müssen Sie die Umgebungsvariable FORMS60_REPFORMAT festlegen. Mit diesem Parameter wird das Berichtformat angegeben.


FORMS60_TIMEOUT

Standardwert:  15

Gültige Werte:  1-1440 (1 Tag)

Beispiel:

FORMS60_OUTPUT=1440

Dieser Parameter gibt die Zeit in abgelaufenen Minuten an, bevor der Forms Server-Prozeß beendet wird, wenn keine Client-Kommunikation mit dem Forms Server stattfindet.


FORMSnn_USER_DATE/DATETIME_FORMAT

Zweck: Diese beiden Umgebungsvariablen legen die Formatmasken fest, die Forms zur Laufzeit benutzt, um Werte aus Elementen vom Typ DATE und DATETIME zu extrahieren, wenn diese Elemente keine eigenen individuellen, spezifischen Masken haben.

Standardwert: Siehe das Hilfethema Über Formatmasken für Datumsangaben.

Gültige Werte: Beliebige gültige Datum-/Datumzeit-Formatmaske. Mehrere Formatmasken können durch senkrechte Striche getrennt angegeben werden. Während der Konvertierung von Laufzeitelementen werden die Formatmasken in der angegebenen Reihenfolge benutzt, bis eine Konvertierung erfolgreich war (oder keine Formatmasken mehr vorhanden sind).

Beispiel:

FORMS65_USER_DATE_FORMAT  FXFMDD-MM-RRRR


FORMS60_USEREXITS

Standardwert:  Keiner

Gültige Werte:  Beliebige User Exit-DLL (zusammen mit dem absoluten Pfad)

Mit diesem Parameter können Sie mehrere DLLs definieren, die Fremdfunktionen enthalten, die aus der User Exit-Oberfläche aufgerufen werden können. Der Parameter FORMS60_USEREXITS umfaßt auch eine mit Semikolon begrenzte Liste der DLLs der Benutzeroberfläche.

Mit FORMS60_USEREXITS können mehrere DLLs angegeben werden. Benutzen Sie einen umgekehrten Schrägstrich (\), um die Verzeichnisse in einem Pfad voneinander zu trennen, und ein Semikolon (;), um vollständige Pfade voneinander zu trennen.

Wenn dieser Wert nicht explizit eingestellt wird, geht Form Builder von ORACLE_HOME\BIN\F45XTB.DLL aus.

Beispiel:

FORMS60_USEREXITS = C:\mathlib\add.dll;C:\mathlib\mult.dll


GRAPHICS60_PATH

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

GRAPHICS60_PATH=C:\oracle\apps\graphics;C:\myfiles

Dieser Parameter gibt den Suchpfad für Dateien an, die in einer Graphics-Laufzeitanwendung benutzt werden. Dies umfaßt Dateien von grafischen Anwendungen (.ogr), Bilder, externe Abfragen und andere Objekte, die die Anwendung zur Laufzeit aus einer Datei lädt. Wenn Sie z.B. die Bilddatei scooter.tif importieren, sucht Graphics Builder in den mit GRAPHICS60_PATH angegebenen Verzeichnissen nach dieser Datei.

Mit GRAPHICS60_PATH können mehrere Verzeichnisse angegeben werden. Benutzen Sie einen umgekehrten Schrägstrich (\), um die Verzeichnisse in einem Pfad zu trennen, und ein Semikolon (;), um vollständige Pfade zu trennen.


INTERRUPT (nur DOS SQL*Net-Benutzer)

Standardwert:  Keiner

Gültige Werte:  Derselbe Wert, der auch in der DOS-Datei CONFIG.ORA angegeben wird.

Mit diesem Parameter wird die Interrupt-Vektoradresse angegeben, die Oracle-Produkte unter DOS benutzen. Wenn Sie einen DOS SQL*Net-Treiber für Windows verwenden, überprüfen Sie Ihre Datei CONFIG.ORA im Oracle-Standardverzeichnis bei DOS. Wenn der INTERRUPT-Parameter in CONFIG.ORA eingestellt ist, müssen Sie ihn in der Registrierung auf denselben Wert einstellen. Wenn diese Variable in der DOS-Datei CONFIG.ORA nicht eingestellt ist, müssen Sie sie auch in der Registrierung nicht einstellen.

Hinweis:  Stellen Sie INTERRUPT nicht auf 103 ein, wenn Sie ein Speicherverwaltungsprogramm von einem fremden Hersteller benutzen, wie z.B. QEMM, 386MAX, CEMM oder EMM386. Sonst kommt es zu einem unerwarteten Verhalten nach dem Starten von SQLPME und SQL*Net.


LOCAL

Standardwert:  Keiner

Gültige Werte:  Beliebiges gültiges Präfix für  SQL*Net-Treiber, einschließlich Datenbank-Zeichenfolgenparametern. Weitere Informationen finden Sie in Oracle Network Administrator's Guide.

Dieser Parameter gibt den SQL*Net-Treiber und die vollständige DB-Adresse an, die das Produkt benutzt, wenn Sie bei der Anmeldung bei der Datenbank aus diesem Produkt heraus keinen Kommunikationstreiber angeben.

Wenn Sie den Parameter LOCAL hinzufügen, fügen Sie ihn nicht am Ende der Datei hinzu. Oracle-Produkte erkennen den LOCAL-Parameter nicht, wenn er als letzter Parameter angezeigt wird.

Hinweis:  Wenn Sie einen DOS SQL*Net-Treiber für Windows benutzen, prüfen Sie, ob der Parameter LOCAL in Ihrer Datei CONFIG.ORA im Oracle-Standardverzeichnis bei DOS gespeichert ist. Wenn LOCAL in CONFIG.ORA eingestellt ist, müssen Sie den Parameter in der Registrierung auf denselben Wert einstellen.


NLS_LANG

Standardwert:  AMERICAN_AMERICA.WE8ISO8859P1

Gültige Werte:  Im NLS Reference Manual finden Sie eine aktuelle Liste der verfügbaren Werte. Sie können auch die folgende Datei auf Ihrer CD überprüfen: \bonus\nls\nlsd2r1.wri

Beispiel:

NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1

Dieser Parameter bestimmt die Sprache, in der die Meldungsdateien angezeigt werden. NLS_LANG hat folgende Syntax:

NLS_LANG=<language>_<territory>.<char_set>

wobei:

language	die Sprache und die Regeln für die Anzeige von Meldungen sowie die Anzeige von Tages- und Monatsnamen angibt.
territory	das Land und die Regeln zur Berechnung der Wochen- und Tagesnummern angibt.
char_set	den Zeichensatz angibt, der für die Funktionen UPPER, LOWER und INITCAP verwendet wird, sowie die Sortierart, die von einer Abfrage ORDER BY benutzt wird. Dieses Argument kontrolliert auch den Zeichensatz, der zur Anzeige von Meldungen benutzt wird.


OleCreateObjPoolInMemory

Standardwert:  0

Gültige Werte:  0 oder 1

Beispiel:

OleCreateObjPoolInMemory=0

Bei Report Builder gibt dieser Parameter an, ob der OLE2-Objektpool in temporären Dateien (0) oder im Speicher (1) erstellt werden soll. Wenn Sie den Pool im Speicher erstellen, wird die Leistung verbessert, indem der Plattenzugriff reduziert wird. Wenn eine große Anzahl von OLE2-Objekten oder große OLE2-Objekte (z.B. Bilder) vorhanden sind, wird möglicherweise viel Speicherplatz benötigt. Bei der Festlegung der Anzahl von vorhandenen OLE2-Objekten beachten Sie, daß ein OLE2-Boilerplate-Objekt in einem Wiederholungsrahmen ein OLE2-Objekt enthält. Ein OLE2-Feld enthält ein OLE2-Objekt für jede Instanz des Feldes.


OleDoNotUpdateLinks

Standardwert:  0

Gültige Werte:  0 oder 1

Beispiel:

OleDoNotUpdateLinks=0

Bei Report Builder aktiviert (0) oder deaktiviert (1) dieser Parameter die Aktualisierung von Links, wenn Sie den Layouteditor öffnen oder den Bericht ausführen. Verknüpfte OLE2-Objekte enthalten im Cache gespeicherte Präsentationen von deren Quellobjekten. Diese im Cache gespeicherten Präsentationen werden von dem entsprechenden OLE2-Server basierend auf den bestehenden Objektdaten aktualisiert.

Diese Aktualisierungen erfolgen automatisch oder manuell je nach Linktyp. Da beim Aktualisieren der im Cache gespeicherten Präsentationen der OLE2-Server gestartet werden muß, können Sie die Aktualisierung deaktivieren, um die Leistung zu verbessern, wenn Sie wissen, daß die Quellobjekte nicht geändert wurden oder wenn Sie die neuesten Änderungen nicht benötigen. Beachten Sie, daß Sie Aktualisierungen immer noch aus dem Standard-Dialogfeld abbrechen können, das angezeigt wird, während die OLE2-Objekte aktualisiert werden, selbst wenn Sie diese Option nicht angeben.


OleUpdateLinksPrompt

Standardwert:  0

Gültige Werte:  0 oder 1

Beispiel:

OleUpdateLinksPrompt=0

Bei Report Builder gibt dieser Parameter an, daß eine Eingabeaufforderung ausgegeben (0) oder nicht ausgegeben (1) werden soll, wenn die Quelle eines verknüpften Objekts nicht gefunden wird. Wenn die Quelle eines Objekts während eines Aktualisierungsversuchs nicht gefunden wird, wird ein Dialogfeld angezeigt, in dem Sie die Quelle des Links erneut angeben oder den Fehler ignorieren können. Wenn Sie nicht präsent sind, um das Dialogfeld zu akzeptieren (der Bericht wird z.B. über Nacht ausgeführt), sollten Sie diese Eingabeaufforderung deaktivieren, um sicherzustellen, daß die Berichtausführung abgeschlossen wird.


ORACLE_HOME

Standardwert:  C:\ORAWIN95

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

ORACLE_HOME=C:\orawin95

Mit diesem Parameter wird das Standardverzeichnis angegeben, in dem Oracle-Produkte für Windows installiert sind. Dieses Verzeichnis ist das "oberste" Verzeichnis in der Oracle-Verzeichnishierarchie.

Verwendungshinweise

•	Wenn Sie Reports Runtime verwenden, darf die kombinierte Länge von ORACLE_HOME und ORACLE_PATH 255 Zeichen nicht überschreiten.


ORACLE_PATH

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

ORACLE_PATH=C:\oracle\apps\forms;C:\oracle\apps\graphics;
C:\oracle\apps\reports

Dieser Parameter gibt den Suchpfad für Dateien an, die von Forms, Graphics oder Reports Runtime referenziert werden. Beachten Sie, daß die von ORACLE_PATH angegebenen Verzeichnisse nach den Verzeichnissen durchsucht werden, die mit einem produktspezifischen Parameter angegeben werden: FORMS60_PATH, GRAPHICS60_PATH oder REPORTS60_PATH.

ORACLE_PATH kann mehrere Verzeichnisse angeben. Trennen Sie die Verzeichnisnamen in einer Liste mit Pfaden durch ein Semikolon (;).

Verwendungshinweise

•	Wenn Sie Reports Runtime benutzen, darf die kombinierte Länge von ORACLE_HOME und ORACLE_PATH 255 Zeichen nicht überschreiten.


ORAINFONAV_DOCPATH

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

ORAINFONAV_DOCPATH=C:\orawin95\oin

Dieser Parameter gibt den Speicherort des Inhaltsverzeichnisses und des Index für die Online-Dokumentation an.


REMOTE

Standardwert:  Keiner

Gültige Werte:  Beliebiges gültiges Präfix und Parameter für  SQL*Net-Treiber

Beispiel:

REMOTE=P:PIPER

Dieser Parameter gibt den Standard- und entfernten SQL*Net-Treiber an, der bei der Verbindung über eine lokale Datenbank benutzt werden soll. Dieser Parameter kann die standardmäßigen SQL*Net-Parameter (vollständige DB-Adresse) umfassen,

wobei P: das Netzwerk-Präfix für Named Pipes und Piper der Datenbankname ist.

Wenn sich ein Benutzer anmeldet und eine Verbindung mit einem expliziten Treiberpräfix angibt, das dem in REMOTE angegebenen Präfix entspricht, jedoch keine SQL*Net-Parameter angibt, werden die in REMOTE angegebenen Parameter benutzt. Mit diesem Parameter kann der DBA eine "normale" Netzwerkverbindung definieren, für die der SQL*Net-Benutzer keine Verbindungsparameter angeben muß. Sie können diesen Parameter jederzeit auf der Befehlszeile zurücksetzen.

Hinweis:  Wenn Sie einen DOS SQL*Net-Treiber benutzen, prüfen Sie, ob der Parameter REMOTE in Ihrer Datei CONFIG.ORA im Oracle-Standardverzeichnis bei DOS eingestellt ist. Wenn REMOTE in CONFIG.ORA eingestellt ist, müssen Sie den Parameter in der Registrierung auf denselben Wert einstellen.


REPORTS60_CGIDIAGBODYTAGS

Diese Variable gibt bei Reports Web CGI die HTML-Tags an, die als <BODY...>-Tags in der RWCGI60-Diagnose-/Debugging-Ausgabe eingefügt werden. Mit dieser Umgebungsvariablen können Sie z.B. die Text-/Hintergrundfarbe und Bilder einrichten.


REPORTS60_CGIDIAGHEADTAGS

Diese Variable gibt bei Reports Web CGI HTML-Tags an, die zwischen <HEAD> ... </HEAD>-Tags in der RWCGI60-Diagnose-/Debugging-Ausgabe eingefügt werden. Mit dieser Variablen können Sie z.B. die Tags <TITLE> oder <META...> einrichten.


REPORTS60_CGIHLP

Diese Variable gibt bei Reports Web CGI den URL/URI der Hilfedatei RWCGI60 an, zu dem navigiert wird, wenn RWCGI60 mit einer leeren Anforderung aufgerufen wird:

http://your_webserver/your_virtual_cgi_dir/rwcgi60.exe?

Wenn Sie REPORTS60_CGIHLP z.B. auf http://www.yahoo.com einstellen, wird zu diesem URL gegangen. Wenn die Variable auf myhelpfile.htm eingestellt wird, wird die Datei:

http://your_webserver/myhelpfile.htm

angezeigt. Wenn diese Variable nicht definiert ist, wird ein Standard-Hilfetext angezeigt.


REPORTS60_CGIMAP

Diese Variable definiert bei Reports Web CGI den vollständigen Dateinamen/Speicherort der RWCGI60-Zuordnungsdatei, wenn eine Konfiguration mit Zuordnungsdatei benutzt wird:

c:\orant\report60\mymap.dat


REPORTS60_CGINODIAG

Wenn diese Variable definiert ist, deaktiviert sie bei Reports Web CGI die gesamte Debugging-/Diagnose-Ausgabe von RWCGI60.

http://your_webserver/cgi-bin/rwcgi60.exe/help?

Verwendungshinweis:

Der Parameter kann nicht benutzt werden, wenn REPORTS60_CGINODIAG definiert ist.


REPORTS60_CGIPATHONLYURL

Wenn diese Variable definiert ist (wobei der Wert keine Rolle spielt), erzwingt sie bei Reports Web CGI, daß RWCGI60 alle URLs als partielle, Nur-Pfad-URLs an den Browser zurückgibt, d.h. anstatt folgendes zurückzugeben:

Location: http://your_webserver:port/path

wird nur:

Location: /path

Mit dieser Variablen können Probleme bei der Einrichtung von Web-Servern gelöst werden, die mehrere Ports benutzen, einschließlich einem Standard-Port.


 REPORTS60_COOKIE_EXPIRE

Standardwert:  30

Gültige Werte:  Beliebige Anzahl von Minuten

Beispiel:

REPORTS60_COOKIE_EXPIRE=30

Im Hinblick auf die Sicherheit von Reports Server bestimmt diese Variable die Leerlaufzeit des Cookie (z.B. REPORTS60_COOKIE_EXPIRE=30). Mit Cookies werden codierte Benutzernamen und Kennwörter auf der Client-Seite gespeichert. Wenn CGI einen Cookie von dem Client empfängt, vergleicht CGI die in dem Cookie gespeicherte Zeit mit der aktuellen Systemzeit.

Wenn die Zeit größer ist als die Anzahl von Minuten, die in dem Parameter REPORTS60_COOKIE_EXPIRE definiert ist (z.B. 30 Minuten), weist CGI den Cookie zurück und gibt die Form mit der Datenbank-Berechtigungsprüfung sowie eine Fehlermeldung an den Client zurück. Der Benutzer muß eine erneute Berechtigungsprüfung durchführen, um den Bericht ausführen zu können.


REPORTS60_DB_AUTH

Standardwert:  dbauth.htm

Gültige Werte:  Beliebige html-Datei mit speziellen Berechtigungsprüfungen. Es wird empfohlen, daß Sie den Standardwert beibehalten.

Beispiel:

REPORTS60_DB_AUTH=dbauth.htm

Diese Variable gibt die Vorlage zur Datenbank-Berechtigungsprüfung an, mit der Benutzer sich bei der Datenbank anmelden können.


REPORTS60_SYS_AUTH

Standardwert:  sysauth.htm

Gültige Werte: Beliebige html-Datei mit speziellen Berechtigungsprüfungen. Es wird empfohlen, daß Sie den Standardwert beibehalten.

Example:

REPORTS60_SYS_AUTH=sysauth.htm

Diese Variable gibt die Berechtigungsprüfungsvorlage an, mit der Benutzername und Kennwort geprüft werden können, wenn Benutzer Berichtanforderungen auf einem eingeschränkten Reports Server ausführen.


REPORTS60_ENCRYPTION_KEY

Standardwert:  Reports6.0

Gültige Werte:  Beliebiger Codierungsschlüssel

Beispiel:

REPORTS60_ENCRYPTION_KEY=reports6.0

Gibt den Codierungsschlüssel an, mit dem der Benutzername und das Kennwort codiert werden.


REPORTS60_REPORTS_SERVER

Gültige Werte:  Beliebiger Reports Server-Diensteintragsname

Beispiel:

REPORTS60_REPORTS_SERVER=repserver

Gibt die standardmäßigen Reports Server for Web Cartridge- oder Web CGI-Anforderungen an. Wenn dieser Parameter festgelegt ist, können Sie das Befehlszeilenargument SERVER in Berichtanforderungen weglassen, um diese mit dem Standard-Server auszuführen. Sie können das Befehlszeilenargument SERVER aber auch aufnehmen, um den Standardwert außer Kraft zu setzen.


REPORTS60_OWSDIAGBODYTAGS

Diese Variable gibt bei der Reports Web Cartridge HTML-Tags an, die als <BODY...>-Tag in der RWOWS60-Diagnose-/Debugging-Ausgabe eingefügt werden. Mit dieser Umgebungsvariablen könnten Sie z.B. Text-/Hintergrundfarbe, Bilder usw. einrichten.


REPORTS60_OWSDIAGHEADTAGS

Diese Variable gibt bei der Reports Web Cartridge HTML-Tags an, die zwischen <HEAD> ...</HEAD>-Tags in der RWOWS60-Diagnose-/Debugging-Ausgabe eingefügt werden. Sie könnten diese Umgebungsvariable z.B. benutzen, um <TITLE>- oder <META...>-Tags einzurichten.


REPORTS60_OWSHELP

Gültige Werte:  Beliebiger Pfad- und Dateiname oder URL

Diese Umgebungsvariable definiert bei Reports Web Cartridge den URL/URI der RWOWS60-Hilfedatei, zu dem navigiert wird, wenn RWOWS60 mit einer leeren Anforderung aufgerufen wird:

http://your_webserver/rwows60?

Wenn Sie diese Umgebungsvariable z.B. auf http://www.yahoo.com einstellen, wird zu diesem URL gegangen. Wenn sie auf myhelpfile.htm eingestellt wird, wird die folgende Datei angezeigt:

http://your_webserver/myhelpfile.htm

Wenn dieser Parameter nicht definiert ist, wird ein Standard-Hilfetext angezeigt.


REPORTS60_OWSMAP

Diese Variable definiert bei Reports Web Cartridge den vollständigen Dateinamen/Speicherort der RWOWS60-Zuordnungsdatei (sofern eine Konfiguration mit Zuordnungsdatei benutzt wird):

C:\ORANT\REPORTS60\MYMAP.DAT


REPORTS60_OWSNODIAG

Wenn diese Variable definiert ist, deaktiviert sie bei Reports Web Cartridge die gesamte Debugging-/Diagnose-Ausgabe aus RWOWS60:

http://your_webserver/rwows60/help?

Diese Variable kann nicht benutzt werden, wenn REPORTS60_OWSNODIAG definiert ist.


REPORTS60_OWSPATHONLYURL

Wenn diese Variable definiert ist (wobei der Wert keine Rolle spielt), veranlaßt sie bei Reports Web Cartridge, daß RWOWS60 Nur-Pfad-URLs (z.B. "/rscache/..." anstelle von "http://mywebsrv.com:1550/rscache/..." ) bei der HTTP-Umleitung zu der Berichtausgabe und in der von RWOWS60 generierten Diagnoseausgabe benutzt. Mit dieser Vorgehensweise kann der Client-Browser gezwungen werden, die URL-Originalanforderung in dem Feld "Speicherort:" beizubehalten, nachdem die Berichtausgabe abgerufen wurde. Normalerweise schaltet RWOWS60 den URL auf den Speicherort der Berichtausgabe um (d.h. das Verzeichnis, das mit REPORTS60_WEBLOC angegeben wird) und zeigt den Namen der Berichtausgabedatei an, die einen wenig aussagefähigen Namen wie z.B. 12345679.htm hat, da sie gerade generiert wurde. Durch Einstellung dieses Parameters kann diese "URL-Umschaltung" vermieden werden. Diese Variable kann nur benutzt werden, wenn alle URLs den Standard-Port verwenden (typischerweise 80).

Der Nachteil bei der Einstellung dieses Parameters besteht jedoch darin, daß zugehörige Dateien (wie z.B. Bilddateien), die von der Haupt-Berichtausgabedatei abhängig sind, vom Browser nicht abgerufen werden (obwohl sie erfolgreich an dem Speicherort erstellt wurden, auf den REPORTS60_WEBLOC zeigt). Dies kann umgangen werden, indem entweder ein Tag <BASE HREF="..."> oder <META HREF="..."> (wobei der Speicherort der Hauptdatei als vollständiger oder partieller URL angegeben wird) in der Berichtdefinition angegeben wird, so daß dieses Tag in der Haupt-Berichtausgabedatei aufgenommen wird. Sie können aber auch REPORTS60_WEBLOC so einstellen, daß auf den Speicherort der ausführbaren Datei RWOWS60 gezeigt wird.

Mit der Einstellung von REPORTS60_OWSPATHONLYURL können auch bestimmte Intranet-/Internet-Konfigurationen umgangen werden, bei denen derselbe Rechner mehrere unterschiedliche IP-Adressen gleichzeitig (bei verschiedenen Netzwerkkarten) haben kann, weil die Abhängigkeit der HTTP-Umleitung auf den Rechnernamen oder die IP-Adresse wegfällt.


REPORTS60_PATH

Standardwert:  ORACLE_HOME\REPORT60\DEMO;ORACLE_HOME\REPORT60\DEMO\BITMAP;ORACLE_HOME\REPORT60\DEMO\REQFILES

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

REPORTS60_PATH=C:\oracle\apps\reports;C:\myfiles

Mit dieser Umgebungsvariablen werden Berichte und externe Objekte gesucht, die Sie in Ihren Berichten verwenden, wie z.B. PL/SQL-Bibliotheken, externe Abfragen und externer Boilerplate. Mit dieser Variablen können Sie Berichte erstellen, die jederzeit betriebssystemübergreifend portiert werden können, indem Verzeichnispfade nicht mehr fest codiert werden müssen.

Hinweis: REPORTSPATH ist auf 256 Zeichen begrenzt.

Definieren Sie REPORTS60_PATH genau so, wie Sie andere Umgebungsvariablen in Ihrem Betriebssystem definieren, wobei Sie plattformspezifische Regeln berücksichtigen müssen, wie Pfadlänge usw.

Neben den Verzeichnispfaden können Sie das Schlüsselwort DB angeben, wenn Sie REPORTS60_PATH definieren. Damit wird Report Builder angewiesen, die Datenbank zu durchsuchen, bei der Sie momentan angemeldet sind.

Angenommen, Sie haben auf einer Unix-Plattform folgende Angaben gemacht:

setenv REPORTS60_PATH
/home/tkostin/pay:/home/tkostin/receive:DB

Report Builder durchsucht zuerst das Verzeichnis /home/tkostin/pay. Wenn die gewünschte Datei nicht gefunden wird, wird /home/tkostin/receive durchsucht. Wenn die Datei immer noch nicht gefunden wird, wird die Datenbank durchsucht, bei der Sie sich bei Beginn der Report Builder-Sitzung angemeldet haben.


REPORTS60_TERMINAL

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

REPORTS60_TERMINAL=C:\mytermdefs

Mit dieser Umgebungsvariablen werden Terminaldefinitionen gesucht, die Sie in Ihren Berichten im Zeichenmodus verwenden. Der Pfad, den Sie für diese Variable angeben, ist gegenüber der Umgebungsvariablen ORACLE_TERMINAL vorrangig.

Definieren Sie REPORTS60_TERMINAL genau wie andere Umgebungsvariablen in Ihrem Betriebssystem, wobei plattformspezifische Regeln wie Pfadlänge usw. berücksichtigt werden müssen.


REPORTS60_TMP

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

REPORTS60_TMP=C:\tmp

Mit dieser Umgebungsvariablen wird das Verzeichnis bestimmt, in dem die temporären Dateien von Report Builder gespeichert werden sollen. Report Builder benutzt nur ein Verzeichnis für diesen Zweck. Definieren Sie nicht mehr als ein Verzeichnis.

Definieren Sie VREPORTS60_TMP genau wie andere Umgebungsvariablen in Ihrem Basis-Betriebssystem, wobei plattformspezifische Regeln wie Pfadlänge berücksichtigt werden müssen. Wenn Sie REPORTS60_TMP nicht definieren, wird standardmäßig das aktuelle Arbeitsverzeichnis benutzt.


REPORTS60_USEREXIT

Standardwert:  Keiner

Gültige Werte:  Beliebige User Exit-DLL (zusammen mit dem zugehörigen absoluten Pfad)

Beispiel:

REPORTS60_USEREXIT=C:\mydll.dll;d:\mynew.dll;e:\bin\speed.dll

Mit diesem Parameter können Sie mehrere DLLs zur Benutzung durch Report Builder und die zugehörigen ausführbaren Dateien (z.B. Reports Runtime) definieren. Bei diesen DLLs handelt es sich um Programmodule, die von Ihnen erstellt wurden, damit sie von den ausführbaren Report Builder-Dateien aufgerufen werden können.

Mit REPORTS60_USEREXITS können mehrere DLLs angegeben werden. Trennen Sie die Verzeichnisse in einem Pfad durch einen umgekehrten Schrägstrich (\). Um vollständige Pfade zu trennen, verwenden Sie ein Semikolon (;).

Wenn dieser Wert nicht explizit eingestellt ist, sucht Report Builder nach einer 60xtb32.dll entsprechend der Pfadvariablen des Systems.


UI_ICON

Standardwert:  Keiner

Gültige Werte:  Beliebiges Verzeichnis in beliebigem Laufwerk

Beispiel:

UI_ICON=C:\icon

Diese Umgebungsvariable bestimmt das Verzeichnis, in dem Sie Symbole speichern möchten, die für Schaltflächen in dem Layout verwendet werden. Report Builder verwendet nur ein Verzeichnis für diesen Zweck. Definieren Sie nicht mehr als ein Verzeichnis.

Definieren Sie UI_ICON genau wie Sie andere Umgebungsvariablen in Ihrem Basis-Betriebssystem definieren, wobei plattformspezifische Regeln wie Pfadlänge usw. berücksichtigt werden müssen.


USERNAME

Standardwert:  Keiner

Gültige Werte:  Beliebiger gültiger Oracle-Benutzername (ohne das Präfix OPS$)

Beispiel:

USERNAME=dsanvita

Mit diesem Parameter wird der variable Teil eines standardmäßigen Anmelde-Accounts angegeben. In der Datenbankdokumentation finden Sie weitere Informationen über die Einstellung des Parameters USERNAME.


WIN_REMOTE_SESSIONS

Standardwert:  Keiner

Gültige Werte:  0-33

Wenn Sie bei der Anmeldung eine Fehlermeldung im Bereich ORA-3100 bis ORA-3199 erhalten, ist möglicherweise nicht genügend Echtzeitspeicher vorhanden, um einen Kommunikationspuffer mit einem Oracle-Server herzustellen. Dieses Problem wird mit NETINIT7.EXE gelöst, indem Speicher für Server-Verbindungen reserviert wird.

Dieser Parameter legt die Anzahl von Verbindungen mit einem entfernten Server fest, für die NETINIT7 Speicherplatz reservieren soll. Bei der Einstellung des Parameters WIN_REMOTE_SESSIONS berücksichtigen Sie folgende Regeln:

•	Wenn Sie WIN_REMOTE_SESSIONS auf 0 einstellen, reserviert NETINIT7 keinen Speicherplatz für entfernte Server-Verbidungen.

•	Wenn Sie WIN_REMOTE_SESSIONS auf die Werte 1 bis 33 einstellen, wird Speicher für die angegebene Anzahl von Verbindungen reserviert. Beachten Sie, daß NETINIT7 12 K Echtzeitspeicher für jede entfernte Server-Verbindung reserviert.

•	Ein empfohlener Wert für WIN_REMOTE_SESSIONS ist 5. Wenn Sie WIN_REMOTE_SESSIONS auf 5 einstellen, sollten genügend Sitzungen erstellt werden, damit Sie mehrere Produkte ausführen können.

•	Wenn Sie den Parameter WIN_REMOTE_SESSIONS nicht hinzufügen, reserviert NETINIT7 Speicherplatz für eine entfernte Server-Verbindung.

Führen Sie folgende Schritte aus, um NETINIT7 zu benutzen:

1	Konfigurieren Sie die Anzahl von Sitzungen, indem Sie den Parameter WIN_REMOTE_SESSIONS hinzufügen.

2	Erstellen Sie das Symbol NETINIT7 in der Oracle-Programmgruppe. (Weitere Informationen über das Erstellen von Symbolen finden Sie in der Microsoft Windows-Dokumentation.) Geben Sie den folgenden Pfad in das Feld Befehlszeile im Windows-Dialogfeld Programmeigenschaften ein:

ORACLE_HOME\bin\netinit7.exe

3	Starten Sie NETINIT7, indem Sie in der Oracle-Programmgruppe auf das Symbol doppelklicken. Stellen Sie sicher, daß NETINIT7 gestartet ist, bevor Sie ein Produkt starten. Wenn NETINIT7 automatisch beim Starten von Windows ausgeführt werden soll, nehmen Sie das Symbol NETINIT7 in der Windows-Programmgruppe START auf.

NETINIT7 versucht, Echtzeitspeicher für die konfigurierte Anzahl von Server-Verbindungen zu reservieren. Wenn NETINIT7 den erforderlichen Speicher nicht zuweisen kann, wird eine Warnmeldung angezeigt und die konkrete Anzahl von Sitzungen angegeben, für die Speicherplatz zugewiesen wurde.

Nachdem Speicherplatz zugewiesen wurde, wird NETINIT7 als Symbol angezeigt. Wenn Sie NETINIT7 wiederherstellen, wird die Gesamtanzahl von konfigurierten Sitzungen und der gesamte belegte Speicherplatz angezeigt. Wenn Sie NETINIT7 schließen, wird der nicht benötigte Sitzungsspeicher freigegeben. Wenn eine Anwendung immer noch Sitzungsspeicher benutzt, unterrichtet NETINIT7 Sie, daß sich die Anwendungen abmelden müssen, bevor der Sitzungsspeicher freigegeben werden kann.

Hinweis:  Wenn Sie ein Produkt vor NETINIT7 starten, weist dieses eigenen Sitzungsspeicher zu, der von NETINIT7 nicht erkannt wird. NETINIT7 versucht, den konfigurierten Sitzungsspeicher zusätzlich zu dem Speicher zuzuweisen, der schon von dem von Ihnen gestarteten Produkt zugewiesen wurde.


XMITTR (nur DOS-Benutzer)

Standardwert:  Keiner

Gültige Werte:  Derselbe Wert, wie in der DOS-Datei CONFIG.ORA angegeben.

Dieser Parameter gilt nur für Benutzer von ausführbaren Oracle-Routinen im geschützten Modus. Prüfen Sie die Datei CONFIG.ORA im Oracle-Standardverzeichnis bei DOS. Wenn der Parameter XMITTR in CONFIG.ORA eingestellt ist, müssen Sie ihn in der Registrierung auf denselben Wert einstellen. Wenn diese Variable in der DOS-Datei CONFIG.ORA nicht eingestellt ist, müssen Sie sie in der Registrierung ebenfalls nicht einstellen.

XMITTR (Extended Memory Manager Interrupt Vector) ist eine Variable, mit der der Interrupt-Vektor angegeben wird, der für die Einsprungstelle in die XMM/MTD-Interrupt-Services (Extended Memory Manager/Mode Transition Driver) benutzt werden soll. Um einen anderen Vektor zu benutzen, wird der neue Interrupt-Vektor in Form einer Dezimalzahl ausgedrückt. XMITTR darf nur benutzt werden, wenn ein anderes Programm in Ihrem System Interrupt100 decimal oder 64 hexadecimal benutzen muß.

Hinweis:  Stellen Sie XMITTR nicht auf 103 ein, wenn Sie ein Speicherverwaltungsprodukt von einem fremden Hersteller benutzen, wie z.B. QEMM, 386MAX, CEMM oder EMM386. Sonst kommt es nach dem Laden von SQLPME und SQL*Net zu einem unerwarteten Verhalten.


Beispiele für die PL/SQL V1-Konvertierung

  Verwandte Themen 	   Alle Beispiele

Standardausdrücke entfernen

NULL zu RETURN hinzufügen

Veraltete vordefinierte Prozeduren ersetzen

Length-Funktion

NULL an überladenes Unterprogramm übergeben

Fehlende RETURN-Anweisung

Prozedurnamen eindeutig in einem Paket umbenennen

Paket-Präfix entfernenx

Reservierte Wörter

Längen-Integritätsregeln entfernt

Variablen-Deklarationen


Dialogfeld Datentabellen auswählen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Datentabellen auswählen können Sie Datenquellobjekte aus der angemeldeten Datenbank in Ihre Abfrage einfügen.

Dieses Dialogfeld enthält:

Anzeigen	Gibt an, ob Tabellen, Ansichten, Abfragen, Snapshots und/oder Synonyme in dem Listenfeld angezeigt werden sollen oder nicht.
Dropdown-Feld	Gibt an, aus welcher Datenquelle die Objekte angezeigt werden sollen. Sie können auch eine Tabelle aus einem separaten Account bzw. einer separaten Datenbank auswählen.
Datentabellen auswählen	Listet die verfügbaren Datenquellobjekte auf, die Sie in Ihrer Abfrage aufnehmen können. Tip
Info	Zeigt Informationen über das ausgewählte Objekt an: Art, Name, Eigentümer, Erstellungsdatum und Kommentare.
Aufnehmen	Nimmt das ausgewählte Objekt im Arbeitsbereich von Query Builder auf.
Schließen	Schließt das Dialogfeld, ohne ein Datenquellobjekt aufzunehmen.


Auf andere Accounts in der aktuellen Datenbank zugreifen

  Verwandte Themen

So greifen Sie auf Tabellen in anderen Accounts in der aktuellen Datenbank zu:

1	Klicken Sie auf den Namen der aktuellen Datenbank. Die Schaltfläche Aufnehmen wird zu einer Schaltfläche Öffnen. In dem Listenfeld wird eine Liste mit Accounts in der aktuellen Datenbank angezeigt.

2	Klicken Sie auf den Namen des zu öffnenden Accounts.

3	Klicken Sie auf Öffnen, oder doppelklicken Sie einfach auf den Account-Namen. Query Builder zeigt eine Liste mit Tabellen in diesem Account an. Die Schaltfläche Öffnen wird wieder zur Schaltfläche Aufnehmen, so daß Sie Tabellen wie üblich aufnehmen können.


Andere Accounts öffnen

  Verwandte Themen

Wenn die gewünschte Tabelle nicht in der aktuellen Datenbank aufgeführt wird, können Sie zu anderen Accounts und Datenbanken navigieren und Tabellen aus diesen Accounts auswählen.

So navigieren Sie zu anderen Accounts und Datenbanken:

1	Klicken Sie auf das Feld über der Liste mit Tabellen. Daraufhin sehen Sie zwei Auswahlen: den Namen der aktuellen Datenbank und das Wort Datenbanken.

2	Um auf Tabellen in anderen Accounts in der aktuellen Datenbank zuzugreifen, klicken Sie hier.

Wenn Sie sich bei einer aufgeführten Datenbank nicht anmelden können, ist dies möglicherweise auf einen ungültigen Link zurückzuführen, der durch ein Netzwerkproblem oder ein geändertes entferntes Kennwort zurückzuführen ist. Nehmen Sie in diesem Fall Verbindung mit dem Datenbankadministrator auf.


Tabellen mehrmals aufnehmen

  Verwandte Themen

Wenn Sie dieselbe Tabelle mehr als einmal in einer Abfrage aufnehmen, werden doppelten Tabellen automatisch vom System generierte Aliasnamen zugeordnet, die aus dem Namen der Basistabelle gefolgt von einem Unterstreichungszeichen und einer alphanumerischen Sequenz bestehen.


Dialogfeld Zus. Tabellen auswählen

Beschreibung  Mit dem Dialogfeld Zus. Tabellen auswählen können Sie Tabellen aufnehmen, die mit der ausgewählten Tabelle im Fenster Abfrage verbunden sind.

Dieses Dialogfeld enthält:

Anzeigen	Diese Option ist nicht verfügbar.
Dropdown-Feld	Gibt an, ob alle zusammengehörigen Tabellen angezeigt werden sollen oder nicht.
Ausgewählte Datentabellen	Führt die verfügbaren zusammengehörigen Tabellen auf. Tip
Info	Zeigt Informationen über die ausgewählte Tabelle an: Art, Name, Eigentümer, Erstellungsdatum und Kommentare.
Aufnehmen	Nimmt die ausgewählte Tabelle auf.
Schließen	Schließt das Dialogfeld, ohne eine zusammengehörige Tabelle aufzunehmen.


Dialogfeld Tabelle umbenennen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Tabelle umbenennen können Sie die momentan aktive Tabelle umbenennen.

Dieses Dialogfeld enthält:

Standard-Tabellenname	Gibt den aktuellen Namen der Tabelle an.
Listenfeld	Führt die Tabellen auf, die geöffnet sind und umbenannt werden können.
Neuer Name	Gibt den neuen Tabellennamen an.
Definieren	Aktualisiert den Tabellennamen, während das Dialogfeld geöffnet bleibt.


Umbenannte Tabellen identifizieren

In einer gespeicherten Abfrage wird nicht sofort deutlich, ob eine bestimmte Tabelle einen benutzerdefinierten Namen oder den Originalnamen hat.

So stellen Sie fest, ob eine bestimmte Tabelle umbenannt wurde:

1	Klicken Sie auf [image] in der Symbolleiste.

2	Klicken Sie auf die betreffende Tabelle in der Liste Verfügbare Tabellen.

Wenn die Tabelle umbenannt wurde, wird der Aliasname in dem Feld Neuer Name: und ein anderer Name (der Original-Tabellenname) in dem Feld Standard-Tabellenname: angezeigt.

SQL-Benutzer können umbenannte Tabellen auch identifizieren, indem Sie auf [image] in der Symbolleiste klicken. Dadurch wird das Dialogfeld SQL zeigen aufgerufen, in dem Namensänderungen in der SELECT-Anweisung in der SQL-Standardsyntax für Tabellenaliase angezeigt werden.


Dialogfeld Beziehung festlegen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Beziehung festlegen können Sie einfache, Selbst-, zusammengesetzte, nichtentsprechende und Ungleichheitsbeziehungen zwischen zwei Tabellen erstellen.

Dieses Dialogfeld enthält:

Beziehung	Gibt die Ursprungs- (in A->) und Ziel- (in B->) Spaltennamen an.
Operator	Gibt die Art der Beziehung zwischen den Spalten an.
Beziehung in Abfrage verwenden	Gibt an, ob die Beziehung in der Abfrage benutzt wird. Standardmäßig ist dieses Kontrollkästchen ausgewählt.
Optionsschaltfläche A nicht in B	Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind, außerdem in Daten, die in Tabelle A vorhanden sind, jedoch nicht in Tabelle B.
Optionsschaltfläche B nicht in A	Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind, außerdem in Daten, die in Tabelle B vorhanden sind, jedoch nicht in Tabelle A.
Optionsschaltfläche Nichtentspr. unterdrücken	Standardwert. Gibt an, daß die abgerufenen Daten in beiden Tabellen gemeinsam vorhanden sind.


Über Beziehungen

  Verwandte Themen

Eine relationale Datenbank besteht aus einer Reihe von zusammengehörigen Tabellen. Jede Tabelle besteht aus Spalten (die gelegentlich als Felder bezeichnet werden), die vertikal angeordnet sind. Jede Spalte hat einen Namen und enthält einen eindeutigen Datentyp.

Mit Beziehungen oder Joins wird definiert, in welchem Verhältnis eine Spalte in einer Tabelle zu einer Spalte in einer anderen Tabelle steht. In vielen Fällen sind die benötigten Beziehungen schon in der Datenbank definiert. Mit Beziehungen wird auch die Datenredundanz verringert. Wenn zwischen Spalten in verschiedenen Tabellen eine Beziehung besteht, können Sie die Spalten gemeinsam in einer Abfrage benutzen. Hinweis

Zusammengehörige Spalten benutzen nicht immer dieselben Namen. Sie können Spalten, die denselben Datentyp haben, immer in eine Beziehung zueinander stellen. In bestimmten Fällen können Sie auch eine Beziehung zwischen Spalten unterschiedlicher Datentypen erstellen, wenn die Beziehung sinnvoll ist. So können Sie z.B. eine Spalte vom Typ Zahl mit einer Zeichenspalte verbinden, da eine Zahl auch als Zeichen interpretiert werden kann. Eigentlich kann nahezu jede Spalte (mit Ausnahme von langen Textspalten) in eine Beziehung zu Zeichenspalten gesetzt werden.

Beziehungen können benutzerdefiniert (temporär) sein oder in einem zugrundeliegenden Data Dictionary erstellt werden. Beziehungen im Data Dictionary werden automatisch angezeigt, wenn Sie zusammengehörige Tabellen aufnehmen (Tabellen, die über eine Primär-/Fremdschlüsselbeziehung verfügen). Sie müssen nichts tun, um diese Beziehungen zu benutzen, da sie immer gültig sind. Sie können mit Schema Builder erstellt oder geändert werden.

Benutzerdefinierte Beziehungen sind nur für die Abfrage gültig, in der Sie sie erstellen. Durch das Erstellen einer benutzerdefinierten Beziehung wird keine entsprechende permanente Beziehung in der zugrundeliegenden Tabelle erstellt. Der Hauptunterschied zwischen den beiden Beziehungen besteht darin, daß Sie bei einer benutzerdefinierten Beziehung die Beziehungslinie selbst ziehen müssen, während sie bei einer in der Datenbank gespeicherten Beziehung von Query Builder gezogen wird.

Hinweis (nur Report Builder):  Daten-Links von Report Builder sind nicht identisch mit Query Builder-Beziehungen. Daten-Links werden zwischen zwei oder mehr Abfragen erstellt, während Query Builder-Beziehungen (oder Joins) innerhalb einer einzigen Abfrage erstellt werden. Weitere Informationen finden Sie in der Online-Hilfe zu Report Builder.


Beziehungen aktivieren und deaktivieren

  Verwandte Themen

Beziehungen, die Sie mit der Maus erstellen, werden automatisch je nach Bedarf in einer Abfrage aktiviert und deaktiviert. Aktive Beziehungen werden mit einer dicken schwarzen Linie angezeigt, während inaktive Beziehungen als graue Linien dargestellt werden.

So aktivieren Sie eine Beziehung manuell mit der Maus:

  Doppelklicken Sie auf eine inaktive Beziehungslinie.

So deaktivieren Sie eine Beziehung:

  Doppelklicken Sie auf die aktive Beziehungslinie.


Dialogfeld Spalte definieren

Beschreibung  Mit dem Dialogfeld Spalte definieren können Sie eine neue Spalte in der Abfrage basierend auf Werten in einer anderen Spalte erstellen. Definierte Spalten werden sowohl im Bereich Datenquelle als auch im Fenster Ergebnisse angezeigt.

Dieses Dialogfeld enthält:

Definierte Spalten	Gibt den Namen der zu erstellenden Spalte an.
Listenfeld	Führt bestehende definierte Spalten auf.
Definiert als	Gibt den Ausdruck der ausgewählten Spalte an.
Definieren	Wendet die Definition für die Spalte an.
Entfernen	Löscht die ausgewählte Spalte.
Spalte einfügen	Zeigt das Dialogfeld Spalte einfügen an.
Funktion einfügen	Zeigt das Dialogfeld Funktion einfügen an.
Hinweis:  Die definierte Spalte ist nur ein Teil Ihrer Abfrage und ändert die in der Datenbank gespeicherte Tabellendefinition nicht.


Dialogfeld Sortieren

Beschreibung  Mit dem Dialogfeld Sortieren können Sie die Daten in Ihrer Abfrage entsprechend den Spalten in Ihrer Tabelle sortieren.

Dieses Dialogfeld enthält:

Verfügbare Spalten	Führt die Tabellenspalten auf, die Sie im Fenster Ergebnisse sortieren können.
Sortierte Spalten	Führt die Tabellenspalten auf, die momentan im Fenster Ergebnisse sortiert sind.
Kopieren	Kopiert die ausgewählte Spalte aus der Liste Verfügbare Spalten in die Liste Sortierte Spalten.
Entfernen	Entfernt die ausgewählte Spalte aus der Liste Sortierte Spalten.
Sortierung	Sortiert die ausgewählte Spalte in Aufsteigender oder Absteigender Reihenfolge. Der Standardwert ist Aufsteigend.


Query Builder-Hilfe

  Verwandte Themen

Neue Abfragen erstellen

Bedingungen zu einer Abfrage hinzufügen

Einfache Beziehungen erstellen

Spalten definieren

Abfragedaten sortieren


Über Query Builder

  Verwandte Themen

Query Builder ist ein benutzerfreundliches Werkzeug für den Datenzugriff, das speziell für Analytiker, Manager und andere Geschäftsleute entwickelt wurde. Mit Query Builder können Sie auf logische und intuitive Weise auf Informationen in den Datenbanken Ihrer Firma zur Analyse und Berichterstellung zugreifen.

Query Builder ist für Geschäftsleute gedacht, die keine Hintergrundkenntnisse bei Computerprogrammierung oder Datenbanken haben. Aufgrund der leistungsfähigen Abfragefunktionen und der Unterstützung von SQL-Anweisungen (Structured Query Language) werden auch erfahrene Datenbankbenutzer und Programmierer feststellen, daß Query Builder auch ihren Anforderungen gerecht wird.

Im grafischen Fenster Abfrage von Query Builder können Sie Daten aus den Datenbanken Ihres Unternehmens anfordern. Die Anforderung von Daten wird als Abfrage bezeichnet.

Mit Query Builder können Sie nahezu jede Abfrage definieren, die Sie mit einer SQL SELECT-Anweisung generieren würden. Query Builder generiert die entsprechende Klausel SELECT FROM [table.column] automatisch basierend auf den Spalten, die im Arbeitsbereich von Query Builder angezeigt werden.


Dialogfeld Spaltenfolge

Beschreibung  Mit dem Dialogfeld Spaltenfolge können Sie Ihre Abfrageergebnisse im Arbeitsbereich von Query Builder anpassen.

Dieses Dialogfeld enthält:

Verfügbare Spalten	Führt die Tabellenspalten auf, die Sie im Arbeitsbereich von Query Builder anzeigen können. Tip
Angezeigte Spalten	Führt die Tabellenspalten auf, die momentan im Arbeitsbereich von Query Builder angezeigt werden.
Kopieren	Kopiert die ausgewählte Spalte aus der Liste Verfügbare Spalten in die Liste Angezeigte Spalten.
Entfernen	Entfernt die ausgewählte Spalte aus der Liste Angezeigte Spalten.
Format	Zeigt das Dialogfeld Format an.
Summen	Zeigt das Dialogfeld Summen an.
Ausführen	Führt die Abfrage aus.


Dialogfeld Spalte einfügen

  Verwandte Themen

Beschreibung  Mit dem Dialogfeld Spalte einfügen können Sie eine bestehende Spalte aus einer ausgewählten Tabelle in die Abfrage einfügen.

Dieses Dialogfeld enthält:

Listenfeld	Führt die Spalten auf, die Sie einfügen können. Tip


Dialogfeld Funktion einfügen

Beschreibung  Mit dem Dialogfeld Funktion einfügen können Sie eine Funktion in Ihre Bedingung oder Abfrage einfügen.

Dieses Dialogfeld enthält:

Kategorien zeigen	Gibt die Funktionsarten an, die in dem Listenfeld angezeigt werden: Zahl, Zeichen, Datum, Konvertierung, Gruppe oder Andere.
Listenfeld	Führt die verfügbaren Funktionen unter der ausgewählten Kategorie auf.
Argumente einfügen	Gibt an, ob das Argument aufgenommen werden soll oder nicht. (Als Argument wird der Ausdruck einer Funktion in Klammern bezeichnet, der Informationen zur Benutzung durch die Funktion enthält.)


Dialogfeld SQL anzeigen

  Verwandte Themen

In dem Dialogfeld SQL anzeigen werden die bislang für Ihre Abfrage benutzten SQL-Anweisungen angezeigt. Sie können die SQL-Anweisungen im Dialogfeld SQL anzeigen nicht bearbeiten oder kopieren.


Die Spalte bzw. Spalten, die jede Zeile einer Tabelle eindeutig identifizieren. Primärschlüssel werden fett dargestellt.


Eine Spalte, die die Primärschlüsselwerte in einer anderen Tabelle referenziert. Fremdschlüssel werden kursiv dargestellt.


Die Quellen, aus denen eine Abfrage Daten abruft, einschließlich Tabellen, Ansichten, Abfragen, Synonymen und Snapshots.


Eine Datenquelle, die aus Spalten aus einer oder mehreren Datenbanktabellen besteht, die in einer logischen Tabelle kombiniert werden.


Eine Zeichenfolge, die aus einer Funktion oder einem Vorgang besteht, und die Datenbankspalten, für die der Vorgang ausgeführt wird (z.B. SALARY+COMMISSION).


Entsprechend den Benennungsregeln muß jeder Abfragename mit einem Buchstaben beginnen und kann maximal 30 Buchstaben und Zahlen enthalten. Wenn Sie sich beim Benennen von Datenbankabfragen nicht an die Benennungsregeln halten, konvertiert Query Builder den Namen in einen "literalen" Wert (Wert in Anführungszeichen).


Über den Bereich Bedingungen

Der Bereich Bedingungen ist ein Abschnitt im Fenster Abfrage, der das Feld Bedingung enthält, in das Sie Ausdrücke und Bedingungen eingeben können. Query Builder-Bedingungen generieren automatisch WHERE- oder HAVING-Klauseln je nach Bedarf.

Mit den Tabellen- und Spaltennamen wird angegeben, welche Spalten in der Bedingung gefiltert werden. Sie können den Tabellennamen weglassen, wenn der Spaltenname eindeutig ist. Tip

Hinweis:  Wenn Sie das Feld Bedingung aktivieren, erhält der Cursor ein (+)-Zeichen, mit dem angegeben wird, daß jedes Objekt, auf das Sie klicken, zu Ihrer Bedingung hinzugefügt wird. Um dies zu deaktivieren, können Sie auf [image] in der Symbolleiste klicken.


Über das Fenster Abfrage

Wenn Sie eine Abfrage öffnen, zeigt Query Builder diese im Fenster Abfrage an, das in zwei Bereiche unterteilt ist:

•	den Bereich Bedingungen, in dem sich das Feld Bedingung befindet. In ihm wird die Abfrage optimiert.

•	den Bereich Datenquelle, in dem die Tabellen (Ansichten, Snapshots usw.) angezeigt werden, die in der Abfrage verwendet werden.

Je nach den Voreinstellungen können die Bereiche vertikal oder horizontal geteilt werden.

Jede Tabelle wird in einem Feld angezeigt, das den Namen der Tabelle und die Namen der Spalten in dieser Tabelle enthält. Es gibt eine Reihe von Symbolen, mit denen das aktuelle Datenbankobjekt gekennzeichnet werden kann. Die Symbole geben an, ob beschreibende Kommentare angehängt sind, geben den Typ der Datenquelle sowie den Datentyp der Spalte an und weisen darauf hin, ob Indizes für Tabellen in der Abfrage definiert wurden.

Linien werden gezeichnet, um die Beziehungen zwischen den Spalten anzugeben. Beziehungen werden zwischen Tabellen festgelegt, um zu identifizieren, in welcher Beziehung eine Spalte in einer Tabelle zu einer Spalte in einer anderen Tabelle steht.

Mit einem Häkchen links neben dem Spaltennamen wird angegeben, daß die Spalte in der Abfrage aufgenommen wurde. Dies bedeutet, daß Query Builder bei der Ausführung der Abfrage nach Daten sucht, die dem Spaltennamen entsprechen. Wenn kein Häkchen angezeigt wird, bedeutet dies, daß die Daten in der Spalte nicht in der Abfrage aufgenommen werden.


Über den Bereich Datenquelle

  Verwandte Themen

Der Bereich Datenquelle ist der Abschnitt im Fenster Abfrage, in dem Objekte wie z.B. Tabellen und Beziehungen angezeigt werden.


Über die Symbolleiste

  Verwandte Themen

Die Symbolleiste wird am oberen Rand des Query Builder-Fensters angezeigt. Klicken Sie auf jedes Symbol, um eine Beschreibung anzuzeigen.


Symbol Speichern

Speichert Ihre Abfrage in der angegebenen Datei.


Symbol Ausschneiden

Schneidet den ausgewählten Text aus und speichert ihn in der Zwischenablage des Betriebssystems.


Symbol Kopieren

Kopiert den ausgewählten Text in die Zwischenablage des Betriebssystems, während der Originaltext unverändert bleibt.


Symbol Einfügen

Fügt den aktuellen Inhalt der Zwischenablage bei der aktiven Position ein. Wenn die Zwischenablage leer ist, wird nichts eingefügt. Sie können jeden Text einfügen, den Sie ausgeschnitten oder kopiert haben.


Symbol Löschen

Entfernt das ausgewählte Objekt (d.h. Text, Tabelle). Im Gegensatz zu dem Befehl Ausschneiden setzt der Befehl Löschen die entfernten Objekte nicht in die Zwischenablage des Betriebssystems.


Symbol Alles markieren

Markiert jedes Objekt im aktiven Fenster. Wenn z.B. der Bereich Bedingungen aktiv ist, werden alle Bedingungen in dem Bereich markiert.


Symbol Datentabellen auswählen

Zeigt das Dialogfeld Datentabellen auswählen an.


Symbol Zus. Tabellen auswählen

Zeigt das Dialogfeld Zusammengehörige Tabellen auswählen an. Dieses Symbol ist nur verfügbar, wenn die ausgewählte Tabelle über eine zusammengehörige Tabelle in der verbundenen Datenbank verfügt.


Symbol Tabelle umbenennen

Zeigt das Dialogfeld Tabelle umbenennen an. Dieses Symbol ist nur verfügbar, wenn mindestens eine Tabelle im Arbeitsbereich von Query Builder vorhanden ist.


Symbol Info aufrufen

Zeigt das Dialogfeld Info mit Informationen über das ausgewählte Datenbankobjekt an. Dieses Symbol ist nur verfügbar, wenn ein Datenquellobjekt aktiv ist.


Symbol Tabellenbeziehung festlegen

Zeigt das Dialogfeld Beziehung festlegen an. Dieses Symbol ist nur verfügbar, wenn mehr als eine Tabelle im Bereich Datenquelle vorhanden ist, für die eine Beziehung hergestellt werden kann.


Symbol SQL anzeigen

Zeigt das Dialogfeld SQL anzeigen und die SQL-Anweisung für die aktive Abfrage an.


Symbol Spaltenfolge

Zeigt das Dialogfeld Anzeigen an.


Symbol Spalte definieren

Zeigt das Dialogfeld Spalte definieren an.


Symbol Sortieren

Zeigt das Dialogfeld Sortieren an.


Symbol Und

Fügt den Operator AND in Ihre Bedingung ein. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können AND auch direkt in das Feld Bedingung eingeben.


Symbol Oder

Fügt den Operator OR in Ihre Bedingung ein. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können OR auch direkt in das Feld Bedingung eingeben.


Symbol Nicht

Fügt den Operator NOT in die Bedingung ein, um die Bedingung zu negieren. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können NOT auch direkt in das Feld Bedingung eingeben.


Symbol Bedingung auflösen

Löst die Gruppierung von Bedingungen auf, die mit logischen Operatoren kombiniert sind, wie z.B. AND, OR, NOT. Dieses Symbol ist nur verfügbar, wenn Sie einen logischen Operator im Bereich Bedingung ausgewählt haben.


Symbol Annehmen

Validiert und akzeptiert die aktive Bedingung. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist. Sie können auch die Eingabetaste drücken, wenn das Feld Bedingung aktiv ist, um die Bedingung zu akzeptieren und zu validieren.


Symbol Abbrechen

Bricht die aktuelle Bedingung ab. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Symbol Spalte einfügen

Zeigt das Dialogfeld Spalte einfügen an. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Symbol Funktion einfügen

Zeigt das Dialogfeld Funktion einfügen an. Dieses Symbol ist nur verfügbar, wenn das Feld Bedingung aktiv ist.


Über Datentypen

  Verwandte Themen

Die gebräuchlichsten Datentypen in Query Builder sind:

CHAR oder VARCHAR2	CHAR wird für Zeichendaten mit einer festen Länge bis zu einer maximalen Größe von 255 Byte und einer Standardgröße von einem Byte benutzt. VARCHAR2 wird für Zeichenfolgen mit variabler Länge mit einer maximalen Größe von 2000 Byte benutzt. Bei VARCHAR2 müssen Sie die Größe angeben.
NUMBER	NUMBER gibt an, daß die Datenbankspalte Zahlen enthält (Ganzzahlen, Dezimalzahlen oder andere numerische Werte). Sie können Berechnungen mit Zahlen durchführen, die im Datentyp NUMBER dargestellt werden, jedoch nicht mit Zahlen, die mit dem Datentyp CHAR dargestellt werden.
DATE	DATE gibt an, daß die Datenbankspalte Datumswerte enthält. Gültige Datumsangaben, gehen vom 1. Januar 9999 v.Chr. bis zum 31. Dezember 9999 n.Chr. Das Standardformat ist TT-MON-JJ wie in '01-JAN-92'.
NUMBER(p,s)	Der Bereich von p (Gesamtstellen) geht von 1 bis 38. Der Bereich von s (Nachkommastellen) geht von -84 bis 127. Mit den Gesamtstellen wird die Anzahl von zu speichernden Ziffern angegeben. Die Nachkommastellen entsprechen den Ziffern nach dem Dezimalzeichen. Wenn die Gesamtstellenzahl negativ ist, werden die Daten auf die angegebene Anzahl von Stellen links vom Dezimalzeichen gerundet. So bedeutet z.B. eine Angabe von (10, -2), daß auf Hunderterstellen gerundet wird.
Außerdem unterstützt Query Builder beschränkt die folgenden Oracle-Datentypen:

LONG	Eine Spalte vom Typ LONG enthält alphanumerische Daten mit einer variablen Länge von maximal 2 GB (oder 231-1). Wenn Sie eine Spalte vom Typ LONG in einer Query Builder-Abfrage aufnehmen, werden die ersten 2000 Zeichen angezeigt.
RAW	Rohe Binärdaten. Die maximale Größe beläuft sich auf 255 Byte. Werte müssen als Zeichenfolgen in Hexadezimalschreibweise eingefügt werden. Werte werden in Hexadezimalform angezeigt. Sie müssen die Größe für RAW-Datentypen angeben.
LONG RAW	Bei Daten vom Typ LONG RAW werden rohe Binärdaten mit maximal 2 GB angezeigt (sie werden in Hexadezimalform im Fenster Ergebnisse angezeigt). LONG RAW-Datentypen unterliegen denselben Beschränkungen wie RAW-Datentypen.
Hinweis:  Query Builder unterstützt die Konvertierung von Datentypen in den Fällen, in denen Bedingungen und Ausdrücke verschiedene Datentypen in den Vergleichen referenzieren. Weitere Informationen finden Sie im Oracle8 Server SQL Language Reference Manual.


Symbole für Datentypen

  Verwandte Themen

Die folgenden unterstützten Datentypen für alle Spalten in einem Datenquellobjekt werden durch Symbole in der rechten Spalte des Objekts im Arbeitsbereich von Query Builder dargestellt.

Datentyp	Symbol	Beschreibung
Character		Benutzen Sie den Datentyp Character für Zeichendaten mit fester Länge mit einer maximalen Größe von 255 Byte und einer Standardgröße von 1 Byte. Hinweis:  Sie können Zahlen mit dem Datentyp Character darstellen, können jedoch nur mit numerischen Datentypen Berechnungen durchführen.
Varchar2		Benutzen Sie den Datentyp Varchar2 für Zeichenfolgen mit variabler Länge mit einer maximalen Größe von 2000 Byte. Sie müssen eine Größe für den Datentyp Varchar2 angeben.
Number		Benutzen Sie den Datentyp Number für Ganzzahl- oder Gleitkommadaten. Sie müssen eine Gesamtstellenzahl für ganzzahlige Daten eingeben. Der Gleitkomma-Datentyp gilt für Dezimalzahlen. Wenn Sie diesen Datentyp einer Spalte zuweisen, müssen Sie sowohl Gesamtstellen als auch Nachkommastellen angeben. Die Gesamtstellen (gesamte Anzahl von Ziffern in der Zahl) können von 1 bis 38 gehen. Die Nachkommastellen (Anzahl von Ziffern nach dem Dezimalzeichen) können von -84 bis 127 gehen. Wenn die Anzahl von Nachkommastellen negativ ist, werden die Daten auf die angegebene Anzahl von Stellen links neben dem Dezimalzeichen gerundet.  Eine Angabe von (10,2) bedeutet z.B. 10 Ziffern, wobei 2 Ziffern rechts neben dem Dezimalzeichen stehen. Eine Angabe von (10,-2) bedeutet eine Ganzzahl mit 10 Ziffern, auf die nächste Hunderterstelle gerundet.
Date		Benutzen Sie den Datentyp Date für beliebige Datumsangaben. Gültige Datumsangaben gehen vom 1. Januar 4712 v.Chr. bis zum 31. Dezember 4712 n.Chr. Das Standarddatumsformat ist TT-MON-JJ, wie in '01-JAN-97'.
Long		Benutzen Sie den Datentyp Long für lange Textfelder mit alphanumerischen Daten mit variabler Länge bis zu 2 GB.
Raw		Benutzen Sie den Datentyp Raw für rohe Binärdaten. Die maximale Größe beläuft sich auf 255 Byte. Die Werte müssen als Zeichenfolgen in Hexadezimalschreibweise eingefügt werden und werden in Hexadezimalform angezeigt. Sie müssen eine Größe für Daten vom Typ Raw angeben.
Long Raw		Der Datentyp Long Raw wird benutzt, um rohe Binärdaten mit maximal 2 GB zu speichern (die in Hexadezimalform eingegeben und angezeigt werden). Bei den Datentypen Long Raw muß keine Größe angegeben werden.
MLSLABEL		Benutzen Sie den Datentyp MLSLABEL, um das Binärformat eines Labels bei einem sicheren Betriebssystem zu speichern. Labels werden von Trusted ORACLE verwendet, um den Zugriff zu Informationen zu vermitteln. Außerdem können Sie Spalten mit diesem Datentyp definieren, wenn Sie den standardmäßigen ORACLE-Server verwenden. Weitere Informationen über Trusted ORACLE, einschließlich diesem Datentyp und Labels finden Sie im Trusted ORACLE8 Server Administrator's Guide.


Schreibweise für Datenquellobjekte

  Verwandte Themen

Als nächstes sehen Sie ein Beispiel für zwei Datenquellobjekte, die durch eine Beziehung miteinander verknüpft sind.

Klicken Sie auf ein Symbol, einen Indikator oder einen Teil dieser Objekte, um eine Beschreibung anzuzeigen.


Indikator für den Objekttyp

Das Symbol in der oberen linken Ecke eines Datenquellobjekts gibt dessen Typ an:

  Tabelle

  Ansicht

  Abfrage

  Snapshot

  Synonym


Objekttitel

Dies ist der Name des Datenquellobjekts. Sie können den Namen ändern, indem Sie auf den Objekttitel klicken.


Kommentar-Indikator

Dieses Symbol gibt an, daß mit diesem Objekt (bzw. dieser Spalte) ein Kommentar verknüpft ist. Doppelklicken Sie auf dieses Symbol, um das Dialogfeld Info zu öffnen, in dem Sie die Kommentare anzeigen können.


Spaltenname

Dies ist der Name von einer der Spalten in diesem Objekt. Wenn Sie auf einen Spaltennamen doppelklicken, wird die Spalte in der Abfrage aufgenommen.


Indikatoren für den Datentyp

Diese Symbole geben die Datentypen der entsprechenden Spalten an. Wenn Sie auf eines dieser Symbole klicken und die Maustaste gedrückt halten, wird ein Popup-Menü angezeigt, und Sie können einen anderen Datentyp auswählen.


Beziehungslinie

Eine graue Linie, die zwischen zwei Spalten gezogen ist, gibt an, daß zwischen den Spalten an jedem Ende der Linie eine Beziehung erstellt wurde. Diese Linie wird vom Fremdschlüssel zum Primärschlüssel gezogen.


Indikator für Selbstbeziehungen

Dieses Symbol gibt an, daß zwischen dieser Spalte (Fremdschlüssel) und einer anderen Spalte (Primärschlüssel) in derselben Tabelle eine Selbstbeziehung erstellt wurde.


Primärschlüssel

Ein in Fettschrift angezeigter Spaltenname gibt an, daß diese Spalte als Primärschlüssel für das Objekt definiert wurde.


Fremdschlüssel

Ein in Kursivschrift angezeigter Spaltenname gibt an, daß diese Spalte ein Fremdschlüssel ist, der mit einem Primärschlüssel in einer anderen Spalte verbunden ist. Ein Fremdschlüssel kann nur definiert werden, indem eine Beziehung zwischen zwei Spalten festgelegt wird.


Über Funktionen von Query Builder

  Beispiele 	  Verwandte Themen

Eine Funktion kann insofern mit einem Operator verglichen werden, als Datenobjekte verarbeitet werden und ein Ergebnis zurückgegeben wird. Funktionen unterscheiden sich von Operatoren in dem Format, in dem sie mit ihren Argumenten angezeigt werden. Aufgrund dieses Formats können sie mit einer beliebigen Anzahl von Argumenten oder keinen Argumenten ausgeführt werden. Jedesmal, wenn Sie eine Spalte mit einem Funktionsnamen verknüpfen, führt Query Builder den gewünschten Vorgang für die Werte in dieser Spalte aus.

Folgende Funktionen können mit Abfragen in Query Builder verwendet werden:

•	Zahlenfunktionen

•	Zeichenfunktionen

•	Zeichenfunktionen, die numerische Werte zurückgeben

•	Konvertierungsfunktionen

•	Datumsfunktionen

•	Gruppenfunktionen

•	Andere Funktionen

Zusätzliche Informationen:  Weitere Informationen über die anderen Funktionen finden Sie im Oracle8 Server SQL Language Reference Manual.


Funktionen und Argumente

  Beispiele 	  Verwandte Themen

Mit einer Funktion werden Daten in einer bestimmten Spalte bearbeitet. Für jede Funktion können ein oder mehrere Argumente angegeben werden. Ein Argument ist ein Ausdruck in Klammern einer Funktion, der Informationen für die Funktion enthält.

Ein Beispiel hierfür ist die Funktion ROUND, die eine Zahl auf den von Ihnen angegebenen Grad rundet. Wenn Sie den Ausdruck ROUND (CREDIT_LIMIT, -2) eingeben, würde Query Builder jeden Wert für CREDIT_LIMIT auf den nächsten Hunderterwert runden. Wenn Sie ROUND(CREDIT_LIMIT, 1) eingeben, würde Query Builder die Werte für CREDIT_LIMIT auf das nächste Zehntel runden.

Folgende Werte werden innerhalb von Argumenten verwendet:

Argumentwert	Beschreibung
char, set, search,	Zeichenkonstante, die in einfachen Anführungszeichen steht.
replace	Markierungen oder ein Ausdruck, der Zeichendaten zurückgibt.
d, e	Datumskonstante, die in einfachen Anführungszeichen steht, oder ein Ausdruck, der Datumsdaten zurückgibt.
m, n	Beliebige Zahlenkonstante oder Ausdruck, der numerische Daten zurückgibt.
x	Der Argumenttyp hängt vom Kontext der Funktion ab.
expr	Ausdruck beliebigen Typs.
fmt	Ein Format, mit dem die Anzeige von Daten geändert oder Daten in ein Feld von Query Builder bzw. eine Bedingung in einem anderen Format als dem Standardformat eingegeben werden.


Zahlenfunktionen

  Verwandte Themen

Zahlenfunktionen akzeptieren numerische Daten und geben numerische Daten zurück. Sie können Zahlenfunktionen bei der Definition von Spalten und Bedingungen benutzen.

Funktion (Argumente)	Beschreibung
ABS(n)	Absoluter Wert von n.
CEIL(n)	Kleinste Ganzzahl größer als oder gleich n.
COS(n)	Gibt den Kosinus von n (einen Winkel in Radiant) zurück.
COSH(n)	Gibt den hyperbolischen Kosinus von n zurück.
EXP(n)	Exponentialschreibweise. Gibt e (2.71828183...) in die n-te Potenz erhoben zurück.
FLOOR(n)	Größte Ganzzahl gleich oder kleiner als n.
LN(n)	Gibt den natürlichen Logarithmus von n zurück, wobei n größer ist als 0.
LOG(m,n)	Gibt den Logarithmus von n zur Basis m zurück. Die Basis m kann eine beliebige positive Zahl mit Ausnahme von 0 oder 1 sein, und n kann eine beliebige positive Zahl sein.
MOD(m,n)	Rest von m dividiert durch n.
POWER(m,n)	m in die n-te Potenz erhoben. Wenn n keine Ganzzahl ist, wird sie abgeschnitten.
ROUND(n[,m])	n gerundet auf m Dezimalstellen; wenn m weggelassen wird, wird auf 0 Stellen gerundet. m kann negativ sein, um Ziffern links vom Dezimalzeichen zu runden.
SIGN(n)	Wenn n<0 ist, -1; wenn n=0 ist, 0; wenn n>0 ist, 1.
SIN(n)	Gibt den Sinus von n zurück (einen Winkel in Radiant).
SINH(n)	Gibt den hyperbolischen Sinus von n zurück.
SQRT(n)	Quadratwurzel von n; wenn n<0 ist, NULL.
TAN(n)	Gibt den Tangens von n zurück (einen Winkel in Radiant).
TANH(n)	Gibt den hyperbolischen Tangens von n zurück.
TRUNC(n[,m])	n abgeschnitten auf m Dezimalstellen; wenn m weggelassen wird, wird auf 0 Stellen abgeschnitten. m kann negativ sein, um Ziffern links neben dem Dezimalzeichen abzuschneiden (auf null zu setzen).


Zeichenfunktionen

  Verwandte Themen

Sie können Zeichenfunktionen benutzen, die Zeichendaten akzeptieren und Zeichendaten zurückgeben, wenn Sie Spalten und Bedingungen definieren.

Funktion (Argumente)	Beschreibung
CHR(n)	Das Zeichen mit dem binären Äquivalent von n im Zeichensatz der Datenbank.
CONCAT(char1,char2)	Gibt char1 verkettet mit char2 zurück. Diese Funktion ist gleichbedeutend mit dem Verkettungsoperator (||).
INITCAP(char)	char, wobei der erste Buchstabe jedes Wortes groß geschrieben wird. Wörter werden durch Leerzeichen oder Zeichen begrenzt, bei denen es sich nicht um alphanumerische Zeichen handelt.
LOWER(char)	char, wobei alle Buchstaben klein geschrieben werden.
LPAD(char1,n[,char2])	char1, linksbündig auf die Länge n mit der Zeichenfolge in char2 aufgefüllt, so oft repliziert wie erforderlich; wenn char2 weggelassen wird, wird mit Leerzeichen aufgefüllt.
LTRIM(char[,set])	char, wobei die Anfangszeichen bis zum ersten Zeichen entfernt werden, das nicht in set enthalten ist. set entspricht standardmäßig ' ' (einzelne Leerstelle).
NLS_INITCAP(char [,nlsparams])	Gibt char zurück, wobei der erste Buchstabe jedes Wortes groß geschrieben wird. Wörter werden durch Leerzeichen oder Zeichen begrenzt, die nicht alphanumerisch sind. Die in nlsparams angegebenen Parameter können die Form NLS_SORT=sort haben, wobei sort eine linguistische Sortierfolge für Ihre Sitzung oder BINARY ist. Wenn Sie BINARY angeben, gibt diese Funktion char zurück. Informationen über Sortierfolgen finden Sie im Oracle8 Server Concepts Manual.
NLS_LOWER(char[,nlsparams])	Gibt char zurück, wobei alle Buchstaben klein geschrieben werden. Das Argument nlsparams wird unter NLS_INITCAP beschrieben.
NLS_UPPER(char[,nlsparams])	Gibt char zurück, wobei alle Buchstaben groß geschrieben werden. Das Argument nlsparams wird unter NLS_INITCAP beschrieben
NLS_UPPER(char[,nlsparams])	Gibt char zurück, wobei alle Buchstaben groß geschrieben werden
REPLACE(char,search[,replace])	char, wobei jedes Auftreten von search durch replace ersetzt wird. Wenn replace nicht angegeben wird, wird jedes Auftreten von search entfernt.
RPAD(char1,n[,char2])	char1, rechtsbündig auf die Länge von n mit den Zeichen in char2 aufgefüllt, so oft repliziert wie erforderlich; wenn char2 weggelassen wird, wird mit Leerzeichen aufgefüllt.
RTRIM(char[,set])	char, wobei die abschließenden Zeichen nach dem letzten Zeichen, das nicht in set enthalten ist, entfernt werden. set entspricht standardmäßig ' ' (einzelnes Leerzeichen).
SOUNDEX(char)	Ein char-Wert, der den Klang der Wörter in char darstellt.
SUBSTR(char,m[,n])	Eine Unterfolge von char, beginnend beim Zeichen m, mit der Länge von n Zeichen, wenn n weggelassen wird.
SUBSTRB(char,m[,n])	Wie SUBSTR, nur werden die Argumente m und n in Byte und nicht in Zeichen ausgedrückt. Bei Einfachbyte-Zeichensätzen ist SUBSTRB identisch mit SUBSTR.
UPPER(char)	char, wobei alle Buchstaben groß geschrieben werden.


Zeichenfunktionen, die numerische Daten zurückgeben

  Verwandte Themen

Bei der Definition von Spalten und Bedingungen können Sie Zeichenfunktionen benutzen, die numerische Daten zurückgeben.

Abkürzung	Beschreibung
ASCII (char)	ASCII-Wert des ersten Zeichens von char.
INSTR(char1,char2[,n[,m]])	Position des n-ten Auftretens von char2 in char1, wobei bei der Position n mit der Suche begonnen wird. Wenn m weggelassen wird, wird von 1 ausgegangen. Wenn n weggelassen wird, wird von 1 ausgegangen. Die Position wird relativ zum ersten Zeichen von char1 angegeben, selbst wenn n>1 ist.
INSTRB(char1,char2[,n[,m]])	Wie INSTR, nur werden n und der zurückgegebene Wert in Byte ausgedrückt und nicht in Zeichen. Bei Einfachbyte-Zeichensätzen ist INSTRB identisch mit INSTR.
LENGTH(char)	Länge von char in Zeichen.
LENGTHB(char)	Identisch mit LENGTH, nur wird char in Byte und nicht in Zeichen ausgedrückt. Wenn char NULL ist, gibt diese Funktion NULL zurück. Bei einem Einfachbyte-Zeichensatz ist LENGTHB identisch mit LENGTH.
NLSSORT(char[,nlsparams])	Gibt die Folge von Bytes zurück, die für das Sortieren von char verwendet wird. Die in nlsparams angegebenen Parameter haben die Form NLS_SORT=sort, wobei sort eine linguistische Sortierfolge für Ihre Sitzung oder BINARY ist. Wenn Sie BINARY angeben, gibt diese Funktion char zurück. Weitere Informationen über Sortierfolgen finden Sie im Oracle8 Server Concepts Manual.


Konvertierungsfunktionen

  Verwandte Themen

Bei der Definition von Spalten und Bedingungen können Sie Konvertierungsfunktionen benutzen, um Daten von einem Datentyp zu einem anderen zu konvertieren.

Abkürzung	Beschreibung
TO_CHAR (d[,fmt])	Konvertiert d in einen char-Wert in dem mit dem char-Wert fmt angegebenen Format. Wenn fmt weggelassen wird, wird d in einen char-Wert im Standard-Datumsformat von Query Builder, TT-MON-JJ konvertiert.
TO_CHAR(n[,fmt])	Konvertiert n in einen char-Wert in dem mit dem char-Wert fmt angegebenen Format. Wenn fmt weggelassen wird, wird n in einen char-Wert konvertiert, der genau so lang ist, daß die signifikanten Ziffern aufgenommen werden können.
TO_DATE(char[,fmt])	Konvertiert ein Datum aus einem char-Wert in einen Datumswert. fmt ist ein char-Wert, der das Format von char angibt. Wenn fmt weggelassen wird, muß char das Standarddatumsformat von Query Builder aufweisen, TT-MON-JJ.
TO_DATE(n,[fmt])	Konvertiert eine Zahl in ein Datum. fmt muß ein Format aufweisen, das bei der Benutzung mit TO_CHAR ein DATUM ergibt (z.B. J oder MM).
TO_LABEL(char[,fmt])	Konvertiert char, d.h. einen Wert mit dem Datentyp CHAR oder VARCHAR2, der ein Label im Format fmt enthält, in einen Wert mit dem Datentyp MLSLABEL. Wenn Sie fmt weglassen, muß char das Standard-Labelformat aufweisen.
TO_MULTI_BYTE (char)	Gibt char zurück, wobei alle Einfachbyte-Zeichen in die entsprechenden Multibyte-Zeichen konvertiert werden. Einfachbyte-Zeichen, für die es kein Multibyte-Äquivalent gibt, werden in der Ausgabefolge als Einfachbyte-Zeichen angezeigt. (Diese Funktion ist nur sinnvoll, wenn Ihr Zeichensatz beide Typen enthält.)
TO_NUMBER (char)	Konvertiert char, Zeichendaten, die eine Zahl enthalten, in numerische Daten.
TO_SINGLE_BYTE (char)	Gibt char zurück, wobei alle Multibyte-Zeichen in die entsprechenden Einfachbyte-Zeichen konvertiert werden. Multibyte-Zeichen, für die es kein Einfachbyte-Äquivalent gibt, werden in der Ausgabefolge als Multibyte-Zeichen angezeigt. (Diese Funktion ist nur sinnvoll, wenn Ihr Zeichensatz beide Typen enthält.)


Datumsfunktionen

  Verwandte Themen

Alle Datumsfunktionen geben Datumsangaben zurück, mit Ausnahme von MONTHS_BETWEEN, die numerische Daten zurückgibt. Sie können diese Funktionen bei der Definition von Spalten und Bedingungen verwenden.

Abkürzung	Beschreibung
ADD_MONTHS (d,n)	Datum d plus n Monate.
LAST_DAY(d)	Datum des letzten Tags des Monats, der d enthält.
MONTHS_BETWEEN(d,e)	Anzahl von Monaten zwischen den Datumsangaben d und e. Wenn d einen späteren Zeitpunkt als e angibt, ist das Ergebnis positiv. Wenn ein früherer Zeitpunkt angegeben wird, ist das Ergebnis negativ.
NEW_TIME(d,a,b)	Datum und Uhrzeit in Zeitzone b, wenn Datum und Uhrzeit in Zeitzone a gleich d sind. a und b sind char-Ausdrücke mit folgender Bedeutung:
AST, ADT:	Atlantic Standard oder Daylight Time
BST, BDT:	Bering Standard oder Daylight Time
CST, CDT:	Central Standard oder Daylight Time
EST, EDT:	Eastern Standard oder Daylight Time
GMT:	Greenwich Mean Time
HST, HDT:	Alaska-Hawaii Standard oder Daylight Time
MST, MDT:	Mountain Standard oder Daylight Time
NST:	Newfoundland Standard Time
PST, PDT:	Pacific Standard oder Daylight Time
YST, YDT:	Yukon Standard oder Daylight Time
NEXT_DAY(d,char)	Datum des ersten Wochentags, der mit char angegeben wird und gleich oder später als d ist.
ROUND(d[,fmt])	d wie mit der Rundungseinheit fmt angegeben gerundet; wenn fmt weggelassen wird, der nächstgelegene Tag.
SYSDATE	Laufendes Datum und laufende Uhrzeit. Erfordert keine Argumente.
TRUNC(d[,fmt])	d mit Tageszeit abgeschnitten auf die angegebene Einheit, fmt; wenn fmt weggelassen wird, wird die Tageszeit entfernt.
Zusätzliche Informationen:  In Oracle8 Server SQL Language Reference Manual finden Sie eine Tabelle mit Formatmodellen, die mit den Datumsfunktionen ROUND und TRUNC benutzt werden.


Gruppenfunktionen

  Verwandte Themen

Gruppenfunktionen rufen Daten basierend auf Zeilengruppen und nicht ein Ergebnis pro Zeile ab. Gruppenfunktionen führen Berechnungen wie Mittelwert, Anzahl, Summe und Standardabweichung durch.

Mit Gruppenfunktionen können Sie auch eine neue Spalte definieren, und das ganze Ergebnis wird als eine Gruppe behandelt, wenn Sie keine anderen Spalten anzeigen. Wenn Sie andere Spalten anzeigen, wird das Ergebnis in kleinere Gruppen aufgeteilt. Sie können Gruppenfunktionen in Bedingungen verwenden, jedoch nur mit einem Vergleichsoperator, so daß das ganze Ergebnis als eine Gruppe behandelt wird. So ist z.B. die Bedingung SALARY > AVG(SALARY) wahr, wenn der Wert von SALARY in der aktuellen Zeile größer ist als der Mittelwert von SALARY in allen Zeilen.

Gruppenfunktionen können mit den Optionen DISTINCT oder ALL benutzt werden. Bei Benutzung von DISTINCT berücksichtigt eine Gruppenfunktion nur eindeutige Funktionen eines Ausdrucks. So ist z.B. der Mittelwert von 1, 1, 1 und 3 gleich 1,5, während der DISTINCT-Mittelwert gleich 2 ist. Bei Benutzung von ALL berücksichtigt eine Gruppenfunktion alle Werte, einschließlich Duplikaten.

Die gesamten unten aufgeführten Gruppenfunktionen überspringen Nullwerte, mit Ausnahme von COUNT(*). Der Datentyp der Argumente kann character, number oder date sein, wenn expr aufgeführt wird.

Funktion (Argument)	Beschreibung
AVG([DISTINCT|ALL]n)	Mittelwert von n, wobei Nullwerte ignoriert werden.
COUNT([DISTINCT|ALL] expr)	Anzahl von Zeilen, wobei expr nicht null ist.
COUNT(*)	Anzahl von Zeilen in der Tabelle, einschließlich Duplikaten und Zeilen mit Nullwerten.
GLB([DISTINCT|ALL] label)	Gibt den höchsten unteren Grenzwert von label an.
LUB([DISTINCT|ALL] label)	Gibt den kleinsten oberen Grenzwert von label an.
Zusätzliche Informationen:  GLB und LUB geben Werte mit dem Datentyp MLSLABEL zurück. Weitere Informationen über die Funktionen GLB und LUB finden Sie im Trusted Oracle8 Server Administrator's Guide.

Funktion (Argument)	Beschreibung
MAX([DISTINCT|ALL] expr)	Höchstwert von expr.
MIN([DISTINCT|ALL] expr)	Mindestwert von expr.
STDDEV([DISTINCT|ALL]n)	Standardabweichung von n, wobei Nullwerte ignoriert werden, basierend auf einer Berechnung von n-1 (Beispiel).
SUM([DISTINCT|ALL] n)	Summe der Werte von n.
VARIANCE([DISTINCT|ALL] n)	Varianz von n, wobei Nullwerte ignoriert werden.


Andere Funktionen

  Verwandte Themen

Query Builder akzeptiert auch folgende Funktionen:

Funktion (Argument)	Beschreibung
USER	Gibt den Namen des aktuellen Oracle-Benutzers zurück. Erfordert keine Argumente.
DECODE(expr,search1, replace1[,search2, replace2,] ... [default])	Wenn expr einem beliebigen search entspricht, wird der folgende replace zurückgegeben. Wenn nicht, wird default zurückgegeben. Wenn default weggelassen und keine Übereinstimmung gefunden wird, wird NULL zurückgegeben. expr kann einen beliebigen Datentyp aufweisen; search muß denselben Datentyp aufweisen. Für den zurückgegebenen Wert wird derselbe Datentyp durchgesetzt, wie beim ersten Rückgabewert.
GREATEST(expr1,expr2,...)	Gibt den größten Wert einer Liste von Werten zurück. Alle expr im Anschluß an expr1 werden in den Typ von expr1 konvertiert, bevor der Vergleich durchgeführt wird.
GREATEST_LB(label[,label] ...)	Gibt den größten unteren Grenzwert der Liste mit Labels zurück. Jedes label muß entweder den Datentyp MLSLABEL oder RAW MLSLABEL aufweisen bzw. ein Literal in Anführungszeichen im Standard-Labelformat sein. Der Rückgabewert hat den Datentyp RAW MLSLABEL.
LEAST(expr1,expr2,...)	Gibt den kleinsten Wert einer Werteliste zurück. Alle expr im Anschluß an expr1 werden in den Typ von expr1 konvertiert, bevor der Vergleich erfolgt.
LEAST_UB(label[,label] ...)	Gibt den niedrigsten oberen Grenzwert der Liste mit Labels zurück. Jedes label muß den Datentyp MLSLABEL haben oder ein Literal in Anführungszeichen im Standard-Labelformat sein. Der Rückgabewert hat den Datentyp RAW MLSLABEL.
NVL(x,expr)	Wenn x null ist, wird expr zurückgegeben; wenn x nicht null ist, wird x zurückgegeben. x und expr können einen beliebigen Typ aufweisen. Der Typ des zurückgegebenen Wertes entspricht dem Typ von x.
Zusätzliche Informationen:  Weitere Informationen über die Funktionen GREATEST_LB und LEAST_UB finden Sie im Trusted Oracle8 Server Administrator's Guide.


 Instead of selecting a table and clicking Include, you can double-click each target table to move it into the Query Builder work area.  To include a range of tables, hold down the SHIFT key while clicking the first and last tables in the range.


Although you can set relationships using this dialog box, you should use the mouse method to create relationships wherever possible. For relationships created this way, Query Builder automatically activates and deactivates the relationship lines for you.


If a column has a highlighted check beside it, that means the column appears in the SELECT statement and will be displayed in the query results.  If the column has an gray check beside it, the column is used as sort or group criteria.


In general Query Builder allows you to relate any columns that can be interpreted using the implicit conversion feature of the Oracle database.  For technical information on implicit conversions, refer to the Oracle8 Server SQL Language Reference Manual.


The expression in the Defined As field typically consists of a function or operation and the database column(s) to be operated on.  If the column name occurs in more than one table, remember to reference the table name as well, and separate it from the column name with a period.  If the column name is unique, you can specify just the column name.


Renaming a table does not result in any corresponding change in its underlying name in the database.  The new name is valid only for the active query; it remains in the query if you save it.


To display the Set Relationship dialog box, click [image] in the Icon Bar.


To display the Select Tables dialog box, click [image] in the Icon Bar.


To display the Rename Table dialog box, click [image] in the Icon Bar.


When you select a column object from a table, Query Builder automatically uses the table alias in your query.  Likewise, if you include a column object in the Condition field and accept the condition, Query Builder automatically inserts the appropriate table aliases into your condition.


You can select (or deselect) a column in either of the following ways:

•	Check (or uncheck) the check box next to the column.

OR

Double-click on the column name.


Über Selbstbeziehungen
K  Über Selbstbeziehungen

  Verwandte Themen

Mit einer Selbstbeziehung wird eine Tabelle mit sich selbst verbunden. Selbstbeziehungen haben eine begrenzte, sehr spezifische Verwendung: Mit ihnen wird ein hierarchischer Link zwischen zwei Spalten erstellt, die in derselben Tabelle vorhanden sind. So könnten Sie z.B. eine Selbstbeziehung benutzen, um die Niederlassungen eines Unternehmens mit der Muttergesellschaft zu verbinden oder die Mitarbeiter mit ihren jeweiligen Vorgesetzten.

Eine Selbstbeziehung kann nur wirksam sein, wenn die Spalten in der Tabelle Gegenstücke zueinander darstellen. In der Beispieldatenbank Employee ist z.B. die Manager ID identisch mit der Employee ID für diesen Manager. Deshalb wird das Symbol für die Selbstbeziehung in der Spalte Manager ID angezeigt.


Selbstbeziehung erstellen

  Verwandte Themen

So erstellen Sie eine Selbstbeziehung:

1	Query Builder zeigt im Dialogfeld Beziehung festlegen eine Liste der Tabellen an, für die Beziehungen mit der ausgewählten Tabelle definiert sind.

2	Klicken Sie auf den Tabellennamen.

3	Klicken Sie auf Aufnehmen.

4	Klicken Sie auf OK.

5	Wiederholen Sie die obige Prozedur für denselben Tabellennamen.

6	Query Builder gibt der Kopie der zusammengehörigen Tabelle automatisch einen Aliasnamen. Benennen Sie die Tabelle so um, daß der Name mit dem Original übereinstimmt.

Hinweis:  Wenn die Selbstbeziehung schon in dem zugrundeliegenden Data Dictionary identifiziert wurde, sind die beiden zusammengehörigen Spalten in der Tabelle und der Alias durch eine Beziehungslinie miteinander verbunden. Wenn die Selbstbeziehung noch nicht im Data Dictionary identifiziert wurde, können Sie eine Selbstbeziehung erstellen, indem Sie eine temporäre Beziehungslinie ziehen, um die beiden zusammengehörigen Spalten in der Tabelle und den Alias miteinander zu verbinden.


 Einfache Beziehungen erstellen

  Verwandte Themen

So erstellen Sie eine Beziehung mit der Maus:

1	Öffnen Sie die Tabellen, für die Sie eine Beziehung erstellen möchten, im Fenster Abfrage.

2	Wählen Sie die Spalte, für die Sie eine Beziehung erstellen möchten (den Fremdschlüssel), während die Tabelle angezeigt wird.

3	Ziehen Sie den Cursor bei gedrückter Maustaste zu der verbundenen Spalte in der zweiten Tabelle (dem Primärschlüssel), um eine Beziehungslinie zu zeichnen.

4	Sobald die Zielspalte hervorgehoben wird, lassen Sie die Maustaste los, um die Beziehungslinie zu verankern. Standardmäßig ist die Beziehung inaktiv (die Linie wird grau angezeigt).

So erstellen Sie eine Beziehung mit dem Dialogfeld Beziehung festlegen:

1	Geben Sie im Dialogfeld Beziehung festlegen die Ursprungs- (A->) und Ziel- (->B) Spaltennamen ein.  Hinweis Query Builder zeichnet eine Beziehungslinie zwischen den beiden Spalten.

2	Klicken Sie auf Schließen.

So erstellen Sie eine Beziehung auf kurzem Wege:

1	Klicken Sie im Dialogfeld Beziehung festlegen auf Feld A.

2	Wählen Sie die Spalte im Fenster Abfrage. Query Builder setzt die Tabelle und den Spaltennamen automatisch in Feld A.

3	Wiederholen Sie den Vorgang für Feld B.


Zusammengesetzte Beziehungen erstellen

  Verwandte Themen

Eine zusammengesetzte Beziehung verbindet zwei oder mehr Spalten in einer Tabelle mit Spalten in einer anderen Tabelle. So könnten Sie z.B. die Spalten Order ID und Item ID in der Tabelle Items mit identisch benannten Spalten in der Tabelle Item List verbinden.

So erstellen Sie eine zusammengesetzte Beziehung:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Nehmen Sie die beiden zu verbindenden Tabellen auf.

3	Wählen Sie die Spalte, die verbunden werden soll (den Fremdschlüssel).

4	Ziehen Sie bei gedrückter Maustaste den Cursor zu der zusammengehörigen Spalte in der zweiten Tabelle (den Primärschlüssel). Beachten Sie, daß der Cursor dabei eine Beziehungslinie zeichnet.

5	Sobald die Zielspalte hervorgehoben wird, lassen Sie die Maustaste los, um die Beziehungslinie zu verankern. Standardmäßig ist die Beziehung inaktiv (die Linie wird grau angezeigt).

Sie können beliebig viele zusammengesetzte Beziehungen für Ihre Abfrage verwenden. Außerdem können Sie Spalten in zusammengesetzten Beziehungen unabhängig davon aufnehmen, ob diese in anderen Beziehungen benutzt werden.


Sie müssen die vollständigen Tabellen- und Spaltennamen eingeben (trennen Sie den Tabellennamen von den Spaltennamen durch einen Punkt). A-> stellt den bzw. die Fremdschlüssel der Tabelle dar, während ->B den bzw. die Primärschlüssel der Tabelle darstellt. Trennen Sie zusätzliche Primär- und Fremdschlüssel durch Komma.


Nichtentsprechende Beziehungen erstellen

  Verwandte Themen

So erstellen Sie eine nichtentsprechende oder äußere Beziehung:

1	Klicken Sie im Fenster Abfrage auf die Beziehungslinie, die die Tabellen verbindet. Wenn keine Beziehungslinie vorhanden ist, erstellen Sie eine einfache Beziehung zwischen den beiden Tabellen.

2	Wählen Sie im Dialogfeld Beziehung festlegen eine der Anzeigeoptionen, um entweder alle Datensätze, die in einer einfachen Beziehung enthalten sind, oder nur die Zeilen abzurufen, bei denen ein entsprechender Wert in beiden Tabellen vorhanden ist.

Hinweis:  Eine Zeile, die einen Wert von 0 (null) zurückgibt, ist nicht identisch mit einer nichtentsprechenden Zeile. Die Option Nichtentspr. unterdrücken kann nur bei Zeilen benutzt werden, die Nullwerte zurückgeben und nicht 0 Werte. Benutzen Sie diese Funktion, wenn Sie Daten anzeigen möchten, bei denen für eine Tabelle keine Werte eingegeben sind, wie z.B. Aufträge ohne Zeilenobjekte, Kunden, die keine Aufträge erteilt haben, Vertreter, die keine Kunden haben usw.


Nichtentsprechende Beziehungen entfernen

  Verwandte Themen

So entfernen Sie eine nichtentsprechende Beziehung:

1	Klicken Sie im Arbeitsbereich von Query Builder auf die Beziehungslinie, die die Zieltabellen verbindet.

2	Klicken Sie im Dialogfeld Beziehung festlegen auf die Optionsschaltfläche Nichtentspr. unterdrücken.

3	Klicken Sie auf OK.


Ungleichheitsbeziehungen verwenden

  Verwandte Themen

So erstellen Sie eine Ungleichheitsbeziehung im Dialogfeld Beziehung festlegen:

  Wählen Sie den Operator.

Während Sie eine Ungleichheitbeziehung einrichten, setzt Query Builder ein Symbol (ein Ungleichheits-Zeichen) auf die Beziehungslinie.


Beziehungen löschen

  Verwandte Themen

So löschen Sie eine Beziehung:

1	Klicken Sie im Fenster Abfrage auf die Beziehungslinie, die die beiden Tabellenspalten verbindet.

2	Während die Spaltennamen und die Beziehungslinie hervorgehoben werden, drücken Sie Entf.


Über nichtentsprechende (null) Zeilen

  Verwandte Themen

Bei Query Builder können Sie wählen, ob Sie nichtentsprechende Zeilen abrufen, wenn Sie eine Beziehung in einer Abfrage verwenden. Zu einer nichtentsprechenden Zeile kommt es, wenn die Beziehung Tabellen verbindet, bei denen auf einer Seite Werte vorhanden sind, für die keine entsprechenden Werte auf der anderen Seite vorhanden sind. SQL-Benutzer sind damit in Form von Abfragebedingungen vertraut, die als Outer Join bezeichnet werden. Nichtentsprechende Zeilen geben im allgemeinen Null-Werte zurück.

Hinweis:  Eine Zeile, die einen Wert von 0 (null) zurückgibt, ist nicht identisch mit einer nichtentsprechenden Zeile. Die Option Nichtentspr. unterdrücken im Dialogfeld Beziehung festlegen wird für Zeilen benutzt, die Nullwerte zurückgeben und nicht 0 Werte. Benutzen Sie diese Funktion, wenn Sie Daten bei einer Tabelle anzeigen möchten, in die keine Werte eingegeben sind, wie z.B. Aufträge ohne Zeilenobjekte. Wenn Sie eine nichtentsprechende Beziehung verwenden, können Sie nur eine Seite wählen, auf der nichtentsprechende Datensätze angezeigt werden.


Neue Abfragen generieren

  Verwandte Themen

So generieren Sie eine neue Abfrage:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Doppelklicken Sie auf die Tabelle(n), aus der bzw. denen Daten abgerufen werden sollen.

3	Klicken Sie auf Aufnehmen, um das Dialogfeld zu schließen und die Tabelle anzuzeigen.

4	Wählen Sie jede Spalte. In dem Kontrollkästchen neben jeder ausgewählten Spalte wird ein Häkchen angezeigt. Um alle Spalten aufzunehmen, kreuzen Sie das Kontrollkästchen in der Titelleiste der Tabelle an. Tip

5	Geben Sie eine oder mehrere Bedingungen ein, um die Abfrage zu optimieren.

6	Klicken Sie auf OK, um Query Builder zu schließen.


Verfügbarer Tabellen suchen
Verfügbare Tabellen suchen

  Verwandte Themen

So suchen Sie die Tabellen, die Sie in Ihrer Abfrage verwenden können:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Verwenden Sie die Kontrollkästchen Zeigen, um die Tabellen nach Typ zu sortieren.


Tabellen löschen

So löschen Sie eine Tabelle aus dem Arbeitsbereich von Query Builder:

1	Klicken Sie auf die Tabelle im Fenster Abfrage.

2	Klicken Sie auf [image] in der Symbolleiste. Query Builder entfernt die Tabelle aus dem Arbeitsbereich von Query Builder. Danach können Sie auf [image] klicken, um die Tabelle wieder in der Abfrage aufzunehmen.

Wenn Sie eine Tabelle ausschneiden oder löschen, wird diese nicht aus der Datenbank gelöscht, sondern nur aus der Abfrage entfernt.


Tabellen umbenennen

  Verwandte Themen

So benennen Sie eine Tabelle um: Hinweis

1	Klicken Sie auf [image] in der Symbolleiste.

2	Wählen Sie im Dialogfeld Tabelle umbenennen in der Liste Verfügbare Tabellen die Tabelle aus, deren Name geändert werden soll.

3	Klicken Sie auf das Feld Neuer Name.

4	Löschen Sie die nicht benötigten Informationen.

5	Geben Sie den neuen Namen für die Tabelle ein. Der neue Name kann maximal 30 Zeichen umfassen.

6	Klicken Sie auf Definieren.

7	Klicken Sie auf OK.

Wenn Sie eine Tabelle im Arbeitsbereich von Query Builder umbenennen, wird der entsprechende Name in der zugrundeliegenden Tabelle nicht geändert. Der neue Name gilt nur für die aktive Abfrage.


Informationen und Kommentare zu Tabellen und Spalten anzeigen

So zeigen Sie die Informationen und Kommentare an, die in der Datenbank gespeichert wurden:

  Doppelklicken Sie im Arbeitsbereich von Query Builder auf das äußerste rechte Symbol in der Tabellenüberschrift, um Informationen über die Tabelle anzuzeigen. Doppelklicken Sie auf das erste Symbol in jeder Spalte, um Informationen über die Spalte anzuzeigen.


Spalten aus einer Abfrage entfernen

  Verwandte Themen

So entfernen Sie eine Spalte aus einer Abfrage:

  Wählen Sie die Spalte im Arbeitsbereich von Query Builder aus. Das Häkchen in der Tabelle wird gelöscht.


Zeilen in einer Abfrage zählen

So zählen Sie die Zeilen in Ihrer Abfrage, bevor Sie diese ausführen:

  Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste. Daraufhin wird in einem Warnfenster die Anzahl von Zeilen angezeigt, die abgerufen werden.


Bedingungen zu einer Abfrage hinzufügen

  Beispiele	  Verwandte Themen

So fügen Sie Bedingungen zu einer Abfrage hinzu:

1	Klicken Sie in das leere Bedingungsfeld im Bereich Bedingungen, um dieses zu aktivieren. Neben dem Cursorpfeil wird ein Pluszeichen angezeigt. Der Mauszeiger kann jetzt benutzt werden, um Felder automatisch mit Zeigen und Klicken auszuwählen.

2	Wählen Sie die Spalte, für die Sie eine Bedingung anwenden möchten, im Arbeitsbereich von Query Builder aus. Um eine Liste aller verfügbaren Spalten anzuzeigen, klicken Sie auf [image] in der Symbolleiste. Tip

3	Klicken Sie auf den entsprechenden Operator in der Symbolleiste. Um Funktionen zu Ihrer Bedingung hinzuzufügen, klicken Sie auf [image] in der Symbolleiste.

4	Geben Sie den entsprechenden Wert für die rechte Seite des Bedingungsausdrucks im Anschluß an den Operator ein. Um eine weitere Bedingung hinzuzufügen, drücken Sie die Umschalttaste und Eingabetaste, um den Cursor in eine neue Zeile zu setzen.

5	Wenn der Ausdruck Ihren Vorstellungen entspricht, klicken Sie an einer Stelle außerhalb des Bedingungsfeldes, jedoch innerhalb des Bereichs Bedingungen, um dieses zu deaktivieren. Sie können auch auf [image] in der Symbolleiste klicken. Um den Inhalt des Bereichs Bedingungen zu löschen und von vorne zu beginnen, klicken Sie auf [image] in der Symbolleiste.


Über Bedingungen

  Beispiele 	  Verwandte Themen

Eine Bedingung ist ein Begriff, den Sie in eine Abfrage einfügen, um die gewünschten Informationen abzurufen und die nicht erwünschten Informationen auszufiltern. Mit Bedingungen können Sie Zeit sparen und Abfragen effizienter gestalten, da Sie mit Bedingungen Spalten der Tabelle abrufen können. Tip

Angenommen, Sie haben die Tabelle Employee in Ihrer Abfrage aufgenommen und haben die Spalten Name, Salary und Job title ausgewählt. Ohne Bedingungen haben Sie die Datenbank angewiesen: "Alle Mitarbeiterdaten aus den Spalten Name, Salary und Job in der Tabelle Employee auswählen". Nun können Sie zu der Originalanforderung Bedingungen hinzufügen, z.B. "bei denen...

•	das Monatsgehalt größer ist als 1000 DM und kleiner als 2000 DM."

•	der Nachname Schmidt ist."

•	der Job nicht Manager ist."

Anstatt nun die in den obigen Beispielen aufgeführten Begriffe in die Bedingung einzugeben, verwenden Sie Operatoren, so daß die Bedingung beinahe wie eine Formel aussieht. Um z.B. Mitarbeiter anzugeben, deren Gehälter höher sind als 3000 DM könnten Sie folgendes eingeben:

SALARY > 3000

Sie können auch Funktionen verwenden, um komplexe Bedingungen zu erstellen.


Beispiel für Bedingungen

  Verwandte Themen 	  Alle Beispiele

Angenommen, Sie möchten eine Abfrage erstellen, bei der Sie nur Daten für den Staat Kalifornien anzeigen.

1	Klicken Sie auf das Bedingungsfeld, um es zu aktivieren.

2	Wählen Sie die Spalte State in der entsprechenden Tabelle im Arbeitsbereich von Query Builder aus. Daraufhin wird im Bedingungsfeld das Wort STATE angezeigt.

3	Geben Sie das Gleichheitssymbol (=) ein.

4	Geben Sie 'CA' rechts neben dem Gleichheitszeichen in das Bedingungsfeld ein.

Die Bedingung sollte jetzt folgendermaßen aussehen: STATE= 'CA'


Über Operatoren

  Verwandte Themen

Ein Operator ist ein Zeichen oder ein reserviertes Wort, mit dem ein bestimmter Vorgang ausgeführt wird. Die drei Hauptarten von Operatoren, die in Query Builder benutzt werden, sind:

•	Vergleich

•	Arithmetisch

•	Logisch

Hinweis:  Basierend auf diesen Operatoren können Sie auch negierende Bedingungen erstellen.


Vergleichsoperatoren

  Verwandte Themen

Mit Vergleichsoperatoren werden zwei Werte verglichen. Wenn Sie den Operator zwischen einem Spaltennamen und einem Wert im Bereich Bedingungen einfügen, vergleicht Query Builder alle Objekte in dieser Spalte mit dem Wert und gibt nur die Zeilen zurück, bei denen die Bedingungsanweisung wahr ist.

Um z.B. nur die Zeilen zurückzugeben, bei denen der Wert in der Spalte CREDIT_LIMIT kleiner ist als 6000 DM, verwenden Sie den Operator < (kleiner als):

CREDIT_LIMIT < 6000

Die Vergleichsoperatoren von Query Builder sind:

Operator	Verwendung
=	Gleich
<>	Ungleich
<	Kleiner als
<=	Kleiner als oder gleich
>	Größer als
>=	Größer als oder gleich
BETWEEN...AND...	Zwischen zwei Werten
IN (LIST)	Gleich einem beliebigen Bestandteil der folgenden Liste
IS NULL	Ist ein NULL-Wert. Eine Zeile ohne einen Wert in einer Spalte enthält einen NULL-Wert.


Arithmetische Operatoren

  Verwandte Themen

Arithmetische Operatoren werden für die Durchführung von Berechnungen mit numerischen und Datumsspalten verwendet. Bei der Bearbeitung von Berechnungen wertet Query Builder zuerst Multiplikation oder Division und danach Addition oder Subtraktion aus.

•	In dem Ausdruck  1+2x3 wird zuerst 2 mit 3 multipliziert, danach wird das Ergebnis zu 1 addiert, so daß sich ein Endwert von 7 ergibt.

Um diese Prioritätsregeln außer Kraft zu setzen, setzen Sie einen Teil des Ausdrucks in Klammern. Query Builder wertet Ausdrücke in Klammern zuerst aus.

•	In der Berechnung (1+2)x3 wird (1+2) z.B. zuerst ausgewertet. Danach wird das Ergebnis mit 3 multipliziert, so daß sich ein Endergebnis von 9 ergibt.

Die arithmetischen Operatoren von Query Builder sind:

Operator	Verwendung
+	Addition
-	Subtraktion
*	Multiplikation
/	Division


Logische Operatoren

  Verwandte Themen

Die logischen Operatoren (die auch als Boolesche Operatoren bezeichnet werden) sind AND, OR und NOT:

•	Benutzen Sie AND, um nur die Daten abzurufen, die allen Bedingungen gerecht werden.

•	Benutzen Sie OR, um alle Daten abzurufen, die mindestens einer der angegebenen Bedingungen entsprechen.

•	Benutzen Sie NOT, um die Operatoren oder Bedingungen zu negieren.

Die Symbolleiste umfaßt Symbole für die logischen Operatoren. Die Operator-Symbole sind verfügbar, wenn der Bereich Bedingungen aktiv ist oder wenn das Dialogfeld Spalte definieren geöffnet ist. Sie können einen Operator in den Text der Bedingung oder definierten Spalte einfügen, indem Sie auf den Operator in der Symbolleiste klicken.


Über definierte (und berechnete) Spalten

  Beispiele 	  Verwandte Themen

Sie können Berechnungen mit den Daten durchführen, die Query Builder aus der Datenbank abruft. Danach können Sie die berechneten Daten im Fenster Ergebnisse in Form einer neuen Spalte (die auch als definiertes Feld bezeichnet wird) anzeigen. Sie können diese Spalten genau wie jede andere Spalte in Ihrer Abfrage benennen, definieren und anzeigen.

Sie können definierte Spalten in einer Query Builder-Abfrage verwenden, um "Was-wäre-wenn"-Szenarios, Prognosen, Projizierungen und andere Analysen zu erzeugen, wie z.B. Varianzen und Prozent-zu-Gesamt.

Hinweis:  Wenn Sie eine definierte Spalte (ein Feld) anzeigen, das eine Summenfunktion enthält, generiert Query Builder automatisch die entsprechende GROUP BY-Klausel für andere angezeigte Spalten, die keine Summenfunktionen verwenden. Erfahrene Benutzer können GROUP BY-Spalten auch manuell eingeben, um nach nicht angezeigten Spalten zu gruppieren.

Während Spalten im allgemeinen synonym mit den in Ihrer Tabelle gespeicherten Datenspalten sind, können sie auch neue Datenspalten in einer Abfrage referenzieren, die von den Werten in einer anderen Spalte abgeleitet oder berechnet werden. Diese berechneten Spalten werden gelegentlich als abgeleitete oder definierte Felder bezeichnet. So kann z.B. die Tabelle Employee zwei Spalten enthalten, die die Vergütung beschreiben: Salary und Commission. Sie können eine definierte Spalte erstellen, die die Werte in diesen Spalten in einer neuen Spalte mit der Bezeichnung Net Pay kombiniert, die die Summe von Gehalt (Salary) plus Provision (Commission) darstellt.

Sie können die definierten Spalten auf einer Kombination von einzelnen oder mehreren Datenbankspalten je nach Bedarf basieren.

Definierte Spalten sind in der Abfrage und nicht in der Datenbank vorhanden. Sie können festlegen, daß diese im Fenster Ergebnisse in Form von Spalten angezeigt oder verborgen werden (z.B. wenn Sie diese benutzen, um andere definierte Spalten zu erstellen).

Hinweis:  Die definierte Spalte ist nur ein Teil Ihrer Abfrage und ändert die in der Datenbank gespeicherte Tabellendefinition nicht.


Definierte Spalten löschen

  Verwandte Themen

So löschen Sie eine definierte Spalte aus einer Abfrage:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Klicken Sie auf den Namen der zu löschenden Spalte.

3	Klicken Sie auf Entfernen.


Beispiel für definierte (und berechnete) Spalten

  Verwandte Themen 	  Alle Beispiele

Angenommen, Sie möchten ein Budget für die Nettogehälter des nächsten Jahres (NET_PAY_NEXT) projizieren, wobei von einer Gehaltserhöhung von 10% ausgegangen wird. Sie können folgenden Ausdruck in das Feld Ausdruck eingeben:

(SALARY*1.1) + COMMISSION

Wenn Sie eine 10%ige Steigerung bei Gehalt und Provision überprüfen möchten, könnten Sie folgendes eingeben:

(SALARY+COMMISSION) * 1.1

Da NET_PAY gleich SALARY+COMMISSION ist, ist dies gleichbedeutend mit:

NET_PAY * 1.1

Sie können auch eine definierte Spalte erstellen, in der die Differenz zwischen den aktuellen Nettobezahlungen und den Schätzungen des nächsten Jahres angezeigt werden. Geben Sie dieser Spalte den Namen VARIANCE, und definieren Sie sie wie folgt:

NET_PAY_NEXT - NET_PAY

Wenn Sie neue Spalten definieren, müssen die in Ihrem Ausdruck beschriebenen Basisspalten nicht in der zugrundeliegenden Datenbank vorhanden sein, auch wenn sie letztendlich aus den Spalten in der zugrundeliegenden Tabelle abgeleitet werden. VARIANCE ist z.B. gleichbedeutend mit:

((SALARY+COMMISSION) * 1.1) - (SALARY+COMMISSION)


Sortierte Spalten löschen

  Verwandte Themen

So löschen Sie eine sortierte Spalte:

1	Klicken Sie im Arbeitsbereich von Query Builder auf das Symbol Sortieren.

2	Doppelklicken Sie auf den Namen der zu löschenden Spalte in der Liste Sortierte Spalten.


Abfragedaten sortieren

  Verwandte Themen

So sortieren Sie die Daten, die mit der Abfrage abgerufen werden:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Doppelklicken Sie auf die Spalten, nach denen sortiert werden soll, in der Liste Verfügbare Spalten. Eine sortierte Spalte muß nicht in der Abfrage aufgenommen werden.

So ändern Sie die Sortierfolge einer Spalte vom Standardwert (Aufsteigend):

1	Klicken Sie, um die Spalte in der Liste Sortierte Spalten hervorzuheben.

2	Klicken Sie auf die Optionsschaltfläche Absteigend.

3	Klicken Sie auf OK.


Spalten definieren

  Verwandte Themen

So definieren Sie eine neue Spalte in einer Tabelle:

1	Öffnen Sie die Tabelle, in der Sie eine Spalte definieren möchten.

2	Klicken Sie auf [image] in der Symbolleiste.

3	Klicken Sie in dem Feld Definierte Spalten.

4	Geben Sie den Namen für die neue Spalte ein.

5	Klicken Sie in dem Feld Definiert als.

6	Geben Sie den Ausdruck ein, mit dem Ihre Spalte definiert wird.

7	Klicken Sie auf OK.


Funktionen einfügen

  Beispiele 	  Verwandte Themen

So fügen Sie eine Funktion in eine Bedingung ein:

1	Aktivieren Sie das Bedingungsfeld, und setzen Sie den Cursor an die Stelle, an der die Funktion eingefügt werden soll.

2	Klicken Sie auf [image] in der Symbolleiste.

3	Filtern Sie die angezeigten Funktionstypen mit dem Kontrollkästchen Kategorien zeigen.

4	Wählen Sie eine Funktion aus dem Listenfeld.

5	Klicken Sie auf das Kontrollkästchen Argumente einfügen, wenn Sie Standardargumente aufnehmen möchten.

6	Klicken Sie auf OK.

7	Überschreiben Sie im Bedingungsfeld die Standardargumente durch die gewünschten Argumente.


Beispiel für Funktionen (Namen mit mehr als 30 Zeichen abrufen)

  Verwandte Themen 	  Alle Beispiele

Angenommen, Sie möchten die Namen aller Kunden aufführen, die länger sind als 30 Zeichen, da diese Namen zu lang für die Adreßetiketten sind. Um diese Namen aufzuführen, erstellen Sie eine Bedingung mit der Funktion LENGTH. Die Funktion LENGTH zählt die Anzahl von Zeichen in einer Zeichenfolge.

In diesem Beispiel ist das Argument in der Funktion LENGTH die Spalte NAME in der Kundentabelle. Die Funktion sieht also in der Bedingung folgendermaßen aus:

LENGTH (NAME) > 30

Mit dieser Bedingung wertet Query Builder alle Namen in der Spalte NAME aus und gibt die Namen zurück, bei denen die Feldlänge größer ist als 30 Zeichen.


Verschachtelte Bedingungen erstellen

  Verwandte Themen

So erstellen Sie eine verschachtelte Bedingung:

1	Geben Sie in dem Feld Bedingung den ersten Ausdruck mit einem Vergleichsoperator ein, wie z.B.: TOTAL<1000. Tip

2	Geben Sie den nächsten Ausdruck mit einem weiteren Vergleichsoperator ein, wie z.B.: EMP.LAST_NAME=SMITH

3	Geben Sie einen dritten Ausdruck mit dem Gleichheitsoperator (=) ein, wie z.B.: EMP.LAST_NAME=JONES.

4	Wählen Sie den zweiten und dritten Ausdruck.

5	Klicken Sie auf [image] in der Symbolleiste.

6	Klicken Sie auf [image] in der Symbolleiste.


Bereich Bedingungen skalieren

So skalieren Sie den Bereich Bedingungen:

1	Klicken Sie auf das schwarze Rechteck unten links in der Bildlaufleiste im Arbeitsbereich von Query Builder, und verschieben Sie den Cursor in den Arbeitsbereich von Query Builder nach oben.

2	Ziehen Sie die dicke schwarze Linie nach links oder rechts, um den Bereich Bedingungen zu verbreitern oder zu verschmälern. Wenn der Bereich vollständig verborgen ist, wird ganz außen links in der Bildlaufleiste der Bildschirmteiler angezeigt.


Bedingungssyntax

  Verwandte Themen

Eine Bedingung hat das folgende allgemeine Format:

[Ausdruck] [Operator] [Ausdruck]

wobei

Ausdruck	die Werte angibt, mit denen die Bedingung definiert wird. Ausdrücke können Datumsangaben, Zeichen, literale Werte, Zahlen, Spalten, Funktionen und Datenbankspalten angeben.
Operator	einen Vergleichsoperator angibt, wie z.B. größer als  (>), kleiner als (<) und gleich (=). Die gebräuchlichsten Operatoren werden im Menü Daten und in der Symbolleiste aufgeführt. Außerdem gibt es eine Reihe von speziellen Vergleichsoperatoren, wie z.B. BETWEEN, LIKE und IN.
Datumswerte

Bei der Arbeit mit Datumswerten referenzieren Vergleichsoperatoren eine relative Zeit. So bedeutet "kleiner als" (<) "vor".

Datumswerte müssen in einfachen Anführungszeichen stehen und im Format TT-MON-JJ angegeben werden, wobei TT den Kalendertag, MON den Monat und JJ das Jahr darstellt.

Zeichenwerte

Bei Zeichenspalten referenzieren Operatoren die alphanumerische Reihenfolge (A kommt vor B, so daß Namen, die mit A beginnen, "kleiner als" Namen sind, die mit B beginnen usw.).

Literale Werte

Literale Werte müssen in einfachen Anführungszeichen stehen, um sie von Spaltennamen zu unterscheiden. Bei Vergleichen zwischen Datenbankwerten und von Ihnen angegebenen Werten muß die Schreibweise berücksichtigt werden.

Zahlenwerte

Wenn der eingegebene Wert den Datentyp NUMBER hat, geben Sie nur die Zahl ein. Verwenden Sie also keine Formatierung, wie z.B. Punkte oder das Währungssymbol ($). Numerische Werte in Zahlenspalten müssen nicht in Anführungszeichen stehen.

Hinweis:  Es gibt außerdem drei logische (Boolesche) Operatoren (AND, OR, NOT), mit denen Sie mehrere oder negative Bedingungen erstellen können.

Zusätzliche Informationen:  Weitere Informationen über die Oracle-Syntax für verschiedene Datentypen finden Sie im Oracle8 Server SQL Language Reference Manual.


Negierungsbedingungen erstellen

  Verwandte Themen

So erstellen Sie eine Negierungsbedingung:

1	Generieren Sie eine Bedingung.

2	Klicken Sie in das Feld Bedingung, um dieses zu aktivieren.

3	Wählen Sie einen logischen Operator für die Bedingung.

4	Klicken Sie auf [image] in der Symbolleiste.

5	Drücken Sie die Eingabetaste, um die Bedingung zu akzeptieren.

Hinweis:  Bei Angabe von NOT AND werden alle Zeilen zurückgegeben, mit Ausnahme der Zeilen, in denen alle Bedingungen erfüllt werden. Bei Angabe von NOT OR werden alle Zeilen mit Ausnahme der Zeilen zurückgegeben, in denen eine der Bedingungen erfüllt wird.


SQL-Anweisungen einer Abfrage speichern

  Verwandte Themen

So speichern Sie die SQL-Anweisungen einer Abfrage:

  Wählen Sie Datei [image] SQL speichern im Fenster Abfrage, um das Dialogfeld SQL speichern anzuzeigen, in dem Sie ein Verzeichnis und einen Dateinamen angeben können.


Spaltenfolge ändern

  Verwandte Themen

So ändern Sie die Reihenfolge, in der Spalten in den Abfrageergebnissen angezeigt werden:

1	Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

2	Klicken Sie im Dialogfeld Spaltenfolge auf eine Spalte in der Liste Angezeigte Spalten, und ziehen Sie diese an die gewünschte Stelle nach oben oder unten. Die oberste Spalte wird ganz außen links angezeigt, während die unterste Spalte ganz außen rechts angezeigt wird.


SQL-Anweisungen einer Abfrage anzeigen

  Verwandte Themen

So zeigen Sie die SQL-Anweisungen einer Abfrage an:

  Klicken Sie im Arbeitsbereich von Query Builder auf [image] in der Symbolleiste.

Das Dialogfeld SQL anzeigen ist schreibgeschützt. Sie können die SQL-Anweisungen nicht bearbeiten oder kopieren.


Spalten zu einer Abfrage hinzufügen

  Verwandte Themen

So fügen Sie eine Spalte zu einer Abfrage hinzu:

 Wählen Sie die Spalte in einer Tabelle im Fenster Abfrage. Tip

Mit einer angekreuzten Spalte wird angegeben, daß die Spalte sowohl in der SQL-Anweisung als auch in den Abfrageergebnissen angezeigt wird. Sie können keine Spalte in der SQL-Anweisung aufnehmen, und sie in den angezeigten Ergebnissen verbergen.


Beispiele

  Alphabetische Liste

Beispiele für Abfrageattribute

Beispiele für Abgerundete Rechteckattribute

Beispiele für Achsenattribute (Allgemein)

Beispiele für Achsenattribute (Datum)

Beispiele für Achsenattribute (Kategorienachse)

Beispiele für Achsenattribute (Werteachse)

Beispiele für Allgemeine Attribute

Beispiele für Anwendungsattribute

Beispiele für Attribute

Beispiele für Bildattribute

Beispiele für Bogenattribute

Beispiele für Diagrammattribute

Beispiele für Diagrammelementattribute

Beispiele für diverse vordefinierte Prozeduren

Beispiele für Druckerattribute

Beispiele für einfache Textattribute

Beispiele für Feldvorlagenattribute (Allgemein)

Beispiele für Fensterattribute

Beispiele für Grafikattribute

Beispiele für Grafische Anwendungsattribute

Beispiele für Gruppenattribute

Beispiele für Klangattribute

Beispiele für Linienattribute

Beispiele für Polygonattribute

Beispiele für Rahmenattribute (Achsendiagramm)

Beispiele für Rahmenattribute (Allgemein)

Beispiele für Rahmenattribute (Kreisdiagramm)

Beispiele für Rahmenattribute (Tabellendiagramm)

Beispiele für Rechteckattribute

Beispiele für Referenzlinienattribute

Beispiele für Symbolattribute

Beispiele für Textattribute

Beispiele für Timer-Attribute

Beispiele für vordefinierte Abfrage-Prozeduren

Beispiele für vordefinierte Datenbank-Prozeduren

Beispiele für vordefinierte Diagramm-Prozeduren

Beispiele für vordefinierte Ebenen-Prozeduren

Beispiele für vordefinierte Fenster-Prozeduren

Beispiele für vordefinierte Prozeduren für Grafikobjekte

Beispiele für vordefinierte Grafische Anwendungs-Prozeduren

Beispiele für vordefinierte Klang-Prozeduren

Beispiele für vordefinierte Parameter-Prozeduren

Beispiele für vordefinierte Prozeduren

Beispiele für vordefinierte Timer-Prozeduren

Beispiele für vordefinierte TOOLS_INT-Prozeduren

Beispiele für vordefinierte Vorlagen-Prozeduren

Beispiele für zusammengesetzte Textattribute

Feldvorlagenattribute (Achsendiagramm)


Beispiele für Attribute

  Alphabetische Liste      [image]  Alle Beispiele

Beispiele für Abfrageattribute

Beispiele für Abgerundete Rechteckattribute

Beispiele für Achsenattribute (Allgemein)

Beispiele für Achsenattribute (Datum)

Beispiele für Achsenattribute (Kategorienachse)

Beispiele für Achsenattribute (Werteachse)

Beispiele für Allgemeine Attribute

Beispiele für Anwendungsattribute

Beispiele für Bildattribute

Beispiele für Bogenattribute

Beispiele für Diagrammattribute

Beispiele für Diagrammelementattribute

Beispiele für Druckerattribute

Beispiele für einfache Textattribute

Beispiele für Feldvorlagenattribute (Allgemein)

Beispiele für Fensterattribute

Beispiele für Grafikattribute

Beispiele für Grafische Anwendungsattribute

Beispiele für Gruppenattribute

Beispiele für Klangattribute

Beispiele für Linienattribute

Beispiele für Polygonattribute

Beispiele für Rahmenattribute (Achsendiagramm)

Beispiele für Rahmenattribute (Allgemein)

Beispiele für Rahmenattribute (Kreisdiagramm)

Beispiele für Rahmenattribute (Tabellendiagramm)

Beispiele für Rechteckattribute

Beispiele für Referenzlinienattribute

Beispiele für Symbolattribute

Beispiele für Textattribute

Beispiele für Timer-Attribute

Beispiele für zusammengesetzte Textattribute

Feldvorlagenattribute (Achsendiagramm)


Beispiele für vordefinierte Prozeduren

  Alphabetische Liste      [image]  Alle Beispiele

Beispiele für vordefinierte Diagramm-Prozeduren

Beispiele für vordefinierte Datenbank-Prozeduren

Beispiele für vordefinierte Grafische Anwendungs-Prozeduren

Beispiele für vordefinierte Prozeduren für Grafikobjekte

Beispiele für vordefinierte Ebenen-Prozeduren

Beispiele für diverse vordefinierte Prozeduren

Beispiele für vordefinierte Parameter-Prozeduren

Beispiele für vordefinierte Abfrage-Prozeduren

Beispiele für vordefinierte Klang-Prozeduren

Beispiele für vordefinierte Vorlagen-Prozeduren

Beispiele für vordefinierte Timer-Prozeduren

Beispiele für vordefinierte TOOLS_INT-Prozeduren

Beispiele für vordefinierte Fenster-Prozeduren


Beispiele für Anwendungsattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Benutzername

Beispiele für das Attribut Cursor

Beispiele für das Attribut DB-Adresse

Beispiele für das Attribut Horizontale Bildschirmauflösung

Beispiele für das Attribut Horizontale Layoutauflösung

Beispiele für das Attribut Kennwort

Beispiele für das Attribut Plattform

Beispiele für das Attribut Vertikale Bildschirmauflösung

Beispiele für das Attribut Vertikale Layoutauflösung


Beispiele für Bogenattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Basisbogen

Beispiele für das Attribut Begrenzungslinie

Beispiele für das Attribut Füllen


Beispiele für Achsenattribute (Datum)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Auto Maximum

Beispiele für das Attribut Auto Minimum

Beispiele für das Attribut Auto Schrittgröße

Beispiele für das Attribut Beschriftungen

Beispiele für das Attribut Format Benutzerdefiniert

Beispiele für das Attribut Format Erster Monat

Beispiele für das Attribut Format Jahr

Beispiele für das Attribut Format Monat

Beispiele für das Attribut Format Tag

Beispiele für das Attribut Maximum

Beispiele für das Attribut Minimum

Beispiele für das Attribut Quartal

Beispiele für das Attribut Schrittgröße

Beispiele für das Attribut Wochenenden überspringen


Beispiele für Achsenattribute (Allgemein)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Achsenbeschriftung

Beispiele für das Attribut Achsentyp

Beispiele für das Attribut Benutzerdefinierte Beschriftung

Beispiele für das Attribut Drehung der Teilungsbeschriftung

Beispiele für das Attribut Feinraster

Beispiele für das Attribut Feinteilungen pro Intervall

Beispiele für das Attribut Grobraster

Beispiele für das Attribut Grobteilungen

Beispiele für das Attribut Position der Teilungen

Beispiele für das Attribut Position

Beispiele für das Attribut Richtung

Beispiele für das Attribut Teilungsbeschriftungen


Beispiele für Achsenattribute (Kategorienachse)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Auto Maximum

Beispiele für das Attribut Auto Minimum

Beispiele für das Attribut Datumsformat

Beispiele für das Attribut Max. Anzahl an Kategorien

Beispiele für das Attribut Min. Anzahl an Kategorien

Beispiele für das Attribut Zahlenformat


Beispiele für Achsenattribute (Werteachse)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Auto Maximum

Beispiele für das Attribut Auto Minimum

Beispiele für das Attribut Auto Schrittgröße

Beispiele für das Attribut Maßstab

Beispiele für das Attribut Maximum

Beispiele für das Attribut Minimum

Beispiele für das Attribut Prozent mit

Beispiele für das Attribut Prozent von

Beispiele für das Attribut Schrittgröße

Beispiele für das Attribut Zahlenformat


Beispiele für vordefinierte Diagramm-Prozeduren

  Alle Beispiele    [image]  Verwandte Themen

Beispiele für OG_Delete_Column

Beispiele für OG_Delete_Field

Beispiele für OG_Get_Chart_Element

Beispiele für OG_Get_Column

Beispiele für OG_Get_Field

Beispiele für OG_Get_Row

Beispiele für OG_Insert_Field

Beispiele für OG_Make_Chart

Beispiele für OG_Update_Chart


Beispiele für Diagrammelementattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Auflösen

Beispiele für das Attribut Ereignisse

Beispiele für das Attribut Name

Beispiele für das Attribut Schaltflächenprozedur


Beispiele für Diagrammattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Abfrage

Beispiele für das Attribut Anfangszeile

Beispiele für das Attribut Automatisch aktualisieren

Beispiele für das Attribut Bereich

Beispiele für das Attribut Endzeile

Beispiele für das Attribut Filter

Beispiele für das Attribut Größe und Position

Beispiele für das Attribut Titel

Beispiele für das Attribut Vorlage


Beispiele für zusammengesetzte Textattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Einfacher Textzähler


Beispiele für vordefinierte Datenbank-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Connect

Beispiele für OG_Logged_On

Beispiele für OG_Logoff

Beispiele für OG_Logon


Beispiele für vordefinierte Grafische Anwendungs-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Close_Display

Beispiele für OG_Generate_Display

Beispiele für OG_Get_Display

Beispiele für OG_Isnull

Beispiele für OG_Open_Display

Beispiele für OG_Save_Display


Beispiele für Grafische Anwendungsattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Breite

Beispiele für das Attribut Close Trigger

Beispiele für das Attribut Datumsformat

Beispiele für das Attribut Höhe

Beispiele für das Attribut Open Trigger


Beispiele für Rahmenattribute (Achsendiagramm)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Basislinie Achse

Beispiele für das Attribut Benutzerdefiniertes Datumsformat

Beispiele für das Attribut Benutzerdefiniertes Zahlenformat

Beispiele für das Attribut Kategorienbreite

Beispiele für das Attribut Referenzlinienzähler

Beispiele für das Attribut Wert der Basislinie

Beispiele für das Attribut Zweite Y-Achse


Beispiele für Rahmenattribute (Allgemein)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Anzahl der Spalten in der Legende

Beispiele für das Attribut Anzahl Feldvorlagen

Beispiele für das Attribut Darstellungsrahmen

Beispiele für das Attribut Hauptfenster

Beispiele für das Attribut Legende

Beispiele für das Attribut Name

Beispiele für das Attribut Rahmentyp

Beispiele für das Attribut Schattenrichtung

Beispiele für das Attribut Schattengröße

Beispiele für das Attribut Tiefe


Beispiele für Rahmenattribute (Kreisdiagramm)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Andere

Beispiele für das Attribut Darstellungsreihenfolge

Beispiele für das Attribut Datenwerte

Beispiele für das Attribut Kategorie Datumsformat

Beispiele für das Attribut Kategorie Zahlenformat

Beispiele für das Attribut Kategorien

Beispiele für das Attribut Prozentformat

Beispiele für das Attribut Prozentwerte

Beispiele für das Attribut Teilungen

Beispiele für das Attribut Überschneidung verhindern

Beispiele für das Attribut Verwendung Wert

Beispiele für das Attribut Verwendung

Beispiele für das Attribut Wertformat


Beispiele für Rahmenattribute (Tabellendiagramm)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Auto Maximum

Beispiele für das Attribut Auto Minimum

Beispiele für das Attribut Horizontale Rasterlinien

Beispiele für das Attribut Max. Anzahl Zeilen

Beispiele für das Attribut Min. Anzahl Zeilen

Beispiele für das Attribut Spaltennamen

Beispiele für das Attribut Vertikale Rasterlinien

Beispiele für das Attribut Zeilen pro horizontale Linie


Beispiele für Feldvorlagenattribute (Allgemein)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Datumsformat

Beispiele für das Attribut Farbrotation

Beispiele für das Attribut Hauptfenster

Beispiele für das Attribut Name

Beispiele für das Attribut Zahlenformat


Feldvorlagenattribute (Achsendiagramm)

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Achse

Beispiele für das Attribut Darstellungstyp

Beispiele für das Attribut Drehung der Beschriftung

Beispiele für das Attribut Kurventyp

Beispiele für das Attribut Linienstil

Beispiele für das Attribut Position der Darstellung

Beispiele für das Attribut Überlappend


Beispiele für Allgemeine Attribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Abfrage ausführen

Beispiele für das Attribut Äußere Umrandung

Beispiele für das Attribut Ereignisse

Beispiele für das Attribut Format-Trigger

Beispiele für das Attribut Innere Umrandung

Beispiele für das Attribut Name

Beispiele für das Attribut Objekt verbergen

Beispiele für das Attribut Objekttyp

Beispiele für das Attribut Parameter setzen

Beispiele für das Attribut Schaltflächenprozedur

Beispiele für das Attribut Spalte

Beispiele für das Attribut Übergeordnetes Objekt


Beispiele für Grafikattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Drehwinkel

Beispiele für das Attribut Füllmuster

Beispiele für das Attribut Hintergrundfüllfarbe

Beispiele für das Attribut Hintergrundrandfarbe

Beispiele für das Attribut Join-Stil

Beispiele für das Attribut Linienende

Beispiele für das Attribut Randbreite

Beispiele für das Attribut Randmuster

Beispiele für das Attribut Strichart

Beispiele für das Attribut Transfermodus

Beispiele für das Attribut Umrißstil

Beispiele für das Attribut Vordergrundfüllfarbe

Beispiele für das Attribut Vordergrundrandfarbe


Beispiele für Gruppenattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Anzahl untergeordneter Objekte

Beispiele für das Attribut Begrenzungsmarke


Beispiele für Bildattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Begrenzungsrechteck

Beispiele für das Attribut Breite

Beispiele für das Attribut Dithering

Beispiele für das Attribut Höhe

Beispiele für das Attribut Position

Beispiele für das Attribut Qualität


Beispiele für vordefinierte Ebenen-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Activate_Layer

Beispiele für OG_Get_Layer

Beispiele für OG_Hide_Layer

Beispiele für OG_Show_Layer


Beispiele für Linienattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Anfangspunkt

Beispiele für das Attribut Endpunkt

Beispiele für das Attribut Pfeilart


Beispiele für diverse vordefinierte Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Append_Directory

Beispiele für OG_Append_File

Beispiele für OG_Center

Beispiele für OG_Damage (Bereich)

Beispiele für Do_Sql

Beispiele für OG_Get_Attr (Anwendung)

Beispiele für OG_Get_Attr (Achse)

Beispiele für OG_Get_Attr (Grafische Anwendung)

Beispiele für OG_Get_Attr (Feldvorlage)

Beispiele für OG_Get_Attr (Rahmenvorlage)

Beispiele für OG_Get_Attr (Objekt)

Beispiele für OG_Get_Attr (Drucker)

Beispiele für OG_Get_Attr (Abfrage)

Beispiele für OG_Get_Attr (Referenzlinie)

Beispiele für OG_Get_Attr (Klang)

Beispiele für OG_Get_Attr (Timer)

Beispiele für OG_Get_Attr (Fenster)

Beispiele für OG_Translate_Envvar

Beispiele für OG_User_Exit


Beispiele für vordefinierte Prozeduren für Grafikobjekte

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Clone (Objekt)

Beispiele für OG_Damage (Objekt)

Beispiele für OG_Delete_Child

Beispiele für OG_Delete_Cmptext

Beispiele für OG_Delete_Point

Beispiele für OG_Delete_Property

Beispiele für OG_Delete_Smptext

Beispiele für OG_Destroy (Objekt)

Beispiele für OG_Draw

Beispiele für OG_Export_Drawing (Grafische Anwendung)

Beispiele für OG_Export_Drawing (Objekt/Ebene)

Beispiele für OG_Export_Drawing (Fenster)

Beispiele für OG_Export_Image

Beispiele für OG_Get_Char_Property

Beispiele für OG_Get_Child

Beispiele für OG_Get_Cmptext

Beispiele für OG_Get_Date_Property

Beispiele für OG_Get_Num_Property

Beispiele für OG_Get_Object

Beispiele für OG_Get_Point

Beispiele für OG_Get_Smptext

Beispiele für OG_Import_Drawing

Beispiele für OG_Import_Image

Beispiele für OG_Insert_Child

Beispiele für OG_Insert_Cmptext

Beispiele für OG_Insert_Point

Beispiele für OG_Insert_Smptext

Beispiele für OG_Make_Ellipse

Beispiele für OG_Make_Group

Beispiele für OG_Make_Image

Beispiele für OG_Make_Line

Beispiele für OG_Make_Poly

Beispiele für OG_Make_Rect

Beispiele für OG_Make_Rrect

Beispiele für OG_Make_Symbol

Beispiele für OG_Make_Text

Beispiele für OG_Move

Beispiele für OG_Point_In

Beispiele für OG_Point_Near

Beispiele für OG_Property_Exists

Beispiele für OG_Rotate

Beispiele für OG_Same

Beispiele für OG_Scale

Beispiele für OG_Set_Edgecolor

Beispiele für OG_Set_Fillcolor

Beispiele für OG_Set_Property

Beispiele für OG_Synchronize

Beispiele für OG_Update_Bbox


Beispiele für vordefinierte Parameter-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Delete_Param

Beispiele für OG_Get_Char_Param

Beispiele für OG_Get_Date_Param

Beispiele für OG_Get_Num_Param

Beispiele für OG_Get_Param_Type

Beispiele für OG_Param_Exists

Beispiele für OG_Set_Param


Beispiele für Polygonattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Anzahl Punkte

Beispiele für das Attribut Begrenzungslinie


Beispiele für Druckerattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Anfangsseite

Beispiele für das Attribut Ausdruck in Datei

Beispiele für das Attribut Endseite

Beispiele für das Attribut Kopien

Beispiele für das Attribut Name

Beispiele für das Attribut Querformat

Beispiele für das Attribut Seitengröße


Beispiele für vordefinierte Abfrage-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Append_Row

Beispiele für OG_Clear_Query

Beispiele für OG_Data_Changed

Beispiele für OG_Data_Queried

Beispiele für OG_Destroy (Abfrage)

Beispiele für OG_Execute_Query

Beispiele für OG_Get_Charcell

Beispiele für OG_Get_Datecell

Beispiele für OG_Get_Newrows

Beispiele für OG_Get_Numcell

Beispiele für OG_Get_Query

Beispiele für OG_Get_Schema

Beispiele für OG_Insert_Column

Beispiele für OG_Make_Query

Beispiele für OG_Next_Row

Beispiele für OG_Numcols

Beispiele für OG_Numrows

Beispiele für OG_Set_Charcell

Beispiele für OG_Set_Datecell

Beispiele für OG_Set_Numcell

Beispiele für OG_Set_Schema

Beispiele für OG_Start_From


Beispiele für Abfrageattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Abfragequelle

Beispiele für das Attribut Abfragetyp

Beispiele für das Attribut Ausführen bei Öffnen

Beispiele für das Attribut Ausführen bei Timer

Beispiele für das Attribut Benutzerdefinierte Abfrageprozedur

Beispiele für das Attribut Cache-Typ

Beispiele für das Attribut Datumsformat

Beispiele für das Attribut Flag Max. Anzahl Zeilen

Beispiele für das Attribut Maximale Anzahl Zeilen

Beispiele für das Attribut Name

Beispiele für das Attribut Post-Query-Trigger-Prozedur


Beispiele für Rechteckattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Basisrechteck


Beispiele für Referenzlinienattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Achse

Beispiele für das Attribut Beschriftung

Beispiele für das Attribut Datumswert

Beispiele für das Attribut Zahlenwert


Beispiele für Abgerundete Rechteckattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Basisrechteck

Beispiele für das Attribut Winkelradius


Beispiele für Klangattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Name


Beispiele für vordefinierte Klang-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Destroy (Klang)

Beispiele für OG_Export_Sound

Beispiele für OG_Get_Sound

Beispiele für OG_Import_Sound

Beispiele für OG_Make_Sound

Beispiele für OG_Play_Sound

Beispiele für OG_Record_Sound

Beispiele für OG_Stop_Sound


Beispiele für einfache Textattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Farbe

Beispiele für das Attribut Schriftart

Beispiele für das Attribut Textfolge


Beispiele für Symbolattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Index

Beispiele für das Attribut Mitte

Beispiele für das Attribut Symbolgröße


Beispiele für vordefinierte Vorlagen-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Clone (Vorlage)

Beispiele für OG_Delete_Ftemp

Beispiele für OG_Delete_Refline

Beispiele für OG_Destroy (Vorlage)

Beispiele für OG_Export_Template

Beispiele für OG_Get_Axis

Beispiele für OG_Get_Ftemp

Beispiele für OG_Get_Refline

Beispiele für OG_Get_Template

Beispiele für OG_Import_Template

Beispiele für OG_Insert_Ftemp

Beispiele für OG_Insert_Refline

Beispiele für OG_Make_Template


Beispiele für Timer-Attribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Aktiv

Beispiele für das Attribut Intervall

Beispiele für das Attribut Name

Beispiele für das Attribut Prozedur


Beispiele für vordefinierte Timer-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Activate_Timer

Beispiele für OG_Deactivate_Timer

Beispiele für OG_Destroy (Timer)

Beispiele für OG_Get_Timer

Beispiele für OG_Make_Timer


Beispiele für vordefinierte TOOLS_INT-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für Tool_Int.Add_Parameter

Beispiele für Tool_Int.Create_Parameter_List

Beispiele für Tool_Int.Delete_Parameter

Beispiele für Tool_Int.Destroy_Parameter_List

Beispiele für Tool_Int.Get_Parameter_Attr

Beispiele für Tool_Int.Get_Parameter_List

Beispiele für Tool_Int.Isnull

Beispiele für Tool_Int.Run_Product

Beispiele für Tool_Int.Set_Parameter_Attr


Beispiele für Textattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Benutzerdefinierter Zeilenabstand

Beispiele für das Attribut Breite Umrandung

Beispiele für das Attribut Breite

Beispiele für das Attribut Farbe

Beispiele für das Attribut Feste Umrandung

Beispiele für das Attribut Höhe Umrandung

Beispiele für das Attribut Horizontale Ausrichtung

Beispiele für das Attribut Horizontal

Beispiele für das Attribut Kerning

Beispiele für das Attribut Nächste

Beispiele für das Attribut Punktgröße

Beispiele für das Attribut Schriftstärke

Beispiele für das Attribut Schrift

Beispiele für das Attribut Skalierbare Schriftart

Beispiele für das Attribut Skalierbare Umrandung

Beispiele für das Attribut Stil

Beispiele für das Attribut Synthesize

Beispiele für das Attribut Umbruch

Beispiele für das Attribut Unsichtbar

Beispiele für das Attribut Vertikale Ausrichtung

Beispiele für das Attribut Vertikal

Beispiele für das Attribut Zeichensatz

Beispiele für das Attribut Zeilenabstand

Beispiele für das Attribut Zusammengesetzter Textzähler


Beispiele für Fensterattribute

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für das Attribut Höhe

Beispiele für das Attribut Hilfeziel

Beispiele für das Attribut Name

Beispiele für das Attribut Position

Beispiele für das Attribut Breite


Beispiele für vordefinierte Fenster-Prozeduren

  Alle Beispiele     [image]  Verwandte Themen

Beispiele für OG_Destroy (Fenster)

Beispiele für OG_Get_Window

Beispiele für OG_Hide_Window

Beispiele für OG_Make_Window

Beispiele für OG_Show_Window


Zusammengesetzte Textattribute

Attribut Einfacher Textzähler

Attribut Zusammengesetzter Textzähler


Attribut Einfacher Textzähler

  Beispiele	  Verwandte Themen

Beschreibung  Entspricht der Anzahl einfacher Textelemente, aus denen das zusammengesetzte Textelement besteht.

Syntax

FUNCTION OG_Get_Stcount
  (text           OG_Object,
   cmptext_index  NUMBER)
RETURN NUMBER;

Parameter

text	Beschriebenes Textelement.
cmptext_index	Indexnummer des beschriebenen zusammengesetzten Textelements.


Beispiele für das Attribut Einfacher Textzähler

  Alphabetic List          [image]  Alle Beispiele     [image]  Verwandte Themen

*/The following procedure reads the count of
**simple text of the first compound
**text in a text object, and prints the count
**back to the text object.
*/

 PROCEDURE simpleText IS

  num number;

  text og_object;

BEGIN

  text := og_get_object('text');

  num := og_get_stcount(text,0);

  og_set_str(text, num);

END;