Webservices
Implementierung
Außer ein paar Mausklicks und der Eingabe des Webservice-Namens haben wir bisher ja noch keine große Leistung erbracht. Machen wir uns jetzt an die Implementierung unser Mehrwersteuerfunktion.
Dazu wechseln wir in die Unit MeinWebServiceImpl. Hier sehen Sie das Grundgerüst einer Klasse namens TMeinWebService:
{ TMeinWebService } TMeinWebService = class(TInvokableClass, IMeinWebService) public end;
Dieser Klasse müssen wir unsere Funktion hinzufügen und anschließend im implementation-Teil mit Code füllen. Daraufhin sollte die Unit in etwa so aussehen:
{ Invokable-Implementierungsdatei für TMeinWebService das IMeinWebService implementiert }
unit MeinWebServiceImpl;
interface
uses InvokeRegistry, Types, XSBuiltIns, MeinWebServiceIntf;
type
{ TMeinWebService }
TMeinWebService = class(TInvokableClass, IMeinWebService)
public
function GetMWSt(const Brutto: Double): Double; stdcall;
end;
implementation
{ TMeinWebService }
function TMeinWebService.GetMWSt(const Brutto: Double): Double; stdcall;
begin
result := Brutto – (Brutto/1.16);
end;
initialization
{ Invokable-Klassen müssen registriert sein }
InvRegistry.RegisterInvokableClass(TMeinWebService);
end.
So viel zur Implementierung. Welche Funktion der Initialization-Abschnitt hier hat, wird im Folgenden noch geklärt.