Seite 1 von 1

Fax & Telefon Ländervorwahlen

Verfasst: 25.09.2010 17:25
von X360 Andy
Hallo,


hier ein kleiner Code der sich leicht erweitern lässt um Ländervorwahlen an FAX & Telefon Nummer zu ergänzen.

Gerne könnt ihr das ganze erweitern...

Code: Alles auswählen

Procedure.s System_MakeLand(Land$)
  
  Select LCase(Land$)
      ; Deutschland
    Case "ger", "de", "deutschland", "d", "deu", "germany"
      ProcedureReturn "D"
      
      ; Österreich
    Case "austria", "österreich", "östereich", "au", "a"
      ProcedureReturn "A"
      
      ;Schweiz
    Case "schweiz", "swiss", "ch", "c"
      ProcedureReturn "C"
      
      ; Case "holland", "niederland", "niederlande", "nl", "nederland", "n"
      ;  ProcedureReturn "N"
      
  EndSelect
  
EndProcedure

Procedure.s System_MakeVorwahl(PFNummer$, Land$, Trennzeichen$ = "-")
  If FindString(PFNummer$, "+", 0) Or FindString(PFNummer$, "00", 0)
    ProcedureReturn PFNummer$
  EndIf
  
  Select System_MakeLand(Land$)
    Case "D"
      ProcedureReturn "+49" + Trennzeichen$ + PFNummer$
    Case "A"
      ProcedureReturn "+43" + Trennzeichen$ + PFNummer$
    Case "C"
      ProcedureReturn "+41" + Trennzeichen$ + PFNummer$
  EndSelect
  
  ProcedureReturn PFNummer$
  
EndProcedure

Debug System_MakeVorwahl("012345-6789", "DE")
Debug System_MakeVorwahl("012345-6789", "Österreich")
Debug System_MakeVorwahl("012345/6789", "Germany","/")
Debug System_MakeVorwahl("012345-6789", "D")
Debug System_MakeVorwahl("+49-012345-6789", "Deutschland")
Debug System_MakeVorwahl("+49-012345-6789", "Schweiz") ; Nummer bleibt bestehen auch wenn es sich um eine bereits Deutsche Vorwahl handelt


Re: Fax & Telefon Ländervorwahlen

Verfasst: 25.09.2010 18:58
von TomS
MakeLand, MakeVorwahl.
Schönes Denglisch xD

Wozu eine pre-Prozedur?
Du kannst doch in der MakeVorwahl direkt schreiben:

Code: Alles auswählen

Case "Deutschland", "de", "germany" ;...
Man kann sich zwar streiten, ob etwas veraltet ist, aber 0049 ist auch eine gültige Vorwahl und sollte auch überprüft werden.
Desweiteren wären Optionen zur Ausgabe noch ganz nett. Vor allem Leerzeichen anstatt "-" oder gar nichts.

Re: Fax & Telefon Ländervorwahlen

Verfasst: 26.09.2010 10:40
von X360 Andy
Die PreProcedure hat 2 Vorteile

- Übersichtlicher
- Man kann sie anderweitig verwenden ( z. B. um das Land ( DE -> D ) zu ändern )

Hab deine "Wünsche" mal eingebaut und das mit dem Case´s verbessert ( wusste ich nicht, danke )

Ob die Prüfung für "00" reicht weiß ich nicht, vielleicht gibt es ja ja Vorwahlen die mit 00 anfangen....

Re: Fax & Telefon Ländervorwahlen

Verfasst: 26.09.2010 10:53
von bobobo
Die 00 ist zumindest in Schland und auch sonst üblicherweise VAZ (Verkehrsausscheidungsziffer) bis auf ein paar Ausnahmen natürlich,
damit es nicht zu einfach wird.
Liese vielleicht mal http://de.wikipedia.org/wiki/Telefonvor ... utschland) und http://de.wikipedia.org/wiki/Telefonvorwahl und weiterführende Artikel

Re: Fax & Telefon Ländervorwahlen

Verfasst: 26.09.2010 12:50
von TomS
Schön, dass sich die Wiki-Seiten widersprechen /:->
Beim einen steht +49 als internationale Vorwahl. International heißt für mich weltweit.

Hier steht, dass aus 0049 eigentlich nur in Europa funktioniert und 00 mit einem länderspezifischn Code ersetzt werden muss, wenn man z.B. in Amerika ist.

Die Frage ist jetzt ob das + in +49 automatisch vom Ortsansässigen Telefondienst ersetzt wird.
Wenn ja, dann kannst du 0049 gleich wieder vergessen, weil es dann in der Tat mehr oder weniger nutzlos bzw. veraltet ist. Afair wird die noch genutzt, weil ältere Handys und ganz alte Telefone natürlich keine Plus-Taste haben, bzw die Handysoftware damit nicht umgehen konnte, oder so.

@X360 Andy: Ok. Im sinne von 'OOP' und wiederverwendbarer Code macht das bedingt Sinn, aber wann brauchst du schonmal einen einzigen Buchstaben als Länderkennung.

Dann würde ich für den Telefon-Vorwahl-Zweck lieber auf Konstanten setzen.
#CCode_DE

Den Zweck von deinem Code sehe ich eigtl nur darin, dass man ein ComboBoxGadget erstellt und dann GetGadgetText() direkt an deine Prozedur übergeben kann.

Re: Fax & Telefon Ländervorwahlen

Verfasst: 26.09.2010 13:22
von ts-soft
TomS hat geschrieben:weil ältere Handys und ganz alte Telefone natürlich keine Plus-Taste haben,
Ich hab noch kein Telefon gesehen, das eine + Taste hat. 1 - 0, sowie * und # sind die normallen Wähltasten.
Alles andere sind Telefonfunktionen.

Re: Fax & Telefon Ländervorwahlen

Verfasst: 26.09.2010 13:33
von TomS
Ja richtig. :oops: Lange kein normales Telefon in der Hand gehabt xD