Neuigkeiten:

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

Mobiles Hauptmenü

Bekomme Script nicht zum Laufen

Begonnen von martenk, Mai 17, 2021, 10:15:43

⏪ vorheriges - nächstes ⏩

DF6GL

Hallo,

irgendwie ist das Chaos...  Warum jetzt andere Abfragen, Feldnamen usw.??

strWhere = strSQL & " WHERE ObjektNr = '" & rs![ObjektNr] & "' and Anreisetag = " & Format(rs![Anreisetag],"\#yyyy-mm-dd\#")

und die Openreport-Sequenz ändern wie beschrieben!
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

martenk

Lieben Dank für deine Mühe

wenn ich es so ausführe, dann kommt ein Meldungsfenster am Ende

"Möchten Sie am Entwurf von Bericht vorgenommene Änderungen speichern"

PhilS

#17
Das kommt daher, dass du den Bericht im Entwurf öffnest und änderst.
Die Nachfrage kannst du wie folgt verhindern:
DoCmd.Close acReport, "AbrechnungEigentuemer", acSaveNo
Aber wäre es nicht sinnvoller, einfach nur die Where-Condition bei DoCmd.OpenReport an den Report zu übergeben, und gar nicht am Entwurf herumzufummeln?
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

martenk

was müsste ich dann ändern?

Versuche gerade anhand dieses BSP die Logik zu verstehen

DF6GL

Hallo,

Zitatwas müsste ich dann ändern?
habe ich Dir doch vorher genau geschrieben.... ::)
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

martenk

okay - gemacht - ich habe nun noch eine letzte Frage

ich muss nach dem jeweiligen Ausdruck des Berichts im Feld Reservierung zu dem Objekt und dem Anreisedatum im Feld abgerechnet das Druckdatum eintragen - könnt ihr mir vielleicht erklären, wie ich das zu machen habe

die Tab Reservierung sieht im Grunde so aus

Objekt-Nr___Anreise____Abreise____........abgerechnet


DF6GL

#21
Hallo,

wenn "Abgerechnet" als Feld in der (aktualisierbaren) Abfrage "AbfrageEigentuemer1" enthalten ist:

Zitat von: undefinedSet rs = db.OpenRecordset(strSQL, dbOpenDynaset)
    Do Until rs.EOF
        strDatei = "C:\Rechnung\" & rs.Fields("ObjektNr").Value & ".pdf"
 
        strWhere =  " ObjektNr = " & rs![ObjektNr] & " and Anreisetag = " & rs![Anreisetag]

        DoCmd.OpenReport "AbrechnungEigentuemer", acViewPreview, , strWhere  ,  acHidden
   
        DoCmd.OutputTo acOutputReport, "AbrechnungEigentuemer", acFormatPDF, strDatei, False
        DoCmd.Close acReport, "AbrechnungEigentuemer"


       rs.Edit
          rs!abgerechnet = Date
        rs.Update

        rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing

    Set db = Nothing


Ansonsten:
.
.

Currentdb.Execute "Update tabReservierung Set abgerechnet = Date() Where ObjektNr = '" & rs![ObjektNr] & "'"
.
.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

martenk

#22
lieben Dank -

PhilS

Zitat von: martenk am Mai 17, 2021, 19:45:22Operation wird für diesen Objekttyp nicht unterstützt

rs.Edit wird markiert
Das hast du vermutlich nicht alle der rot markierten Änderungen von DF6GL übernommen. Die Änderung des Recordset-Typs wäre die naheliegendste.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

martenk

Ich habe doch noch eine Frage zu der query

ich müsste in meiner query Objekt-Nr stehen haben, weil in vielen Tabellen damit gearbeitet wird

wenn ich es so verwende
strDatei = "C:\Rechnung\" & rs.Fields("Objekt-Nr").Value & ".pdf"
        strWhere = strSQL & " WHERE Objekt-Nr = '" & rs![Objekt-Nr] & "' and Anreisetag = " & Format(rs![Anreisetag], "\#yyyy-mm-dd\#")

kommt während des durchlaufens Meldungsfenster 1. Objekt 2. Nr.

wie kann ich Objekt-Nr richtig in die query einsetzen

PhilS

Feld- und Tabellennamen mit Sonderzeichen müssen in eckige Klammern eingeschlossen werden.
Das siehst du in deinem obigen Beispiel bereits für rs![Objekt-Nr].
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

martenk

klappt leider nicht

    Do Until rs.EOF
        strDatei = "C:\Rechnung\" & rs.Fields("Objekt-Nr").Value & ".pdf"
        strWhere = strSQL & " WHERE Objekt-Nr = '" & rs![Objekt-Nr] & "' and Anreisetag = " & Format(rs![Anreisetag], "\#yyyy-mm-dd\#")
        DoCmd.OpenReport "AbrechnungEigentuemer", acViewDesign
        Reports![AbrechnungEigentuemer].RecordSource = strWhere
        DoCmd.OpenReport "AbrechnungEigentuemer", acViewPreview, , , acHidden
        DoCmd.OutputTo acOutputReport, "AbrechnungEigentuemer", acFormatPDF, strDatei, False
        DoCmd.Close acReport, "AbrechnungEigentuemer", acSaveNo
         rs.Edit
          rs!abgerechnet = True
          rs!abgerechnetam = Date
        rs.Update
        rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing

    Set db = Nothing

PhilS

Zitat von: martenk am Mai 18, 2021, 10:20:19klappt leider nicht

    Do Until rs.EOF
        strDatei = "C:\Rechnung\" & rs.Fields("Objekt-Nr").Value & ".pdf"
        strWhere = strSQL & " WHERE Objekt-Nr = '" & rs![Objekt-Nr] & "' and Anreisetag = " & Format(rs![Anreisetag], "\#yyyy-mm-dd\#")
Ich habe eine Idee, woran das liegen könnte. ;-) ^^^^
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

martenk

:-)

hattest Recht - nun habe ich ein Problem

die query bezieht sich ja auf eine Abfrage

wenn die Routine zu rs.Edit kommt - bekommeich die Meldung
Aktualisieren nicht möglich Objekt oder Datenbank ist schreibgeschützt

PhilS

Zitat von: martenk am Mai 18, 2021, 11:49:22die query bezieht sich ja auf eine Abfrage

wenn die Routine zu rs.Edit kommt - bekommeich die Meldung
Aktualisieren nicht möglich Objekt oder Datenbank ist schreibgeschützt
Brauchst du für das Recordset wirklich diese Abfrage? "A_RE_GESAMT" kling recht umfangreich, vielleicht tut es auch eine deutlich vereinfachte Fassung.
Wenn nicht, kannst du die Kennzeichen Abgerechnet/Am auch per Aktualisierungsabfrage auf die Tabelle setzen.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor