# Native Code > برنامه نویسی در Delphi > ابزارهای گزارش سازی در دلفی >  مراحل كمرشكن پخت يك  Quickreport

## mohammady2

سلام .
اصلا اساتيد تعجب نكنند .اين سوال خيلي مبتديانه است . من بيشتر سيشارپ كار ميكنم تابا دلفي عزيز
ببينيد اينكاررارو انجام ميدم اما  quckreport بهم خروجي نميده 
بانكم  sql  هست
1. يه عدد  quickreport  مياريم رو صفحه 
2.يك عدد datasource
3. يك  عدد هم  Adoquery
4. حالااز  adoqoury  شروع ميكنيم . خاصيت كانكشن استرينگاشون رو تنظيم . يه خط كد select  هم توي  sqlstring  مينويسيم .
بعد هم active  رو true  ميكنيم .
5.حالا خاصيت dataset  مربوط به  datasource  روست ميكنيم 
6.حالا جناب  quickrep رو هم ست ميكنيم با adoquery1
7.يه ليوان آب ميخوريم . عرق روي پيشونيمون رو خشك ميكنيم
8.حالا براي نمايش اطلاعات يك عدد qrdxtext  روي صفحه ميآوريم 
9.خاصيت datset و  datafield  ايشون رو هم ست ميكنيم
10.حالا خروجي رو ميبينيم 
11....
همه چي بينتيجه شد . هيچي براي ديدن نداريم .

ضمنا براي تمام شدن حجت تمام عمليات انجام شده رو در حالي تكرار كردم كه روي qr يك عددqrband گذاشتم بعد qrdbtext رو روي اون .خاصيت باند رو هم  به  rbdetail تنظيم كردم
باز هم همون نتيجه...
.

----------


## mafazel

خسته نباشید...
ببینم اگر مثلا فاصله تهران تا شیراز 1000 کیلومتر باشه، شما خواستید برید شیراز تخت گاز هزار کیلومتر میرید بعد از یکی می پرسید «ببخشید اینجا شیرازه؟» .
تا اینجا چند تا Check Point باید داشته باشید...

----------


## mohammady2

> خسته نباشید...
> ببینم اگر مثلا فاصله تهران تا شیراز 1000 کیلومتر باشه، شما خواستید برید شیراز تخت گاز هزار کیلومتر میرید بعد از یکی می پرسید «ببخشید اینجا شیرازه؟» .
> تا اینجا چند تا Check Point باید داشته باشید...


شما لطف كنيد همون سر دروازه قران هم به ما بگيد اشتباه نرفتيم خوبه.
اگه اينارو نگم ميگين برو فلان كن و بهمان كن
خوب عزيز دلم گفتم تا ديگه تكرار مكررات نشه .
اصلا مسئله اونقدر بغرنج نيست نميدونم چرا گير افتادم 
تا دلتون بخواد هم كلمه quickreport  رو به اشكال مختلف سرچيدم .نبود كه نبود
......... 
 .

----------


## vcldeveloper

من از QuickReport استفاده نمی کنم، ولی چرا شما باند را بصورت Detail تنظیم کردید؟! قاعداتا وقتی باندی Detail هست، باید براش یک باند Master هم وجود داشته باشه. شما باند Master دارید که باند جدید را بصورت Detail تعریف کردید؟

----------


## mohammady2

> من از QuickReport استفاده نمی کنم، ولی چرا شما باند را بصورت Detail تنظیم کردید؟! قاعداتا وقتی باندی Detail هست، باید براش یک باند Master هم وجود داشته باشه. شما باند Master دارید که باند جدید را بصورت Detail تعریف کردید؟


دليل اينكارم پست دوستان در اين صفحه است  

http://www.barnamenevis.org/sh...ht=quickreport

در صورتي كه نمونه اي از اين برنامه داريد ممنون ميشم .

----------


## vcldeveloper

> دليل اينكارم پست دوستان در اين صفحه است


درسته، ظاهرا QuickReport برخلاف FastReport باند Master نداره، و بجای آن از Detail استفاده میکنه، و بجای Detail در FastReport، در QuickReport از SubDetail استفاده میشه.

----------


## mohammady2

> درسته، ظاهرا QuickReport برخلاف FastReport باند Master نداره، و بجای آن از Detail استفاده میکنه، و بجای Detail در FastReport، در QuickReport از SubDetail استفاده میشه.


وقتي كسي كه  quickreport  كار نكرده حداقل نظرشو براي تبادل اينجا ميذاره  آدم از اين اجتماع برنامه نويس نااميد ميشه . 
اينم از پيامد هاي بخشبندي تالار دلفيه .بايد تحمل كرد .
متشكرم جناب كشاورز .اين master  و detail  هم خودش نكته اي بود .
ضمنا  امضا تون و هماهنگي آواتار تون باهاش خيلي  لذت بخشه .

----------


## vcldeveloper

> اينم از پيامد هاي بخشبندي تالار دلفيه .بايد تحمل كرد .


بخش ابزارهای گزارش سازی دلفی از جمله بخش هایی هست که از مدت ها قبل وجود داشته، و در طرح جدید تغییر ساختار ایجاد نشده. پس نمیشه گفت این مسئله ربط چندانی به تغییر ساختار جدید داره. شاید مسئله بیشتر به این واقعیت برگرده که این روزها کمتر برنامه نویسان دلفی سراغ ابزاری مثل کوئیک ریپورت میرند. من خودم به شخصه تاپیک های کوئیک ریپورت را فقط برای بررسی اینکه قوانین سایت در آنها نقض نشده باشه مرور می کنم، و گرنه سر و کاری با کوئیک ریپورت ندارم، و فست ریپورت تمام نیازهای من در این زمینه را به شکل عالی برطرف میکنه.

----------


## mafazel

> شما لطف كنيد همون سر دروازه قران هم به ما بگيد اشتباه نرفتيم خوبه.


دِ نشد که! دروازه قرآن شد همون شیراز. قرار اول قم، قرار دوم اصفهان :بوس: ، قرار سوم ایزدخواست، قرار چهارم دروازه قرآن :قلب: .
البته شوخی می کنم. اینکه شما دقیقا مراحلی که رفتید رو توضیح دادید خوبه.

Check Point 1: خیلی معذرت میخوام، روم به دیوار، توی جدولتون اطلاعات دارید و اونا رو توی DBGrid میتونید ببینید؟(برای اطمینان از صحت برقراری ارتباط با بانک)
Check Point 2: ابزار QuickRep1 یک مشخصه بنام Bands داره گزینه HasDetail اونو True کنید. یه باند Detail بهتون میده.
Check Point 3: اول یک QRLabel روی باند دیتیل بذارید و QuickRep1.Preview کنید ببینید همون Label رو میتونید ببینید؟
Check Point 4: خود QuickRep1 یک مشخصه بنام  DataSet داره که اونو روی ADOQuery تنظیم کنید. حالا یک QRDBLabel روی Detail بذارید و مشخصه های DataSet و DataField اونو تنظیم کنید و برنامه رو اجرا کنید.
حالا دیگه قاعدتا باید طرافای دروازه قرآن باشید. اگه نیستید بگید تا مشکل رو پیدا کنیم.

----------


## mohammady2

سلام .

1. خواهش ميكنم و خوب وقتي واسه يه مثقال  quick report  آدم به اين روز بيافته بايدم به قول شما نمايش اطلاعات تو ديتا گريد و چك كرد . ...خوب اين كه درست نشون ميده .
2.hasdetailes  هم درست .
3.اين  QuickRep1.Preview چيه ؟
4 . qrdblable  نداريم  qrdbtext  گذاشتم 

5. نه من هيچي نميبينم . كور شدم.. اينجا بيابونه نكنه كويره ..

----------


## mafazel

1- Ok!
2- Ok!
3- این دستور پیش نمایش چاپ رو نشون میده. اگر در زمان طراحی میخواهید پیش نمایش رو ببینید باید یه گوشه خود QuickRep1 کلیک راست کنید و از منو گزینه Preview را انخاب کنید در این حالت اگر جدولتون باز باشه و تنظیمات برقرار باشه پیش نمایش نشون داده میشه. اگر در زمان اجرا میخواهید پیش نمایش رو نشون بدید یک دکمه بذارید و توی زدن اون دکمه از دستور QuickRep1.Preview یا QuickRep1.PreviewModal استفاده کنید.
4- حق با شماست.
5- نخیر ادامه بدید.

----------


## mohammady2

> 3- این دستور پیش نمایش چاپ رو نشون میده. اگر در زمان طراحی میخواهید پیش نمایش رو ببینید باید یه گوشه خود QuickRep1 کلیک راست کنید و از منو گزینه Preview را انخاب کنید در این حالت اگر جدولتون باز باشه و تنظیمات برقرار باشه پیش نمایش نشون داده میشه. اگر در زمان اجرا میخواهید پیش نمایش رو نشون بدید یک دکمه بذارید و توی زدن اون دکمه از دستور QuickRep1.Preview یا QuickRep1.PreviewModal استفاده کنید.



سلام داداش . 
من رسيدم شيراز .
قضيه همون فوت كوزه گر بود كه شاگردش نميدونست .
ولا ..  خجالت كشيدم خيلي مسخره بود  Form2.QuickRep1.Preview 
بهر حال با استمداد شما مشكلم حل شد .تا مشكلات بعدي .. :قلب:

----------


## mafazel

سلام دوست عزیز
آقا خوش بگذره
ما خودمون هم شاگردیم، یواشکی دیدیم اوستا فوت کرد  :قهقهه: .
اصلا خجالت نداره. من هم توی برنامه نویسی پیش اومده که علاف یک دستور ساده شدم که جای ذکر مثال نیست.
جالب ترین اتفاق این بود که یک برنامه با  SQL Server نوشته بودم. زنگ زدند گفتند برنامه تون کار نمی کنه! خیلی تعجب کردم هر چقدر مرور کردم خطایی پیدا نکردم. گفتم بذارید از اول چک کنیم، سرور روشنه؟ گفتند بذارید ببینیم .... اوه.. وای .. نه ... ببخشید بعدا تماس میگیریم. :قهقهه: 
*تا موفقیت های بعدی!*

----------

