zxz 11.06.2012 09:34
Predmet:Pojasnjenje procedura za backup

Function Bekap()
Dim StaroIme As String
Dim NovoIme As String
Dim Ime As String
Dim Putanja As String

On Error GoTo Kraj'Ako naidjes na gresku skoci na mjesto gdje pise Kraj:
StaroIme = ImeBaze' Pozovi Proceduru koja se zove ImeBaze i rezultat koji ona vrati zapisi u memorijsku koja se zove StaroIme
Putanja = PutanjaB 'Pozovi proceduru PutanjaB i njenu vrijednost koju vrati zapisi u memorijsku koja se zove putanje
NovoIme = Year(Date) & Month(Format(Date, "mm")) & Day(Format(Date, "dd"))'U memorijsku Novo ime upisic Year(Date) -->godinu od trenutnog datuma i Month(Format(Date, "mm")) -->mjesec od trenutnog datuma u formatu mm odnosno 2 karaktera i Day(Format(Date, "dd")) -->dan od trentnog datuma u formatu dd odnosno dvije cifre.
NovoIme = Putanja & "backup\" & NovoIme & ".zip" 'Upisi u memorijsku novoime podatke iz memorijske Putanja i dodaj rijec backup\-->(Ovo je ime direktorije) 6 dodaj ono sto je bilo u memorijskoj novoime i dodaj na to jos '.zip'
'Ovim smo stovirili putanju gdje se smijesta backup kao i njegovo ime
'Putanju do aplikacije je nasla procedura PuranjaB
'Znaci gdje god stavili svoju app. procedura ce procitati ime do nje
'Sada na tu putanju se dodaje rijec backup
' pa bi to izgledalo
'Primjer:
'C:\MojdirOdMdb\Backup
'Sada na ovo dodajemo jos godinumjescei dfa od trenutnog datuma i jos .zip
'Znaci ime naseg backupa ce biti napr:
'20120623.zip ->Kreiran 23.06.2012
'Kada to dodamo putanji bit ce:
'C:\MojdirOdMdb\Backup\20120623.zip
Shell Putanja & "Pkzip " & NovoIme & " " & StaroIme
'Sada kroz shell pozivamo pkzip.exe
MsgBox "Rezervna kopija baze zapisana na putanji." & vbCr & NovoIme' upozorenje
Exit Function'izlaz iz procedure
Kraj:
GreskaB (Err.Number) 'ovaj red treba pobrisati ili napisati nesto svoje
End Function

Function ImeBaze()
Dim Ime As String

Ime = CurrentDb.Name' U memorijku koja se zove ime upisi trenutno ime app. sa putanjom

Do Until Right$(Ime, 1) = "." ' idi sve dok sa desne starne teksta ne bude znak tacka.
Ime = Left$(Ime, Len(Ime) - 1)' upisi u mem. koja se zove ime sa lijeve strane onoliko znakova koliko ime znakova u samoj memorijskoj ime ali za 1 manje.
Loop' dovde vrti petlja do
Ime = Left$(Ime, Len(Ime) - 1) 'Upisi u mem ime sa lijeve strane onoliko znakov a koliko ima u samoj meme ime ali za 1 manje.
ImeBaze = Ime & "_be.mdb" 'U mem ime baze (koja je ujedno i naziv procedure sto znaci da ce se ti podaci vratiti pri pozivu procedure) upisi podatke iz mem ime i dodaj jos "_be.mdb"
'Pvo na govori da nasa baza sa podacima mora da se nalazi na istoj putanji kao i nasa app. i da ce joj ime biti isto kao i app. samo sa sufiksom _be.
End Function

Function PutanjaB()
Dim Putanja As String

Putanja = CurrentDb.Name

Do Until Right$(Putanja, 1) = "\"
Putanja = Left$(Putanja, Len(Putanja) - 1)
Loop
PutanjaB = Putanja
End Function

pmiroslav 11.06.2012 13:33
Predmet:Re: backup podataka splitovane baze

PoÅ¡to imam viÅ¡e backend baza koje se nalaze na različitim kompjuterima ja radim Backup svih baza odjednom sa bat failom.

