تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
بطئ شديد في عملية الجمع من قاعدة البيانات
#1
السلام عليكم ورحمة الله وبركاته

دلي مشكلة في عمليات حسابية من قاعدة البيانات وإظهارها في تقرير كريستال ريبورت

المثال المرفق
في قاعدة الباينات عدد ما يقارب 19000 سجل

المثال يظهر انتاجية الموظفين خلال الشهر فقط قم بتحديد اداة التاريخ من يوم 1 6 2014
حسب البيانات المدخلة
ومن ثم الضغط على ازارا التقارير الشهري
المشكلة
يأخذ وقت كبير في عملية الجمع واظهارها في القريد
كيل لو كان لدينا عدد 50000 سجل او اكثر
من لديه الحل يفيدنا مشكورين

http://www.4shared.com/rar/vsFW1kMKba/SumDataMonth.html?
الرد }}}}
تم الشكر بواسطة:
#2
.....

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

لا تنس أن تضيف قاعدة البيانات التي لديك في مجلد debug

إقتراح أن تجعل المستخدم يختار الشهر ويبحث افتراضيا من بداية الشهر إلى نهايته بدلا من تاريخين

.....


الملفات المرفقة
.zip   SumDataMonth2.zip (الحجم : 47.05 ك ب / التحميلات : 24)
الرد }}}}
تم الشكر بواسطة: Sajad , aftfm
#3
بارك الله فيك وزادك علما

هناك خطأ عند الطباعة موضحة في الصورة رقم 1
و
هناك تكرار في يوم 1 آخر القريد كيف يتم حذفه والانتقال لليوم 1/7/2014
لان بيانات اليوم 1 ظهرت في يوم 1/6/2014 في بداية القريد وبالتالي سيكون تكرار في البيانات ومن ثم خطأ في الجمع
في آخر عمود

موضحة في الصورة رقم 2


الملفات المرفقة صورة/صور
       
الرد }}}}
تم الشكر بواسطة:
#4
.....

تحديث لجزء من الكود بخصوص الأيام الزائدة

في زر العرض Button1
كود :
' ترقيم أعمدة الجدول بأرقام الأيام من الشهر
For i = 1 To 31
    If DateTimePicker1.Value.Date.AddDays(i - 1).Month = DateTimePicker1.Value.Date.Month Then
        Me.DataGridView1.Columns(i).HeaderText = DateTimePicker1.Value.Date.AddDays(i - 1).Day
    Else
        Me.DataGridView1.Columns(i).HeaderText = ""
    End If
Next


في زر الطباعة Button2
كود :
' وضع القيم في البارامترات التي في التقرير
For i = 1 To 31
    If DateTimePicker1.Value.Date.AddDays(i - 1).Month = DateTimePicker1.Value.Date.Month Then
        cr1.SetParameterValue(i.ToString, DateTimePicker1.Value.Date.AddDays(i - 1).Day)
    Else
        cr1.SetParameterValue(i.ToString, "")
    End If
Next


أما خطأ الطباعة فلم يظهر عندي،
نسيت أن أذكر أنني قمت بتغيير أسماء البارامترات التي داخل تقرير كريستال ريبورت ليكون لها معنى يسهل التعامل معه
لربما أنك استخدمت تقريرك القديم وليس التقرير المعدل الذي أرفقته مع مثالي

......
الرد }}}}
تم الشكر بواسطة: aftfm
#5
صحيح استخدمت التقرير القديم

طيب لو حبيت استخدم الاستعلام عن طريق البحث ليس بين تارخين

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


الملفات المرفقة صورة/صور
   
الرد }}}}
تم الشكر بواسطة:
#6
(16-06-14, 05:36 PM)aftfm كتب : ...
...لو حبيت استخدم الاستعلام عن طريق البحث ليس بين تارخين ولكن عن طريق حقل فيه بيانات تاريخ ووقت آخر تعديل للسجل من قبل الموظف وليكن اسم الحقل LastDate فيتم البحث عن طريقة مع تحديد الايام من خلام اداة التاريخ DateTimePicker1
...

.....

مع أنني لم استوعب هذا لكن..

مشروعك مبني على أساس أيام شهر كامل والتقرير مصمم على هذا الأساس

لتنويع التقارير تحتاج عمل تصميم نافذة عرض وتقرير خاص لكل نوع على حدة

.....
الرد }}}}
تم الشكر بواسطة:
#7
نعم المشروع مبنى على اساس ايام الشهر

لكن جدلاً هل يمكن الجمع بدون تاريخ مثلا لدي الحقل المذكور
LastDate وفيه بيانات التاريخ والوقت

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

البحث بجزء من النص فيه أي نأخذ التاريخ

20140601
ممكن
الرد }}}}
تم الشكر بواسطة:
#8
(16-06-14, 05:54 PM)aftfm كتب : ...مثلا لدي الحقل المذكور LastDate وفيه بيانات التاريخ والوقت
مثل 201406011200

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

البحث بجزء من النص فيه أي نأخذ التاريخ
20140601
ممكن

.....

سيكون هناك اختلاف قد يكون بسيط لأنك استخدمت النص بدلا من التاريخ

مبدئياً سيكون البحث مثلا بطريقة (MID(LastDate,1,8 والرقم 8 عدد رموز (20140601) ولكن لماذا استخدمت النص
إذا كان الهدف إضافة الوقت فإن Date_Add يشمل الوقت أيضاً

عموماً لا شيء مستحيل طالما أن المطلب منطقي

.....
الرد }}}}
تم الشكر بواسطة:
#9
هل التغيير سيكون فقط في الـ Function
اي في جملة الاستعلام أم سيكون في بقية الكود
الرد }}}}
تم الشكر بواسطة:
#10
(16-06-14, 06:11 PM)aftfm كتب : هل التغيير سيكون فقط في الـ Function
اي في جملة الاستعلام أم سيكون في بقية الكود

.....

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

.....
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في تصميم قاعدة البيانات djelloul 1 18 منذ 2 ساعة مضت
آخر رد: محمد بن عطية
  بحث و إظهار صورة من قاعة البيانات علىPictureBox ahmed_elwerfalli 0 38 29-11-16, 01:34 AM
آخر رد: ahmed_elwerfalli
  [سؤال] كيفية اضافة عناصر عمود فى جدول من قاعدة بيانات فى جدول اخر hidn 1 166 04-11-16, 09:25 AM
آخر رد: thevirus
  [VB.NET] مثال على جلب ارقام من قاعدة البيانات وحفظها في مصفوفة بدر إشتية 4 351 02-11-16, 02:42 AM
آخر رد: Ahmad ahmed
  [سؤال] قراءة رابط من قاعدة بيانات في ادة التصفح شمس الدين 03 2 77 27-10-16, 10:43 PM
آخر رد: شمس الدين 03
  مساعدة في بناء قاعدة hglogtd 4 132 05-10-16, 03:48 PM
آخر رد: hglogtd
  استفسار حول طريقتي في قاعدة البيانات صبري زينوبي 0 76 29-09-16, 04:35 PM
آخر رد: صبري زينوبي
  ربط قاعدة بيانات اكسس بفجوال دوت نت 2015 كنونو 0 123 26-09-16, 01:35 PM
آخر رد: كنونو
  تسمية قاعدة البيانات قبل انشائها aiman 3 170 15-09-16, 09:12 PM
آخر رد: Abu Ehab
  [Acces2003] المساعدة في كود لحذف البيانات من الاستعلام محمد خلف زكي 2 140 28-08-16, 11:24 AM
آخر رد: محمد خلف زكي

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم