Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Geänderte Datensätze dokumentieren
Gehe zu Seite 1, 2, 3, 4, 5 ... 16, 17, 18, 19, 20  Weiter
zurück: MPG Play Button weiter: Packliste zum Wandern in Access erstellen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Diskussion Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
siemers
Fortgeschrittene Einsteigerin


Verfasst am:
21. Jun 2005, 14:30
Rufname:
Wohnort: Freiburg

Geänderte Datensätze dokumentieren - Geänderte Datensätze dokumentieren

Nach oben
       Version: Office XP (2002)

Hallo,

ich arbeite mit AXP.

Ich muss in meiner Datenbank spätere Änderungen an Daten dokumentieren.
Mit dem Assistenten habe ich Benutzerkonten angelegt, Datum der Änderung und wer ändert habe ich schon hinbekommen.
Jetzt möchte ich auch noch wissen, was in welchem Feld geändert wurde, und zwar so, dass ich den alten Wert wie den neuen Wert irgendwo stehen habe. gibt es da ein vielleicht sowas wie ein logfile in Access?
oder kann ich das anhand von VBA Code programmieren? (da bräuchte ich allerdings Beispiele, so sattelfest bin ich da nicht)

Bin für alle Tipps dankbar

Gruß Petra
jens05
Moderator


Verfasst am:
21. Jun 2005, 20:30
Rufname:
Wohnort: ~~~~~


AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo,
folgendes in das Ereignis "Vor Aktualisierung"
Code:
Private Sub SpalteA_BeforeUpdate(Cancel As Integer)
    Dim xAlt As String
    Dim xneu As String

    xneu = Nz(Me!SpalteA)
    xAlt = Nz(Me!SpalteA.OldValue)
    If xneu <> xAlt Then
        If MsgBox("Wert geändert!" & vbNewLine & "alt: " & _
            xAlt & vbNewLine & "neu: " & xneu & _
            vbNewLine & "Änderungen sichern", vbYesNo) = vbYes Then
            'Änderungsprotokoll schreiben
            'z.B. AnfügeAbfrage
            'DBEngine(0)(0).Execute "Insert Into ...."
            Exit Sub
          Else
            Cancel = True
        End If
    End If
End Sub
und dieses dann ins Ereignis "Nach Aktualisierung"
Code:
Private Sub SpalteA_AfterUpdate()
    DoCmd.RunCommand acCmdSaveRecord
End Sub

Falls es mehrere Textfelder betrifft lohnt es sich die Prüfung z.B. in ein Modul auszulagern, Falls Interesse besteht kann ich morgen ja dafür ein Bsp posten.

_________________
mfg jens05 Wink
siemers
Fortgeschrittene Einsteigerin


Verfasst am:
22. Jun 2005, 15:27
Rufname:
Wohnort: Freiburg

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo Jens05,
vielen Dank erstmal, es funktioniert.
ich habe viele textfelder zu überprüfen und wäre hocherfreut ,wenn du mir ein BSP posten könntest.
jens05
Moderator


Verfasst am:
22. Jun 2005, 20:36
Rufname:
Wohnort: ~~~~~

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo,
erstelle ein Modul
Code:
Public Function Aenderungsprotokoll() As Boolean
    Dim xAlt As String
    Dim xNeu As String
    Dim FNAME As String, FCONTROL As String
    Dim frm As Form, ctl As Control
   
    Set frm = Screen.ActiveForm
    Set ctl = Screen.ActiveControl
    FNAME = frm.Name
    FCONTROL = ctl.Name
    xNeu = Nz(Forms(FNAME).Controls(FCONTROL))
    xAlt = Nz(Forms(FNAME).Controls(FCONTROL).OldValue)
    If xNeu <> xAlt Then
        If MsgBox("Wert geändert!" & vbNewLine & "alt: " & _
                  xAlt & vbNewLine & "neu: " & xNeu & vbNewLine & _
                  "Änderungen sichern", vbYesNo) = vbYes Then
            'Änderungsprotokoll schreiben
            'z.B. AnfügeAbfrage
            'DBEngine(0)(0).Execute "INSERT INTO ...."
            Aenderungsprotokoll = False
          Else
            Aenderungsprotokoll = True
        End If
    End If
End Function

Bei jedem relevanten Feld ins Ereignis Vor Aktualisierung (BeforeUpdate)
Code:
    Cancel = Aenderungsprotokoll
und ins Ereignis Nach Aktualisierung (AfterUpdate)
Code:
    DoCmd.RunCommand acCmdSaveRecord

_________________
mfg jens05 Wink
Willi Wipp
Moderator


Verfasst am:
23. Jun 2005, 09:33
Rufname:
Wohnort: Raum Wiesbaden


Re: Geänderte Datensätze dokumentieren - Re: Geänderte Datensätze dokumentieren

Nach oben
       

@jens05,

bin mir nicht sicher ob es Deine Absicht war ueber die Namen von Formular und Steuerelement zu gehen.
Ich denke das koennte zu Problemen fuehren bei Unterformularen.
Daher folgender Vorschlag
Code:
Public Function Aenderungsprotokoll() As Boolean
    Dim xAlt As String
    Dim xNeu As String
    Dim FNAME As String, FCONTROL As String
    Dim frm As Form, ctl As Control
   
    Set frm = Screen.ActiveForm
    Set ctl = Screen.ActiveControl
'    FNAME = frm.Name
'    FCONTROL = ctl.Name
'    xNeu = Nz(Forms(FNAME).Controls(FCONTROL))
'    xAlt = Nz(Forms(FNAME).Controls(FCONTROL).OldValue)
    xNeu = Nz(ctl)
    xAlt = Nz(ctl.OldValue)
    If xNeu <> xAlt Then
        If MsgBox("Wert geändert!" & vbNewLine & "alt: " & _
                  xAlt & vbNewLine & "neu: " & xNeu & vbNewLine & _
                  "Änderungen sichern", vbYesNo) = vbYes Then
            'Änderungsprotokoll schreiben
            'z.B. AnfügeAbfrage
            'DBEngine(0)(0).Execute "INSERT INTO ...."
            Aenderungsprotokoll = False
          Else
            Aenderungsprotokoll = True
        End If
    End If
End Function

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
siemers
Fortgeschrittene Einsteigerin


Verfasst am:
23. Jun 2005, 10:31
Rufname:
Wohnort: Freiburg

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hi,

vielen Dank für die schnelle Hilfe.

bei Jens Lösung gab es tatsächlich Probleme mit den Unterformularen, beim Hauptformular gab es keine Probleme.
Willis BSP funktioniert auch bei den Unterformularen.
jens05
Moderator


Verfasst am:
23. Jun 2005, 13:23
Rufname:
Wohnort: ~~~~~

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

@Willi, überredet ;)
_________________
mfg jens05 Wink
Gast



Verfasst am:
27. Feb 2006, 09:47
Rufname:

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Gast am 24. Feb 2006 um 09:48 hat folgendes geschrieben:
Hallo, ich versuche grade diesen Code umzusetzen. Da ich aber nicht so der Access Profi bin muss ich nochmal nachfragen ;) .Hab in der Form "frm_Uebersicht" 2 Komboboxen (Computername1 und Kombi_Nachname). Wie muss ich den Code umändern damit diese 2 überprüft und bei Änderung in einer neuen Tabelle vermerkt werden?

Hilfe :/ . Wenn was nicht klar ist dann fragt mich!
jens05
Moderator


Verfasst am:
27. Feb 2006, 10:37
Rufname:
Wohnort: ~~~~~

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo,
Bei jedem relevanten Feld ins Ereignis Vor Aktualisierung (BeforeUpdate)
Code:
    Cancel = Aenderungsprotokoll
und ins Ereignis Nach Aktualisierung (AfterUpdate)
Code:
    DoCmd.RunCommand acCmdSaveRecord
Nur die Insert Into Anweisung aus der Funktion müsste an deine Gegebenheit angepasst werden. Wenn du Tabellenname und Spaltennamen der ProtokollTabelle preisgibst, kann der Code für dich vervollständigt werden.
_________________
mfg jens05 Wink
Gast



Verfasst am:
28. Feb 2006, 10:51
Rufname:

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

hallo und danke für die antwort Smile

Also die Tabelle heisst "tbl_Protokoll" und die Spaltennamen heissen Computernummer1 und Name
jens05
Moderator


Verfasst am:
28. Feb 2006, 11:28
Rufname:
Wohnort: ~~~~~

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo,
jetzt muss ich leider noch nachfragen, wo kommen die Werte für Computernummer1 und Name her? Diese sollen dann in die tbl_Protokoll geschrieben werden?

_________________
mfg jens05 Wink
Gast



