تقييم الموضوع :
  • 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 ك ب / التحميلات : 62)
الرد }}}
تم الشكر بواسطة: 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
اي في جملة الاستعلام أم سيكون في بقية الكود

.....

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

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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 1,582 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,012 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,799 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,128 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,266 17-11-21, 10:09 AM
آخر رد: سعود
  استعلام يرجع اسماء الاعمدة و نوع البيانات في جدول معين بسام محمدغانم 0 964 23-10-21, 01:43 AM
آخر رد: بسام محمدغانم
  مشكلة ظهور بياانات حقلين في قاعدة بيانات على شكل علامة استفهام bassant 5 1,632 17-10-21, 02:07 PM
آخر رد: abubasilIraq
  تحويل multiline text الى single line في عمود في قاعدة بيانات sql server bassant 0 958 07-09-21, 04:36 PM
آخر رد: bassant
  الحفظ فى قاعدة البيانات اسلام الكبابى 10 2,352 06-09-21, 06:52 PM
آخر رد: اسلام الكبابى
  [Acces2010] عمل قاعدة بيانات لنظام غيابات الطلبة hassan karim 1 1,920 31-08-21, 04:47 AM
آخر رد: a7med saba

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


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