Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#16

AW: SOAP Webservice, erster Funktionsaufruf dauert ewig

  Alt 11. Mai 2014, 11:47
Code:
function get_webservice(url: String; use_ssl: Boolean): Ivp_mobile_webservice;
var tp_prefix: String;
begin

  if use_ssl
  then tp_prefix:= 'https://'
  else tp_prefix:= 'http://';

  if (AnsiPos('http://', AnsiLowerCase(url))<>1)
  and (AnsiPos('https://', AnsiLowerCase(url))<>1)
  then url:= tp_prefix + url;

  Result:= getIvp_mobile_webservice(true, Url + '/wsdl/Ivp_mobile_webservice');

end;
Mal als kleines Beispiel, aber da kann man auch locker vieles an Code einsparen, bzw. auch durch passende Funktionen den Code verständlicher und vorallem fehlerunanfälliger machen.
Pos/AnsiPos > Delphi-Referenz durchsuchenStartsStr und Hier im Forum suchenStartsText, wobei die 1 auch Probleme bereitet, dann in den neuen mobilen Compilern fangen Strings nicht mehr bei 1 an.
Delphi-Quellcode:
function get_webservice(url: String; use_ssl: Boolean): Ivp_mobile_webservice;
begin
  if not StartsText('http://', url) and not StartsText('https://', url) then
    url := IfThen(use_ssl, 'https://', 'http://') + url;

  Result := getIvp_mobile_webservice(True, url + '/wsdl/Ivp_mobile_webservice');
end;
PS: Wenn du zukünftig das [DELPHI]- statt dem [CODE]-Tag verwendest, dann läßt sich der Code auch einfacher lesen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat