Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Piotor04 am Mai 27, 2016, 21:27:34

Titel: Bericht aus Formular mit Bild über SetzenWert funktioniert nicht wie gewünscht
Beitrag von: Piotor04 am Mai 27, 2016, 21:27:34
Hallo,

Ordnerstruktur:
Hauptordner
- Bilder

ich habe eine Accessdatenbank in welcher ich in einem Formular diverse Werte einlese und diese Verarbeite. Dabei soll zu jedem Nutzer ein Bild abgelegt werden. Die Bilder befinden sich im Ordner Bilder.
Um das Bild nun dort hin zu bekommen habe ich ein Feld [Anmeldenummer] festgelegt in welche ich die Bildnummer schlussendlich schreibe.
diese wird über die SetzenWert funktion aufgerufen, wenn ich ins nächste Textfeld springe (dadurch ist das Bild sichtbar)
Die SetzenWert funktion sieht wie folgt aus:
Element: [bildFahrzeugbild].[bild]
Ausdruck:[Application].[CurrentProject].[Path] & "\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"

So funktioniert auch alles einwandfrei, wenn sich die Datenbank direkt im Hauptordner befindet.

Anschließend drücke ich auf ein Druckenmakro, welches einen Bericht öffnet, in welchem das Bild wieder aufgerufen wird und ausdruckt:
Steuerelemntinhalt: Bild

Mehr wurde hier nicht festgelegt.

Soweit funktioniert auch alles und er druckt den Bericht inkl. hinterlegtes Bild.


Dies liegt jetzt alles auf der Dropbox. ich habe aber nicht das Datenvolumen um immer die Datenbank mit der Dropbox zu synchen, daher würde ich gerne die Datenbank lokal auf einem Netzlaufwerk ablegen und von dort auf die Bilder auf der Dropbox zugreifen (Dropboxordner auch als Netzlaufwerk freigeben).

Also habe ich den Dropboxordner als Laufwerk "Z:" freigegeben
und die Datenbank, dass sie von mehreren benutzt werden kann als Laufwerk "Y:"

um nun auf die Bilder zu zu greifen muss ich natürlich auch bei SetzenWert etwas anpassen:
Element: [bildFahrzeugbild].[bild]
Ausdruck:"Z:\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"


Sieht soweit gut aus und funktioniert auch im FOrumlar super.
Doch wenn ich jetzt auf Drucken gehe geht es nicht mehr.
Folgender Fehler erscheint:

Makroname:
BerDatenblatt : Detailbereich : onPrint: Eingebettetes Makro

Aktionsname: SetzenWert

Argumente: "[bildDruckbild].[Picture]; [Application].[CurrentProject].[Path]....

Druckmakro sieht so aus:

DoCmd.RunCommand acCmdSaveRecord                        'Speichern
DoCmd.RunCommand acCmdRefresh                           'Aktualisieren
DoCmd.OpenReport "berDatenblatt", acViewNormal, , "ID=" & Me!ID

und eigentlich hatte bzw. habe ich ja:

[Application].[CurrentProject].[Path] durch "Z:" ersetzt. Aber da dies wieder auf den Projektpfad zugreifen will. der aber nun leer ist, erscheint dieser Fehler.

Ich habe auch nirgends in dem BERDatenblatt gefunden woe application.... path... aufgerufen wird und weiß daher nicht wie ich dort den Pfad ändern kann, dass er auf Z: zugreift?


Jemand eine Idee? Hilfe!!!
Verzweifel hier schon seit Tagen

Danke

Peter
Titel: Re: Bericht aus Formular mit Bild über SetzenWert funktioniert nicht wie gewünscht
Beitrag von: MaggieMay am Mai 27, 2016, 22:12:32
Hallo,
ZitatAktionsname: SetzenWert

Argumente: "[bildDruckbild].[Picture]; [Application].[CurrentProject].[Path]....
da bleibt dir wohl nichts anderes übrig, als das Makro den geänderten Vorgaben entsprechend anzupassen.

Wo genau ist das Problem, was ist deine Frage?
Titel: Re: Bericht aus Formular mit Bild über SetzenWert funktioniert nicht wie gewünscht
Beitrag von: Piotor04 am Mai 28, 2016, 09:26:13
Hier mal mein komplettes Makro zum Drucken:

Private Sub BtnSpeichern_Drucken_Click()
On Error GoTo Error_1

    DoCmd.RunCommand acCmdSaveRecord                        'Speichern
    DoCmd.RunCommand acCmdRefresh                           'Aktualisieren
    DoCmd.OpenReport "berDatenblatt", acViewNormal, , "ID=" & Me!ID
                                                            'springe nach Datenblatt Ansicht Normal Drucke aktuelle ID
   
    DoCmd.GoToRecord , "", acNewRec                         'Neuer Datensatz anlegen (Blanko)
    Me.txAnmeldenummer = 99999
    Me.TxVorname.SetFocus
    Me.txAnmeldenummer.SetFocus
   
   
   
   
    'DoCmd.Close                                             'Schließt aktuelles Formular
    'DoCmd.Close acForm, "frmTeilnehmer_Suchen"
    'DoCmd.OpenForm "frmNavigation", acNormal ', , , , acDialog
Exit_1:
    Exit Sub

Error_1:
   anzeige = MsgBox("Keine Daten eingegeben oder kein Bild eingefügt" & vbCrLf, vbOKOnly, "Fehler beim Drucken                                                                         ")
   Resume Exit_1

End Sub



Dort habe ich das von dir rot markierte nicht stehen.
Ich habe das rot markierte NUR in der aktion SetzenWert stehen. Und dieses habe ich durch den Laufwerkspfad Z: ersetzt.

Dann kommt dieser Fehler. Aber ich weiß nicht WO er passieren soll, da ich diesen Pfad sonst nirgends stehen habe.

*confused*
Titel: Bericht aus Formular mit Bild über SetzenWert funktioniert nicht wie gewünscht
Beitrag von: DF6GL am Mai 28, 2016, 09:54:35
Hallo,

ich (wir) bin auch *confused* ...

Was hast Du nun?  Ein Makro  oder eine Ereignisprozedur?

Das, was Du zuletzt zeigst, ist eine Ereignisprozudur und kein Makro.

Das Makro, um das es sich vermutlich dreht, befindet sich im Bericht in dessen Detailbereichs-Ereignis "Beim Drucken"  (onPrint)


ZitatMakroname:
BerDatenblatt : Detailbereich : onPrint: Eingebettetes Makro

Aktionsname: SetzenWert

Argumente: "[bildDruckbild].[Picture]; "Z:\Bilder" & Jahr(Jetzt()) & "\" & Format([txAnmeldenummer];"00000") & ".jpg"
....


Dort solltest Du den Pfad anpassen.
Titel: Re: Bericht aus Formular mit Bild über SetzenWert funktioniert nicht wie gewünscht
Beitrag von: Piotor04 am Mai 28, 2016, 19:08:08
Hallo habe jetzt ganz lange gesucht WO das genau ist und habe es schlussendlich gefunden :D

Ich musste im Bericht unter "beim Drucken" (Da war nochmal die SetzenWertFunktion, was ich jedoch nicht mehr wusste :X) und drot ändern.
Anschließend hat alles einwandfrei funktioniert* juhU*