2017 R1 Update Rollup 1

Funktionsteilbereich „Aufruf von SOAP-Aktionen einer Fachanwendung durch die Fabasoft Produktinstallation“Permanenter Link zu dieser Überschrift

Die Fabasoft Produktinstallation bietet Funktionalität, um SOAP-Aktionen einer Fachanwendung aufzurufen.

Lösungsbereich „Nutzung von Funktionalität einer Fachanwendung“Permanenter Link zu dieser Überschrift

Standardinitialisierung eines Objekts über SOAPPermanenter Link zu dieser Überschrift

Der Aufruf der SOAP-Aktion Erzeugen eines Fachobjekts in Fabasoft Folio über XML/SOAP (FSCBA@1.1001:SOAPInit), die von der Fachanwendung zur Verfügung gestellt wird, erfolgt entweder durch die Aktion Aufrufen einer SOAP-Aktion mit verschiedenen Parametern über Fachanwendungsbereich (FSCBAI@1.1001:CallSoapXmlEx) oder durch die speziell dafür vorgesehene Aktion Standardinitialisierung eines Objekts über SOAP (FSCBAI@1.1001:InitBA) mit folgendem Parameter:

Parametername

IN/OUT

Typ

Erklärung

dept

In

OBJECT

Ein Objekt der Objektklasse Fachanwendungsbereichsdefinition

Durch die Aktion FSCBAI@1.1001:InitBA wird nach der Antwort durch die SOAP-Aktion der Fachanwendung der Fremdschlüssel aus der Fachanwendung im Geschäftsobjekt (im Fachanwendungsaggregat) in der Fabasoft Produktinstallation gespeichert. Die Aktion führt einen SOAP-Aufruf entsprechend dem Schema der SOAP-Aktion FSCBA@1.1001:SOAPInit durch.

Input

Namespace: urn:schemas-fabasoft-com:bai:init

<SOAPInitRequest>
  <objaddress> Objektadresse des Geschäftsobjekts

  </objaddress>

  <deptref> Eindeutiger Bezeichner des Fachanwendungsbereichs

  </deptref>

  <objname> Objektname des Geschäftsobjekts </objname>

  <objclass> Objektklasse in der Fachanwendung </objclass>

</SOAPInitRequest>

Output

Namespace: urn:schemas-fabasoft-com:bai:init
<SOAPInitResponse>

  <foreignkey> Fremdschlüssel des Fachobjekts </foreignkey>

</SOAPInitResponse>

Das Element <objclass> wird mit der Zeichenkette aus der Eigenschaft Objekttyp für Standardinitialisierung im Fachanwendungsbereich aus dem Fachanwendungsbereichsdefinitionsobjekt befüllt.

Beispiel:

Die SOAP-Aktion kann z. B. in der Konfiguration für Fachanwendungen in der Eigenschaft Fachanwendungsaufrufe bei Schritte für Fachanwendungsaufruf (SOAP-Call) als Expression angegeben werden.

FSCBAI@1.1001:InitBA(::dept);

Alternativ zur Verwendung der Aktion FSCBAI@1.1001:InitBA kann die gesamte Funktionalität des oben angeführten Aufrufs auch durch folgende Expression unter Verwendung von Aufrufen einer SOAP-Aktion mit verschiedenen Parametern über Fachanwendungsbereich (FSCBAI@1.1001:CallSoapXmlEx) abgebildet werden:

::params=coort.CreateDictionary();
::response=coort.CreateDictionary();

::params.SetEntryValue(“objaddress”,0,”Adresse”)

::params.SetEntryValue(“objname”,0, “Name”);

::params.SetEntryValue(“deptref”,0,::deptref);


FSCBAI@1.1001:CallSoapXmlEx(::dept, "Init", ::params,&::response);


FSCBAI@1.1001:rs.FSCBAI@1.1001:foreignkey = ::response.foreignkey;
FSCBAI@1.1001:rs.FSCBAI@1.1001:rsdept = ::deptref

Aufruf einer SOAP-Aktion mit XML-ParameternPermanenter Link zu dieser Überschrift

Die Aktion Aufruf einer SOAP-Aktion mit XML-Parametern (FSCOWS@1.1001:CallSoapXml) ist eine Basisaktion für den Aufruf eines Webservice.

Parametername

IN/OUT

Typ

Erklärung

url

In

STRING

Endpunkt-URL des SOAP-Aufrufs

httpheaders

In

DICTIONARY

Zu sendende HTTP-Headers, wie z. B. „SOAPAction“. Die Header „Content-Type“ und „Content-Length“ werden automatisch berechnet und müssen daher nicht angegeben werden.

soapheaders

In

CONTENTLIST

Optionale Liste von SOAP-Headern. Ein SOAP-Header ist ein XML-Dokument-Fragment, das in die resultierende SOAP-Nachricht eingefügt wird.

xmlin

In

XML-Dokument-Fragment, das im Envelope/Body-Element versendet werden soll.

xmlout

Out

XML-Dokument-Fragment unterhalb des Envelope/Body-Elementes, das von der SOAP-Aktion zurückgegeben wurde.

parentwindow

In

INTEGER

Optionales Window-Handle des Vater-Fensters für die Ausgaben von Dialog-Fenstern für die Authentifizierung.

user

In

STRING

Optionaler Benutzername für die Authentifizierung am Webserver

password

In

STRING

Passwort des Benutzers

proxyuser

In

STRING

Optionaler Benutzername für die Authentifizierung am Proxyserver

proxypassword

In

STRING

Passwort des Proxybenutzers

clientcert

In

OBJECT

Optionales Client-Zertifikat, falls die Authentifizierung über ein Zertifikat erfolgen soll.

timeoutresolve

In

INTEGER

Zeitlimit in Sekunden für das Auflösen von DNS-Namen (Standardwert: kein Zeitlimit)

timeoutconnect

In

INTEGER

Zeitlimit in Sekunden für das Verbinden zum Webserver (Standardwert: 60 Sekunden)

timeoutsend

In

INTEGER

Zeitlimit in Sekunden für das Versenden. Es wird die Zeitdifferenz zwischen den Paketen gemessen.
(Standardwert: 30 Sekunden)

timeoutreceive

In

INTEGER

Zeitlimit in Sekunden für das Empfangen. Es wird die Zeitdifferenz zwischen den Paketen gemessen.
(Standardwert: 30 Sekunden)

Senden einer einfachen SOAP-NachrichtPermanenter Link zu dieser Überschrift

Die Aktion Sende eine einfache SOAP-Nachricht (FSCOWS@1.1001:CallSoapXmlEx) bietet grundsätzlich dieselbe Funktionalität wie FSCOWS@1.1001:CallSoapXml. Beim Aufruf der SOAP-Aktion wird das WSDL-Dokument des aufgerufenen Webservice ausgewertet.

Parametername

IN/OUT

Typ

Erklärung

wsdlconnector

In

OBJECT

Ein Objekt der Objektklasse HTTP-Anschluss (FSCOWS@1.1001:HttpConnector)

soapconnector

In

OBJECT

Optionaler Parameter, in dem ein Objekt der Objektklasse HTTP-Anschluss (FSCOWS@1.1001:HttpConnector) angegeben wird. Falls in diesem Parameter nichts angegeben wird, wird derselbe Anschluss wie im ersten Parameter verwendet.

operation

In

STRING

Name der auszuführenden Operation entsprechend dem WSDL-Dokument

inparams

In

Optionaler Eingangsparameter

Folgende Typen sind möglich: OBJECT, STRING, CONTENT, Content und DICTIONARY

outparams

Out

Optionaler Ausgangsparameter

Folgende Typen sind möglich: OBJECT, STRING, CONTENT, Content und DICTIONARY

Wird kein Ausgangsparameter angegeben, so wird der gleiche Typ wie im Eingangsparameter als Ausgangsparameter zurückgeliefert. Um einen bestimmten Ausgangstyp zu erhalten, muss ein leerer Wert des betreffenden Typs im Parameter outparams angegeben werden.

Beschreibung der Typen des Eingangs- und Ausgangsparameters:

  • OBJECT
    Ein Objekt wird mithilfe der COOXML-Komponente auf ein XML-Dokument serialisiert. Das Mapping wird aus der XML-Default-Konfiguration aus der Eigenschaft Zuordnung für Objektausgabe gelesen.
  • STRING
    XML-Dokument als Zeichenkette
  • CONTENT
    XML-Dokument als Inhalt
  • Content
    XML-Dokument in einem Inhaltsaggregat
  • DICTIONARY
    Einträge im Dictionary werden mithilfe des XML-Schemas im WSDL-Dokument auf ein XML-Dokument abgebildet.

Aufrufen einer SOAP-Aktion mit verschiedenen Parametern über FachanwendungsbereichPermanenter Link zu dieser Überschrift

Die Aktion Aufrufen einer SOAP-Aktion mit verschiedenen Parametern über Fachanwendungsbereich (FSCBAI@1.1001:CallSoapXmlEx) ruft die Aktion FSCOWS@1.1001:CallSoapXmlEx auf und bietet grundsätzlich dieselbe Funktionalität wie diese Aktion. Der Unterschied ist, dass statt den Parametern wsdlconnector und soapconnector nur der Fachanwendungsbereich angegeben werden muss. Die weiteren Informationen werden aus der Konfiguration für Fachanwendungen aus der Eigenschaft Basis-URLs ausgelesen.