Napravio sam slijedeći bat fail koji sam nazvao Backup.bat
PreuzmiIzvorni kôd (vbnet):
  1. MD R:\%date%
  2. H:
  3. copy Skladiste_2011_be.mdb R:\%date%
  4. copy Skladiste_2012_be.mdb R:\%date%
  5. copy proces_be.mdb R:\%date%
  6. Copy Kretanje2012_be.mdb R:\%date%
  7. Copy *.xls R:\%date%
  8. Z:
  9. copy Prodaja_2011_be.mdb R:\%date%
  10. copy Prodaja_2012_be.mdb R:\%date%
Opis:
Na particiji R:\ (to je mapirana particija na drugom kompjuteru) napravi se direktorij sa današnjim datumom
Zatim se Sa particije H:\ kopiraju sve navedene baze u napravljeni direktorij na particiji R:\
Zatim se prebacimo na particiju Z:\ (koja je također mapirana particija sa trećeg kompjutera) i sa nje kopiramo dvije baze također u isti direktorij na particiji R:\

nevsad 13.06.2012 21:40
Predmet:Re: backup podataka splitovane baze

1 zašto mi pravi zip 2012112, a ne 201206012

zxz 13.06.2012 21:46
Predmet:Re: backup podataka splitovane baze

Probaj ovo promijeniti:
NovoIme = Year(Date) & Month(Format(Date, "mm")) & Day(Format(Date, "dd"))
u
NovoIme = Year(Date) & Month(Format(Date, "nn")) & Day(Format(Date, "dd"))

Nemam drugu ideju neku nije mi bas jasno.
Neznam koju verziju koristis accessa.
Pogledaj u helpu format date.

nevsad 13.06.2012 22:07
Predmet:Re: backup podataka splitovane baze

u regionalnim setinzima bio je format datuma d.mm.yyyy
ni sam neznam kako
i za to je cod tako odradjivao

nevsad 13.06.2012 22:17
Predmet:Re: backup podataka splitovane baze

kad istu funkciju pokušam koristiti u drugoj aplikaciji u drugom direktoriju
sa napravljeni,direktorijem backup i copiranim pkzipom
pozivanjem funkcije
dobijem poruku da je zip napravljen a zaprsavo ga nema u beckupu

zxz 14.06.2012 09:35
Predmet:Re: backup podataka splitovane baze

Da to obavjestenje nije uopste vezano za provjeru.
Ja sam samo doradio proceduru.
Postoji mogucnost provjera shella cin mi se, medjutim ako se sve napravi kako valje onda ce sigurno svaki puta raditi.

Koja su pravila:
Da se baza zove isto kao i api sa sufiksom _be
Znaci napr:
moja.mde i
moja_be.mdb
Da iza dir gdje se nalazi moja.mde bude dir backup.
Da u dir moja.mde bude i pkzip.exe.

MOZEBITIPONOVO 15.06.2012 06:55
Predmet:Re: backup podataka splitovane baze

Pratim dešavanja na ovu temu, nešto sam probao i sam. Pitanja. Problem sa datumom kao nazivom fajla 2012114, postavio sam umesto "mm", "##" i prikaže 6, a ne 06. Stavio sam i bazu i aplikaciju u isti folder, uz dodatak nazivu baze _be, napravi fajl od 1 KB. U isti folder instalirao sam i PKZIP i PKUNZIP koji je ZXZ postavio. Gde grešim? Folder BACKUP je u istom folderu sa aplikacijom, bazom ... Pozdrav!

zxz 15.06.2012 08:35
Predmet:Re: backup podataka splitovane baze

Za datum je moja greska sad sam vidio.
Treba da stoji:
NovoIme =Year(Date) & Format(Month(Date), "mm") & Format(Day(Date), "dd")

NovoIme = Putanja & "backup\" & NovoIme & ".zip"
Putanja-Putanja do app i jos se dodaje ovo 'backup\' ta na kraju novo ime tj. ime generisano od datuma.

Ako ne ide zakaci primjer.

MOZEBITIPONOVO 15.06.2012 08:53
Predmet:Re: backup podataka splitovane baze

Probao sa sledećim redom koda i radi naziv fajla kako treba, 20120615.zip.
NovoIme = Year(Date) & Format((Date), "mm") & Format((Date), "dd")
Međutim, i dalje mi je veličina zipovanog fajla 1 KB. Gde greÅ¡im? Može li joÅ¡ pomoći!