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

قاعدة بيانات ومجموعة تساؤلات؟

مغلقمُجاب
بدأه كوماندير في 30 أكتوبر 2013 · 11 رد · 950 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

قاعدة بيانات معمل حفظ وتسجيل نتائج مرضى

 

ياريت الاجابه على الاسئلة الرفقة؟

 

اولا القاعده ؟

MedicalLab2013.rar

 

المطلوب

هو ان لكل مريض طلب او اكثر

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

 

س 1 :كيف العمل عند زيارة المريض لنا في يوم مختلف ، علما انني وضعت تاريخ الطلب قيمة افتراضية بحيث لايكلفني البرنامج على ادخال التاريخ لكل طلب ؟ فالوقت ضيق وانا اعمل بمكان مزدحم ؟

#2

ارى ان هناك خللا في بنائي للنماذج فما هو الحل الامثل بنظركم ؟

 

هل مثلا نعمل النموذج الاساسي بيانات المريض وبداخله نموذج فرعي بيانات الطلب وبداخله نموذج فرعي تفاصيل الطلب ( التحاليل المطلوبة للمريض )؟

 

فما هي طريقة الوصول الامثل لمريض زارنا في تاريخ 1/اكتوبر وتكررت له زيارة بتاريخ 20 اكتوبر مثلا ؟

 

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

 

هل لديكم رؤية اخرى لبناء النماذج ، دلوني لو تكرمتم ؟

 

لو قمنا بدمج جدولي بيانات المريض والطلبات في جدول واحد ، هل هي طريقة صحيحه ؟ وكيف يمكنني اضافة طلب لمريض موجود من قبل ؟

 

جدول بيانات المريض كما يلي ؟

post-219801-0-94640100-1383162764_thumb.

 

 

جدول بيانات الطلب كما يلي :

 

post-219801-0-25527200-1383162918_thumb.

 

 

 

 

جدول تفاصيل الطلبات او نتائج فحوصات المريض :

post-219801-0-85562400-1383162992_thumb.

تم تعديل هذه المشاركة بواسطة كوماندير في 30 أكتوبر 2013 في 23:00

#3
اقتباس

 

هل مثلا نعمل النموذج الاساسي بيانات المريض وبداخله نموذج فرعي بيانات الطلب وبداخله نموذج فرعي تفاصيل الطلب ( التحاليل المطلوبة للمريض )؟

 

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

 

يتم عمل نموذج للمريض

ثم نموذج فرعى لعرض بيانات الطلب  (التاريخ و الوقت )

و نموذج فرعى اخر لعرض تفاصيل الطلب

 

اقتباس

 

فما هي طريقة الوصول الامثل لمريض زارنا في تاريخ 1/اكتوبر وتكررت له زيارة بتاريخ 20 اكتوبر مثلا ؟

 

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

و يمكنك البحث باسم المريض و التاريخ

 

اقتباس

لو قمنا بدمج جدولي بيانات المريض والطلبات في جدول واحد ، هل هي طريقة صحيحه ؟ وكيف يمكنني اضافة طلب لمريض موجود من قبل ؟

لا أعتقد ذلك

لانك ستضطر الى ادخال بيانات المريض فى كل طلب

 

 

بالتوفيق

1

مدونتى:-

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

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

#4

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

 

MedicalLab2013.rar

 

 

ولكن لي اسئله ارجو ان اجد لها طلبات

 

فمثلا عند ادخالي لبيانات المريض لا اريد ان اضطر للمرور على النموذج الفرعي بيانات الطلبات ولكن اريد الانتقال مباشرة الى النموذج الذي بداخله وهو نموذج الفحوصات المطلوبه لكل طلب ، فالطلبات اهم مافيها هو التاريخ والوقت وهي قيمه افتراضيه بتاريخ ووقت الجهاز والوقت لدي ضيق فلا اريد ان ادخلها لكل مريض وبالنسبة لل OrderID اريد ان يأخذ رقم تسلسلي تلقائي لكل طلب ؟

 

والصورة التاليه  اكثر ايضاحا :

post-219801-0-71702700-1383305848_thumb.

تم تعديل هذه المشاركة بواسطة كوماندير في 1 نوفمبر 2013 في 14:39

#6

هذه محاوله للتخلص من جدول بيانات المريض ودمجها بجدول الطلبات

 

ولكن سيتم تكرار كل مريض في كل زياره بطلب جديد

 

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

 

MedicalLab2013.rar

#7
Abo_Yossof كتب:

تفضل أخى جرب المرفق

 

مشكور اخي ابو يوسف وهذا حل اشكرك كثيرا عليه

 

لكن

 

لو اقترضنا ان هنالك مريضا له زياره في تاريخ 1 اكتوبر وتم تسجيله برقم مريض جديد وطلب جديد وتم تسجيل باقي بيناته

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

 

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

#8

اخي ابو يوسف للاسف الشديد فقد وجدت الخطاء التالي يظهر بنموذج الفرعي الخاص بالطلبات عندما يصل عدد الطلبات الى 10 طلبات

 

او OrderID  رقم 10 تظهر المشكلة التالية

post-219801-0-26270200-1383336629_thumb.

#9

أولا بالنسبة للخطأ

 

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

فقط استبدل كود زر الاضافة  بالكود التالى

Me.AllowAdditions = True
DoCmd.GoToRecord , , acNewRec
Me.OrderID = Nz(DMax("OrderID", "OrdersTbl"), 0) + 1
Me.AllowAdditions = False

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

فمن الممكن وضع كود او رقم ثابت لكل مريض

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

 

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

او وضع الاسماء فى كومبو و الاختيار منه

 

يمكنك ان توضح طبيعة العمل لكى نساعد فى ذلك

1

مدونتى:-

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

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

#10
Abo_Yossof كتب:

أولا بالنسبة للخطأ

 

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

فقط استبدل كود زر الاضافة  بالكود التالى

Me.AllowAdditions = True
DoCmd.GoToRecord , , acNewRec
Me.OrderID = Nz(DMax("OrderID", "OrdersTbl"), 0) + 1
Me.AllowAdditions = False

مشكور اخي ابو يوسف لكن المشكله لازالت ظاهرة

 

ياريت لو ترفق لنا مثالا

#11

الحمد لله اخي ابو يوسف اخير ا تم حل المشكله

 

مشكور جدا اخي بارك الله فيك

 

وهذا المرفق

 

Aboyossos_MedicalLab2013.rar

 

 

لكن لم افهم الغرض من عمل الحقل OrderID2  ترقيم تلقائي في جدول الـ Orders

 

post-219801-0-85303300-1383485663_thumb.

#12

ليس له اى دور يمكنك الغاءه ربما تمت اضافته خطأ

اعتقد انى اضفته ليكون مفتاح للجدول بلا من الاول

1

مدونتى:-

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

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

هذا الموضوع مغلق.

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