collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 67
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 1
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 14542
  • stats Beiträge insgesamt: 72938
  • stats Themen insgesamt: 9848
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 443

Autor Thema: Vorgangsnummer  (Gelesen 238 mal)

Offline Brusellise

  • Access-User
  • *
  • Beiträge: 65
Vorgangsnummer
« am: Juni 24, 2019, 13:00:53 »
Hi,

ich habe eine Tabelle mit einem AutoWert ID und einer Spalte Vorgangsnummer.
Leider kann ich wegen einer Zuordnung unseren Kundensystem den AutoWert nicht nutzen und muss die Vorgangsnummer manuell ergeben.

Dies mache ich in einem Formular / Textfeld mit VBA (nach Aktualisierung):

Me.VorgangsID = "B1-" & Format(Date, "dd") & Format(Date, "mm") & Format(Date, "yy") & "A"

Aufbau:
B1 (Immer Location Kunde)
Datum (heutige Datum /TagMonatJahr)
Shipment = A = erstes Shipment, B = zweites Shipment C = drittes Shipment

Mein Problem ist die Spalte Shipment: Wie kann ich es lösen, dass wenn wir das erste Shipment des Tages haben als Wert hinten "A" angehängt wird und dann als zweites Shipment "B", drittes Shipment "C" usw.

Jemand eine Idee?

Danke und gruß

 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 8179
Re: Vorgangsnummer
« Antwort #1 am: Juni 24, 2019, 13:54:41 »
Hallo,
das geht auch kürzer:
Me.VorgangsID = "B1-" & Format(Date, "ddmmyy") & "A"
Gibt es für die Shipments eine eigene Tabelle (wie es sein sollte) ?
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Brusellise

Online DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23948
Re: Vorgangsnummer
« Antwort #2 am: Juni 24, 2019, 13:55:31 »
Hallo,

solche sprechenden und nicht atomisierten Daten sind denkbar ungünstig zu behandeln, vor allem, wenn zu einem Teilstring noch weitere Berechnungen durchgeführt werden sollen.

Besser:  3 separate Felder, um die 3 Teilstrings abzulegen.

Das "Datum" kann gleich mit
Format(Date, "ddmmyy")
erzeugt werden.

Als Lösung könnte dann mit der Dmax()-Funktion auf das Shipment-Feld und Angabe der entsprechenden Kriterien ("B1"-Feld und das "Datum")  der höchste Buchstabe ermittelt und dessen Asci-Wert um 1 erhöht werden, um auf den Folgebuchstaben zu kommen.

Im aktuellen Fall muss zunächst der Teilstring mit dem Shipment extrahiert  und darauf die Dmax()-Funktion angewendet werden.

Offline Brusellise

  • Access-User
  • *
  • Beiträge: 65
Re: Vorgangsnummer
« Antwort #3 am: Juni 27, 2019, 11:37:02 »
Hallo,
das geht auch kürzer:
Me.VorgangsID = "B1-" & Format(Date, "ddmmyy") & "A"
Gibt es für die Shipments eine eigene Tabelle (wie es sein sollte) ?

Nein, dass läuft alles in die Vorgangstabelle tblshipments
 

Offline Brusellise

  • Access-User
  • *
  • Beiträge: 65
Re: Vorgangsnummer
« Antwort #4 am: Juni 27, 2019, 11:40:41 »
Hallo,

solche sprechenden und nicht atomisierten Daten sind denkbar ungünstig zu behandeln, vor allem, wenn zu einem Teilstring noch weitere Berechnungen durchgeführt werden sollen.

Besser:  3 separate Felder, um die 3 Teilstrings abzulegen.

Das "Datum" kann gleich mit
Format(Date, "ddmmyy")
erzeugt werden.

Als Lösung könnte dann mit der Dmax()-Funktion auf das Shipment-Feld und Angabe der entsprechenden Kriterien ("B1"-Feld und das "Datum")  der höchste Buchstabe ermittelt und dessen Asci-Wert um 1 erhöht werden, um auf den Folgebuchstaben zu kommen.

Im aktuellen Fall muss zunächst der Teilstring mit dem Shipment extrahiert  und darauf die Dmax()-Funktion angewendet werden.

Gute Idee und du bringst mich grade auf einen Lösungsansatz.
Probiere ihn grade aus und teile ihn hier dann (zwecks Informationsaustausch) mit, ob es funktioniert.

Kann sein, dass ich mich erst morgen melde.

Wenn jemand noch eine Idee hat, unabhängig gerne raus damit.

Gruß
 

 


Advertisment / Werbung - Amazon Affiliate Links