Thema: Delphi Webservice

Einzelnen Beitrag anzeigen

InschenierSB

Registriert seit: 25. Apr 2018
Ort: Regensburg
39 Beiträge
 
#34

AW: Webservice

  Alt 27. Apr 2018, 10:06
Hallo TiGü,

ja okay also nachfolgend der Code.
Ich habe es jetzt soweit hinbekommen, dass keine Fehlermeldung mehr beim Ausführen erscheint. Jetzt fehlt mir nur noch dass die Response in einem Memo Fenster erscheint. Der ganze Schmarrn soll einfach nur in dem Fenster erscheinen wie mache ich das am besten?!
Die Eingabe Parameter akzeptiert der Server so anscheinend.
Warum hattest du mir das mit diesem SOAP Response und Request vorher aus kommentiert, da sieht man doch immer ganz schön die Anfrage des Clients in einem Memo?
Hatte das einen bestimmten Grund?
Delphi-Quellcode:
unit Main;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Soap.InvokeRegistry, Vcl.StdCtrls, Lot_1,
  Soap.Rio, Soap.SOAPHTTPClient;



type

  TForm1 = class(TForm)

    Button1: TButton;
    Request: TMemo;
    Respo: TMemo;
    Result: TMemo;
    HTTPRIO1: THTTPRIO;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
  (*  procedure HTTPRIO1AfterExecute(const MethodName: string;
      SOAPResponse: TStream);
    procedure HTTPRIO1BeforeExecute(const MethodName: string;
      SOAPRequest: TStream);  *)

    procedure Button1Click(Sender: TObject);
  private
  FLot: ILot;

    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;



var
  Form1: TForm1;
  sResult:string;


implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

 // HTTPRIO1.URL:='http://tst-rbg14:8019/Lot.svc';
   // URL := 'http://tst-rbg14:8019/Lot.svc';
    // EquipmentValidation:=True;


   // (HTTPRIO1 as ILot).GetLotInfoByLotName(LotName);

 //if not Assigned(Response) then
 var
    LoT: ILot;
   Request: GetLotInfoByLotNameRequest2;
   Response: GetLotInfoByLotNameResponse2;
  begin
   LoT := GetILot();
   if Assigned(LoT) then
   begin
      HTTPRIO1.URL:='http://tst-rbg14:8019/Lot.svc';
     Request := GetLotInfoByLotNameRequest2.Create;
     try
       Request.CheckSlotPos := False;
       Request.EquipmentValidation := False;
       Request.LotName := 'R173419P';
       Request.ReturnBrokenWafers := True;
       Request.UseSlotPosition := False;
       Request.ToolCode := '1ELAM3';

       Response := LoT.GetLotInfoByLotName(Request);
       if Assigned(Response) then
       begin
        // Writeln(Response.Facility);
        // Writeln(Response.LotName);
        // Writeln(Response.Operation);
         // usw.
         //
         //Response.Free;
       end;
     finally
       Request.Free;
     end;
   end;
   end;
 end.
 (*
procedure TForm1.HTTPRIO1AfterExecute(const MethodName: string;
  SOAPResponse: TStream);
begin

      SoapResponse.Position:= 0;
      Respo.Lines.LoadFromStream(SoapResponse);
end;

procedure TForm1.HTTPRIO1BeforeExecute(const MethodName: string;
  SOAPRequest: TStream);
begin
      SoapRequest.Position:= 0;
      Request.Lines.LoadFromStream(SoapRequest);
end;  *)
  Mit Zitat antworten Zitat