ورود

View Full Version : سوال: سوال در مورد فست ریپورت



Mask
دوشنبه 08 اسفند 1390, 18:47 عصر
با سلام
گزارشی به نام گزارش ماهانه دارم.
این گزارش حالت آپشنی داره . یعنی میخام کاربر هم بتونه ریز کارکرد رو به اظافه کل کارکرد ببینه و هم بتونه فقط کل کارکرد رو ببینه و ریز کارکرد در چاپ گزارشش نیاد.
چطوری باید Masterdata رو از داخل برنامه مخفی کنم که حین چاپ ، چاپ نشود.
ممنون.

tiphooo
دوشنبه 08 اسفند 1390, 20:55 عصر
شاید با DrillDrop بتونی به جوابت برسی البته صورت سوال شما خیلی واضح نیست

Mask
دوشنبه 08 اسفند 1390, 21:20 عصر
پس بزارید واظح تر بگم.
به همراه عکس :
عکس زیر رو ملاحظه بفرمایید. کاربر برنامه من گاهی میخواهد اطلاعات پرسنلی (نام - نام خانوادگی و ...) و جدول ریز کارکرد در چاپش باشد و گاهی فقط اطلاعات پرسنلی موجود در چاپ (نام - نام خانوادگی و ...) در چاپ باشد.
چطوری با کد نویسی به فست هالی کنم الان تو چاپ جدولی که در MasterData هست رو در چاپ بیار یا نیار.؟
ممنون.

Felony
دوشنبه 08 اسفند 1390, 21:47 عصر
میتونی تو گزارشت ( در حالت Design ) یک Variableاضافه کنی و تو رویداد OnBeforePrint گزارشت تو خود Fast Report یک Script بنویس و بررسی کن اگر مقدار متغییر مثلا ۱ بود MasterData رو نمایش بده , از داخل برنامه هم قبل از نمایش گزارش بسته به نیازت به این متغییر مقدار بده .

daneshmand1354
دوشنبه 08 اسفند 1390, 22:18 عصر
با سلام خدمت دوست گرامی
(frxReport1.FindObject('masterdata1') as TfrxMasterData).Visible:=false ;

tiphooo
سه شنبه 09 اسفند 1390, 15:12 عصر
شما اطلاعات اصلی رو در یک باند group قرار بده و اطلاعات ریز کارکرد رو در MasterData و اگر توسط زبان برنامه نویسی نمی خواهی روی آن کنترل داشته باشی یک Dialog در خود FastReport تعریف کن و یک RadioGroup روی آن بگذار با دو مقدار (ریز کارکرد ، سرجمع کارکرد) و یک button هم بگذار که ModalResult آن mrok باشد و در کد Button با مقدار radioGroup ارتفاع MasterData رو کم و زیاد کن یا به قول دوستان Not Visible کن
if Radiogrooup1.ItemIndex=0 then
MasterData1.Visible:=True
else
MasterData1.Visible:=False;

و یا
if Radiogrooup1.ItemIndex=0 then
MasterData1.Height:=24
else
MasterData1.Height:=0;
البته سعی کنید اطلاعاتی که در باند Group قرار می دهی یک مقدار شکیل تر از حالت طراحی شده فعلی تان باشد.چون در حالتی که MasterData نداشته باشید و اطلاعات چند نفر زیر هم لیست شود شکل فعلی جالب نیست
آن را هم مانند MasterData طراحی کنید که بعد از نشان ندادن MasterData اطلاعات سرجمع به یکدیگر بچسپد و شبیه یک Masterdata منتها این بار با اطلاعات سرجمع کارکرد شود