اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

اخذ نسخة احتياطية كل اسبوع


إذهب إلى أفضل إجابة Solved by kkhalifa1960,

الردود الموصى بها

30 دقائق مضت, Moosak said:

قم بكتابة الموقع الجديد في المكان الذي ذكرته هكذا 

"WhereToSave =  "c:\windows\Bakup

حيث أن BECurrentPath  هو اسم الدالة التي تحضر لك الموقع الحالي لقاعدة البيانات .

وكذلك عليك أن تحذف السجل المحفوظ لهذا الأسبوع من الجدول لكي يقوم البرنامج بحفظ نسخة جديدة لهذا الأسبوع .. 🙂 

 

اخي الحبيب@Moosak

ظهر الخطأ التالي المرفق

 

hh.png

hh1.png

رابط هذا التعليق
شارك

34 دقائق مضت, ابو عبد الرحمن اشرف said:

ظهر الخطأ التالي المرفق

الظاهر من الخطأ أن الويندوز لا تسمح لك بإنشاء ملفات في مجلد الويندوز ..

بدلا من ذلك جرب عمل المجلد في الـ C مباشرة .. هكذا :

"WhereToSave =  "c:\Bakup

53 دقائق مضت, ابو عبد الرحمن اشرف said:

الان علمت معلومة جديدة عن هذه الدالة BECurrentPath  فبارك الله فيك اخي الحبيب

بالمناسة هذه ليست دالة خاصة بالأكسس .. وإنما هي دالة أنا قمت بإنشاءها سابقا .. فلو احتجت أن تستخدمها في برنامج آخر يجب عليك أن تنسخها كاملة في موديول من موديولات البرنامج الجديد .. 🙂 

وهذه هي كاملة .. :

Public Function BECurrentPath()

    On Error GoTo ErrHandler

    Dim FullLinkedPath As String
    Dim LinkedDBPath As String

    FullLinkedPath = Nz(DLookup("Database", "MSysObjects", "Type=6"), "")

   If FullLinkedPath <> "" Then
    LinkedDBPath = Left(FullLinkedPath, InStrRev(FullLinkedPath, "\") - 1)    
    BECurrentPath = LinkedDBPath & "\"
    
    Else
    
    BECurrentPath = CurrentProject.Path & "\"
    
    End If

ErrHandler:
    If Err.Number = 0 Then Exit Function Else
    MsgBox "Error Number : " & Err.Number & " :::: " & Err.Description
End Function

 

  • Like 1
رابط هذا التعليق
شارك

7 دقائق مضت, Moosak said:

الظاهر من الخطأ أن الويندوز لا تسمح لك بإنشاء ملفات في مجلد الويندوز ..

بدلا من ذلك جرب عمل المجلد في الـ C مباشرة .. هكذا :

"WhereToSave =  "c:\Bakup

بالمناسة هذه ليست دالة خاصة بالأكسس .. وإنما هي دالة أنا قمت بإنشاءها سابقا .. فلو احتجت أن تستخدمها في برنامج آخر يجب عليك أن تنسخها كاملة في موديول من موديولات البرنامج الجديد .. 🙂 

وهذه هي كاملة .. :

Public Function BECurrentPath()

    On Error GoTo ErrHandler

    Dim FullLinkedPath As String
    Dim LinkedDBPath As String

    FullLinkedPath = Nz(DLookup("Database", "MSysObjects", "Type=6"), "")

   If FullLinkedPath <> "" Then
    LinkedDBPath = Left(FullLinkedPath, InStrRev(FullLinkedPath, "\") - 1)    
    BECurrentPath = LinkedDBPath & "\"
    
    Else
    
    BECurrentPath = CurrentProject.Path & "\"
    
    End If

ErrHandler:
    If Err.Number = 0 Then Exit Function Else
    MsgBox "Error Number : " & Err.Number & " :::: " & Err.Description
End Function

 

تمام اخي زادك الله علما

سافوم بالتنفيذ الان واوافيك بالنتيجة 

تم تعديل بواسطه ابو عبد الرحمن اشرف
املاء
رابط هذا التعليق
شارك

5 دقائق مضت, ابو عبد الرحمن اشرف said:

تمام اخي زادك الله علما

سافوم بالتنفيذ الان واوافيك بالنتيجة 

تمت التجربة وكما قلت اخي تم انشاء مجلد علي الجذر الصلب c:\  ونجح الامر والحمد لله الذي تتم بنعمته الصالحات

جزاك الله خيرا اخي الحبيب

رابط هذا التعليق
شارك

بما ان عنوان الموضوع متفرد حيث يمكن البحث عنه وايجاده بسهولة

 مشاركة مع اخي موسى لإثراء الموضوع

في المرفق يتم اخذ نسخة احتياطية كل اسبوع عند فتح النموذج ، بعد ان يتأكد البرنامج انها غير موجودة

اسم النسخة عبارة عن : السنة + رقم الاسبوع خلال هذه السنة

يتم البحث عن النسخة داخل المجلد .. وهنا نستغني عن الجدول لتسجيل النسخة

Dim DBOld As String
Dim DBNew As String
Dim tstfile As Integer
Dim frmtName As String
'--------------------------------
Sub tstBakUp()
Dim i, ii
i = frmtName
Dim MyFSO As New FileSystemObject, Pth As String, Fo As Folder, Fn As File
Pth = CurrentProject.Path & "\tst"
Set Fo = MyFSO.GetFolder(Pth)
For Each Fn In Fo.Files
If ii = i Then tstfile = 1
ii = MyFSO.GetBaseName(Fn)
Next Fn
End Sub
'-------------------------------------
Private Sub Form_Load()
frmtName = Year(Date) & Format(DatePart("ww", Date), "00")
DBOld = CurrentProject.Path & "\db1_Data.mdb"
DBNew = CurrentProject.Path & "\tst\"
tstBakUp
If tstfile = 1 Then
Exit Sub
Else
cpyDatbs
End If
End Sub
'----------------------------------------
 Sub cpyDatbs()
On Error Resume Next
Dim OldFile As String, DBwithEXT, DBwithoutEXT, NewFile As String, CopyMyDB
OldFile = DBOld
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
Application.SetOption "Use Hijri Calendar", False
NewFile = DBNew & "\" & frmtName & ".mdb"
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile & """"
Shell CopyMyDB, 0
Me.Requery
Exit Sub
End Sub

 

 

 

 

نسخة احتياطية كل اسبوع.rar

  • Like 1
  • Thanks 1
رابط هذا التعليق
شارك

إلى الأستاذان أستاذ @Moosak والأستاذ @ابو خليل والله مبدعين وجزاكم الله خير على اتمام واثراء هذا الموضوع الحيوي الذي يحتاجة معظم المبرمجين . كما اني أشكر أستاذنا @ابو عبد الرحمن اشرف

على فتح هذا الموضوع واثرائه بأسئلته وحواره الموضوعي .............فشكراً جميعاً ويجعله الله في ميزان حسناتكم .:clapping:

  • Like 1
رابط هذا التعليق
شارك

7 ساعات مضت, ابوخليل said:

وهنا نستغني عن الجدول لتسجيل النسخة

شكرا لك أستاذنا @ابوخليل أبدعت 🙂 

من ضمن الفوائد التي كنت وضعت من أجلها روابط النسخ الاحتياطية في جدول هو سهولة العودة إليها في حال احتجنا لإعادة ربطها بقاعدة البيانات عندما تعطب القاعدة الأصلية مثلا ..

رابط هذا التعليق
شارك

8 ساعات مضت, Moosak said:

شكرا لك أستاذنا @ابوخليل أبدعت 🙂 

من ضمن الفوائد التي كنت وضعت من أجلها روابط النسخ الاحتياطية في جدول هو سهولة العودة إليها في حال احتجنا لإعادة ربطها بقاعدة البيانات عندما تعطب القاعدة الأصلية مثلا ..

جميل جدا استاذنا .. وحسب طريقتي اعتقد انه يمكننا اختيار القاعدة المناسبة من المجلد والارتباط بها 

  • Like 1
رابط هذا التعليق
شارك

5 ساعات مضت, ابوخليل said:

جميل جدا استاذنا .. وحسب طريقتي اعتقد انه يمكننا اختيار القاعدة المناسبة من المجلد والارتباط بها 

تتعدد الأساليب والهدف واحد 🙂👌🏻

رابط هذا التعليق
شارك

17 ساعات مضت, kkhalifa1960 said:

إلى الأستاذان أستاذ @Moosak والأستاذ @ابو خليل والله مبدعين وجزاكم الله خير على اتمام واثراء هذا الموضوع الحيوي الذي يحتاجة معظم المبرمجين . كما اني أشكر أستاذنا @ابو عبد الرحمن اشرف

على فتح هذا الموضوع واثرائه بأسئلته وحواره الموضوعي .............فشكراً جميعاً ويجعله الله في ميزان حسناتكم .:clapping:

الله الله انت اخي @kkhalifa1960  استاذنا ومعلمنا بارك الله فيكم جميعا انما انا تلميذ لكم جميعا 

وشكري وامتناني لاساتذتي @Moosak و @ابوخليل

 

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information