- SLEDEĆI PRIMER DEMONSTRIRA TAKO REĆI UPDATE ZA FRONTEND -
1. Svi USERI moraju imati dozvolu da kopiraju iz foldera gde se nalazi BackEnd inače ovaj primer neće funkcionisati
2. Pravimo .bat fajl koji pozivamo prilikom pokretanja FrontEnd-a
Kako pravimo .bat fajl?
Kreiramo “Preuzmi.txt” dokument iskopiramo dole navedeni KOD i promenimo .txt ekstenziju u .bat (Preuzmi.bat)
PRIMER I
Ukoliko useri imaju kopiju FrontEnd-a na svom Desktopu Lokalnog računara, a BackEnd na Serveru onda .bat fajl izgleda ovako:
Code:
@ECHO OFF
ECHO *************
ECHO *NAZIV FIRME*
ECHO *************
ECHO *
ECHO *
ECHO Azuriranje je u toku.
COPY \\Naziv-ili-IP-Servera\NazivShareovanogFoldera\FrontEnd.accde C:\Users\%username%\Desktop\FrontEnd.accde
ECHO *
ECHO *
ECHO *
ECHO *Azuriranje je uspesno zavrseno.
ECHO *
ECHO *
ECHO *
ECHO *Ukoliko zelite da pokrenete novu verziju pritisnite bilo koje dugme.
ECHO *U suprotnom zatvorite prozor.
PAUSE
ECHO *
ECHO *
ECHO *
ECHO *Pokretanje nove verzije.*
START C:\Users\%username%\Desktop\FrontEnd.accde
EXIT
Šta radi gore navedeni KOD?
Kopira FrontEnd sa Servera na Desktop usera, zatim pokreće iskopirani FrontEnd (novu verziju).
PRIMER II
Ukoliko useri koriste Windows CAL’s preko Remote Desktop-a onda .bat fajl izgleda ovako:
Code:
@ECHO OFF
ECHO *************
ECHO *NAZIV FIRME*
ECHO *************
ECHO *
ECHO *
ECHO Azuriranje je u toku.
COPY C:\NazivShareovanogFoldera\FrontEnd.accde %userprofile%\desktop\FrontEnd.accde
ECHO *
ECHO *
ECHO *
ECHO *Azuriranje je uspesno zavrseno.
ECHO *
ECHO *
ECHO *
ECHO *Ukoliko zelite da pokrenete novu verziju pritisnite bilo koje dugme.
ECHO *U suprotnom zatvorite prozor.
PAUSE
ECHO *
ECHO *
ECHO *
ECHO *Pokretanje nove verzije.*
START %userprofile%\desktop\FrontEnd.accde
EXIT
Šta radi gore navedeni KOD?
Kopira FrontEnd iz foldera Servera na Desktop CAL-a na Serveru, zatim pokreće iskopirani FrontEnd (novu verziju) sa Desktopa CAL-a.
3. Kreiranje i provera verzije
- Kreiramo Tabelu u FrontEnd-u pod nazivom “TrenutnaVerzija” i polje “Verzija” tip polja Number.
- Kreiramo Tabelu u BackEnd-u pod nazivom “NovaVerzija” i polje “Verzija” tip polja Number.
- Prilikom pokretanja FrontEnd-a mora postojati StartUp Forma (kod mene je to LogIn, verujem i kod većine).
U OnLoad Event-u kopiramo KOD:
Za PRIMER I (pogledaj stavku 2):
Code:
Dim strTV As String
Dim strNV As String
strTV = DLookup("Verzija", "TrenutnaVerzija")
strNV = DLookup("Verzija", "NovaVerzija")
If strTV < strNV Then
If MsgBox("Da li želite da preuzmete novu verziju?", vbYesNo, "Preuzimanje nove verzije") = vbYes Then
Call Shell(Environ$("COMSPEC") & " /c \\Naziv-ili-IP-Servera\NazivShareovanogFoldera\Preuzmi.bat ", vbNormalFocus)
DoCmd.Quit
Else
DoCmd.Quit
End If
End If
Za PRIMER II (pogledaj stavku 2):
Code:
Dim strNV As String
strTV = DLookup("Verzija", "TrenutnaVerzija")
strNV = DLookup("Verzija", "NovaVerzija")
If strTV < strNV Then
If MsgBox("Da li želite da preuzmete novu verziju?", vbYesNo, "Preuzimanje nove verzije") = vbYes Then
Call Shell(Environ$("COMSPEC") & " /c C:\NazivShareovanogFoldera\Preuzmi.bat ", vbNormalFocus)
DoCmd.Quit
Else
DoCmd.Quit
End If
End If
Šta radi gore navedeni KOD?
Proverava da li je Trenutna verzija veća ili manja od Nove verzije.
Ukoliko je broj u polju “Verzija” tabele “NovaVerzija” veći od broja u polju “Verzija” tabele “TrenutnaVerzija”, onda se pokreće “Preuzmi.bat” fajl i izvršava KOD u njemu. ( stavka 2)
4.
Sprovodjenje u delo
- Kopiramo BackEnd.accde, FrontEnd.accde, Preuzmi.bat u sharovani folder
- Povezujemo FrontEnd.accde sa BackEnd.accde
- Upisujemo u poljima tabela TrenutnaVerzija i NovaVerzija broj 1 (pošto ne želimo update upravo postavljene verzije)
- Ukoliko ni jedan User nema FrontEnd.accde na svom Desktopu, pokrećemo na svakom računaru ponaosob Preuzmi.bat
- Za svaki sledeći update, obrisati FrontEnd prethodne verzije sa servera, iskopirati novu verziju, povezati i upisati u polju tabele NovaVerzija veći broj nego što je broj u tabeli TrenutnaVerzija trenutnog (starog) FrontEnd-a na Desktopu usera
- Nova verzija FrontEnda mora imati u tabeli TrenutnaVerzija isti broj kao što je u tabeli NovaVerzija da ne bi pri svakom pokretanju programa pitalo da li hoćemo da preuzmemo novu verziju
Ja sam napravio admin panel u kome mogu samo ja da pristupim i otvara mi dve forme u kojima menjam tabele TrenutnaVerzija i NovaVerzija da ne bih morao da pristupam tabelama direktno posto koristim DisableShiftKey i BackEnd ima Password.