Feldinhalte verändern z.B.: Kundennummern

Für Angebote, Aufträge, Lieferscheine oder Rechnungen verwenden Sie in Tabellen häufig ein Feld, in das eine Ordnungsnummer wie beispielsweise „AB0156“ für ein Angebot, „RG0156“ für die dazugehörige Rechnung oder „KD1023“ für eine Kundenadresse erfasst wird. Dabei passiert es regelmäßig, dass die Zusätze wie „AB“, „LS“, „RG“ oder „KD“ vergessen und die zusammengehörenden Daten zum Beispiel über eine Abfrage nicht mehr korrekt verknüpft werden können. Es wäre etwas mühsam, alle Datensätze manuell durchzugehen und die fehlenden Zusätze zu ergänzen.

Wesentlich effektiver ist der Einsatz einer Aktualisierungsabfrage. Nehmen wir beispielsweise an, Sie setzen eine Tabelle „Kunden“ mit dem Feld „KundenNr“ ein und möchten sicherstellen, dass in jedem Datensatz das Kürzel „KD“, gefolgt von einer vierstelligen Kundennummer, gespeichert wird. Gehen Sie dazu folgendermaßen vor:

  1. Erstellen Sie eine neue Abfrage.
  2. Wählen Sie in der Tabellenauswahl die Tabelle „Kunden“ mit einem Doppelklick aus und klicken Sie dann auf SCHLIEßEN.
  3. Wählen Sie das Menü ABFRAGEAKTUALISIERUNGSABFRAGE an.
  4. Klicken Sie zweimal auf das Feld „KundenNr“, um es im Abfrageentwurf als Spalte hinzuzufügen.

  5. Für die erste Spalte geben Sie unter „Kriterien“ die folgende Anweisung ein: Links$([KundenNr];2)<>“KD“
  6. Für die zweite Spalte geben Sie unter „Aktualisieren“ folgende Anweisung ein: „KD“ &Format$([KundenNr];“0000″)
  7. Wählen Sie das Menü ABFRAGEAUSFÜHREN an.

Diese Abfrage wählt alle Datensätze aus, die noch nicht über den Zusatz „KD“ verfügen und ergänzt ihn gegebenenfalls.

Möchten Sie Zusätze aus Ordnungsnummern entfernen, also nur noch die reinen Zahlen/Nummern verwenden, hilft eine ähnliche Aktualisierungsabfrage.

Als „Kriterium“ geben Sie ein:

Links$([KundenNr];2)

Unter „Aktualisieren“ steht dann die folgende Anweisung:

Wert(TeilStr$ ([KundenNr];3))

Eine solche Abfrage selektiert alle Datensätze, die den Zusatz „KD“ haben und setzt den Feldinhalt auf die ab Position „3“ ausgelesene Nummer.