28. september 2006 - 11:08Der er
15 kommentarer og 2 løsninger
Logge ændringer til data på formular
Er det muligt at loope gennem alle kontrollerne på en formular og concatenate alle værdierne, adskilt af : ? Jeg har brug for noget logning af hvad der ændres i dataene....måske ville det være bedre som en trigger på den sammenkædede SQL database tabel?
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Slettet bruger
28. september 2006 - 11:49#1
Kan du ikke lave en tabel med et log felt og evt. et autoudfyldt dato/tidsfelt og så lave en kode på afterupdate eller onChange på alle felterne. Den skal køre en sql, som hedder:
INSERT INTO Tabel1 ( LogFelt) SELECT [forms]![formularnavn]![felt1] & " " & [forms]![formularnavn]![felt2] osv.. AS Expr1;
Synes godt om
Slettet bruger
28. september 2006 - 11:54#2
I stedet for at have alle felterne i forespørgslerne, så er det nok nemmere at styre, som en streng eller i et skjult felt!~)
Der ER stumper af kode på nettet til at lave det som triggers, men så er der tale om PL-SQL og nu ER det en SQL Server vi har.
Men det som du siger er heller ikke langt fra hvad jeg selv havde tænkt på: Kode på alle felterne (OnChange og OnUpdate), men hvor jeg så kun logger ét felt af gangen. Mere er ikke nødvendigt.
You need a table which contains all of the field in your original table and a datetime field for when the change occured and also a char(6) field for the type of change (INSERT, UPDATE,DELETE)
CREATE TRIGGER dbo.TRG_YourTable ON dbo.YourTable FOR INSERT, UPDATE, DELETE AS DECLARE @Inserted int, @Deleted int, @Type char(6)
SELECT @Inserted = Count(*) from inserted SELECT @Deleted = Count(*) from deleted
SELECT @Type = CASE WHEN (@Inserted > 0) and (@Deleted = 0) THEN 'INSERT' WHEN (@Inserted > 0) and (@Deleted > 0) THEN 'UPDATE' WHEN (@Inserted = 0) and (@Deleted > 0) THEN 'INSERT' END
IF (@Type IN ('INSERT', 'UPDATE'))
INSERT INTO YourLogTable SELECT *, current_timestamp, @Type FROM inserted
ELSE
INSERT INTO YourLogTable SELECT *, current_timestamp, @Type FROM deleted
Again, looking around the web (haven't used THAT word in a loooong time!), I couldn't find any easy solution, so I figured it'd be something with the Convert function
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.