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

تجاوز السجلات المكررة

بدأه Cha3iR في 16 يناير 2012 · 10 رد · 432 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام الله عليكم جميعا

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

ومع تسجيل كل شخص يتكرر التاريخ لأن نفس الأشخاص حضروا في نفس التاريخ

لا مشكل في هذا حتى اللحظة لكن المشكل يظهر عند محاولة الانتقال الى التاريخ الموالي

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

لأن تاريخ اليوم مكرر 50 مرة ولهذا فكرت وتساءلت عن امكانية تجاوز السجلات المكررة

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

وشكرا

#2

السلام عليكم 

يفضل ان ترفق مثال حتى يمكن ان نتعاون على حل المشكلة

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

#3

كل ما أوده من هذا الموضوع الفكرة التي ممكن أن تحل من الاشكال

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

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

لو ممكن تقولي شو ممكن يكون الحل بعد ما قرأت الموضوع راح أكون ممنون لك كثير

كل ما أبتغيه مجرد التفكير في حل و إن شاء الله أعمل على التأكذ منه لا نشوف

أشكر لك مرورك أخي تحياتي

#4

اخي الفاضل

حسب ما فهمته من شرحكم الكريم ان البرنامج سيكون به نموذج رئيسي يتم به وضع التاريخ المطلوب سواء اليوم الحالي او اليوم القادم او اي تاريخ ويكون هذا النموذج مرتبط مع نموذج فرعي به اسماء الموظفين الذين حضروا في هذا اليوم وليكن 50 او 100 موظف

ولتجاوز ذلك التاريخ كل ما علينا فعله هو اننا نضع في النموذج الرئيسي الخاص بالتاريخ كود الإنتقال الى سجل جديد

DoCmd.GoToRecord , , acNewRec

post-15367-092612200 1326782194_thumb.gi

post-15367-058243700 1326782221_thumb.gi

za-Emp&Date.rar

بالتوفيق

المرفقات
D2.gifd3.gif
1
#5

ما شاء الله أختي زهرة

إن شاء الله ضمن ميزان حسناتك

فقط على حسب المثال لي عندي في الجدول حقل التاريخ وحقل اسماء الأشخاص معا

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

ومما سبق استفدت أن الأمور لازم تكون بهذا الشكل

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

#6

اخي الفاضل

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

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

واريدك ان تفكر قليلا :

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

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

DoCmd.GoToRecord , , acNewRec

بالتوفيق

#7

لا تأخديني أختي زهرة فأخوك ما يزال في أول تجاربه على الأكسس

ومن الأخطاء نتعلم فقط للمعلومة الشرط المطروح حاليا لم يكن ضمن المخطط لما شرعت في التصميم

فقط بعد مضي مدة واكتساب مهاراة واكتشاف نماذج أعطاني تصورا آخر مغاير لذلك التصور الذي بدأت به التصميم

الشيء الذي أفضى بنا الى هذا الموضوع اليوم :happy:

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

#8

أختي زهرة ماذا لو عندك علاقة كهذه التي في المرفق

كيف سيكون تصميمك للنموذج مع الحفاظ على الشرط ألا وهو المرور المباشر الى التاريخ الموالي ؟

za-Up-Emp&Date.rar

#9
Cha3iR كتب:

أختي زهرة ماذا لو عندك علاقة كهذه التي في المرفق

كيف سيكون تصميمك للنموذج مع الحفاظ على الشرط ألا وهو المرور المباشر الى التاريخ الموالي ؟

za-Up-Emp&Date.rar

اخي الفاضل

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

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

بالتوفيق

#10

أول ما قمت به بعد قراءة ردك هو أنني ضحكت على نفسي

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

#11
Cha3iR كتب:

أول ما قمت به بعد قراءة ردك هو أنني ضحكت على نفسي

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

بارك الله بك اخي الكريم

لا تحتاج الى قطع تأشيره الى كوكب الزهره

ولكن الذي تحتاجه هو البحث داخل منتدى الأكسيس عن انواع العلاقات

1. ( رأس برأس او واحد الى واحد )

2. ( رأس بأطراف او واحد الى متعدد )

3. ( اطراف بأطراف او متعدد الى متعدد )

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

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

بالتوفيق

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