نمایش نتایج 1 تا 23 از 23

نام تاپیک: چگونگی ارسال پارامتر به FastReport

  1. #1
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

    Tick چگونگی ارسال پارامتر به FastReport

    سلام دوستان عزیز
    سوالی درخصوص گزارش ساز FastReport دارم که مطمئن هستم سوال دیگر دوستان نیز میباشد
    می خواهیم بدانم زمانی که در FastReport و در بخش data یک Query را تعریف می کنم چرا در پنجره
    پروپرتیس Query گزینه پارامتر باز نمی شود آیا راهی برای باز کردن آن وجود دارد لطفا در خصوص استفاده از آن
    مرا راهنمایی کنید .
    مثال : در یک Query فیلد های یک تیبل را صدا زدم Select * From Ashkhas
    یک دیالوگ تعریف کردم که دارای دو Edit که فیلد های Name , Family را از ورودی میگیرد و پس از تأیید
    گزارش تمامی افرادی که دارای نام و نام خانوادگی مشابه هستند نمایش دهد.

    با اشتیاق منتظر اعلام نظر دوستان می باشم.

  2. #2
    کاربر دائمی آواتار Batman
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    ناكجاآباد
    پست
    887

    نقل قول: چگونگی ارسال پارامتر به FastReport

    [quote=Mah6447;659120]سلام دوستان عزیز
    سوالی درخصوص گزارش ساز FastReport دارم که مطمئن هستم سوال دیگر دوستان نیز میباشد
    می خواهیم بدانم زمانی که در FastReport و در بخش data یک Query را تعریف می کنم چرا در پنجره
    پروپرتیس Query گزینه پارامتر باز نمی شود آیا راهی برای باز کردن آن وجود دارد لطفا در خصوص استفاده از آن
    مرا راهنمایی کنید .
    مثال : در یک Query فیلد های یک تیبل را صدا زدم Select * From Ashkhas
    یک دیالوگ تعریف کردم که دارای دو Edit که فیلد های Name , Family را از ورودی میگیرد و پس از تأیید
    گزارش تمامی افرادی که دارای نام و نام خانوادگی مشابه هستند نمایش دهد.
    با اشتیاق منتظر اعلام نظر دوستان می باشم.

    با سلام
    ببین سوال و عنوان تاپیک همخوانی ندارند اما خوب با کد زیر میتونی پارامتر به fr بفرستی
    توی fr یک mome میذارید و کد زیر رو قبل از اجرا کردن خروجی fr می نویسید

    procedure TForm12.DBGrid1KeyPress(Sender: TObject; var Key: Char);
    Var
    YourMemo:TfrxMemoView;
    begin
    YourMemo:=AdoQuery.FindObject('YourMemo') as TfrxMemoView;
    YourMemo.Text:='YourText';
    end;
    موفق باشید

  3. #3
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

    نقل قول: چگونگی ارسال پارامتر به FastReport

    دوست عزیز
    از پاسخ شما متشکرم ولی دقیقا منظورتان را نفهمیدم
    داخل فست ریپورت روی دیالوگ ممو قرار دهم؟
    این کد را چرا در دیبیگراد می نویسید و چکاری انجام میدهد.
    در صورت امکان یک مثال از دیتا بیس اکسس بزنید.

    لطفا راهنمایی بیشتر و دقیقتری بفرمایید.

    پیشاپیش متشکرم.

  4. #4

    نقل قول: چگونگی ارسال پارامتر به FastReport

    می خواهیم بدانم زمانی که در FastReport و در بخش data یک Query را تعریف می کنم چرا در پنجره
    پروپرتیس Query گزینه پارامتر باز نمی شود آیا راهی برای باز کردن آن وجود دارد لطفا در خصوص استفاده از آن
    مرا راهنمایی کنید .
    روی شی کوئری مورد نظر دابل کلیک کنید تا پنجره ویرایش SQL باز شود. دستور SQL مورد نظر خودتان را با استفاده از پارامترهای مورد نظرتان بنویسید، و تغییرات را ثبت کنید:

    SELECT * FROM Test Where ID = :Param1


    حالا می تونید با کلیک بر روی دکمه [...] مقابل خصوصیت Params در Properties Inspector به خصوصیات پارامتر Param1 دسترسی داشته باشید.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  5. #5
    کاربر دائمی آواتار Mah6447
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    گرگان
    پست
    210

    نقل قول: چگونگی ارسال پارامتر به FastReport

    تشکر
    تست کردم جواب داد من فکر میکردم پارامتر را باید اول ایجاد کرد ولی متوجه شدم که با نوشتن دستور در کوری پارامتر
    خودش ایجاد میشود سپس می توان آن را مشاهده نمود یا تغییر داد .
    شرمنده دوست عزیز آیا با ReportBuider هم کار کرده اید من همین سوال را در ReportBuider دارم
    ولی به نتیجه ای نرسیده ام.

  6. #6

    نقل قول: چگونگی ارسال پارامتر به FastReport

    سلام
    اگر بخواهیم به پارامتر مقدار دهیم و این مقدار در Memo1.Text می باشد چه جوری بهش بگم ؟
    هر کار می کنم error میده

  7. #7

    نقل قول: چگونگی ارسال پارامتر به FastReport

    اگر بخواهیم به پارامتر مقدار دهیم و این مقدار در Memo1.Text می باشد چه جوری بهش بگم ؟
    باید براش اسکریپت بنویسید


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  8. #8

    نقل قول: چگونگی ارسال پارامتر به FastReport

    ممکنه مثالی بزنید
    ممنون

  9. #9
    کاربر دائمی
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    قم
    پست
    531

    نقل قول: چگونگی ارسال پارامتر به FastReport

    سلام. این memo1 داخل برنامه شماست یا در صفحه گزارشتون؟

  10. #10

    نقل قول: چگونگی ارسال پارامتر به FastReport

    صفحه گزارش

  11. #11

    نقل قول: چگونگی ارسال پارامتر به FastReport

    سلام دوستان عزیز
    میخواستم اگه ممکنه همین سوال را در مورد C++‎ builder نیز پاسخ دهید .
    میدونم در این انجمن جای مطرح کردن این بحث نیست ولی ممنون میشم راهنمایی کنید.

  12. #12

    نقل قول: چگونگی ارسال پارامتر به FastReport

    میخواستم اگه ممکنه همین سوال را در مورد C++‎ builder نیز پاسخ دهید .
    فرقی نمیکنه. روش کار در C++‎ Builder هم به همین صورت هست.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  13. #13

    نقل قول: چگونگی ارسال پارامتر به FastReport

    صفحه گزارش
    به فرض اینکه شما یک AdoQuery در داخل گزارش خودتان (در صفحه Data) داشته باشید، و یک کنترل Memo با نام Memo1 هم روی گزارش داشته باشید، و برای AdoQuery خودتان هم یک پارامتر با نام Param1 تعریف کرده باشید، باید کدی مشابه کد زیر در صفحه Code مربوط به گزارش برای رویداد OnBeforePrint صفحه مورد نظر خودتان بنویسید:

    procedure Page1OnBeforePrint(Sender: TfrxComponent);
    begin
    AdoQuery1.Params.ParamByName('Param1').Value := Memo1.Memo.Text;
    AdoQuery1.Active := True;
    end;


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  14. #14

    نقل قول: چگونگی ارسال پارامتر به FastReport

    ممنون از توجه شما من سوالمو به طور دقيق تر در بخش C++‎builder مطرح كردم

  15. #15

    نقل قول: چگونگی ارسال پارامتر به FastReport

    جناب کشاورز اگه لطف کنید و یک مثال با دانلود بگذارید ممنون
    به دلیل اینکه برای من جوابی بر نمی گرداند .

  16. #16

    نقل قول: چگونگی ارسال پارامتر به FastReport

    یک مثال با دانلود بگذارید
    متوجه منظور شما از "مثال با دانلود" نمیشم.

    در هر حال، روش کار همین هست. شما در داخل گزارش فست ریپورت از طریق زبان اسکریپت نویسی PascalScript که شبیه به دلفی هست، به اجزاء گزارش و متدها و خصوصیاتشان دسترسی دارید


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  17. #17

    نقل قول: چگونگی ارسال پارامتر به FastReport

             ADOQuery1.Close;            
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('select * from personnel_bond where p_code='+ memo12.memo.text);
    ADOQuery1.ExecSQL;
    با این دستور تونستم اون چیزی که خواستم بیارم ولی فقط برای اعداد جواب میده ولی برای شرط هایی که memo توش حروفه جواب نمیده
    از dialog page هم استفاده کردم اوونم با حروف جواب نمیده ولی برای اعداد درسته

    دلیلش چیه؟

    دستورات فوق هم در رویداد onbefore print است

  18. #18

    نقل قول: چگونگی ارسال پارامتر به FastReport

    کد بالا هم که گفتین از adoquery1.active ایراد میگره

  19. #19

    نقل قول: چگونگی ارسال پارامتر به FastReport

    برای اجرای SELECT از ExecSQL استفاده نمیشه، بلکه از Active := True یا Open استفاده میشه.
    کدی که شما نوشتید استفاده از پارامتر نیست، بلکه دارید خودتون بصورت دینامیک SQL را میسازید. با حروف هم خطا میده چون مقادیر رشته ایی باید داخل علامت نقل قول در داخل دستور SQL قرار بگیرند، در حالی که در کد شما مقدار Memo1 در داخل علامت نقل قول قرار نداره.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  20. #20

    نقل قول: چگونگی ارسال پارامتر به FastReport

    درسته , من هم با اینکه بخوام به param1 مقدار بدم مشکل دارد واسه همین از این روش استفاده کردم
    تو برنامه از adoqurey1.active ایراد می گیره .

    در واقع هر کار می کنم که به param1 مقدار یک memo رو بدم نمیشه!

  21. #21

    نقل قول: چگونگی ارسال پارامتر به FastReport

    در واقع هر کار می کنم که به param1 مقدار یک memo رو بدم نمیشه!
    توضیح دادم که...
    با حروف هم خطا میده چون مقادیر رشته ایی باید داخل علامت نقل قول در داخل دستور SQL قرار بگیرند، در حالی که در کد شما مقدار Memo1 در داخل علامت نقل قول قرار نداره.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  22. #22

    نقل قول: چگونگی ارسال پارامتر به FastReport

    اگه من بخوام بجای Memo مقدار پارامتر رو از یک دیتاست در برنامه بگیرم چی کار کنم

    سوال دوم اینه که:
    من وقتی توی برنامه یه جدول رو بعنوان دیتیل به یک جدول اصلی لینک میکنم توی باند مستر و دیتیل رو در فست ریپورت تنظیم میکنم فقط رکوردهایی از جدول اصلی نمایش داده میشوند که حداقل یک رکورد متناظر در جدول دیتیل داشته باشند در حالیکه من میخواهم اگه رکوردی از جدول مستر هیچ رکورد متناظری در دیتیل هم نداشت حداقل خودش در مستر نشون داده بشه
    من این مشکل رو توی کوییک ریپورت نداشتم ولی اینجا دچار مشکل شدم؟
    لطفا راهنمایی بفرمایید/

  23. #23

    نقل قول: چگونگی ارسال پارامتر به FastReport

    اگه من بخوام بجای Memo مقدار پارامتر رو از یک دیتاست در برنامه بگیرم چی کار کنم
    روال کار فرقی نمیکنه، شما بجای کد Memo1.Memo.Text مقدار به دست آمده از دیتاست را قرار میدید.

    سوال دوم اینه که
    ربطی به این تاپیک نداره، در تاپیک جداگانه ایی مطرح کنید.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •