Hallo,
ich baue gerade ein kleines Anrufer Log.
Ich bekomme jetzt die Telefonnummern von meiner Telefonanlage und will die Nummern in ihre Bestandteile,
wie Länderkennung,Vorwahl,Rufnummer, zerlegen.
Ich habe eine Tabelle mit den entsprechenden Vorwahlen und arbeite mit Locate um z.b. den Ort zu bekommen.
Bisher mache ich das so...
Delphi-Quellcode:
// Ort Finden
if StrLeft(qryAnrufe.FieldByName('telnummer').AsString, 1) = '0' then
begin
sVw := StrLeft(qryAnrufe.FieldByName('telnummer').AsString, 6);
if tblVorwahlen.Locate('vorwahl', sVw, []) then
li.Captions[4] := tblVorwahlen.FieldByName('ort').AsString
else
begin
sVw := StrLeft(qryAnrufe.FieldByName('telnummer').AsString, 5);
if tblVorwahlen.Locate('vorwahl', sVw, []) then
li.Captions[4] := tblVorwahlen.FieldByName('ort').AsString
else
begin
sVw := StrLeft(qryAnrufe.FieldByName('telnummer').AsString, 4);
if tblVorwahlen.Locate('vorwahl', sVw, []) then
li.Captions[4] := tblVorwahlen.FieldByName('ort').AsString
else
begin
sVw := StrLeft(qryAnrufe.FieldByName('telnummer').AsString, 3);
if tblVorwahlen.Locate('vorwahl', sVw, []) then
li.Captions[4] := tblVorwahlen.FieldByName('ort').AsString
end;
end;
end;
end;
Aber irgendwie gefällt mir diese Lösung nicht besonders. Habt ihr evtl. nen besseren Ansatz für mich ?