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

الاكسيس يضل يعمل في الخلفية


bumb

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

السلام عليكم

 

لاحظت ان الاكسيس يضل يعمل في الخلفية بعد اغلاقه وكنت اضن ان اي قاعدة بيانات تحوي اكواد من شأنها ان تجعل الاكسيس يعمل في الخلفية ولكني اكتشفت ان الامر لا يحدث الا في القاعدة التي انا بصددها على الرغم من الاكواد في القاعدة التي اعمل عليها ما هي الا اكواد عادية وليست معقدة

 

هل هذا الامر قد مر عليكم وان كان كذلك فما هو الحل

 

تحياتي لكم

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

ماهو أمر الإغلاق الذي تستخدمه ؟؟

لإنهاء قاعدة البيانات بالكامل استخدم التالي

DoCmd.Quit

 

او استخدم الكود التالي

Dim DB As Object
dbPath = CurrentProject.FullName
Set DB = GetObject(dbPath)
DB.Application.Quit

 

تم تعديل بواسطه د.كاف يار
  • Like 1
رابط هذا التعليق
شارك

46 دقائق مضت, د.كاف يار said:

ماهو أمر الإغلاق الذي تستخدمه ؟؟

لإنهاء قاعدة البيانات بالكامل استخدم التالي

DoCmd.Quit

 

او استخدم الكود التالي

Dim DB As Object
dbPath = CurrentProject.FullName
Set DB = GetObject(dbPath)
DB.Application.Quit

 

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

تم تعديل بواسطه bumb
رابط هذا التعليق
شارك

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

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

كلها تؤدي الى نتيجة واحدة تقوم بإغلاق و انهاء قاعدة البيانات

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

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

3 ساعات مضت, د.كاف يار said:

كلها تؤدي الى نتيجة واحدة تقوم بإغلاق و انهاء قاعدة البيانات

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

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

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

6 دقائق مضت, bumb said:

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

انسخ و الصقها مثل ماهي بدون تغيير 

Dim DB As Object
dbPath = CurrentProject.FullName
Set DB = GetObject(dbPath)
DB.Application.Quit

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

dbPath = CurrentProject.FullName

 

تفضل هذا المثال

 

Database2.mdb

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

22 دقائق مضت, bumb said:

ابي اعرف المتغير dbPath اخليه As ايش

ما يحتاج و لو حبيت تعلن عنه في النهاية هو String

منذ ساعه, د.كاف يار said:

انسخ و الصقها مثل ماهي بدون تغيير 

Dim DB As Object
dbPath = CurrentProject.FullName
Set DB = GetObject(dbPath)
DB.Application.Quit

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

dbPath = CurrentProject.FullName

 

تفضل هذا المثال

 

Database2.mdb 352 kB · 1 download

القي نظرة على المثال المرفق

هذاDatabase2.mdb

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

2 ساعات مضت, د.كاف يار said:

ما يحتاج و لو حبيت تعلن عنه في النهاية هو String

القي نظرة على المثال المرفق

هذاDatabase2.mdb

لم يفلح الامر بقي الاكسيس في الخلفية يعمل ولم يتم اغلاقه

يبدو لي ان القاعدة التي فيها الجداول لا تزال مفتوحة هل من كود يقول بإغلاق القاعدة المنفصلة اذا كانت تعمل

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

1 ساعه مضت, bumb said:

لم يفلح الامر بقي الاكسيس في الخلفية يعمل ولم يتم اغلاقه

يبدو لي ان القاعدة التي فيها الجداول لا تزال مفتوحة هل من كود يقول بإغلاق القاعدة المنفصلة اذا كانت تعمل

استخدم الكود التالي و هو نفسه السابق مع تعديلات بسيطه

تختار قاعدة البيانات المطلوب اغلاقها

Dim DB As Object
Dim Addfile As Object
Set Addfile = Application.FileDialog(3)
With Addfile
  .AllowMultiSelect = False
  .InitialFileName = ""
  .Filters.Clear
  .Filters.Add "Access From 2007", "*.accdb"
  .Filters.Add "Access From 2002 T0 2003", "*.mdb"
  If .Show = True Then
        Set DB = GetObject(Trim(.SelectedItems(1)))
        DB.Application.Quit
      Else
      Exit Sub
  End If
End With

 

و بما ان مسار قاعدة البيانات محدد فأنصحك ان تستخدم التالي

Dim DB As Object
    Set DB = GetObject("ضع مسار قاعدة البيانات هنا فقط")
    DB.Application.Quit

 

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

CurrentProject.Path

اذا لم ينج معك الأمر ارفق نسخة من برنامجك

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

On 8/1/2021 at 6:15 PM, bumb said:

السلام عليكم

 

لاحظت ان الاكسيس يضل يعمل في الخلفية بعد اغلاقه وكنت اضن ان اي قاعدة بيانات تحوي اكواد من شأنها ان تجعل الاكسيس يعمل في الخلفية ولكني اكتشفت ان الامر لا يحدث الا في القاعدة التي انا بصددها على الرغم من الاكواد في القاعدة التي اعمل عليها ما هي الا اكواد عادية وليست معقدة

 

