الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

فتح نموذج مغلق من خلال توقيت الساعة

بدأه بلالي في 31 يوليو 2010 · 8 رد · 1,619 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم احبائي..

عندي نموذج مغلق

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

المطلوب :

اريد توقيت الساعة مثلا 06:15:33 am وعند هذا التوقيت يفتح النموذج .

تحياتي..

#2

يا اخوان يا اخوات هذا البرنامج جدا ضروري لاستخدامه في مقر عملنا

فهل من اجابة بارك الله فيكم

تحياتي...

#3

وعليكم السلام ورحمة الله...

هل هناك أي نموذج في البرنامج سيكون مفتوحاً طوال الوقت (لكي نفح النموذج المحدد منه) أم أنك تريد أن يفتح النموذج المحدد حتى لو لم تكن هناك نماذج أخرى مفتوحة؟

#4

ضع هذا الكود فى النموذج الرئيسى ( المفتوح )

Private Sub Form_Load()
Form.TimerInterval = 1000  
End Sub

Private Sub Form_Timer()
If Time() = #6:15:33 AM# Then
DoCmd.OpenForm "Form2"
End If
End Sub

حيث form2 هو النموذج المراد فتحه

كما تفضل استاذنا احمد مبارك

الكود لو كان هناك نموذج مفتوح

اما اذا لم يكن هناك نموذج ( القاعدة مغلقة )

1. Open Control Panel

2. Look for Scheduled Tasks and double click it.

3. Click Add Scheduled Task then follow the wizard

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#5

شكرا لكم اخواني

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

تحياتي...

#6
اقتباس

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

بالطبع لن يفتح النموذج أخي الكريم، ولذلك سألتك سؤالي الأول أعلاه، ولكنك لم تجب عنه...

الحكاية أن الذي تفضل به أخي mrnoo2000 أعلاه لن يعمل إلا إذا كان النموذج مفتوحاً، وهذا يعني أنه ينبغي وجود نموذج آخر مفتوح غير النموذج المقصود بالأساس. أنت على الأرجح قد وضعت الكود في النموذج المقصود ثم أقفلت النموذج، فمن الطبيعي ألا يعمل الكود. هذا أولاً...

ثانياً:

اقتباس

اما اذا لم يكن هناك نموذج ( القاعدة مغلقة )

1. Open Control Panel

2. Look for Scheduled Tasks and double click it.

3. Click Add Scheduled Task then follow the wizard

فهذا يصلح كما هو واضح من أجل فتح قاعدة بيانات مغلقة (وإعداد نموذج محدد كنوذج البدء)، لكنه لا يصلح في مثل الحالة التي وصفتها: أن تكون قاعدة البيانات مفتوحة أصلاً، لكن النموذج المقصود مغلق.

ثالثاً: من أجل الحالة العامة، وهي أن تكون قاعدة البيانات مفتوحة، لكن النموذج المقصود مغلق، وبغض النظر عن وجود نماذج أخرى مفتوحة، يمكنك استخدام مؤقت دالة API يبدأ عند فتح قاعدة البيانات، وتستطيع إغلاقه وقتما تشاء. في المثال المرفق، وهو مقتبس من هذا الموضوع:

How To Create a Timer Event Using the Windows API Functions

قم بإعداد الوقت المطلوب من الكود في الوحدة النمطية modTimer ، ثم أغلق قاعدة البيانات وافتحها من جديد (كأنك تفعل ذلك في الصباح أو بداية الدوام)، ومن المفترض أن يفتح النموذج frmTest عند التوقيت المحدد، عند قفل النموذج، يغلق معه المؤقت من أجل الحفاظ على موارد الجهاز. وهكذا كلما اردت التجربة عدّل التوقيت، وأغلق القاعدة ثم افتحها وانتظر...

جرب المثال، وأخبرنا بالنتيجة...

والله أعلم.

Timer.rar

#7

شكرا من القلب والف تحية

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

تحياتي مرة اخرى

#8

أخي الكريم،

اقتباس
لقد عملت الطريقة ودخلت الكود اي توقيت الساعة ثم غلقت النموذج
اقتباس
طبقت نفس البرنامج ووضعت التوقيت واغلقت القاعدة

أرجو الإجابة عن هذا السؤال لأنه الذي يحدد نوع الإجابة:

هل تريد (فتح قاعدة مغلقة)، أي أن الأكسس مغلق بالأساس، أم تريد (فتح نموذج) أي أن الأكسس مفتوح، ولكن النموذج Form المقصود مغلق؟

الحالات الممكنة:

1. الأكسس مغلق أساساً. هنا تحتاج إلى أن تحدد النموذج المقصود من نافذة بدء التشغيل

Tools -> Startup -> Display Form/Page

أدوات -> بدء التشغيل -> عرض النموذجظالصفحة (أو شيء من هذا القبيل في النسخة العربية)

ثم اتبع الخطوات المذكورة من قبل:

اقتباس

اما اذا لم يكن هناك نموذج ( القاعدة مغلقة )

1. Open Control Panel

2. Look for Scheduled Tasks and double click it.

3. Click Add Scheduled Task then follow the wizard

2. الأكسس مفتوح، وبرنامجك مفتوح داخل الأكسس، لكن ليس هناك نموذج مفتوح دوماً. هنا تستطيع أن تستخدم المثال الذي أرفقته في المشاركة السابقة. عند تجربة المثال، ينبغي أن تحدد الوقت، وتغلق القاعدة، ثم تفتحها من جديد (ولا تفتح النموذج المقصود)، كأنك تفتح البرنامج في بداية الدوام، ثم تنتظر أن يفتح النموذج المحدد (لأن البرنامج يحوي عدة نماذج بجانب الجداول والاستعلامات ... إلخ).

3. الأكسس مفتوح، وبرنامجك مفتوح داخل الأكسس، وهناك نموذج في البرنامج مفتوح دائماً. هنا تستطيع أن تستخدم مؤقت هذا النموذج المفتوح من أجل فتح النموذج الآخر المقصود. يتم ذلك من خلال كود مثل الموجود أعلاه في المشاركة رقم 4:

Private Sub Form_Load()
Form.TimerInterval = 1000  
End Sub


Private Sub Form_Timer()
If Time() = #6:15:33 AM# Then
DoCmd.OpenForm "Form2"
End If
End Sub

وهكذا: أجب عن السؤال، وحدد المطلوب، ثم خذ ما يناسبك...

والله أعلم.

#9

شكرا جزيلا لكم جميعا

وبالتوفيق والنجاح إن شاء الله

تحياتي...

مواضيع مشابهة