Hallo,
ich möchte für mein Geschäft ein Programm schreiben, welches den Versand via UPS automatisiert. Da es am einfachsten ist, habe ich mal mit dem Tracking angefangen. Und selbst das geht nicht.
Ich bekomme immer "Connection closed gracefully" aber keine Response vom Server. Hier ist mein Quellcode:
Delphi-Quellcode:
procedure TForm1.Button8Click(Sender: TObject);
var
request: TStrings;
response: TMemoryStream;
begin
request := TStringlist.Create;
response := TMemoryStream.Create;
request.Add('
<?xml version="1.0"?>');
request.Add('
<AccessRequest xml:lang="en-US">');
request.Add('
<AccessLicenseNumber>AB2140721467812</AccessLicenseNumber>');
request.Add('
<UserId>USERNAME</UserId>');
request.Add('
<Password>PASSWORD</Password>');
request.Add('
</AccessRequest>');
request.Add('
<?xml version="1.0"?>');
request.Add('
<TrackRequest xml:lang="en-US">');
request.Add('
<Request>');
request.Add('
<TransactionReference>');
request.Add('
<CustomerContext>Example 1</CustomerContext>');
request.Add('
<XpciVersion>1.0001</XpciVersion>');
request.Add('
</TransactionReference>');
request.Add('
<RequestAction>Track</RequestAction>');
request.Add('
<RequestOption>activity</RequestOption>');
request.Add('
</Request>');
request.Add('
<TrackingNumber>1Z12345E1512345676</TrackingNumber>');
request.Add('
</TrackRequest>');
Memo1.Text := IdHTTP1.Post('
https://wwwcie.ups.com/ups.app/xml/Track', request);
end;
Außerdem frage ich mich, wie ich einfacher den Inhalt einer
XML in den request reinschreiben kann, ohne jede Zeile im Quellcode einzubinden. Ich wüsste, wie man es über ein Memo oder eine Schleife macht, aber gibt's da auch was einfacheres?
Vielen Dank!