Serviceabschnittverweis

Serviceabschnitte stellen Anforderern Zugriff auf die Funktionen im Service bereit. Anforderer können lokale oder ferne Programme, Handler, Bibliotheken oder andere Services sein.

Wenn Sie einen Serviceabschnitt zur Implementierung als SOAP-Service implementieren, müssen Sie verstehen, wie die mit EGL generierte WSDL-Datei einen Funktionsparameter darstellt, wenn der Parameter auf einem strukturierten Datensatzabschnitt mit Unterstrukturen basiert. Beispiel eines Datensatzabschnitts:
Record ORDER type BasicRecord
   10 ORDERID char(5);
   10 ORDERITEMS char(35)[10];
      15 ITEMID char(5);
      15 DESCRIPTION char(30);
end      
Beim Erstellen der WSDL-Datei zur Steuerung der Datenübertragung während der Laufzeit "glättet" der EGL-Generator die Definition. Im Wesentlichen basiert die WSDL-Darstellung auf dem folgenden Datensatzabschnitt:
Record ORDER type BasicRecord
   10 ORDERID char(5);
   10 ITEMID char(5)[10];
   10 DESCRIPTION char(30)[10];
end      
Um die beabsichtigte Verschachtelung eines Feldes in einem anderen beizubehalten, müssen Sie Datensätze verwenden, die auf nicht strukturierten Datensatzabschnitten basieren. Im folgenden Code beispielsweise wird das Feld ORDERITEMS beibehalten:
Record ORDER type BasicRecord
   ORDERID char(5);
   ORDERITEMS ANITEM[10];
end 

Record ANITEM type BasicRecord
   ITEMID char(5);
   DESCRIPTION char(30);
end  

Wenn Sie Daten zwischen komplexen strukturierten und nicht strukturierten Datensätzen in Ihrer Servicelogik übertragen müssen, verwenden Sie die Anweisung MOVE.

Weitere Informationen zu Serviceabschnitten finden Sie unter Services: Eine allgemeine Übersicht.

Syntax

Syntax für den Serviceabschnitt
Servicename
Der Name, den Sie dem Service zuordnen.
Schnittstellenname
Der Name der Schnittstelle, die von diesem Service implementiert wird. Dies Variable stellt sicher, dass der Service jede in der Schnittstelle beschriebene Funktion enthält.
Service-Inhalt
Services können Funktionen, Variablen, Konstanten und use-Deklarationen enthalten. Funktionen können das Qualifikationsmerkmal 'private' einschließen, sodass der Anforderer auf diese Funktionen nicht zugreifen kann. Variablen und Konstanten sind für den Anforderer nicht verfügbar.

Beispiel

Das folgende Beispiel zeigt einen einfachen Service:
  Service EchoString
    function returnString 
      (inputString string in) 
      returns (string)
      return (inputString);
    end
  end

Kompatibilität

Tabelle 1. Hinweise zur Kompatibilität für einen Serviceabschnitt
Plattform Problem
COBOL-Generierung Die maximale Länge für den Namen eines generierten Service beträgt 7 Zeichen.
IMS/VS, IMS BMP Serviceabschnitte werden nicht unterstützt.
Rich UI Mit einer Ausnahme wird die Generierung von Services in einem Rich UI-Projekt nicht unterstützt. Diese Ausnahme sind dedizierte Services, wie unter 'EGL-Unterstützung für SOA' beschrieben.

Sie können Servicelogik in einem allgemeinen EGL-Projekt oder einem EGL-Webprojekt schreiben, diese Logik als Basis eines SOAP-Web-Service oder REST-Service (muss für ein EGL-Webprojekt generiert werden) verwenden, diesen Service für einen Web-Server implementieren und über eine Rich UI-Anwendung auf den implementierten Service zugreifen.

VSE Serviceabschnitte werden nicht unterstützt.

Feedback