PDA

Vollständige Version anzeigen : 2 Felder eines Formulars an einen Bericht


m3
16.10.2001, 14:13
Hallo Leute,
die Frage wurde in anderer Form schon mal gestellt, aber nicht so beantwortet das die Antwort mir geholfen hat.
Ich möchte zwei Felder(MNr und Datum) zu dem Mitarbeiter an einen Bericht übergeben, und zwar so das nur die Daten zu diesem Mitarbeiter für ein Monat oder die Woche angezeigt werden, der vorher aufgerufen wurde.
Ich weiß die Frage ist lange aber ich hoffe, das ich sie diesesmal ausführlich genug gestellt habe um vielleicht noch mehr antworten zu bekommen.

Vielen Dank im voraus an alle

M3

Res1999
16.10.2001, 17:03
Erstelle einfach eine Abfrage, diese Abfrage giebst du dann als Datenquelle für deinen Bericht an. In der Abfrage stellst du alle daten für deinen Bericht zur verfügung. In der Zeile Kriterien beziehst du dich dann auf dein Formular (muß während des Ausdrucks geöffnet sein)Beispiel:
[Formulare]![Dein_Formular]![Dein_Feld]

Christian

holgii
16.10.2001, 17:10
Hallo M3,

ich setze mal voraus, dass eine Auswahlabfrage die Daten für den Bericht liefern soll und dass ein Formular im Spiel ist, in dem der Monat eingegeben werden kann, z.B. 200110 für Oktober 2001.

Die Auswahlabfrage müsste dann so aussehen:

SELECT Mnr, format(Datum,"YYYYMM")as Monat, format(Datum,"ww") as Kalenderwoche from Mitarbeitertabelle where format(Datum,"YYYYMM") = [Forms]![DeinFormular]![FormularfeldMonatimFormatJJJJMM];


Gruß
holgii

Kurt aus Kienitz
16.10.2001, 17:15
Hallo nochmal,

Das hat mir jetzt keine Ruhe gelassen ;)
Ich habe folgenden Code ausprobiert (und der tut's)

Private Sub PbBericht_Click()

Dim stDocName As String
Dim stFilter As String

stDocName = "MeinBericht"
stFilter = "[MaID]=" & Str$(Me.CmbMaID) & " [Datum] = #" & Format(Me.dfDatum,"YYYY-MM-DD") & "#"
'
DoCmd.OpenReport stDocName, acPreview, "", stFilter

End Sub

Dabei ist
+ Me.CmbMaID ein Kombinationsfeld welches die MaID liefert
+ Me.dfDatum ein Textfeld in dem ein Datum eingegeben werden kann (Eigenschaft Format = tt.mm.jjjj).

HTH

m3
17.10.2001, 12:47
Hallo Christian, Holgii und Kurt aus Kienitz
jede einzelne Zeile für sich funktioniert,
allerdings kommt bei der ersten Zeile eine Parameterabfrage und bei der zweiten Zeile ist die Übergabe so wie sie sein sollte.

strFilter = "Monat = Monatsuche"
strFilter = "[MNr]=" & str$(Me.MNr)
DoCmd.OpenReport stDocName, acViewPreview, , strFilter

wenn Ihr die mir gestern geantwortet habt mir noch ein wenig weiter helfen könntet würde ich mich sehr freuen.

Herzlichen dank im voraus

M3

P.S.
Wenn mir jemand seine Email schicken will, meine lautet Man_B@web.de

Kurt aus Kienitz
17.10.2001, 13:42
Hallo,

Wenn ich das jetzt alles richtig verstanden habe, funktioniert die Einschränkung auf die Mitarbeiternummer aber mit dem Datum hapert es noch.
Dabei geht es darum, den Filter so zu setzen das alle Angaben zu einem Monat im Bericht auftauchen.

Die Splate Datum ist in der Tabelle als Date/Time definiert und im Textfeld (nennen wir es mal dfMonat) wird der Monat im Format "JJJJ.MM" angegeben.

Dann müsste der Filter so gesetzt werden:

strFilter = "[MNr]=" & str$(Me.MNr) & " AND Format([Datum],"YYYY.MM") = '" & Me.dfMonat "'"

Glaube ich, hoffe ich, .... :)

ManniB
19.10.2001, 07:42
hallo Kurt aus Kienitz, Holgii und Christian,

danke für Eure Tips und Hilfe.
Mein Problem konnte auf andere Weise lösen, die ich Euch ein anderes mal mitteilen werde.
Voraussetzung Ihr schickt mir mal Eure Mailadressen.

Mfg

ManniB alias M3