Skip to main content
Skip table of contents

Event "bei WebService-Anforderung"


Event "bei WebService-Anforderung"


Der Aufruf erfolgt auf Anforderung des IBeCBService-WebService durch eine externe Applikation.
Der Event ist nur verfügbar, wenn BE im WebSevice-Server (WSS) Modus gestartet wurde (Parameter: /WebService).
Der cServiceID-Parameter ist alphanumerisch und wird von der externen Applikation zur Identifizierung des konkret angeforderten WebService übergeben.
Der uParam-Parameter wird von der externen Applikation zur Übergabe beliebiger Parameter verwendet.
Er kann somit einen beliebigen Codeblock-kompatiblen Wert enthalten (Alphanumerisch, Numerisch, Integer, Datum, Logisch, Array).
Die Rückgabe des Events darf ein beliebiger Codeblock-kompatibler Wert sein und wird entsprechend dem uParam-Parameter an die externe Applikation zurückgegeben.

Achtung: Es ist nicht zulässig Objekte als Rückgabe zu verwenden (d.h. Tabellen, Datenmodule, Fenster, etc. sind nicht erlaubt)!
Achtung: Die Verwendung des BeDataItem-Typs (mittels Methode ExecuteService) funktioniert nicht einwandfrei. Die Verwendung des Types String (mittels Methode ExecuteServiceStr) macht dagegen keine Probleme.

Hinweise für die Entwicklung der externen Applikation:


Die Übergabe an den WebService (Param) bzw. Rückgabe des WebService wird über folgende Interface-Klasse transportiert:

Klasse:

TBeDataItem

Eigenschaften:

DataType : je nach Inhalt (1 Zeichen, string), wird eine der unten aufgeführten
Eigenschaften zum Transport der Daten verwendet: C, N, I, L, D, A
DtCharacter: string
DtNumeric : double
DtInteger : integer
DtLogical : boolean
DtDate : date (NICHT time)
DtArray : array of TBeDataItem

Beispiel

CODE
| nEvtNo:P1, cServiceID:P2:='', uParam:P3, cRes |

// Ausführen einer BE-WebService Anfrage
// cServiceID : Individuelle Event-ID
// uParam     : Parameter (Typ frei wählbar)

cRes := 'ID: ' + cServiceID + crlf,

if not Empty(uParam) then
  if not Empty(uParam) and ALen(uParam) > 0 then
     cRes := 'Data: ' + ArrToStr(uParam)
  else
     cRes := 'Data: ' + cRes
  endif,
endif,

// { 'A', 1, True, 1.23, STOD('20071231'), { 'B', 1 } } // würde in o.a. Datentyp umgewandelt. Kann evtl. in Java nicht korrekt ausgewertet werden. 

// alternativ kann auch einfach nur ein String zurück gegeben werden

'Rückgabe'


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.