Felder in Bericht übergeben

26/09/2008 - 09:54 von Vera Köhler | Report spam
Hallo Newsgroup,

ich möchte Auftragszettel aus einem Formular drucken (markierter DS wird in
Bericht ausgegeben und gedruckt).

Folgendes Problem habe ich dabei:
ich habe im formular einmal Kundendaten (aus tblKunde, als
Rechnungsempfànger) und Baustellendaten (auch aus tblKunde)

der Bericht und das Formular basieren auf einer Abfrage.


im FAQ 4.11 von donkarls Access-Seiten ist zu lesen, wie berechnetet
Steuerelemente in der Tabelle, auf der das Formular basiert, gespeichert
werden können. Ist dies auch in der dem Formular zugrunde liegenden Abfrage
möglich?

Ich habe nàmlich folgendes Problem: Ich brauche für meinen Bericht die
Kundendaten (Rechnungsempfànger) und Baustellendaten. Die Kunden- und
Baustellendaten kommen beide aus der Tabelle tblKunde. In meiner Abfrage
qryTerminPlan habe ich Felder aus den Tabellen tblStderf und tblKunde
eingefügt (tblStderf und tblKunde sind über IDKunde mit 1:n-Beziehung
verknüpft). Die Baustelle wird im Formular über sql im Feld Baustelle in der
tblStderf gespeichert. Ich habe nun zunàchst für den Bericht in die Tabelle
tblStderf die ganzen Felder für die Baustelle eingefügt und diese dann lt.
FAQ 4.11 als berechnetes Steuerelement gespeichert. Im Bericht làßt sich das
wunderbar auswerten. Im Prinzip funktioniert es also. Ich habe nur das
Gefühl, programmiertechnisch hier auf dem Holzweg zu sein. Meine Tabelle
tblstderf habe ich jetzt um etliche Felder erweitert. Die Infos dieser
Felder stehen aber eigentlich schon in der tblKunde. Daher hatte ich die
Idee, eine neue Tabelle tblBaustelle anzulegen, in der die Datensàtze der
Baustellen gespeichert werden, damit die tblStderf nicht aufgeblàht wird.
Dann könnte die Tabelle stderf so bleiben. Das kriege ich nur nicht hin.
Hier funktioniert der Befehl:

Private Sub Form_BeforeUpdate(Cancel As Integer)
Me!BS_KDMatchcode = Me!cbmBSMatchcode
Me!BS_KDAnrede = Me!cbmBSAnrede
Me!BS_KDName = Me!cbmBSName
Me!BS_KDAdresszusatz = Me!cbmBSAdresszusatz
Me!BS_KDStraße = Me!cbmBSStraße
Me!BS_KDPLZ = Me!cbmBSPLZ
Me!BS_KDOrt = Me!cbmBSOrt
Me!BS_KDFunkTel = Me!cbmBSFunkTel
Me!BS_KDTelefonNr = Me!cbmBSTelefonNr
End Sub

nicht mehr. Was mache ich verkehrt oder kann mir jemand eine elegantere
Lösung vorschlagen??

Vielen Dank!

Gruß Vera
 

Lesen sie die antworten

#1 Thomas Möller
26/09/2008 - 18:47 | Warnen spam
Hallo Vera,

Vera Köhler schrieb:
ich möchte Auftragszettel aus einem Formular drucken (markierter DS wird in
Bericht ausgegeben und gedruckt).

Folgendes Problem habe ich dabei:
ich habe im formular einmal Kundendaten (aus tblKunde, als
Rechnungsempfànger) und Baustellendaten (auch aus tblKunde)

der Bericht und das Formular basieren auf einer Abfrage.
...
nicht mehr. Was mache ich verkehrt oder kann mir jemand eine elegantere
Lösung vorschlagen??



ich denke, Du solltest Dich noch nicht zu sehr von der Aufgabe den
Bericht zu erstellen leiten lassen, wenn Du Dein Datenmodell festlegst.

Mein Hinweis wàre, nochmals das Datenmodell grundlegend zu überarbeiten.
Die Kundendaten und die Daten zur Baustelle gehören z. B. in zwei
verschiedene Tabellen. Am besten ist es wahrscheinlich, wenn Du Dir
zuerst noch einmal die Grundlagen der Normalisierung ins Gedàchtnis
rufst. Einen Einstieg findest Du hier:
http://www.access-tutorial.de/17-normalformen.htm
(Link in einer Zeile)
Wenn Du weiterführende Informationen zur Normalisierung suchst, dann
schau mal bei www.donkarl.com auf die Downloadseiten zur 7. und 8. AEK.
Dort hat Michael Zimmermann einen Vortrag zum Thema Normalisierung gehalten.

Wenn Du Deine Daten sauber normalisiert hast, dann lassen sich die Daten
in jeder beliebigen Form darstellen. Dazu braucht es in der Regel nur
eine geschickt zusammengestellte Abfrage.

CU
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen