Skip to main content

AccessTr.neT


Yedek Alma Uygulaması

Yedek Alma Uygulaması

#1
mevcut Access dosyasının yedeğini alır.

sn ozanakkaya hocamın eklediği kod ile dosya güncellenmiştir. 
teşekkür ederim.


[Resim: do.php?img=9251]
.rar mevcut veritabanının yedeğini al butonu2003_Backup.rar (Dosya Boyutu: 32,91 KB | İndirme Sayısı: 32)
husem, proud to be a member of AccessTr.neT since 08-03-2009.
Son Düzenleme: 19/10/2019, 00:50, Düzenleyen: husem.
Cevapla
#2
Paylaşımınız için teşekkürler.
"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#3
Kod içerisindeki

Visual Basic Code
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", Left(CurDB, Len(CurDB) - Len(Dir(CurDB))) & Me.dosyaadi) '"deneme.mdb")

Şeklinde kod mevcut. Butona bastığınızda metin kutusunda yazılan isim ne ise uzantısız olarak yedek alıyor.

Uzantılı kaydedilmesi ve mdb ise accdb olarak kaydedilmemesi için bu kod;

Şeklindeki kodun

Visual Basic Code
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", Left(CurDB, Len(CurDB) - Len(Dir(CurDB))) & Me.dosyaadi & "." & Mid(CurrentProject.Name, InStr(1, CurrentProject.Name, ".") + 1)) '"deneme.mdb")

olarak değiştirilmesi daha doğru olur. Uygulama "test.mdb" ise ve metin kutusuna deneme yazıldıysa alınacak yedeğin adı deneme.mdb olacaktır.
"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#4
(18/10/2019 13:42)ozanakkaya Adlı Kullanıcıdan Alıntı: Kod içerisindeki

Visual Basic Code
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", Left(CurDB, Len(CurDB) - Len(Dir(CurDB))) & Me.dosyaadi) '"deneme.mdb")

Şeklinde kod mevcut. Butona bastığınızda metin kutusunda yazılan isim ne ise uzantısız olarak yedek alıyor.

Uzantılı kaydedilmesi ve mdb ise accdb olarak kaydedilmemesi için bu kod;

Şeklindeki kodun

Visual Basic Code
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", Left(CurDB, Len(CurDB) - Len(Dir(CurDB))) & Me.dosyaadi & "." & Mid(CurrentProject.Name, InStr(1, CurrentProject.Name, ".") + 1)) '"deneme.mdb")

olarak değiştirilmesi daha doğru olur. Uygulama "test.mdb" ise ve metin kutusuna deneme yazıldıysa alınacak yedeğin adı deneme.mdb olacaktır.

Üstad peki farklı bir dosya yoluna nasıl kaydedebiliriz? Örn. Dir ("C:\Yedek") gibi..
Cevapla
#5
Komut butonunun tıklandığında olayındaki kodun aşağıdaki gibi değiştirilmesi gerekli.

Visual Basic Code
On Error Resume Next
Dim CurDB As String, KopiaDB As String, LenDB As Long, Plik As String, NrPliku As Long
Dim YedekDizini As String

YedekDizini = "C:\Yedek"

DoCmd.Hourglass -1
CurDB = CurrentDb.Name
Err = 0
Plik = Space(FileLen(CurDB))
NrPliku = FreeFile
Open CurDB For Binary Access Read Shared As #NrPliku
Get #NrPliku, 1, Plik
Close #NrPliku
If Err = 52 Then
MsgBox "Kopyalanamadı. " & CurDB & "Kopyalama işlemi başarısız.", 48, "Kopyalanıyor."
ElseIf Err Then
MsgBox Err.Description
Else
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", YedekDizini & "\ " & Me.dosyaadi & "." & Mid(CurDB, InStr(1, CurDB, ".") + 1)) '"deneme.mdb")
If KopiaDB & "" <> "" Then
Kill KopiaDB
Err = 0
NrPliku = FreeFile
Open KopiaDB For Binary Access Write Shared As #NrPliku
Put #NrPliku, 1, Plik
Close #NrPliku
If Err = 0 Then
MsgBox "Yedek Dosyanız Alınmıştır."
Else
MsgBox Err.Description
End If
End If
End If
DoCmd.Hourglass 0
'DoCmd.Quit


Koddaki;
YedekDizini = "C:\Yedek" 

kısmını değiştirebilirsiniz
"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#6
(21/10/2019 11:47)ozanakkaya Adlı Kullanıcıdan Alıntı: Komut butonunun tıklandığında olayındaki kodun aşağıdaki gibi değiştirilmesi gerekli.

Visual Basic Code
On Error Resume Next
Dim CurDB As String, KopiaDB As String, LenDB As Long, Plik As String, NrPliku As Long
Dim YedekDizini As String

YedekDizini = "C:\Yedek"

DoCmd.Hourglass -1
CurDB = CurrentDb.Name
Err = 0
Plik = Space(FileLen(CurDB))
NrPliku = FreeFile
Open CurDB For Binary Access Read Shared As #NrPliku
Get #NrPliku, 1, Plik
Close #NrPliku
If Err = 52 Then
MsgBox "Kopyalanamadı. " & CurDB & "Kopyalama işlemi başarısız.", 48, "Kopyalanıyor."
ElseIf Err Then
MsgBox Err.Description
Else
KopiaDB = InputBox("Veritabanı yedeklenecek, dizin aşağıdaki gibi:" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Dosyanın oluşturulacağı yol:.", "Değiştirmeden onaylayınız.", YedekDizini & "\ " & Me.dosyaadi & "." & Mid(CurDB, InStr(1, CurDB, ".") + 1)) '"deneme.mdb")
If KopiaDB & "" <> "" Then
Kill KopiaDB
Err = 0
NrPliku = FreeFile
Open KopiaDB For Binary Access Write Shared As #NrPliku
Put #NrPliku, 1, Plik
Close #NrPliku
If Err = 0 Then
MsgBox "Yedek Dosyanız Alınmıştır."
Else
MsgBox Err.Description
End If
End If
End If
DoCmd.Hourglass 0
'DoCmd.Quit


Koddaki;
YedekDizini = "C:\Yedek" 

kısmını değiştirebilirsiniz
sn ozanakkaya hocamın yaptığı düzeltmelerle ilgili son dosya ektedir.
[Resim: do.php?img=9251]

teşekkürler.
.rar mevcut veritabanının yedeğini al.rar (Dosya Boyutu: 72,04 KB | İndirme Sayısı: 18)
husem, proud to be a member of AccessTr.neT since 08-03-2009.
Son Düzenleme: 21/10/2019, 12:58, Düzenleyen: husem.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task