Nummer normalisieren

<< Click to Display Table of Contents >>

Navigation:  Background Services > SMS Versand >

Nummer normalisieren

Beim Versand erwarten die Provider die Empfängernummer im „sauberen“ Format. Da in der Praxis die Empfängernummern häufig aus manuell gepflegten Quellen stammen, wird empfohlen, die Nummer zu „normalisieren“. In jeder Providerinstanz-Maske, in der die providerspezifischen Attribute konfiguriert werden, gibt es über den Reiter „Nummer normalisieren“ zwei Möglichkeiten: „Standard-Routine benutzen“ und „Benutzerdefinierte Normalisierung“.

 

Standard-Routine benutzen

Es wird empfohlen, diese Option zu nutzen. Die Regeln sind praxisorientiert.

Zusätzlich können Sie den „Default Country Calling Code“ vergeben, falls die Nummer mit einer 0 beginnt.

 

Benutzerdefinierte Normalisierung

Wenn die Standard-Routine nicht alle Ihre Nummern richtig normalisiert, können Sie eigene Routinen über T-SQL schreiben, die für jede Nummer ausgeführt wird.

Wenn die Standard-Routine aktiviert ist, wird zuerst das T-SQL-Script ausgeführt und danach das Ergebnis an die Standard-Routine geschickt.

 

Beispiel: In Ihrer Datenbank haben Sie häufig Nummern wie (0172) 123-4567

Die Standardroutine würde die Klammern, Leerstellen und den Bindestrich entfernen und das Ergebnis wäre 1721234567, Ziel ist aber +491721234567

 

T-SQL-Script, um solche Fälle abzufangen:

 

set @orig_number = ltrim(@orig_number) -- @orig_number darf geändert werden

if left(@orig_number,1) = '(' -- beginnt mit (

begin        

 declare @p2 int

 set @p2 = charindex(')', @orig_number)

 if @p2 > 1 -- enthält )

 begin

         set @orig_number =

                 '49' -- fix

                 + substring(@orig_number,2, @p2 - 2) -- Nummer von Klammern

                 + substring(@orig_number,6,999) -- Rest nach Klammern

 end        

end

select @orig_number -- immer Recordset zurückgeben!

 

 

Das T-SQL-Script generiert "49172  123-4567", die Standard-Routine entfernt die Leerstellen und den Bindestrich.  Ergebnis wie gewünscht "+491721234567"