04. december 2007 - 12:56Der er
8 kommentarer og 1 løsning
Ændring af data, som kommer fra eksternt program, ved insert
Hej,
Nu har jeg kigget på mit problem i længere tid og er ikke kommet frem til en løsning. Faktisk tror jeg ikke det er muligt, men nu vil jeg høre jer gutter herinde.
Mit problem er således, at jeg har et eksternt program, som tiltider ligger en record ned i en Access tabel. Dog bliver dataen ikke lagt korrekt ned i tabellen. Data som ligger i et felt, skal placeres i et andet og omvendt. Det er ikke muligt for mig at ændre i det eksterne program af forskellige årsager.
Er der en måde, hvorved at jeg kan lave noget Access kode, som bliver kørt, hvergang en ny insert bliver lavet på en tabel.
Importer til en temp tabel. Derefter kører du en tilføjelksesforespørgsel og sender data til den rigtige tabel. i en sådan forespørgsel kan du selv besteme hvor data skal placeres.
Kabbak: Det er ikke muligt, da programmet i nogle tilfælde ikke bytter om på felterne, men kun når et bestemt felt har en bestemt værdi, så er ombytningen sket.
Mugs: Forespørgelsen skal ske i det samme sekund, der er sket en insert i Access og ikke manuelt, så jeg skal have en måde i Access til at kalde sådan en forespørgsel, når der er sket en tilføjelse.
Mugs: Når du siger en formular, så gætter jeg på, at det er en "Form". Jeg kører på en engelsk version af Access 2003. Hvis jeg skal bruge en form, så kræver det vel at jeg starter formen, før den kan starte sin timer hændelse, ik?
Det som jeg leder lidt efter, er en slags hook på tabellen, når der sker en tilføjelse, som så kører noget kode.
Formen skal være aktiveret før hændelsen kører. Men formen kan sagtens være minimeret. Jeg mener ikke, at du kan lave en sådan hændelse direkte i en tabel, med mindre du kan lave en hændelse i Windows Scheduler. Men også her skal db jo startes.
Men jeg ville afgjort lave en form kode timeren og så blot minimere formen.
If the extern program cant be altered then its not to easy to achieve what you want. So how or other you need to start Access so that an update query/code can be run and that could maybe have been done with automation from your extern program. Access doesnt use triggers like other dB servers as its really only a flat file.
Another suggestion was to start Access with Windows Scheduled tasks and do what ever is necessary but that would mean that the updates would not necessarily occur at the same time as the insert which may not be a good idea.
terry: It isn't possible to have Access running on the side in this case. What I was looking for, was precisely a trigger action, but if it can't be done, then I can't solve the problem on Access level.
Jeg lukker forslaget. Tak for hjælpen og inputtet.
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.