Avatar billede juks Novice
23. maj 2003 - 11:06 Der er 18 kommentarer og
1 løsning

script eller lign til opdatering af frontend

hejsa
ved ikke helt om det er den rigtige kat jeg poster det her under.
men mit problem er ..
jeg laver en database der er spilttet i frontend og backend
nu har vi haft nogle problemer og vedtaget at frontenden skal ligge lokalt er det så en nem måde med et script elign. at når jeg sender en ny version til serven så skal klienterner "bare" klikke på et script der henter frontenden på serven og ligger den lokalt og overskriver den gamle evt. og kan det evt laves så acces køre sciptet automatisk
23. maj 2003 - 11:12 #1
Lav en .bat-fil med en XCopy:
XCopy Z:\Databaser\JeresFrontend.mdb C:\Databaser\JeresFrontend.mdb
Avatar billede juks Novice
23. maj 2003 - 11:50 #2
jeps den er jeg med på så langt
men jeg ville gerne have den til at..
når man starter databasen at tjekke om der er en nyere version af frontenden.  også lukker basen køre opdateringen også starte basen igen. derfor tror jeg ikke man kan bruge dos men skal over i et script
23. maj 2003 - 11:56 #3
Jeg har lavet lige præcis den løsning, som du beskriver. Men den koster dyrt, da det er MEGET besværligt at få Access til at overskrive sig selv med en fil. For i det øjeblik, du overskriver database-filen, mister Access også kontrollen og kan derfor ikke genstarte systemet. Endvidere får du slet ikke lov at overskrive filen, så længe Access er åben.

Det svarer til at save den gren over, som du selv sidder på - uden at falde ned.

Jeg har fået lavet en måde at gøre det på, men den koster som sagt en del og kan oftest kun anbefales hvis man har mange brugere og man tit laver opdateringer. Da kan det være brugervenligt at gøre det på denne måde.

/Thomas
Avatar billede juks Novice
23. maj 2003 - 12:00 #4
koster en del ......
mmm jeg kan ikke se problem kan man ikke køre et vb-script fra access
23. maj 2003 - 12:04 #5
Well...spørgsmålet kommer ofte frem her på sitet...og jeg har endnu ikke set en løsning - ud over min egen.

Men du kan jo også bare lade brugerne hente en frisk kopi hver gang de logger på nettet (via login-script)
Eller lade dem selv klikke på .bat-filen. Det er vel også rimelig brugervenligt...!?
Avatar billede juks Novice
23. maj 2003 - 12:05 #6
man kan vel lave et vb-script til at starte access med og der tjekke om der er nyer version
Avatar billede juks Novice
23. maj 2003 - 12:32 #7
ok jeg prøver at lave en løsning og poster den her.
hvad skal du evt have for en sådanne løsning selvom man ikke må nævne beløb herinde
23. maj 2003 - 12:38 #8
Hej Juks,

Du har ret i, at man burde kunne lave et vb-script, som først checker Access-versionen, kopierer hvis nødvendigt og derefter starter Access.

Min funktion checker løbende (f.eks. hvert minut eller hvert 5. minut) om der er en ny version af databasen. Hvis dette er tilfældet får brugeren en besked på skærmen, som han kan annullere eller acceptere hvorefter systemet selv kopiere sig ned og derefter genstarter. Det kører ret fornuftigt og koster ikke under 4K og heller ikke over 4K (så har jeg vist ikke sagt for meget ;o)
Avatar billede juks Novice
23. maj 2003 - 12:43 #9
det må jeg kunne lave billigere :-)
23. maj 2003 - 12:47 #10
Det kan man også sagtens....hvis man går en smule på kompromis med brugervenligheden.
Avatar billede juks Novice
23. maj 2003 - 12:54 #11
brugerne skal jo også havelidt at lave
Avatar billede nih Novice
23. maj 2003 - 12:56 #12
Min løsning går på at have en lokaltabel med versionsnumr.

I en vbs fil kan man via ado tjekke om der er behov for opdatering (versions nummer i lokal db kontra den på nettet) og derefter kopiere den nye version til lokal disk.

Denne vbs fil skal derefter ligge i brugernes startmenu således at der tjekkes for ny version hver gang computeren tændes.

Det var min måde at gøre det på.

Niels
23. maj 2003 - 12:56 #13
haha, ja det er selvfølgelig rigtigt :o)

Omvendt så opstår der jo altid problemer, så snart man har overladt noget til en bruger ;o)
Avatar billede juks Novice
23. maj 2003 - 13:00 #14
nih kan man se den løsning
Avatar billede terry Ekspert
23. maj 2003 - 13:07 #15
Avatar billede terry Ekspert
23. maj 2003 - 13:24 #16
ca. 4K :o)
Avatar billede hugopedersen Nybegynder
23. maj 2003 - 14:55 #17
Jeg vil da godt fortælle hvordan jeg har løst dette problem her i vores virksomhed.
Alle brugere der logger på netværket får et drev H: som er deres helt personlig drev.
Jeg har så lavet et script der kopierer de forskellige frontends til de brugere der skal have adgang til dem. Dette script kører vores filserver så hver nat.
Når jeg har opdateret i diverse frontends, kører jeg en compact/repair på den og kopierer den op på filserveren. Så har brugerne den nye version senest dagen efter.

Det behøver ikke være mere forkromet, det fungerer fint og har gjort det de sidste 3 år.
Avatar billede hugopedersen Nybegynder
23. maj 2003 - 14:56 #18
Frontends kopieres til brugernes H: drev - bare for at præcisere det.
Avatar billede juks Novice
23. maj 2003 - 15:38 #19
jamen det er jo scriptet jeg skal bruge nu har jeg lavet i et vb

im fs, f, s, fs1, f1, s1, filespec1, filespec
''' Dim filespec As String

  filespec = ("c:\databaser\hmfrontend.mdb")
  Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFile(filespec)
    s = s & f.DateLastModified
 
  filespec1 = ("G:\Dokumenter\Access\Hfirma\work\front.mdb")
  Set fs1 = CreateObject("Scripting.FileSystemObject")
    Set f1 = fs1.GetFile(filespec1)
    s1 = s1 & f1.DateLastModified

   
   
If s >= s1 Then
MsgBox "old or same"


Set WshShell = CreateObject("WScript.Shell")
WshShell.Run filespec
Set WshShell = Nothing
Else
MsgBox "nyere"
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "command /C xcopy/y G:\Dokumenter\Access\firma\work\front.mdb C:\Databaser\HMFrontend.mdb"
Set WshShell = Nothing
End If
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester