Office: (Office 2010) Zu neuestem Datensatz springen

Helfe beim Thema Zu neuestem Datensatz springen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo, ich füge in meiner DB oft Datensätze über ein modales Formular ein, welches über ein Endlosform aufgerufen wird. Wenn ich dieses Formular... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von PawelPopolski, 27. Februar 2017.

  1. Zu neuestem Datensatz springen


    Hallo,

    ich füge in meiner DB oft Datensätze über ein modales Formular ein, welches über ein Endlosform aufgerufen wird. Wenn ich dieses Formular verlasse und wieder im aufrufenden Form bin wird ein Requery des endlosformulars ausgeführt und der erste Datensatz im Endlosformular ist markiert.

    Meine Idee:
    Alle Datensätze haben eine ID vom Typ Autowert. Also springe ich einfach zu dem Datensatz, der hier die höchste Nummer aufweist. Allerdings weiss ich mal wieder nicht, wie ich das bewerkstellige. Goto.Last funktioniert nicht, das die Sortierung unterschiedlich sein kann.

    Kann mir jemand auf die Sprünge helfen?

    :)
     
    PawelPopolski, 27. Februar 2017
    #1
  2. elmar, 1. März 2017
    #2
  3. Da käme es ja auf eine zusätzliche Variante nicht an. Du könntest nach ID absteigend sortieren.
     
    ebs17, 1. März 2017
    #3
  4. Zu neuestem Datensatz springen

    Hallo und danke für die Antworten.

    @Eberhard: Da hatte ich mich unklar ausgedrückt. In den unterschiedlichen Endlosformularen kommen unterschiedliche Sortierungen vor, aber die Sortierung in jedem Endlos-Formular sollte nicht geändert werden.

    @Elmar: Die Funktion hat mir gefehlt *Smilie
     
    PawelPopolski, 1. März 2017
    #4
  5. Hallo nochmal,

    Ich habe nun folgenden Code erstellt:
    Code:
    Mit call opnDetail() wird das Detailformular mit einem leeren Datensatz modal geöffnet. Schliesse ich das Formular läuft der Code auch richtig weiter. Die ermittelte ID entspricht der des neu erstellten Datensatzes. Nach dem Requery sehe ich den Datensatz im Formular, aber das Programm bricht mit dem Hinweis ab, dass ich nicht zu dem gewählten Datensatz springen kann.

    EDIT: Auch eine Änderung zu DoCmd.GoToRecord acDataForm, "frmEmployeeOV", acGoTo, lngNewRSID
    bringt keine Änderung.

    Was habe ich falsch gemacht?
    EDIT: Mein Fehler ist, dass ich zu Datensatz 30 springe. In der Tabelle sind aber nur 10 (dem Testen geschuldete Lücken im Autowert).

    Also sollte die Frage eher lauten, wie springe ich zum Datensatz mit der ID 30?
     
    PawelPopolski, 1. März 2017
    #5
  6. Code:
    oder, wenn du dich schon im frmEmployeeOV befindest:
    Code:
    maike
     
    maikek, 1. März 2017
    #6
  7. Das war des Rätsels Lösung. Danke!
     
    PawelPopolski, 1. März 2017
    #7
  8. Zu neuestem Datensatz springen

    Nur einer der Gründe, warum ich nie den Autowert nutze, sondern die "laufende Nummer" automatisch selbst vergebe. Das ist schon mehrfach auf Unverständnis gestoßen, da einige den Autowert vehement verteidigen.
    Wenn der jedoch erstmal Probleme macht, dann meist richtig.
     
    Mattes2, 1. März 2017
    #8
  9. Hallo,
    wenn man einen Autowert vergibt, so dient der meist als Primärschlüssel und hat sonst keinen Sinn. Und Lücken spielen da keine Rolle. Im Regelfall ist der Autowert auch gar nicht sichtbar.
    Warum soll ich mir da die Mühe machen und nur zum Zwecke eines Primärschlüssels eine eigenen LfdNr erstellen. Zumal das in einer Mehrbenutzerumgebung auch seine Tücken hat.
    Ich gehöre daher zu den Verteidigern des Autowertes. *grins

    Und der in #5 gezeigte Code würde auch mit einer eigenen LfdNr (ohne Lücken) zu einem Fehler führen, da der Code nicht zu einer bestimmten Nummer springt sondern den Datensatzzeiger verschiebt und somit auch nicht den gewünschten Datensatz anzeigt.
     
    gpswanderer, 1. März 2017
    #9
  10. Das ist wohl so etwas wie eine "Glaubensfrage". Ich persönlich finde ihn ziemlich nervig z.B. wg. der nicht Zurücksetzbarkeit. Aber als ID, für die ich ihn genau so nutze wie von Klaus beschrieben, finde ich ihn ausgesprochen praktisch. Da muss man sich um nichts kümmern :-)
     
    PawelPopolski, 1. März 2017
    #10
  11. Servus,
    hier mal ein Tipp von mir, um von Anfang an Probleme zu vermeiden.
    Wer die Gelegenheit hat, eine DB "from Scratch" aufzubauen,
    muss in jeder Tabelle einen PK (Primärschlüssel, Autowert) verwenden.
    Dieser PK ist ein Access-interner Zähler und darf nicht für irgendwelche
    Nutzungsdaten verwendet werden.
    Der PK taucht während der Entwicklungsphase in Formularen sichtbar auf
    und kann später unsichtbar gemacht werden.
    Der PK dient zusammen mit einem FK (Fremdschlüssel, Zahl, Typ Longinteger)
    der Erstellung von 1:n oder m:n Beziehungen.
    Auch der FK darf nur als Access-interner Schlüssel verwendet werden und nicht
    als irgendein Nutzungsdaten-Zählfeld.
    Das garantiert optimalsten Umgang im Bereich der rel. Integrität .

    Damit aber auch Ausnahmen möglich sind, hat Access auch sehr viele
    Möglichkeiten, von dieser Normalität abzuweichen.
    Man sollte aber vermeiden, die Ausnahmen von Anfang an schon zur Normalität zu erklären.
     
    Ohrkester, 1. März 2017
    #11
  12. Hallo
    ich habe dir auch noch was

    Prüfen ob Erster / Letzter / Neuer Datensatz in Formular
    Möchte man in einem Formular wissen, welcher Datensatz (Erster / Letzter oder ein Neuen) im Moment angezeigt wird kann dieses durch folgende
    Befehle erreicht werden.
    Erläuterungen gibt's unter den Stichworten
    "CurrentRecord" und "NewRecord" in der Online-
    Hilfe(OH).

    Code:
     
    Lanz Rudolf, 1. März 2017
    #12
  13. Zu neuestem Datensatz springen

    Hallo,
    @Pawel Popolski
    Auch der Autowert ist in gewissen Grenzen manipulierbar, wenn man das will oder mal braucht. Man kann auch Lücken wieder füllen, wenn es sein muss. Auch auf einen Anfangswert setzen ist möglich. Also so ganz ist man dem Autowert nicht ausgeliefert.

    Praktisches Beispiel:
    Wenn ich in einer Detailtabelle z.B. einen Eintrag "Noch nicht zuordenbar" brauche, so verwende ich dafür gern den Autowert 0, der lässt sich per Anfügeabfrage problemlos als Datensatz anlegen.
     
    gpswanderer, 1. März 2017
    #13
  14. Man muss jetzt aber nicht Dogmen formulieren, die dann als solche nicht zutreffen und an der Realität vorbeigehen.

    In einer Verknüpfungstabelle einer m:n-Beziehung, die soll es ja desweilen auch geben, schwimmt ein Autowert-PK hilf- und funktionslos herum, es sei denn, man kann ihn durch fortgeschrittenere Abfragekonstruktionen doch desweilen nutzen, dann aber nur in der Form der Eindeutigkeit und nicht in der Form des Primärschlüssels.

    Datenmodellierung hat nun wenig mit Access speziell zu tun, sondern allgemein mit Datenmanagement per SQL, und das allgemeingültig für relationale Datenbanken - es gibt da weitere, die die gleiche Standardisierung nutzen.

    Wer jetzt speziell für Access spielt, tut den ersten Schritt dafür, dass Access dann von "Experten" nicht als richtige Datenbank wahrgenommen wird.
     
  15. Schließe mich Eberhards obigem Thread in jeder Hinsicht an. Nicht alle Features, die
    mitgeliefert werden, müssen dogmatisch genutzt werden.
    (Beispiel: Access-Makros)

    Der Autowert wird seitens zahlreicher "Oracle, SQL-Server -Fans
    und -Experten" in unserer Kundschaft für Access-Kinderkram gehalten und strikt abgelehnt.
    Unsere eigene Lösung zur Schaffung von Eindeutigkeit läuft auch in Mehrbenutzerumgebung völlig stabil.

    Zu Problemen mit dem Autowert gibts auch hier im Forum
    zahlreiche Beispiele:
    http://www.ms-office-forum.de/forum/...m+mit+autowert

    Der Autowert hat sicherlich seine Berechtigung und wird wie man sieht
    auch häufig genutzt. Kann auch mal richtig nützlich sein:
    http://www.ms-office-forum.de/forum/...d.php?t=340506
    Zum Aufbau von Beziehungen taugt er nicht
    und zur Schaffung von Eindeutigkeit ist mir jeder Timestamp lieber.

    Wollte auch keine Grundsatzdiskussion für und wieder des
    Autowertes auslösen. Gab es alles schon und die Standpunkte sind
    bekannt.

    Wie bereits erwähnt: Muss jeder selbst wissen. *wink.gif*
     
    Mattes2, 1. März 2017
    #15
