[[Template core/front/global/updateWarning is throwing an error. This theme may be out of date. Run the support tool in the AdminCP to restore the default theme.]]
لعل الكثير منا (و خاصة المطورين) نواجه مشاكل في تعديل التطبيقات الموجوده على الشبكه
ذالك لان عدد من المستخدمين قد يشغلون البرنامج و بالتالي لا يمكن المطور من الدخول و التعديل الا بعد خروج جميع المستخدمين.
في هذا الموضوع ساقوم بشرح طربقه سهله و بابسط ما يمكن لحل هذه المشكله باذن الله
الهدف:
هو اخراج كافه المستخدمين من التطبيق بعد فترة زمنيه محدده من دون الحاجه لدخولك كمطور.
خلاصة الطريقه:
قيام التطبيق بفحص وجود ملف خارج ال database كل فترة معينه و اغلاق التطبيق عند عدم وجود هذا الملف
الخطوات:
1- انشئ مجلدا في السواقه C و سميه My Data
2- انشئ ملفا نصيا فارغا و سميه open.txt
3- غير الاحقه من txt الى abc مثلا ليصبح اسم الملف open.abc
4- انشئ ملف اكسس و ضع فيه اي جدول و اي بيانات
5- انشئ نموذج لهذا الجدول و سميه frmName ثم اغلقه
الان نحتاج الى بعض التركيز
6- انشئ نموذجا جديدا غير مرتبط و سميه frmShutDownWarn و ضع فيه text box و سميه txtWarning
سيكون في هذا النموذج رسالة التنبيه للمستخدم بانه ستيم انهاء البرنامج لكي يتسنى له حفظ البيانات التي يعمل بها ثم اغلق النموذج
7- انشئ نموذجا جديدا غير مرتبط و سميه frmShutDownCheck سيكون هذا النموذج فارغا من اي شئ
مهمة هذا النموذج هو القيام بعميله فحص و التاكد من اسم الملف المذكور سابقا open.abc
8- ادخل على النموذج frmShutDownCheck بوضع التصميم
9- من خصائص النموذج ضع 60000 في خانة Timer Interval اي دقيقه واحده حيث كل 1000 Milisecond تساوي ثانيه و احده (يمكنك تغيير الوقت كما تريد)
10- انقر على زر View Code الموجدود ضمن مجموعه tools كما في الصوره .
11- ثم ادخل الكود التالي:
Dim boolCountDown As Boolean Dim intCountDownMinutes As Integer
Private Sub Form_Open(Cancel As Integer) ' Set Count Down variable to false ' on the initial opening of the form. boolCountDown = False End Sub
Private Sub Form_Timer() On Error GoTo Err_Form_Timer Dim strFileName As String strFileName = Dir("c:\My Data\open.abc") If boolCountDown = False Then ' Do nothing unless the check file is missing. If strFileName <> "open.abc" Then ' The check file is not found so ' set the count down variable to true and ' number of minutes until this session ' of Access will be shut down. boolCountDown = True intCountDownMinutes = 2 End If Else ' Count down variable is true so warn ' the user that the application will be shut down ' in X number of minutes. The number of minutes ' will be 1 less than the initial value of the ' intCountDownMinutes variable because the form timer ' event is set to fire every 60 seconds intCountDownMinutes = intCountDownMinutes - 1 DoCmd.OpenForm "frmShutDownWarn" Forms!frmShutDownWarn!txtWarning = "This application will be shut down in approximately " & intCountDownMinutes & " minute(s). Please save all work." If intCountDownMinutes < 1 Then ' Shut down Access if the countdown is zero, ' saving all work by default. Application.Quit acQuitSaveAll End If End If
Exit_Form_Timer: Exit Sub
Err_Form_Timer: Resume Next End Sub
سيقوم هذا الكود بفحص مسار و اسم الملف open.abc كل دقيقه, و في حال عدم وجود هذا الاسم في المسار C:\My Data\open.abc
سيقوم باظهار رسالة التنبيه للمستخدم و بعدها بدقيقه سيتم حفظ جميع البيانات و سيغلق البرنامج تلقائيا
ملاحظه هامه جدا:
لكي نضمن دوام عملية الفحص يجب ان يكون النموذج frmShutDownCheck مفتوحا و مخفيا طول فترة استخدام التطبيق لذلك نقوم بما يلي:
12- انشئ مايكرو لفتح النموذج frmName و frmShutDownCheck
13- عند خاصية Window Mode للنموذج frmShutDownCheck اجعلها Hidden كما في الصوره
14- اغلق المايكرو و سميه autoexec تماما .. لكي يقوم بفتح النموذجين تلقائيا عند فتح التطبيق, الان اغلق ملف الاكسس
لتجربة ما قمت به, عدل اسم ملف open.abc و اجعله اي شئ اخر او انقله الى سطح المكتب او اي مسار اخر و راقب ما سيحدث في ملف الاكسس
ملاحظه هامه:
اسم الملف open.abc يختلف عن Open.abc او OPEN.abc او open.txt و عند الاختلاف يقوم باجراءات اغلاق التطبيق
مميزات الطريقه السابقه عن غيرها من الطرق:
1- تمنح المستخدم بعضا من الوقت لانهاء و حفظ عمله قبل الاغلاق
2- سيتم اغلاق البرنامج حتى لو كان كومبيوتر المستخدم في وضع Work Station
3- لاداعي للمطور ان يدخل علىالتطبيق و يقوم بتغيير اي شيء للاخراج المستخدمين بل يكفي فقط تغير اسم او مسار الملف الذي في مثالنا open.abc
4- لا داعي ان يكون التطبيق مصمم على طريقة Client - Server
لتجربة المف المرفق:
قم بفك الضغط و ضع الملفين في المسار C:\My Data
اخيرا ارجو ان اكون موفقا في شرحي و اتمنى ان يكون هناك اي سؤال او اضافه او مشاركه في هذا الخصوص .. و لا نتسونا من صالح الدعاء لي و لكم
تم النشر منذ
بسم الله الرحمن الرحيم
لعل الكثير منا (و خاصة المطورين) نواجه مشاكل في تعديل التطبيقات الموجوده على الشبكه
ذالك لان عدد من المستخدمين قد يشغلون البرنامج و بالتالي لا يمكن المطور من الدخول و التعديل الا بعد خروج جميع المستخدمين.
في هذا الموضوع ساقوم بشرح طربقه سهله و بابسط ما يمكن لحل هذه المشكله باذن الله
الهدف:
هو اخراج كافه المستخدمين من التطبيق بعد فترة زمنيه محدده من دون الحاجه لدخولك كمطور.
خلاصة الطريقه:
قيام التطبيق بفحص وجود ملف خارج ال database كل فترة معينه و اغلاق التطبيق عند عدم وجود هذا الملف
الخطوات:
1- انشئ مجلدا في السواقه C و سميه My Data
2- انشئ ملفا نصيا فارغا و سميه open.txt
3- غير الاحقه من txt الى abc مثلا ليصبح اسم الملف open.abc
4- انشئ ملف اكسس و ضع فيه اي جدول و اي بيانات
5- انشئ نموذج لهذا الجدول و سميه frmName ثم اغلقه
الان نحتاج الى بعض التركيز
6- انشئ نموذجا جديدا غير مرتبط و سميه frmShutDownWarn و ضع فيه text box و سميه txtWarning
سيكون في هذا النموذج رسالة التنبيه للمستخدم بانه ستيم انهاء البرنامج لكي يتسنى له حفظ البيانات التي يعمل بها ثم اغلق النموذج
7- انشئ نموذجا جديدا غير مرتبط و سميه frmShutDownCheck سيكون هذا النموذج فارغا من اي شئ
مهمة هذا النموذج هو القيام بعميله فحص و التاكد من اسم الملف المذكور سابقا open.abc
8- ادخل على النموذج frmShutDownCheck بوضع التصميم
9- من خصائص النموذج ضع 60000 في خانة Timer Interval اي دقيقه واحده حيث كل 1000 Milisecond تساوي ثانيه و احده (يمكنك تغيير الوقت كما تريد)
10- انقر على زر View Code الموجدود ضمن مجموعه tools كما في الصوره .
11- ثم ادخل الكود التالي:
سيقوم هذا الكود بفحص مسار و اسم الملف open.abc كل دقيقه, و في حال عدم وجود هذا الاسم في المسار C:\My Data\open.abc
سيقوم باظهار رسالة التنبيه للمستخدم و بعدها بدقيقه سيتم حفظ جميع البيانات و سيغلق البرنامج تلقائيا
ملاحظه هامه جدا:
لكي نضمن دوام عملية الفحص يجب ان يكون النموذج frmShutDownCheck مفتوحا و مخفيا طول فترة استخدام التطبيق لذلك نقوم بما يلي:
12- انشئ مايكرو لفتح النموذج frmName و frmShutDownCheck
13- عند خاصية Window Mode للنموذج frmShutDownCheck اجعلها Hidden كما في الصوره
14- اغلق المايكرو و سميه autoexec تماما .. لكي يقوم بفتح النموذجين تلقائيا عند فتح التطبيق, الان اغلق ملف الاكسس
لتجربة ما قمت به, عدل اسم ملف open.abc و اجعله اي شئ اخر او انقله الى سطح المكتب او اي مسار اخر و راقب ما سيحدث في ملف الاكسس
ملاحظه هامه:
اسم الملف open.abc يختلف عن Open.abc او OPEN.abc او open.txt و عند الاختلاف يقوم باجراءات اغلاق التطبيق
مميزات الطريقه السابقه عن غيرها من الطرق:
1- تمنح المستخدم بعضا من الوقت لانهاء و حفظ عمله قبل الاغلاق
2- سيتم اغلاق البرنامج حتى لو كان كومبيوتر المستخدم في وضع Work Station
3- لاداعي للمطور ان يدخل علىالتطبيق و يقوم بتغيير اي شيء للاخراج المستخدمين بل يكفي فقط تغير اسم او مسار الملف الذي في مثالنا open.abc
4- لا داعي ان يكون التطبيق مصمم على طريقة Client - Server
لتجربة المف المرفق:
قم بفك الضغط و ضع الملفين في المسار C:\My Data
اخيرا ارجو ان اكون موفقا في شرحي و اتمنى ان يكون هناك اي سؤال او اضافه او مشاركه في هذا الخصوص .. و لا نتسونا من صالح الدعاء لي و لكم
الحمد لله الذي تتم بنعمه الامور
open.zip
شارك هذا الرد
رابط المشاركة
شارك الرد من خلال المواقع ادناه