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

مشكلتان في التقرير

بدأه A&A في 2 أغسطس 2013 · 13 رد · 911 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخواني وخواتي الاعزاء في هذا المنتدى الرائع

ارجو التفضل بالاجابة على سؤالي وهو الاتي 

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

وجزاكم الله كل خير

 

 

post-54264-0-42431200-1375426619_thumb.j

post-54264-0-01301100-1375426627_thumb.j

n3.rar

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#2

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

الحل بسيط ان شاء الله

هنالك اثنان:

الاول: تفتح الاستعلام الذي هو مصدر التقرير بعرض التصميم وتعمل (تجميع حسب) من بالضغط على علامة الاجماليات في الشريط العلوي أو Totals

       يظهر عندك سطر جديد بالاستعلام هو Totals وفيه تحت جميع الاعمدة Group By 

      بعد ذلك تصنع عمود جديد سميه ماشئت مثلاً gg 

      وتكتب في خانة الحقل وهي الاولى gg:=g1+g2           هذا على سبيل المثال (لإني لا أعرف الاسماء التي تستخدمها) ولكن اردت المساعدة والتوضيح حتى ( لتدوخ بيهه)

     وتختار من خانة Totals أو الاجمالي كلمة Expression

     وتغلق الاستعلام مع حفظ التغيرات

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

للملاحظة : g1+g2 هي ممكن ان تكون اي علاقة (جمع أو طرح أو ضرب أو قسمة ) ويجب ان تكون g1 و g2  هي اعمدة من ضمن الاستعلام

           اما اذا اردت مجموع كلي لعمود g1 مثلاً تعمل عمود جديد g1  وتختار من خانة Totals كلمة sum 

           ثم تجعل العمود الجديد    gg=sumofg1 بدون فراغات وتختار ايضاً Expression من خانة Totals له 

        ويكون gg ايضاً مصدر النص الذي تريد في التقرير

هذه الطريقة الاسهل وان شاء الله سوف ترى النتيجة

وارجو ان اعرف النتيجة حتى اعرف انني افدتك

#3

السلام عليكم اخي العزيز 

اولا اشكرك على الاهتمام بالموضوع 

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

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

ثالثا المشكلة الاخرى وهي مشكلة عبارة (#خطا) التي تخرج اذا لم تكن بيانات موجودة ارجو حل هذه المشكلة ايضا

وجزاكم الله كل خير

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#4

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

ممكن تعمل استعلام من الاستعلام الاصلي والاستعلام الفرعي وتعمل المجاميع فيه ويكون مصدر التقرير

اما بالنسبة الى عبارة (#خطا) فتظهر عندما يكون في العلاقة عنصر ليس من ضمن المصدر (فأكيد انت ناسي شي )

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

 

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

 الذهاب الى code النص وفي حدث GotFocus تكتب النص = العلاقة التي تريد على ان يكون كل ما في العلاقة ضمن التقرير

 

وإن شاء الله احد هذين الحلين يفيدك

بالمناسبة لن اتركك حتى نحل المشكلة معاً

#5
dhiya hassan كتب:

ممكن تعمل استعلام من الاستعلام الاصلي والاستعلام الفرعي وتعمل المجاميع فيه ويكون مصدر التقرير

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

 

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

 الذهاب الى code النص وفي حدث GotFocus تكتب النص = العلاقة التي تريد على ان يكون كل ما في العلاقة ضمن التقرير

 

 

 

اخي بارك الله بك واشكرك 

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

واتمنى من حضرتك ان تحاول ان تعملها بنفسك على البرنامج 

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#6
dhiya hassan كتب:

اما بالنسبة الى عبارة (#خطا) فتظهر عندما يكون في العلاقة عنصر ليس من ضمن المصدر (فأكيد انت ناسي شي )

 

تظهر هذه العبارة بسبب عدم وجود بيانات احيانا في التقرير الفرعي وهو منطقي بعلاقات one -two - many ممكن ان يكون مادة لاتحتوي على مبيعات 

فارجو حل المشكلة 

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#7

رجاءا ممكن حل المشكلة

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#8

السلام عليكم

 

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

 

بالتوفيق

#9

اخي العزيز يوسف احمد

اولا تم استخدام دالة nz ولم تنجح العملية 

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

وشكرا

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#10

اخي العزيز A&A انظر الى هذا الحل

قم بتغيير مكان النصوص التي يظهر بها الخطأ الى header

كما في المرفق

 

n3.zip

#11

قم بتغيير مكان النصوص بأي header 

لإني قمت في وضعه في الاعلى للتوضيح

ولكي ترى ان الاخطاء في كل النصوص اختفت

فقط صحح العلاقات لكل صندوق نص

انا فقط اريد حل المشكلة

#12

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

 

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

=IIf(Child23.Report.HasData=True,Child23.Report!text0,0)

بحيث  child23  هو اسم التقرير الفرعي و text0  هو مربع النص بالتقرير نفسه و المراد جمعه ... 

تم تعديل هذه المشاركة بواسطة يوسف احمد في 8 أغسطس 2013 في 18:10

#13

السلام عليكم اخواني الاعزاء

وكل عام وانتم بالف خير 

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

قُل لَّوْ كَانَ الْبَحْرُ مِدَاداً لِّكَلِمَاتِ رَبِّي لَنَفِدَ الْبَحْرُ قَبْلَ أَن تَنفَدَ كَلِمَاتُ رَبِّي وَلَوْ جِئْنَا بِمِثْلِهِ مَدَداً

#14

اخي العزيز

 

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

 

ارجو ان يفيدك

 

Avoid Error#WhenNoDataInSumOfSubreports.rar

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