Verfasst am:
01. März 2006, 15:02
Rufname:

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Computernummmer1 kommt aus einer Abfrage "qry_CNr" her. Name kommt aus tbl_Name her. Ich denk mal du meinst das oder?
nagra
Office 2007 - VBA Programmierer


Verfasst am:
01. März 2006, 17:56
Rufname:

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo!

So etwas habe ich auch schon lang gesucht... vielen Dank! Wie sieht es denn dann aus mit der Protokolldatei? Kann ich die abrufen und dann alle Änderungen dort sehen? Ist es auch möglich einen Bericht davon zu erstellen?

Nagra
jens05
Moderator


Verfasst am:
01. März 2006, 21:14
Rufname:
Wohnort: ~~~~~

AW: Geänderte Datensätze dokumentieren - AW: Geänderte Datensätze dokumentieren

Nach oben
       

Hallo,
@gast, ich verstehe leider nicht Embarassed Bei dieser ProtokollTabelle soll da nur der Name & Computername gespeichert werden? Wie soll der Bezug zur Änderung dargestellt werden. Ursprünglich war meine Idee den alten Wert ; den neuen Wert, den User (z.B. WindowsAnmeldenamen) und das Datum zu protokollieren.

@nagra, alles was du mit der InsertInto Anweisung in die Protokolldatei schreibst, ist später auswertbar, und im Bericht anzeigbar Wink

_________________
mfg jens05 Wink
nagra
Office 2007 - VBA Programmierer


Verfasst am:
01. März 2006, 21:16
Rufname:


Re: AW: Geänderte Datensätze dokumentieren - Re: AW: Geänderte Datensätze dokumentieren

Nach oben
       

Vielen Dank,
Nagra
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2, 3, 4, 5 ... 16, 17, 18, 19, 20  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 20
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: M:N Beziehungen um alle Datensätze zu sehen? 3 zuperwoman 687 04. Jul 2005, 10:46
stpimi M:N Beziehungen um alle Datensätze zu sehen?
Keine neuen Beiträge Access Tabellen & Abfragen: Reduzierung mehrerer Datensätze auf einen Datensatz 2 Pulldown 819 03. Jun 2005, 09:32
Pulldown Reduzierung mehrerer Datensätze auf einen Datensatz
Keine neuen Beiträge Access Tabellen & Abfragen: Datensätze paarweise berechnen? 4 adiag 883 21. Mai 2005, 22:28
adiag Datensätze paarweise berechnen?
Keine neuen Beiträge Access Tabellen & Abfragen: Filtere alle Datensätze ab der 3 Stelle die nicht PC heißen? 7 centerguide 1302 18. Mai 2005, 11:39
centerguide Filtere alle Datensätze ab der 3 Stelle die nicht PC heißen?
Keine neuen Beiträge Access Tabellen & Abfragen: Datensätze zusammenfassen 1 Tatanka 1121 29. Apr 2005, 14:52
jens05 Datensätze zusammenfassen
Keine neuen Beiträge Access Tabellen & Abfragen: Aus 1 Datensatz mit 10 Infos mache 10 Datensätze à 1 Info 2 Steve 914 14. Jan 2005, 00:43
Steve Aus 1 Datensatz mit 10 Infos mache 10 Datensätze à 1 Info
Keine neuen Beiträge Access Tabellen & Abfragen: multiplizieren zweier verschiedener Datensätze 3 Stara 913 13. Jan 2005, 20:36
Skogafoss multiplizieren zweier verschiedener Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage um doppelte Datensätze zu ermitteln? 5 tom444 5066 14. Dez 2004, 23:49
Skogafoss Abfrage um doppelte Datensätze zu ermitteln?
Keine neuen Beiträge Access Tabellen & Abfragen: Anzahl der Datensätze anzeigen? 3 MichaelB 1122 19. Okt 2004, 12:45
lothi Anzahl der Datensätze anzeigen?
Keine neuen Beiträge Access Tabellen & Abfragen: Einmalige Datensätze löschen 18 frankkugler 1614 18. Okt 2004, 15:33
frankkugler Einmalige Datensätze löschen
Keine neuen Beiträge Access Tabellen & Abfragen: leere Datensätze löschen 3 umbroboy 2666 07. Okt 2004, 16:51
Skogafoss leere Datensätze löschen
Keine neuen Beiträge Access Tabellen & Abfragen: datensätze suchen 13 mr@ 1514 13. Sep 2004, 10:21
meyster datensätze suchen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Word Serienbriefe