هل هذا الامر قد مر عليكم وان كان كذلك فما هو الحل

 

تحياتي لكم

انتبه للكائنات في الاكواد .. اقصد

Set rs = Nothing

Set db = Nothing

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

في ٣‏/٨‏/٢٠٢١ at 19:36, Eng.Qassim said:

انتبه للكائنات في الاكواد .. اقصد

 

Set rs = Nothing

 

Set db = Nothing

 

كيف اضع الكود هل اضعه في زر الاغلاق

في ٢‏/٨‏/٢٠٢١ at 12:36, د.كاف يار said:

استخدم الكود التالي و هو نفسه السابق مع تعديلات بسيطه

تختار قاعدة البيانات المطلوب اغلاقها

Dim DB As Object
Dim Addfile As Object
Set Addfile = Application.FileDialog(3)
With Addfile
  .AllowMultiSelect = False
  .InitialFileName = ""
  .Filters.Clear
  .Filters.Add "Access From 2007", "*.accdb"
  .Filters.Add "Access From 2002 T0 2003", "*.mdb"
  If .Show = True Then
        Set DB = GetObject(Trim(.SelectedItems(1)))
        DB.Application.Quit
      Else
      Exit Sub
  End If
End With

 

و بما ان مسار قاعدة البيانات محدد فأنصحك ان تستخدم التالي

Dim DB As Object
    Set DB = GetObject("ضع مسار قاعدة البيانات هنا فقط")
    DB.Application.Quit

 

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

CurrentProject.Path

اذا لم ينج معك الأمر ارفق نسخة من برنامجك

ممكن تضع الكود كاملاً في زر اغلاق حتى افهمه 

اكتب الكود فقط ولا ترفع مثال

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

10 hours ago, bumb said:

كيف اضع الكود هل اضعه في زر الاغلاق

ممكن تضع الكود كاملاً في زر اغلاق حتى افهمه 

اكتب الكود فقط ولا ترفع مثال

اخي العزيز انا قصدت الاكواد لديك اذا كان فيها سجلات مفتوحة يجب اغلاقها في نهاية الكود .. وليس هذا هو السبب الوحيد فربما لديك مربع نص في النموذج الذي تعمل عليه مرتبط بنموذج اخر مفتوح وهذا يؤدي الى بقاء القاعدة تشتغل .. بصراحة قرات عن هذا الموضوع واسبابه كثيرة  .. وارفاقك للقاعدة ربما يهتدي احد اساتذتنا للحل

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

16 ساعات مضت, bumb said:

كيف اضع الكود هل اضعه في زر الاغلاق

ممكن تضع الكود كاملاً في زر اغلاق حتى افهمه 

اكتب الكود فقط ولا ترفع مثال

هذا هو الكود كامل

Dim DB As Object
    Set DB = GetObject("ضع مسار قاعدة البيانات هنا فقط")
    DB.Application.Quit

الواضح انك تجد صعوبة في اختيار مسار القاعدة

أو استخدم نفس الكود وصور رسالة الخطأ الي تظهر امامك

مع العلم مسار قاعدة البيانات هي قاعدة البيانات الخلفية المفصولة عن الواجهة ضع الكود في ازرار انهاء البرنامج بحيث تضمن اغلاق الواجهات قاعدة البيانات البعيدة

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

9 ساعات مضت, د.كاف يار said:

هذا هو الكود كامل

Dim DB As Object
    Set DB = GetObject("ضع مسار قاعدة البيانات هنا فقط")
    DB.Application.Quit

الواضح انك تجد صعوبة في اختيار مسار القاعدة

أو استخدم نفس الكود وصور رسالة الخطأ الي تظهر امامك

مع العلم مسار قاعدة البيانات هي قاعدة البيانات الخلفية المفصولة عن الواجهة ضع الكود في ازرار انهاء البرنامج بحيث تضمن اغلاق الواجهات قاعدة البيانات البعيدة

وضعت المسار في الكود واللي حصل ان الكود قام بفتح قاعدة البيانات 

لا بد من حل

اما من حيث رفع قاعدة البيانات فهذا صعب لأنها تحتوي على بيانات

لكن رح افرغ القاعدة من البيانات وأحاول رفعها

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

هذي ما هي دلالة على ان نفس قاعدة البيانات هي التي تعمل

قد تكون فيه عمليات معلقة في سجل الأحداث سواء Temp h او غيره و بالتالي ستجد الحدث نشط

لكن قاعدة البيانات تكون مغلقة

لذا بإمكان انك تستخدم حدث افراغ الكاش

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

43 دقائق مضت, د.كاف يار said:

هذي ما هي دلالة على ان نفس قاعدة البيانات هي التي تعمل

قد تكون فيه عمليات معلقة في سجل الأحداث سواء Temp h او غيره و بالتالي ستجد الحدث نشط

لكن قاعدة البيانات تكون مغلقة

لذا بإمكان انك تستخدم حدث افراغ الكاش

ممكن توضيح اكثر مع ذكر الطريقة 

تحياتي لك

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

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