4D v16.3

Eigenschaften für Projektmethoden

Home

 
4D v16.3
Eigenschaften für Projektmethoden

Eigenschaften für Projektmethoden  


 

 

Nachdem Sie eine Projektmethode erstellt haben, können Sie diese umbenennen und ihre Eigenschaften ändern. Das sind hauptsächlich Zugriffsrechte, Sicherheitsbedingungen (Zugriff durch Benutzer, integrierte Server oder Services) und ihr Ausführungsmodus.

Die anderen Methodenarten haben keine spezifischen Eigenschaften. Ihre Eigenschaften sind mit denen der dazugehörigen Objekte verbunden.

Um die Eigenschaften einer Projektmethode zu ändern:

  1. Wählen Sie im Methodeneditor im Menü Methode den Befehl Methoden-Eigenschaften
    ODER
    Klicken Sie im 4D Explorer auf der Seite Methoden mit der rechten Maustaste auf eine Projektmethode und wählen dann im Kontextmenü den Eintrag Methodenauswahl-Eigenschaften. Sie können diesen Eintrag auch im Menü Optionen am unteren Rand aufrufen. Auf dem Bildschirm erscheint folgendes Dialogfenster:

Hinweis: Über die Funktion Methodenauswahl-Eigenschaften können Sie eine Eigenschaft auch für alle oder Teile von Projektmethoden der Datenbank in einer Operation ändern (siehe Methodeneigenschaften als Gruppe bearbeiten).

Sie können den Namen einer Projektmethode im Bereich "Name" des Fensters Methode-Eigenschaften oder im Explorer ändern.

Der neue Name muss die 4D Namensregeln beachten (siehe Handbuch 4D Programmiersprache unter Namenskonventionen). Wenn bereits eine Methode mit gleichem Namen besteht, zeigt 4D eine Meldung, dass dieser Methodenname bereits verwendet wurde. 4D sortiert bei Bedarf die Liste der Methoden neu.

Warnung: Ändern Sie den Namen einer Methode, die in der Datenbank bereits verwendet wird, kann das sämtliche Methoden oder Formeln ungültig machen, die den alten Methodennamen verwenden, was zu einer Störung in der Funktionsweise der Anwendung führen kann. Sie können die Methode manuell umbenennen, wir raten aber dringend, die Funktion zum Umbenennen für Projektmethoden zu verwenden. Weitere Informationen dazu finden Sie im Abschnitt Umbenennen. Auf diese Weise können Sie den Namen überall da, wo die Methode in der Designumgebung aufgerufen wird, automatisch aktualisieren.

Hinweis zu 4D Server: Der Name der Methode wird auf dem Server geändert, sobald Sie die Bearbeitung des Namens abgeschlossen haben. Wenn mehr als ein Benutzer gleichzeitig den Methodennamen ändern, wird der vom letzten Benutzer bearbeitete Name der neue Name.
Sie können Benutzer für Methoden festlegen, damit nur diese Benutzer den Namen der Methode ändern können.

Hinweis: Datenbank-Methoden können Sie nicht umbenennen. Dasselbe gilt für Trigger, Formularmethoden und Objektmethoden, denn sie sind an Objekte gebunden und erhalten ihre Namen vom Objekt.

Über Eigenschaften können Sie steuern, wie Projektmethoden verwendet bzw. in verschiedenen Kontexten aufgerufen werden. Über den Explorer können Sie Eigenschaften auch für die gesamte Auswahl von Projektmethoden setzen (siehe nächster Abschnitt).

Über den Menübefehl Start > Methode können Benutzer Projektmethoden auslösen. Um das zu verhindern, markieren Sie im Dialogfenster Methode-Eigenschaften die Eigenschaft Unsichtbar. Eine ausgeblendete Methode erscheint nicht mehr im Dialogfenster Methode Ausführen (siehe Abschnitt Über das Fenster Methode ausführen). 

