1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
procedure TForm1.Button3Click(Sender: TObject);
Var
res,CountryCode,CountryCurr,CountryGMT,CountryISD,CountryName : String;
J : Integer;
//Permet de mettre en page le résultat sous forme de liste de nom
function parseRes(Res_ : String) : String;
Var
I : INteger;
Ouvert : Boolean;
Begin
Ouvert:=False;
Res_:=StringReplace(Res_,#0,'',[rfReplaceAll, rfIgnoreCase]);
Res_:=StringReplace(Res_,#$D,'',[rfReplaceAll, rfIgnoreCase]);
Res_:=StringReplace(Res_,#$A,'',[rfReplaceAll, rfIgnoreCase]);
Result:='';
For I:=0 To Length(Res_) Do
Begin
If Res_[I] = '<' Then Ouvert:=True;
If Ouvert = False Then
If Res_[I] <> #0 Then
Result:=Result+Res_[I];
If Res_[I] = '>' Then
Begin
Ouvert:=False;
Result:=Result+#13+#10;
End;
End;
End;
begin
Memo3.Clear;
Memo4.Clear;
//Liste des pays disponibles sur le WebService
Res:=(HTTPRIO2 as countrySoap).GetCountries;
//Affichage de la liste des pays
Memo3.Text:=(parseRes(res));
//Suppression des lignes vides
For J:=Memo3.Lines.Count-1 DownTo 0 Do
If Trim(Memo3.Lines[J])='' Then
Memo3.Lines.Delete(J);
//--- Jusqu'ici, tout fonctionne bien
//Affichage des détails de chaque pays
For J:=0 To Memo3.Lines.Count-1 Do
Begin
Try
CountryName:=Trim(Memo3.Lines[J]);
CountryCode:=(HTTPRIO2 as countrySoap).GetISOCountryCodeByCountyName(CountryName);
CountryCurr:=(HTTPRIO2 as countrySoap).GetCurrencyByCountry(CountryName);
CountryGMT:=(HTTPRIO2 as countrySoap).GetGMTbyCountry(CountryName);
CountryISD:=(HTTPRIO2 as countrySoap).GetISD(CountryName);
Except
Break;
End;
Memo4.Lines.Add(CountryName+' - '+CountryCode+' - '+CountryCurr+' - '+CountryGMT+' - '+CountryISD);
End;
ShowMessage('Fin');
end; |
Partager