Delphi-PRAXiS
Seite 2 von 2     12

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Ablage langer Zahlen (https://www.delphipraxis.net/187239-ablage-langer-zahlen.html)

Sir Rufo 11. Nov 2015 19:51

AW: Ablage langer Zahlen
 
Zitat:

Zitat von Captnemo (Beitrag 1321192)
3. Gerade solche Nummern werden gerne in gut lesbaren Zifferngruppen dargestellt, dabei kann sich die Möglichkeit diese Formatierung auch abzuspeichern manches Mal als nützlich erweisen.

Nein, immer so abspeichern, damit die Bedeutung erhalten bleibt (zur Not cleanen, falls das mit der Formatierung eingegeben wurde).

Beispiel IBAN
Code:
formatiert: DE32 3456 5643 4564 4543
speichern: DE323456564345644543
Bei einer Suche erfolgt der Zugriff einmalig auf diesen Char-Wert, dann hat man die interne ID und dann wird damit weiter gearbeitet.

Captnemo 12. Nov 2015 07:58

AW: Ablage langer Zahlen
 
Zitat:

Zitat von Sir Rufo (Beitrag 1321197)
Zitat:

Zitat von Captnemo (Beitrag 1321192)
3. Gerade solche Nummern werden gerne in gut lesbaren Zifferngruppen dargestellt, dabei kann sich die Möglichkeit diese Formatierung auch abzuspeichern manches Mal als nützlich erweisen.

Nein, immer so abspeichern, damit die Bedeutung erhalten bleibt (zur Not cleanen, falls das mit der Formatierung eingegeben wurde).

Beispiel IBAN
Code:
formatiert: DE32 3456 5643 4564 4543
speichern: DE323456564345644543
Bei einer Suche erfolgt der Zugriff einmalig auf diesen Char-Wert, dann hat man die interne ID und dann wird damit weiter gearbeitet.

Bei IBAN steht die länge fest und wird sich nicht ändern. Auch die Gruppierung der Zeichen ist noch ziemlich einheitlich.
Aber z.B. bei der Ablage von Seriennummmer oder Teilenummern gemischter Hersteller kann es oft vorkommen, dass die Gruppierung von Datensatz zu Datensatz unterschiedlich sein kann. In dem Fall kann ich die Formatierung später nicht mehr wiedergeben.
Ich kann aber für eine Suche das eliminieren der unerwünschten Zeichen für das Suchfeld dem SQL-Server überlassen, damit ich z.B. nach einer zusammenhängenden Zeichenkette suchen kann. Bei sehr großen Datenmengen und vielen Abfragen könnte man sicherlich darüber nachdenken in einem zweiten Feld den formatieren String unformatiert abzulegen um den Zeitbedarf für das Query zu minimieren. Ggf. kann das auch ein View übernehmen.

Sir Rufo 12. Nov 2015 08:31

AW: Ablage langer Zahlen
 
Bei der IBAN ist die Länge abhängig vom Land (also variabel aber über den Kontext Land und Bank kann man eine Regel ableiten).

Telefonnummern verhalten sich analog. Die unterschiedliche Formatierung bekommt man über den Ländercode, speichern würde ich die aber nur ohne Formatierung.

Bei externen Refererenz-Nummern (Seriennummern, Rechnungsnummern, Artikelnummern) speichere ich die so ab, wie ich diese für die späteren Prozesse (Bestellung, Wareneingang, Reklamation) benötige - speziell wenn diese späteren Prozesse über elektronische Verfahren wie z.B. EDI und Ähnliche laufen.

Dazu kann es notwendig sein, zum speziellen Kontext (z.B. der Lieferant) auch spezielle Regeln zu hinterlegen.

Ich habe Lieferanten kennengelernt, die für eine Artikelnummer drei unterschiedliche Schreibweisen hatten:
  • Katalog (Formatierung mit -)
  • Preisliste Excel (Formatierung mit Leerzeichen und - und anders gruppiert)
  • Lieferschein, Rechnung, ... (unformatiert alles hintereinander weg)
Für den musste man also eine sehr spezielle Spezialregel hinterlegen, weil sonst beim Wareneingang die Leute schier verzweifelt sind.


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:32 Uhr.
Seite 2 von 2     12

Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf