Access-o-Mania

Access-Forum (Deutsch/German) => Access-Hilfe => Thema gestartet von: dralle am Januar 05, 2015, 12:51:24

Titel: Bericht erstellen
Beitrag von: dralle am Januar 05, 2015, 12:51:24
Moin!

Ich will von einem Formular Werte, die in einem Textfeld sind, in einem Bericht übernehmen!
Doch mein Quellcode geht nicht!
Jemand eine Idee?

Private Sub Rechnung_Click()

DoCmd.OpenReport "Rechnung", View:=acViewPreview
Me!Bestellungen.Be_txtAnrede = rst!Rech_1

End Sub


Dralle
Titel: Re: Bericht erstellen
Beitrag von: DF6GL am Januar 05, 2015, 12:57:59
Hallo,

Dein Code hat wohl keinen besonderen Bezug zur Frage....


.
.
DoCmd.OpenReport "Rechnung", View:=acViewPreview,,,,Me!Textfeld1
.
.
.

im Bericht:

Sub Report_Open()
If Not Isnull(Me.Openargs) Then Me!Textfeldxy = Me.Openargs
End Sub
Titel: Re: Bericht erstellen
Beitrag von: MzKlMu am Januar 05, 2015, 13:00:19
Hallo,
das kann ja auch nicht funktionieren. Was willst Du mit dem rst ?
Das ist üblicherweise ein Verweis auf ein Recordset, hast Du aber keines.

Ist das Formular an eine Datenquelle gebunden ?
Und die Formularfelder auch ?

Beschreibe das Vorhaben mal genauer.
Titel: Re: Bericht erstellen
Beitrag von: dralle am Januar 05, 2015, 13:09:42
Also,

auf dem Formular Bestellungen werden unter anderem die Kundendaten durchs auswählen in Textfelder gefüllt.

Private Sub Be_ID_AfterUpdate()
    Dim rst As Recordset
    Dim strSQL As String
   
    strSQL = "SELECT K.Kunden_ID, K.Ku_Vorname, K.Ku_Familienname, K.Ku_Straße, K.Ku_Anrede, P.PLZ, P.Ort, K.Ku_IBAN, K.Ku_BIC " & _
             "FROM PLZ_Ort P INNER JOIN Kunden K ON P.PLZ_ID = K.PLZ_ID_F " & _
             "WHERE K.Kunden_ID=" & Me.Be_ID
   
    Set rst = CurrentDb.OpenRecordset(strSQL)
   
    'Kundendaten eintragen
    Me.Be_1 = rst!Ku_Vorname
    Me.Be_2 = rst!Ku_Familienname
    Me.Be_3 = rst!Ku_Straße
    Me.Be_4 = rst!PLZ & " " & rst!Ort
    Me.Be_5 = rst!Ku_IBAN
    Me.Be_6 = rst!Ku_BIC
    Me.txtAnrede = rst!Ku_Anrede
   
    rst.Close
    Set rst = Nothing

End Sub


Auf diesem Formular habe ich jetzt auch ein Button, womit der Bericht aufgemacht wird und dort jetzt z.B die Kundendaten eingetragen/übernommen werden sollen.
Titel: Re: Bericht erstellen
Beitrag von: MaggieMay am Januar 05, 2015, 13:25:45
Hallo,

was spricht dagegen, auf gebundene Formulare und Berichte umzusteigen?
Das würde die Sache wesentlich vereinfachen.

Alternativ dazu, könntest du im Steuerelementinhalt der Berichtsfelder folgendermaßen auf die Formularfelder Bezug nehmen:=Forms!Bestellungen!feldname
Titel: Re: Bericht erstellen
Beitrag von: MzKlMu am Januar 05, 2015, 13:31:54
Hallo,
Zitatwas spricht dagegen, auf gebundene Formulare und Berichte umzusteigen?
ich wundere mich ohnehin immer wieder, warum man Sachen programmiert die Access serienmäßig besser kann.
Wenn Formular und Bericht an eine Abfrage (wahrscheinlich die gleiche) gebunden werden, geht das alles (fast) automatisch.
Jediglich im Openbefehl für den Bericht muss ein Kriterium mitgegeben werden, das auf den Formulardatensatz verweist. Das ist ein Einzeiler.
Titel: Re: Bericht erstellen
Beitrag von: dralle am Januar 07, 2015, 23:51:03
ich bin gerade dabei eine neue abfrage für den bericht zu schreiben. doch ich komme nicht mehr weiter!

SELECT Auftraege.Auftrags_ID AS Auftrag, Kunden.Ku_Familienname & " " & Kunden.Ku_Vorname AS Kunde, Kunden.Ku_Anrede, Kunden.Ku_Straße, Mitarbeiter.Mi_Familienname AS Verkäufer, Auftraege.Verkaufspreis AS Preis, Auftraege.Rabatt, Auftraege.bezahlt
FROM Mitarbeiter INNER JOIN (Kunden INNER JOIN Auftraege ON Kunden.Kunden_ID = Auftraege.Kunden_ID_F) ON Mitarbeiter.Mitarbeiter_ID = Auftraege.Mitarbeiter_ID_F
WHERE (((Auftraege.bezahlt)=False));

will ich verbinden mit..

SELECT PLZ_Ort.Ort, PLZ_Ort.PLZ
FROM PLZ_Ort INNER JOIN Kunden ON PLZ_Ort.PLZ_ID = Kunden.PLZ_ID_F;


ich brauche halt für den bericht
Anrede,Familienname/Vorname, Straße, PLZ/Ort, Auftrags_ID, Kunden_ID, Aktuelle Datum, Mitarbeiter, Hersteller, Modell, Fahrzeugklasse, Produktionsdatum, Rabatt, Verkaufspreis

Titel: Re: Bericht erstellen
Beitrag von: MaggieMay am Januar 08, 2015, 00:15:15
Wo genau ist dein Problem?
Du musst halt die Tabelle "PLZ_Ort" in die erste Abfrage mit hinzunehmen und dort mit der Kundentabelle verknüpfen.

Die Tabellenverknüpfungen lassen sich am einfachsten über den Abfrageentwurf erstellen.
Titel: Re: Bericht erstellen
Beitrag von: dralle am Januar 08, 2015, 00:18:15
wie mache ich das über den Abfrageentwurf ? :-\
Titel: Re: Bericht erstellen
Beitrag von: MaggieMay am Januar 08, 2015, 00:24:31
Sorry, aber wie gehst du denn normalerweise mit Access und der Entwickler-Umgebung um, dass dir der Abfrageentwurf nicht bekannt ist?

Und wie hast du die erste Abfrage erstellt?
Titel: Re: Bericht erstellen
Beitrag von: dralle am Januar 15, 2015, 22:15:57
Vielen Dank für den Denkanstoß. Ich habs hinbekommen. An dem Abend ging einfach gar nix mehr!