Parametername

IN/OUT

Typ

Erklärung

dept

In

OBJECT

Ein Objekt der Objektklasse Fachanwendungsbereichsdefinition

operation

In

STRING

Name der auszuführenden Operation entsprechend dem WSDL-Dokument

inparams

In

Optionaler Eingangsparameter

Folgende Typen sind möglich: OBJECT, STRING, CONTENT, Content und DICTIONARY

outparams

Out

Optionaler Ausgangsparameter

Folgende Typen sind möglich: OBJECT, STRING, CONTENT, Content und DICTIONARY

Laden des Objekts aus einem CONTENT mit XML-DatenPermanenter Link zu dieser Überschrift

Die Aktion Laden des Objekts aus einem CONTENT mit XML-Daten (FSCBAI@1.1001:MapContentToObject) kann für das Mapping von einem Objekt auf ein XML-Dokument verwendet werden.

Parametername

IN/OUT

Typ

Erklärung

dept

In

OBJECT

Ein Objekt der Objektklasse Fachanwendungsbereichsdefinition

ctx

In

OBJECT

Kontext, um die passende Konfigurationszeile in der Konfiguration für Fachanwendungen (FSCBAI@1.1001:ConfigurationClass) zu finden

content

In

CONTENT

XML-Inhalt als CONTENT

Diese Aktion wird auf das Objekt angewendet, das auf den XML-Inhalt abgebildet wird. Das anzuwendende XML-Mapping wird aus der Konfiguration für Fachanwendungen anhand der Objektklasse und dem Auslöser ausgelesen.

Ausgeben des Objekts in einen CONTENT mit XML-DatenPermanenter Link zu dieser Überschrift

Die Aktion Ausgeben des Objekts in einen CONTENT mit XML-Daten (FSCBAI@1.1001:MapObjectToContent) kann für das Mapping eines XML-Dokuments auf ein Objekt verwendet werden.

Parametername

IN/OUT

Typ

Erklärung

dept

In

OBJECT

Ein Objekt der Objektklasse Fachanwendungsbereichsdefinition

ctx

In

OBJECT

Kontext um die passende Konfigurationszeile in der Konfiguration für Fachanwendungen zu finden

content

Out

CONTENT

XML-Inhalt als CONTENT

Diese Aktion wird auf das Objekt angewendet, auf das der XML-Inhalt abgebildet wird. Das anzuwendende XML-Mapping wird aus der Konfiguration für Fachanwendungen anhand der Objektklasse und dem Auslöser ausgelesen.

Kombinierter SOAP-Client-/GUI-AufrufPermanenter Link zu dieser Überschrift

In der Konfiguration für Fachanwendungen wird ein SOAP-Client-Aufruf und ein anschließender GUI-Aufruf in der Eigenschaft Fachanwendungsaufrufe definiert und konfiguriert.

Der Aufruf erfolgt über die Aktion Fachanwendung über Programmiername starten (FSCBAI@1.1001:StartBusinessApp) mit folgendem Parameter:

Parametername

IN/OUT

Typ

Erklärung

progname

In

STRING

Programmiername

Die Aktion entscheidet anhand der Objektklasse des Objekts, auf dem sie ausgeführt wird, welcher Konfigurationseintrag in der Konfiguration für Fachanwendungen (in der Eigenschaft Fachanwendungsaufrufe) ausgewertet und ausgeführt wird (best-matching Objektklasse). Dadurch können ein SOAP-Aufruf und ein URL-Aufruf an die Fachanwendung durchgeführt werden.

Beispiel:

Die Anwendung wird der Variable app zugewiesen. Dazu muss der Programmiername des Aufrufs einer Variablen als Zeichenkette zugewiesen werden. Aufgrund der späteren Übergabe des Parameters „by Name“ ist die strikte Einhaltung des Bezeichners progname notwendig. Der Inhalt der Zeichenkette („editcase“) muss mit dem Programmiernamen der Eigenschaft Fachanwendungsaufrufe übereinstimmen.

Der Anweisungsschritt FSCVAPP@1.1001:CallAppStep muss auf das Objekt, bei dem sich der Branch befindet (sys_branchvalue), ausgeführt werden. Dabei muss die Variable mit dem Anwendungsobjekt übergeben werden; der Programmiername wird „by Name“ übergeben.

Beispiel:

Aufruf der Fachanwendung über ein Skript (z.B. als Arbeitsschritt):

//LANGUAGE="JScript"
var inboundobj = coort.GetObject("COO.1.1019.2.1002890");

var progname = "editoffense"

var meth=inboundobj.GetMethod(cootx, "FSCBAI@1.1001:StartBusinessApp");