View Full Version : چرا مدت لود شدن کریستال ریپورت طولانی است؟
elisa1362
یک شنبه 31 تیر 1386, 14:46 عصر
سلام . من یک سوال مهم دارم البته این سوال در یکی دیگه از تاپیک ها هم بود ولی کسی به اون پاسخ نداده بود بنابراین تصمیم گرفتم با یک عنوان تازه مطرحش کنم .
کریستال ریپورت های من خیییییییلی طول می کشه تا لود بشن . صفحه Report viewer وقتی از درون برنامه مثلا با فشردن یک کلید می خواد show بشه تقریبا یک دقیقه طول میکشه و اونم تازه خالی میاد و یک دقیقه بعدش تازه ریپورت درونش نمایان میشه . می خواستم بدونم که آیا این واقعا ضعف کریستال ریپورته و همه این مشکل رو دارن یا من در اتصال ریپورت به برنامم اشتباهی کردم ؟ در اکثر ریپورت هام تعداد جداولی که join میشوند از 4 تا تجاوز نمی کنه ، فکر نمی کنم این تعداد خیلی زیاد باشه و join اونها انقدر طول بکشه . خیلی ممنون از کمکتون
reza_rad
یک شنبه 31 تیر 1386, 14:55 عصر
در اکثر ریپورت هام تعداد جداولی که join میشوند از 4 تا تجاوز نمی کنه ، فکر نمی کنم این تعداد خیلی زیاد باشه و join اونها انقدر طول بکشه . خیلی ممنون از کمکتون
اول تست کنید ببینید نتیجه این کوئری های شما توی کوئری آنالایزر طی چه زمانی برمی گرده؟ شاید واقعا زمان کوئری ها زیاد باشه.
کیوان معینی
دوشنبه 01 مرداد 1386, 01:32 صبح
از Join در خود SQL استفاده می کنید یا از link های کریستال ؟
elisa1362
دوشنبه 01 مرداد 1386, 11:02 صبح
از توی خود کریستال ریپورت جداول رو لینک می کنم
کیوان معینی
سه شنبه 02 مرداد 1386, 00:27 صبح
متاسفانه سرعت کریستال توی این زمینه خیلی پایینه !! باید با دستورات SQL ، جداول تون رو باهم Join کنید .
elisa1362
سه شنبه 02 مرداد 1386, 10:16 صبح
میشه لطفا بیشتر توضیح بدید؟ مگه من می تونم توی کریستال ریپورت کوئری اس کیو ال بنویسم؟ این اجازه رو بهم نمیده که کوئری اس کیو الش رو حتی تغییر بدم. چی کار باید بکنم؟
sm
سه شنبه 02 مرداد 1386, 10:21 صبح
علاوه بر اینکه میتونین کوئری بنویسین میتونین از کوئریهایی که نوشتیم هم در قالب Stored Procedureیا View نیز استفاده کنین.
اگه از حالت ویزاد گزارش عمل کنین برای آشنایی خیلی خوبه
موفق باشید
کیوان معینی
چهارشنبه 03 مرداد 1386, 01:20 صبح
خلاصه اش به این نحوه دوست عزیز :
elisa1362
چهارشنبه 03 مرداد 1386, 16:33 عصر
خیلی خیلی از کمکتون متشکرم خیلی روش جالبی بود اما من روی یکی از ریپورتهام این روش رو امتحان کردم و select expert اون رو در قالب یک کوئری در یک کامند نوشتم و از فیلدهایی که ساخت در ریپورت استفاده کردم . ولی تاثیر چندانی در سرعتش نداشت . شما مطمئنید که این روش می تونه سرعتش رو خیلی بیشتر بکنه؟ چون من باید حدود 17 تا ریپورت رو تغییر بدم که این کار کلی زمانبره. از طرفی سرعت اجرای ریپورت ها خیلی کمه. بازم از همفکریتون متشکرم.
کیوان معینی
پنج شنبه 04 مرداد 1386, 01:04 صبح
خوب میتونید فعلا روی یکی از ریپورتهاتون این تغییر رو بدید و امتحانش کنید ،
دوست عزیز توجه کنید که تفاوت سرعت بارگزاری گزارش رو با تعداد رکوردهای بالا باید امتحان کرد .
sm
پنج شنبه 04 مرداد 1386, 07:29 صبح
یه نکته کلی:
شما باید کارهاتون رو به دو بخش تقسیم کنین:
1- کارهایی که ذاتا مربوط به بانک اطلاعاتی میشه
2- کارهایی که مربوط به کریستال هست.
بدین معنی که شما باید سعی کنین تا اونجایی که امکان داره عملیات مربوط به Select داده ها و عملیات روی آنها رو به بانک اطلاعاتی تون واگذار کنین بطور مثال شما دو فیلد نام و نام خانوادگی دارین میخواین اونها رو بهم بچسبونین و توی گزارش نشون بدین، این کار رو توی بانک اطلاعاتی انجام بدین نه کریستال چون بانک های اطلاعاتی کارشون اینه اما درسته که کریستال هم این کار رو برامون انجام میده اما مطمئناچون تخصصی این کار نیست زمان بیشتری رو میگیره.
البته نوع بانک اطلاعاتی و طراحی اون هم خیلی تاثیر گذاره.
ولی خوب یکسری از عملیاتها هم مختص کریستال هست مثل محاسبه مجموع ستونها.
موفق باشید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.