Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datensatz aus Bericht anzeigen

Begonnen von Klaus1963, September 27, 2016, 21:34:41

⏪ vorheriges - nächstes ⏩

Klaus1963

Hallo liebe Kings. Ich suche verzweifelt einen Weg, um aus einem Bericht eine Zeile (z.B. Name) anzuklicken und dann den richtigen Datensatz anzuzeigen. Per Makro komme ich entweder zum Anfang oder zum Ende eines Datensatzes, für das ist mein Wissen zu klein.

MzKlMu

Hallo,
das geht mit einem Bericht nicht.
Nimm ein Formular zur Anzeige der Daten.
Gruß Klaus

MaggieMay

Hallo,

du kannst in der Berichtsansicht durchaus Klick-Ereignisse auswerten, aber wozu soll das gut sein? Warum zeigst du die Daten nicht in einem Formular an und die Details in einem weiteren, oder in einem Unterformular?
Freundliche Grüße
MaggieMay

MzKlMu

Hallo,
Zitatdu kannst in der Berichtsansicht durchaus Klick-Ereignisse auswerten,
geht das bei den neueren Versionen (>2003) ?
Gruß Klaus

DF6GL

Hallo,

in den neueren Version gibt es zusätzlich zur "Seitenansicht" die "Berichtsansicht".  Das ist ähnlich einer Formularansicht, bei der aber z. B. Gruppierungen und Berechnungen entspr. dem Berichtslayout beibehalten werden. Zusätzlich können weitere Ereignissse , z. B. Klicken auf Schaltflächen oder Felder verwendet werden. 

Die Berichtsansicht nimmt keine Rücksicht auf die druckerabhängigen Eigenschaften.

Anfänglich hatte ich die Berichtsansicht eher abgelehnt,  zwischenzeitlich habe ich aber dadurch manche Anforderungen  besser lösen können.


Man könnte sagen:

Berichtsansicht:  interaktives Hilfsmittel zur "Berichterstattung" (gegenüber anderen)
Seitenansicht:  Hilfsmittel  für den Papierausdruck

Klaus1963

Es geht dabei um mehrere Listen in denen ich schnell zu dem Datensatz springen möchte. Hintergrund ist, ich brauche beim Bericht Person, Arbeitsstätte, Fahrzeug. Beim Bericht klicke ich dann auf Fahrzeug und sollte dann auf den Datensatz des Fahrzeuges, oder bei Person direkt zum Datensatz springen. Wäre euch sehr dankbar.

MzKlMu

Hallo,
und warum machst Du das nicht mit einem Formular ?
Gruß Klaus

DF6GL

Hallo,

ZitatBeim Bericht klicke ich dann auf Fahrzeug und sollte dann auf den Datensatz des Fahrzeuges, oder bei Person direkt zum Datensatz springen.

Das verstehe ich nicht....   ???

Klaus1963

Es geht darum, wenn ich einen Bericht(z.b. mit Person, Fahrzeug,...) erstelle, der sehr lang sein kann, dass ich dann z.b. eine Person anklicke, ich dann direkt zu diesem Datensatz springen kann. sonst müsste ich jedesmal in der Tabelle danach suchen bis ich ihn habe. Es können sehr viele Personen und auch sehr viele Fahrzeuge sein. Gedanke sei Autoverleih, welche Person hatte Fahrzeug usw. klicke auf Person, zeige mir Stammdaten oder klicke auf Fahrzeug, zeige mit Fahrzeugdaten. Wie es mit einem Formular gehen soll, für das ist mein Wissen leider zu wenig.

MzKlMu

Hallo,
zeige doch die Daten gleich im Formular an, wozu der Zwischenschritt über den Bericht ?
Gruß Klaus

DF6GL

Hallo,

kann  Klaus nur beipflichten:  Mit einem Formular geht das bequemer und einfacher...


Zeige mal den Screenshot des Beziehungsfensters...

Ansonsten:  erstelle ein Formular auf Basis der Personentabelle und öffne dieses Formular in der Doppelklick-Ereignisprozedur des Feldes ("PersID") , das die Person im Bericht anzeigt. (Ich unterstelle jetzt, dass die Tabellen(!) normalisiert sind und Primärschlüssel vom Datentyp Autowert, bzw, Zahl,Long verwendet werden:



Sub PersID_DblClick(Cancel As Integer)
Docmd.Openform  "frmPerson",,,"PersID = " Me!PersID
End Sub


Wenn es nur den Namen (Feld "PersonName", Datentyp TEXT) gibt (hoffentlich nicht) , dann sollte es so lauten:

Sub PersonName_DblClick(Cancel As Integer)
Docmd.Openform  "frmPerson",,,"PersonName = '"  & Me!PersonName & "'"
End Sub


Die Ereignisprozedur erstellt man, indem im Berichtsentwurf das Namen-Feld markiert und im Eigenschaftenfenster der Reiter "Ereignisse" ausgewählt wird.  Bei der Eigenschaft "Beim Doppelklicken" und Klick auf die 3 rechts stehenden Pünktchen wird der Rumpf der Ereignisprozedur erzeugt, sofern vorher  "Code" gewählt wurde.


Klaus1963

Danke an alle. Hat wunderbar funktioniert.