Wenn Sie eine Projektmethode ausblenden, steht sie für Programmierer der Datenbank weiterhin zur Verfügung. Sie verbleibt in der Liste auf der Seite Formulare des Explorer und in der Routinenliste des Methodeneditors.

Diese Option wird im Rahmen von Komponenten verwendet. Ist sie markiert, gibt sie an, dass die Methode für Komponenten verfügbar ist, wenn die Anwendung als Host Datenbank verwendet wird und umgekehrt für Host Datenbanken, wenn die Anwendung als Komponente verwendet wird.

Weitere Informationen zu Komponenten finden Sie im Kapitel 4D Komponenten entwickeln und installieren.

Diese Eigenschaft wird nur für eine 4D Anwendung im Client/Server Modus berücksichtigt. Ist die Option markiert, wird die Projektmethode immer auf dem Server ausgeführt, unabhängig wie sie aufgerufen wird.
Weitere Informationen dazu finden Sie im 4D Server Handbuch im Abschnitt Attribut Auf Server ausführen.

In diesem Teil können Sie die Methode als im preemptive Modus ausführbar deklarieren. Standardmäßig führt 4D alle Projektmethoden Ihrer Anwendungen im kooperativen Modus aus. Um die Vorteile des preemptive Modus zu nutzen, müssen Sie zuerst alle Methoden, die nach Möglichkeit im preemptive Modus starten sollen, explizit deklarieren. Der Compiler prüft dann, ob solche Methoden tatsächlich thread-safe sind.

Hinweis: Die Ausführung im preemptive Modus ist nur im kompilierten Modus und nur in 64-bit Versionen von 4D möglich. Weitere Informationen finden Sie im Abschnitt Preemptive 4D Prozesse.

 

Es gibt folgende Optionen:

  • Als preemptive Prozess starten: Mit dieser Option deklarieren Sie, dass die Methode in einem preemptive Prozess laufen kann, d.h. sie soll wenn möglich, im preemptive Modus laufen.
    Der 4D Compiler überprüft, ob die Methode aktuell preemptiv nutzbar ist, andernfalls gibt er Fehler zurück -- das ist der Fall, wenn Befehle oder Methoden direkt oder indirekt aufgerufen werden, die nicht im preemptive Modus laufen können (die gesamte Aufrufkette wird durchlaufen, aber Fehler werden auf der ersten Unterebene protokolliert). Sie können dann die Methode bearbeiten, damit sie thread-safe wird, oder eine andere Option wählen.
    Ist die preemptive Nutzbarkeit der Methode bestätigt, wird sie intern als "thread-safe" markiert und im preemptive Modus ausgeführt, sobald alle erforderlichen Bedingungen zutreffen. Diese Eigenschaft definiert die Wahlmöglichkeit des preemptive Modus, garantiert aber nicht, dass die Methode tatsächlich in diesem Modus läuft, da dafür ein spezifischer Kontext erforderlich ist (siehe ).
  • Nicht als preemptive Prozess starten: Mit dieser Option deklarieren Sie, dass die Methode nie im preemptive Modus laufen soll, d.h. sie muss immer im kooperativen Modus laufen, wie in bisherigen 4D Versionen.
    Der 4D Compiler überprüft nicht, ob die Methode im preemptive Modus laufen kann; sie wird automatisch intern als "thread-unsafe" eingestuft (selbst wenn sie theoretisch preemptiv nutzbar wäre). Beim Aufrufen in Echtzeit kontaminiert diese Methode alle anderen Methoden im gleichen Thread und erzwingt so die Ausführung im kooperativen Modus (selbst wenn andere Methoden "thread-safe" sind).
  • Automatisch wählen: Mit dieser Option deklarieren Sie, dass Sie die preemptive Nutzbarkeit für die Methode nicht verwalten wollen.
    Der 4D Compiler bewertet die preemptive Nutzbarkeit der Methode und stuft sie intern als "thread-safe" oder "thread-unsafe" ein. Es wird kein Fehler zur preemptive Ausführung gemeldet. Wird die Methode als "thread-safe" gewertet und in einem preemptive Kontext aufgerufen, verhindert das in Echtzeit nicht die preemptive Thread-Ausführung. Wird sie umgekehrt als "thread-unsafe" gewertet, verhindert das bei Aufrufen in Echtzeit jede preemptive Thread-Ausführung.
    Beachten Sie, dass mit dieser Option eine Methode, unabhängig von ihrer internen Bewertung der Thread-Sicherheit, immer im kooperativen Modus ausgeführt wird, wenn sie von 4D direkt als erste übergeordnete Methode aufgerufen wird (z.B. über die Funktion New process). Ist sie intern als thread-safe eingestuft, wird sie nur berücksichtigt, wenn sie von anderen Methoden innerhalb einer Aufrufkette aufgerufen wird.

Hier können Sie angeben, welche externen Dienste explizit die Methode aufrufen dürfen.

Mit dieser Option können Sie die aktuelle Methode über eine SOAP Anfrage als Web Service veröffentlichen. Weitere Informationen dazu finden Sie im Kapitel Web Services publizieren und einsetzen. Ist diese Option markiert, ist auch die Option Anbieten per WSDL aktiv.

Im Explorer sind Projektmethoden, die als Web Service angeboten werden, mit dem Icon gekennzeichnet.

Hinweis: Sie können eine Methode nicht als Web Service veröffentlichen, wenn ihr Name Zeichen enthält, die nicht mit der XML Nomenklatur kompatibel sind (z.B. Leerzeichen). In diesem Fall weist 4D die Eigenschaft nicht zu.

Dieses Attribut ist nur verfügbar, wenn die Option "Web Services" markiert ist. Damit können Sie die aktuelle Methode in die WSDL-Datei von 4D einfügen. Weitere Informationen dazu finden Sie im Abschnitt WSDL erzeugen

Im Explorer sind Projektmethoden, die als Web Service und im WSDL angeboten werden, mit dem Icon gekennzeichnet. 

Diese Option verstärkt die Sicherheit des 4D Web Server: Ist sie inaktiv, kann die Projektmethode nicht über eine HTTP Anfrage ausgeführt werden, wenn sie das spezielle URL 4DACTION, (sowie das frühere URL 4DMETHOD) zum Aufrufen von 4D Methoden enthält, bzw. die speziellen Tags 4DSCRIPT, 4DTEXT und 4DHTML. Weitere Informationen dazu finden Sie im Handbuch 4D Programmiersprache unter URLs und Form Actions und 4D HTML Tags.

Im Explorer sind Projektmethoden mIt diesem Attribut mit dem Icon gekennzeichnet.

Aus Sicherheitsgründen ist diese Option standardmäßig inaktiv. Sie müssen Methoden, die über spezielle Web URLs oder Tags ausführbar sind, einzeln angeben.

SQL  

Mit dieser Option lässt sich die Projektmethode mit der SQL Engine von 4D ausführen. Sie ist standardmäßig nicht gewählt, d.h. 4D Projektmethoden sind geschützt und können nicht von der SQL Engine von 4D aufgerufen werden - außer sie wurden explizit autorisiert.

Diese Eigenschaft gilt für alle internen und externen SQL Anfragen - ausgeführt über den ODBC Treiber, zwischen den 4D Tags Begin SQL/End SQL oder den 4D Befehl QUERY BY SQL.

Hinweise:

  • Auch wenn eine Methode das Attribut „SQL“ hat, werden zum Ausführen der Methode die Zugriffsrechte, die in den Datenbank-Eigenschaften und Methodeneigenschaften gesetzt sind, berücksichtigt.
  • Die ODBC-Funktion SQLProcedure gibt nur Projektmethoden mit dem Attribut „SQL“ zurück.

Weitere Informationen dazu finden Sie im Handbuch 4D SQL Reference unter 4D SQL engine implementation.

Diese Option definiert, dass die Methode als Teil eines 4D Mobile Links mit einem Wakanda Server verfügbar und gültig ist.

Weitere Informationen dazu finden Sie im Abschnitt Die 4D Datenbank konfigurieren des Handbuchs 4D Mobile.

Sie können den Zugang zu Methoden regeln, indem Sie Zugriffs- und Eigentumsrechte für Benutzergruppen festlegen. Weitere Informationen dazu finden Sie im Kapitel Benutzer und Gruppen.

  • Die Dropdown-Liste für Zugriff regelt, welche Gruppe die Methode ausführen kann. Versucht ein Benutzer, der nicht zu dieser Gruppe gehört, die Methode auszuführen, zeigt 4D eine Meldung, dass das Kennwort des Benutzers die Ausführung der Methode nicht zulässt.
  • Die Dropdown-Liste der Benutzer regelt, welche Gruppe die Methode im Designmodus bearbeiten kann. Versucht ein Benutzer, der nicht zu dieser Gruppe gehört, die Methode im Designmodus zu bearbeiten, zeigt 4D eine Meldung, dass der Benutzer nicht berechtigt ist, diese Methode zu bearbeiten.

Benutzer, die zu beiden Gruppen gehören, können die Methode ohne Einschränkung verwenden und ändern.

Über das Dialogfenster "Eigenschaften für Methoden" können Sie Eigenschaften, wie Unsichtbar, Verfügbar durch Web Service, etc., für alle oder Teile der Projektmethoden in der Datenbank in einer einzigen Operation zuweisen. Das ist besonders hilfreich, um Eigenschaften in einer großen Anzahl Projektmethoden zu ändern. Die Funktionalität eignet sich auch, um in der Entwicklungsphase rasch gängige Eigenschaften auf Gruppen mit ähnlichen Methoden anzuwenden.

Um Methoden-Eigenschaften zu setzen:

  1. Klicken Sie im Explorer auf der Seite Methoden mit der rechten Maustaste auf eine Projektmethode und wählen dann im Kontextmenü den Befehl Methodenauswahl-Eigenschaften.


    Auf dem Bildschirm erscheint folgendes Dialogfenster:
  2. Geben Sie im Bereich “Ändere Eigenschaften für Methoden” eine Zeichenfolge ein, um die Methoden zu bestimmen, die Sie als Gruppe ändern wollen. Diese Zeichenfolge dient als Suchkriterium für Methodennamen. Zur Unterstützung können Sie den Joker @ verwenden:
    • Setzen Sie für Methodennamen, die beginnen mit… den Joker @ an das Ende der Zeichenfolge, zum Beispiel web@
    • Setzen Sie für Methodennamen, die enthalten..., den Joker @ innerhalb der Zeichenfolge, z.B. web@write
    • Setzen Sie für Methodennamen, die enden mit..., den Joker @ an den Anfang der Zeichenkette, z.B. @write
    • Setzen Sie für alle Methoden allein den Joker @ in den Bereich.
      Hinweise:
      • Die Suche achtet nicht auf Klein- und Großschreibung.
      • Sie können auch mehrere Joker @ in der Zeichenfolge eingeben, z.B. dtro_@web@pro.@
  3. Wählen Sie im Bereich “Bearbeite Eigenschaften” eine Eigenschaft aus der DropDown-Liste und markieren dann das Optionsfeld Wahr bzw. Falsch.
    Hinweis: Hat die Eigenschaft “Anbieten als WSDL” den Wert Wahr, wird sie nur auf die Projektmethoden angewandt, die bereits die Eigenschaft “Verfügbar durch Web Service” enthalten.
  4. Klicken Sie auf die Schaltfläche Anwenden.
    Die Änderung wird sofort für alle Projektmethoden ausgeführt, die mit der definierten Zeichenfolge beginnen.

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Methoden bearbeiten

 
GESCHICHTE 

Geändert: 4D v15 R5

 
ARTIKELVERWENDUNG

4D Designmodus ( 4D v16)
4D Designmodus ( 4D v16.1)
4D Designmodus ( 4D v16.3)