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

اول مشاركة ( التقارير)

مغلق
بدأه بوحسن في 29 سبتمبر 2001 · 11 رد · 813 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

#2

الى الاخ العزيز ابو حسن

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

اخوك العطار

#3

كما قال اخي العطار لاننا نحن هنا للفائده العامه ومنها الى الخاصه حاول تشرح المشكله وعموما هذا ايميلي

tamimi_a@yahoo.com

#4

مرحبا زأهلا بك أبو حسن فى هذا المنتدى الرائع

#5

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

اكتب المشكلة فربما تكون بسيطة وانت مكبرها .

ولك تحياتي

#6

المشكلة وهي بسيطة وانا منحرج منكم لاني مبتدى

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

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

وبس هذا كل شيء.

#8

الأخ بوحسن

إذا لم تنحل المشكلة بعد استفادتك من الرابطين فأرسل لي الملف على البريد :

H_H123@hotmail.com

ولك تحياتي

#9

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

#10

الأخ بوحسن

1- أخطأت في العلاقات بين جدولي الصفوف والأسماء في جعلت حقل الربط في الأول الصف وحقل الربط في الثاني الأسماء وهذا خطأ فلا علاقة بين الأسماء والصفوف وإنما العلاقة تكون بين الصف في الأول وصف الطالب في الثاني .

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

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

3- في التقرير جعلت مصدر التقرير جدول أسماء الطلاب st_name وهذا خطأ لأنك لا تريد عرض كافة البيانات الموجودة في الجدول ولكن تريد عرض بعضها ولديك الحل بطريقتين الأول وضع عبارة SQL لتكون مصدر للجدول والثاني عن طريق تطبيق التصفية على التقرير والأولى أضبط وأسهل .

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

سؤال لماذا جعلت اسم التقرير بهذا الشكل :

ChrW(1578) & ChrW(1602) & ChrW(1585) & ChrW(1610) & ChrW(1585) & ChrW(49)

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

ولك تحياتي

#11

اخي شكرا لك

لكني عندما شغلت الملف وفتحت النموذج ، عند تحديد فصل وصف يعطي التقري اسم الطالب واسم الفصل واسم الصف بدون اسماء للطلبة .

هذه العبارة غير مفهومه لدي .

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

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

ولك تحياتي.

#12

الأخ بوحسن

الغلط مني لم انتبه للمطلوب جيدا فعذرا .

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

أرسلت لك الملف بعد التعديل على بريدك .

وبالنسبة للعبارة التي ذكرتها أنا فأنت عندما تفتح التقرير تريد منه عملين الأول أن يظهر كل الفصول والثاني أن يظهر فصل واحد فقط ، إذا اخترت الجدول كمصدر بيانات مباشرة للتقرير فالنتيجة كل البيانات الموجودة في الجدول سوف تظهر في التقرير صح وإلا لا ، ونحن لا نريد كل البيانات دائما بل نريد كل البيانات مرة ونريد مرة أخرى بيانات فصل واحد (ارجو أن تكون هذه المسألة قد وضحت لأن الحل مبني عليها) من طرق الحل :

1- استخدام عبارة SQL

2- إنشاء استعلام وحفظه في القاعدة وجعله مصدر للتقرير

3- تطبيق تصفية على التقرير

وأنت بالخيار في هذه الطرق فالأولى وهي استخدام عبارة SQL هي التي استخدمتها أنا انظر إلى العبارة :

SELECT [st_name].[الاسم], [st_name].[الصف], [st_name].[الفصل] FROM st_name WHERE ((([st_name].[الصف]) Like [forms]![aa]![A] & "*") And (([st_name].[الفصل]) Like [forms]![aa]! & "*"));

تجد فيها عبارتين تفحص القائمتين الموجودتين على النموذج لإظهار قيم محددة وهي عبارة :

Like [forms]![aa]![A] & "*"

وعبارة

Like [forms]![aa]! & "*"

العبارة تقولان بلغة الكلام انظر إلى الحقل المسمى A والحقل المسمى B والموجودان على النموذج المفتوح المسمى aa هل فيهما قيم وإلا أظهر كل بيانات المصدر وهي هنا البيانات الموجودة في جدول st_name .

كلمة Like مع * في آخر العبارة هي التي تجعل البيانات تظهر كلها أو بعضها حسب الموجود في القائمة إذا مسحتهما وجعلتهما بهذا الشكل :

[forms]![aa]![A]

[forms]![aa]![b

فعندها لن تظهر بيانات إلا إذا كانت القائمتين غير خاليتين .

الطريقة الثانية : افتح استعلام جديد واختر عرض SQL وألصق فيه عبارة SQL السابقة واجعله مصدر للنموذج .

الطريقة الثالثة : تطبق بعد فتح الاستعلام ويصح هنا أن تضع الجدول st_name كمصدر للتقرير ، ولتطبيق تصفيه على تقرير فقد جعلت السطرين التاليين في حدث بعد التحديث لقائمة الفصل :

Reports![تقرير لتطبيق التصفية].Filter = "st_name.الفصل=" & "'" & Me! & "'"

Reports![تقرير لتطبيق التصفية].FilterOn = True

ولإلغاء التصفية جعلت السطر التالي في حدث عند النقر المزدوج لقائمة الفصل :

Reports![تقرير لتطبيق التصفية].FilterOn = False

ولك تحياتي

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

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