PDA

View Full Version : مشکل کندی ریپورت!



reham
جمعه 04 دی 1383, 11:13 صبح
من یه گزارش درست کردم با کریستال ریپورن تو دات نت.query رو تو برنامه میزنم بعد میریزم تو دیتاست بعد بایند میکنم به ریپورت و تو crystal report viewer نشون میدم.
مشکلم اینه که مثلا دیتا به 2000 تا میرسه ریپورت کند میشه.
میترسم به 4 یا 5000 تا برسه یه 5 دقیقه ای لود شدنش طول بکشه باید چی کار کنم.

Microsoft.net
جمعه 04 دی 1383, 21:46 عصر
خوب روشت اشتباست دیگه این کارو معمولا برنامه نویسای مبتدی انجام می دن شما اول گزارشتو با کریستال طراحی کن بعد کویری هاتو توی store procedure بنویس و ببر توی کریستال

sh
جمعه 04 دی 1383, 23:16 عصر
خوب روشت اشتباست دیگه این کارو معمولا برنامه نویسای مبتدی انجام

کی همچین چیزی رو به شما گفته ؟

این روش مزایای بسیار زیادی داره که از حوصله این بحث خارج هست ولی بهترین روش گزارش گیری در برنامه های نوشته شده با VB.NET یا C#.NET هست

reham
جمعه 04 دی 1383, 23:47 عصر
دعوا نکنین بابا بهم بگین با کندی 10 ثانیه ای چی کنم

از توجهتون ممنونم مهربونا :thnx: :thnx: :thnx:

Microsoft.net
شنبه 05 دی 1383, 22:49 عصر
رو چه مرجع معتبری می گی بهترین روش ... هست اسم مرجع و دلیلتو بگو تا بهت بگم کدوم روش بهتره

Microsoft.net
شنبه 05 دی 1383, 22:53 عصر
همیشه و همه جا Server Side programing در شبکه بار ترافیکی رو کاهش می داده و می ده اگه منظور اقای sh خاصیت Disconnected Ado.net هست باید بگم در این روش تاثیری نداره

reham
شنبه 05 دی 1383, 23:03 عصر
ای بابا جناب microsoft.net عزیز میشه بهم بگید باید چی کار کنم .

sh
شنبه 05 دی 1383, 23:41 عصر
یکی از مهترین مزایای این روش اینه که مسیر بانک اطلاعاتی شما اصلا مهم نیست
برای هر بار گزارش نیاز به خواندن اطلاعات از بانک نیست و میشه Dataset رو فیلتر کرد
و....



شما اول گزارشتو با کریستال طراحی کن بعد کویری هاتو توی store procedure بنویس و ببر توی کریستال

میشه یه توضیح بدین دقیقا شم چکار میکنین ؟

reham
یک شنبه 06 دی 1383, 23:29 عصر
"Dim myselectedquery As String = "select r from t
mycommand.CommandText = myselectedquery
mycommand.Connection = SqlConnection1
SqlConnection1.Open()
Dim myreader As System.Data.SqlClient.SqlDataReader
myreader = mycommand.ExecuteReader
While (myreader.Read()).................
بعدشم دیتا ست رو پر میکنم
بعد
dim rpt as new crystalreport1
rpt.SetDataSource(Dtsperformance1.detention)
CrystalReportViewer1.ReportSource = rpt


یه چیزی تو این مایه ها
کمک :thnx:

reham
یک شنبه 06 دی 1383, 23:32 عصر
من از command استفاده کردم

یه چیزی مثل این

"dim my query as string="select * from t1

بعد command رو تعریف کردم و command text اون به این بایند کردم بعد query رو اجرا کردم و نتیجه رو تو دیتا ست ریختم
بعدشم data source مربوط به ریپورت رو برابر dataset قرار دادم و با crystal report viewer نمایش میدم

حدود 15 تا 20 ثانیه برای گزارش 1000 تایی طول میکشه اونوقت تعداد بالا بره چه شود
میخوام ببینم اشکال از برنامه نویسی من نباشه یا اینکه راه من درسته یا نه

BEGIN
دوشنبه 07 دی 1383, 09:01 صبح
سلام شما چند جا سوالتون مطرح کردید :D

در قسمت کریستال ریپورت یک پاسخ دادم امیدوارم مفید باشه :wink:

Microsoft.net
دوشنبه 07 دی 1383, 23:49 عصر
بازم میگم امکان داره چون تک تک اطلاعات رو توی دیتاست می ریزی While...next whil یکم سرعت رو می گیره و دوما اینکه خود شرکت Crystal در مقالاتش recommend کرده که بهتره Server Side کار کنید

reham
سه شنبه 08 دی 1383, 20:46 عصر
از کمک همتون ممنونم .
جدال جان چند جا مطرح کردم یکی تو دات نت که شاید اشکال از برنامه نویسی دات نت من باشه و اساتید اینجا جواب بدن
و در کریستال که شاید مشکل در استفاده من از کریستال باشه
الانم تندی میرم جواب شما رو میخونم ممنون
:thnx: