staytuned
Goto Top

In Access Faxnummern verifizieren per SQL?!

Hallo,

ich habe mir aus unserem SQLServer per SQL ein Ergebnis ausgeben lassen welches ich in Access übertragen habe um daraus ein Serienfax zu erstellen.

Jetzt habe ich ein Problem. Die Pflege dieser Faxnr hat, gelinde gesagt, einfach mal nicht statt gefunden. Da steht teils sonst was drin. Teils sind nur Sonderzeichen wie (/,-,\) etc vorhanden, teils aber auch sowas wie "Angebote aber an die ...".

Jetzt habe ich also ein Access Feld aus dem ich bestimmte Zeichen bzw. Zeichenketten entfernen müsste.

Was haltet ihr für den sinnvollsten Weg dies zutun? Gibt es evtl schon ein fertiges Statement das das erledigen kann oder muss ich mir die Arbeit machen und ein VB Script aufzusetzen?

Danke für die Meinungen!

LG

Content-ID: 97797

Url: https://administrator.de/contentid/97797

Ausgedruckt am: 22.11.2024 um 09:11 Uhr

Logan000
Logan000 25.09.2008 um 09:23:21 Uhr
Goto Top
Moin Moin

Du kannst natürlich die Faxnummern auch pers SQL bereinigen.
Der (MS) SQL Server kennt das SQL Statement REPLACE.
Das Problem ist wohl eher die masse der Anweisungen. Denn Du must ja das alles abprüfen was nicht Ziffer oder führendes + ist.
Das würde ich in einer gepeicherten Prozedur aufm SQL Server machen.

Gruß L.
StayTuned
StayTuned 25.09.2008 um 10:39:04 Uhr
Goto Top
Hi Logan und danke für die antwort,

Richtig, die Masse an Möglichkeiten macht das Problem.
Zeichen wie + oder / sind nicht so tragisch.
Das kann die Faxware interpretieren.

Das Problem ist dass teils 2 Nr in dem Feld stehen. und noch schlimmer ist dass teils noch begriffe wie "bei Angebot" darin vorkommen.

Seh da aber keine Lösung. trotzdem danke fürs drüber schauen.
Logan000
Logan000 25.09.2008 um 13:20:25 Uhr
Goto Top
Moin

Das Problem ist dass teils 2 Nr in dem Feld stehen. und noch schlimmer ist dass teils noch begriffe wie "bei Angebot" darin vorkommen.
Ja. Gib einen User ein Feld für eine Telefon/Faxnummer und er fängt an darin herumzukritzeln wie auf einem Notzblock. face-wink

Ich habe mir angewöhnt bei meinen DBs immer 2 Felder für eine Tel.Nr zu hinterlegen.
Eins in dem der User halt schreibt was er für eine Tel. Nummer hält und eins in dem im Hintergrund eine sauber formatierte Nummer eingtragen wird (soweit möglich).

Gruß L.
StayTuned
StayTuned 25.09.2008 um 13:42:52 Uhr
Goto Top
ja sowas ist echt sinnvoll.
Im neuen ERP haben wir das auch so gelöst. Nur die Datenübernahme aus der der alten Clipper DB ist so "Verkackt". Zum Haare raufen.

Alles klar Leuts. Mir wird was einfallen... wie immer lol
Haut rein...
Biber
Biber 25.09.2008 um 16:14:39 Uhr
Goto Top
Moin StayTuned,

die Validierung von Telefon/Telefax- oder Kreditkartennummern können sicherlich am besten mit regulären Ausdrücken/Regular Expressions erfolgen.
Und auch Microsoft's VBScript hat dafür in VBA ein Objekt namens RegExp().

Scheint mir ein vertretbarer Aufwand zu sein, da es ...
  • "fertige" Allgemein-RegEx...()-Makros/Funktionen für MsAccess ~zigfach im Netz gibt
  • und das spezielle Anliegen (die Regular Expression für die Gültigkeitsprüfung einer
Tel/Fax-Nummer) nicht-Accessspezifisch ebenfalls zigfach beschrieben wird

--> müsstest Du bloß kombinieren.
  • Einbinden der "Microsoft VBSkript Regular Expressions 5.5" im VB-Editor unter Extras->Verweise
  • Copy & Paste einer Hülsenfunktion bzw. eines kompletten RegExp-Moduls, z.b von hier
  • und dann nochmal googlen nach "RegExp telefon" oder so und die Syntax übernehmen.

Grüße
Biber
StayTuned
StayTuned 25.09.2008 um 16:33:21 Uhr
Goto Top
Hey Biber,

das klingt doch gar nicht mal so übel.
Alles klar vielen Dank das werd ich wohl mal versuchen umzusetzen.

LG
Biber
Biber 28.09.2008 um 18:58:37 Uhr
Goto Top
Moin StayTuned,

wie ich erst nach meinem letzten Kommentar gesehen habe, ist sogar in dem von mir angegebenen Link selbst eine Telefonnummern-Prüf-RegExp()-Pattern.

Hast Du das ganze denn umsetzen können und kann hier ein Haken dran?

Grüße
Biber
StayTuned
StayTuned 29.09.2008 um 09:07:12 Uhr
Goto Top
Morgen Biber,

konnte es noch nicht probieren. Hab das auf die schnelle handish geklärt. Fürs nächste Serienfax, wird bald kommen, werde ich das prüfen, danke.

bis dahin sehe ich das als geklärt.

thx nochmal