Thema:

Zu neuestem Datensatz springen

Die Seite wird geladen...
  1. Zu neuestem Datensatz springen - Similar Threads - neuestem Datensatz springen

  2. Access Neuer Datensatz im Formular

    in Microsoft Access Hilfe
    Access Neuer Datensatz im Formular: Hallo - ich bin neu hier und Anfängerin im VBA Programmieren. Ich habe eine Frage zu VBA: In meinem Formular kann ich Daten eingeben, wenn ich das Formular wieder öffne, wird der letzte...
  3. m:n Beziehuungen und Zwischentabellen

    in Microsoft Access Hilfe
    m:n Beziehuungen und Zwischentabellen: Hallo ihr Lieben, wie immer habe ich Probleme mit den m:n Beziehungen. Es macht einfach nicht klick. Ich hab ein vereinfachtes Beispiel erstellt (.Siehe Anhang). Es gibt die Tabelle...
  4. Kann keinen neuen Datensatz hinzufügen

    in Microsoft Access Hilfe
    Kann keinen neuen Datensatz hinzufügen: Ich habe meine Lieferanten-Datenbank schon ordentlich voran getrieben und mittlerweile funktioniert das mit den Eingeben der Preise und dem Anzeigen aller Artikel und Preise der Lieferanten. Aber...
  5. Neuer Datensatz

    in Microsoft Access Hilfe
    Neuer Datensatz: Ich habe drei Tabellen erstellt und über den Primärschlüssel Beziehung zueinander hergestellt. In allen drei Tabellen kann ich einen neuen Datensatz anfügen. Um die Dateneingabe zu vereinfachen...
  6. Endlosformular mit Abfrage-neue Datensätze

    in Microsoft Access Hilfe
    Endlosformular mit Abfrage-neue Datensätze: Hallo ich erarbeite im Moment im Rahmen eines Projektes eine Datenbank zur Bestellerstellung. Nun habe ich für die Bestellpositionen ein Endlosformular. Erstellt. Als Basis für diese habe ich...
  7. Mit Kombinationsfeld neuen Datensatz erstellen

    in Microsoft Access Hilfe
    Mit Kombinationsfeld neuen Datensatz erstellen: Hallo liebe Forengemeinde, bevor mich jemand darauf aufmerksam machen will, man müsse sich die Basics aneignen, bevor man hier im Forum seine Fragen stellt, ich suche seit Wochen eine Lösung für...
  8. gebundenes Formular öffnen und direkt zu "neuer Datensatz" springen

    in Microsoft Access Hilfe
    gebundenes Formular öffnen und direkt zu "neuer Datensatz" springen: Hallo, habe ein gebundenes Formular (dazugehörige Tabelle hat mehrere Datensätze gespeichert). Nun möchte ich beim Öffnen dieses Formulares direkt zu "neuen Datensatz" springen, d.h. es soll...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden