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

نام تاپیک: ارسال مقدار نال به StimulReport

  1. #1
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    ارسال مقدار نال به StimulReport

    سلام و وقت بخیر .

    یک گزارش دارم که تعدادی در حدود 200 چک باکس داره . فرم پذیرش یک مرکز درمانی می باشد .

    موضوع به این صورت هست که هر checkBox در سمت سی شارپ یک مقدار به خاصیت TAG اش به صورت منحصر به فرد اختصاص داده شده و طبق مراحلی چک باکس های چک خورده در دیتابیس درج می شوند

    از طرفی سمت گزارش هم که به صورت متد RegData و یک دیتاتیبل برای هر چک باکس یک ستون در نظر گرفته شده که از نوع bool می باشد .

    موضوع و مشکل این هست که کوری که پاس داده میشه به StimulReport ، حاوی مقدار نال خواهد بود . ( چرا که مقادیر تیک خورده در دیتابیس درج شده اند و گاها مقدار نال به گزارش پاس داده میشه) .

    اگه مقدار نال نباشه مشکلی نداره گزارش و خوب کار می کنه، اما وقتی مقدار نال داره اررور میده و قبول نمی کنه . چه طوری میشه مقدار Nullable درست کرد سمت گزارش ساز StimulReport


    StiReport stiReport1 = new StiReport();
    string path = Application.StartupPath + "\\Reports\\Paziresh.mrt";
    stiReport1.Load(path);
    stiReport1.ResetRenderedState();
    dt.TableName = "DataSource1";
    stiReport1.Dictionary.Clear();
    stiReport1.RegData(dt);
    stiReport1.Dictionary.Synchronize();
    stiReport1.Show();



    حتی در سایت StimulReport هم تاپیک زدم ولی جوابی نیامد .


    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg 111.jpg‏ (95.2 کیلوبایت, 42 دیدار)

  2. #2

    نقل قول: ارسال مقدار نال به StimulReport

    متن خطا رو چرا قرار ندادید؟!

    احتمال قریب به یقین خطا برای خط زیر هست.
    stiReport1.Dictionary.Clear();

    اصلا چرا این خط رو اضافه کردید؟ خب این خط منبع داده گزارش را حذف میکنه و باعث خطا میشه.

  3. #3
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    متن خطا رو چرا قرار ندادید؟!

    احتمال قریب به یقین خطا برای خط زیر هست.
    stiReport1.Dictionary.Clear();

    اصلا چرا این خط رو اضافه کردید؟ خب این خط منبع داده گزارش را حذف میکنه و باعث خطا میشه.

    با عرض شرمندگی فراموش کردم .

    عکس اش رو ضمیمه کردم . خطایی که میداد


    و جالبه بدونید در تمام گزارش ها اون stiReport1.Dictionary.Clear(); استفاده می کردم و مشکلی نبوده تا الان . همه گزارش هام . ولی با مقدار نال مشکل داره .


    البته الان پاکش کردم و مشکلم حل شد ! اصلا انتظار نداشتم . مممنونم . سایت رسمی استیمول هم نمی دونم چرا ، تاپیک ام رو پاک کرده . بازم دم شما گرم !
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg wa.jpg‏ (76.5 کیلوبایت, 38 دیدار)

  4. #4
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    نقل قول: ارسال مقدار نال به StimulReport

    ببخشید این 2 تا خط چی کار می کنند ؟ الان حذف شان کردم مشکلی نبود و به خوبی گزارش کار کرد


    stiReport1.Compile();
    stiReport1.Render();

  5. #5

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط NasimBamdad مشاهده تاپیک
    ببخشید این 2 تا خط چی کار می کنند ؟ الان حذف شان کردم مشکلی نبود و به خوبی گزارش کار کرد


    stiReport1.Compile();
    stiReport1.Render();

    زمانی که گزارش را نمایش میدید با فراخوانی متد show ، گزارش کامپایل و به کاربر نمایش داده میشه. متد show دو متد compile , render را در صورت نیاز فراخوانی میکند.
    فایلهای mrt از نوع xml هستند. با متد compile کد C#‎‎‎‎ مناسب از این xml تولید و کامپایل میشه که میتونید خروجی را در فایل(dll) ذخیره کنید که نیازی به کامپایل در زمان اجرا نباشه. یا اینکه به جای استفاده از فایل mrt ، گزارش را به صورت کلاس سی شارپ ذخیره و به پروژه اضافه کنید تا جزئی از برنامه بشه که در اینصورت هم نیازی به کامپایل در زمان اجرا نیست.

    وقتی نیازی به نمایش گزارش ندارید و مثلا میخواهید خروجی به pdf بگیرید گزارش را render و بعد export می کنید.

  6. #6
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    زمانی که گزارش را نمایش میدید با فراخوانی متد show ، گزارش کامپایل و به کاربر نمایش داده میشه. متد show دو متد compile , render را در صورت نیاز فراخوانی میکند.
    فایلهای mrt از نوع xml هستند. با متد compile کد C#‎‎‎‎‎ مناسب از این xml تولید و کامپایل میشه که میتونید خروجی را در فایل(dll) ذخیره کنید که نیازی به کامپایل در زمان اجرا نباشه. یا اینکه به جای استفاده از فایل mrt ، گزارش را به صورت کلاس سی شارپ ذخیره و به پروژه اضافه کنید تا جزئی از برنامه بشه که در اینصورت هم نیازی به کامپایل در زمان اجرا نیست.

    وقتی نیازی به نمایش گزارش ندارید و مثلا میخواهید خروجی به pdf بگیرید گزارش را render و بعد export می کنید.
    خیلی کامل و عالی بود . تا به امروز به اشتباه Compile , Render رو فراخوانی می کردم و بعدش متد Show . در صورتی که خود متد Show این ها رو فرخوانی می کنند . سپاس بسیار .

    فقط یک سوالی اگه ما گزارش رو به صورت کلاس C#‎ در بیاریم ( از قابلیت Save AS در خود فایل گزارش) ، چه طوری باید فرخوانیش کرد و گزارش رو نمایش داد ؟


    و اگه امکانش هست یه سری به این تاپیک هم بزنید

    لیـــــــــنـــــک

  7. #7

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط NasimBamdad مشاهده تاپیک
    فقط یک سوالی اگه ما گزارش رو به صورت کلاس C#‎‎ در بیاریم ( از قابلیت Save AS در خود فایل گزارش) ، چه طوری باید فرخوانیش کرد و گزارش رو نمایش داد ؟
    یک کلاس هست که از StiReport مشتق شده پس فرقی با قبل نداره(یک نمونه از کلاس میسازید و بعد از ارسال دیتا گزارش را نمایش میدید) نیازی به متد Load هم ندارید.

  8. #8
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    نقل قول: ارسال مقدار نال به StimulReport

    جسارتا یه موضوعی رو بگم. شما یک چک باکس تو برنامتون وجود داره که یا تیک میخوره یا نمیخوره(true یا false) حالا این وسط مقدار نال چیه؟!! برای فیلدتون مقدار پیشفرضش رو False بزارید. تو این گونه موارد بهتره اینارو اعمال کنید. یا 0 یا 1 چیز دیگه ای بین دوحالت منطقی وجود نداره. بعدا هم دردسر نال بودن رو هم ندارید.

  9. #9
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط رامین مرادی مشاهده تاپیک
    جسارتا یه موضوعی رو بگم. شما یک چک باکس تو برنامتون وجود داره که یا تیک میخوره یا نمیخوره(true یا false) حالا این وسط مقدار نال چیه؟!! برای فیلدتون مقدار پیشفرضش رو False بزارید. تو این گونه موارد بهتره اینارو اعمال کنید. یا 0 یا 1 چیز دیگه ای بین دوحالت منطقی وجود نداره. بعدا هم دردسر نال بودن رو هم ندارید.
    دوست عزیز همین کار انجام شده بود ولی با اون خط کد بالا دیتاسورس پاک میشد.

    درضمن اگه با استیمول کار کرده باشید متوجه میشید که در حالت دیتاسورس dataset/datatable برای چک باکس نمیشه مقدار پیش فرض گذاشت.

    و اینکه چک باکس های‌روی فرم فقط اونایی که تیک می خورن‌در دیتابیس درج میشن.پس اونایی که تیک نمی خورن درج نمیشن و مقدار false ندارن. مقدار نال میشه

  10. #10

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    زمانی که گزارش را نمایش میدید با فراخوانی متد show ، گزارش کامپایل و به کاربر نمایش داده میشه. متد show دو متد compile , render را در صورت نیاز فراخوانی میکند.
    فایلهای mrt از نوع xml هستند. با متد compile کد C#‎‎‎‎‎ مناسب از این xml تولید و کامپایل میشه که میتونید خروجی را در فایل(dll) ذخیره کنید که نیازی به کامپایل در زمان اجرا نباشه. یا اینکه به جای استفاده از فایل mrt ، گزارش را به صورت کلاس سی شارپ ذخیره و به پروژه اضافه کنید تا جزئی از برنامه بشه که در اینصورت هم نیازی به کامپایل در زمان اجرا نیست.

    وقتی نیازی به نمایش گزارش ندارید و مثلا میخواهید خروجی به pdf بگیرید گزارش را render و بعد export می کنید.
    سلام ممکن بگید چطوری گزارش به کلاس تبدیل کنیم؟ که نیاز به کامپایل نداشته باشد؟

  11. #11
    کاربر دائمی آواتار رامین مرادی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    آذربایجان
    پست
    1,961

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط Helpco مشاهده تاپیک
    سلام ممکن بگید چطوری گزارش به کلاس تبدیل کنیم؟ که نیاز به کامپایل نداشته باشد؟
    بعد از انجام ویرایش روی گزارش و هنگام ذخیره میتونید نوع فایل رو بزارید رو حال csharp classes.cs تا یه کلاس بده بهتون

  12. #12
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,909

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط NasimBamdad مشاهده تاپیک
    دوست عزیز همین کار انجام شده بود ولی با اون خط کد بالا دیتاسورس پاک میشد.

    درضمن اگه با استیمول کار کرده باشید متوجه میشید که در حالت دیتاسورس dataset/datatable برای چک باکس نمیشه مقدار پیش فرض گذاشت.

    و اینکه چک باکس های‌روی فرم فقط اونایی که تیک می خورن‌در دیتابیس درج میشن.پس اونایی که تیک نمی خورن درج نمیشن و مقدار false ندارن. مقدار نال میشه
    با سلام
    ابتدا بگم شما میتونید هر چی دلتون بخواد رو بجای مقادیر True و False نمایش بدید
    کافیه توی Design Stimul روی فیلد مورد نظر کلیک کنید و از قسمت Properties خصویت Format و سپس Display رو تنظیم کنید

    bool.jpg


    بعدش هم بگم این فرمی که قرار دادید برای کار دستی هست که از بین گزینه ها یکی رو تیک میزنه که به نظرم برای یک نرم افزار کامپیوتری این کاره اشتباهیه چون همه گزینه ها در نرم افزار وجود داره و شما فقط باید گزینه هایی که تیک میخورن رو ثبت کنید و وارد کردن گزینه ها رو هم به عهده کاربر بزارید، اینطور اگر تغییری پیش بیاد نیازی نیست که شما تغییر توی نرم افزار بدید
    موفق باشید
    لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
    قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
    قوانین پرسش های دانشجویی
    برای درست وارد شدن کد در قالب C#‎‎‎ سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C#‎‎‎ منتفل کنید
    نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها

  13. #13
    کاربر دائمی
    تاریخ عضویت
    تیر 1390
    محل زندگی
    کرمانشاه
    پست
    1,487

    نقل قول: ارسال مقدار نال به StimulReport

    نقل قول نوشته شده توسط danialafshari مشاهده تاپیک
    با سلام
    ابتدا بگم شما میتونید هر چی دلتون بخواد رو بجای مقادیر True و False نمایش بدید
    کافیه توی Design Stimul روی فیلد مورد نظر کلیک کنید و از قسمت Properties خصویت Format و سپس Display رو تنظیم کنید

    bool.jpg


    بعدش هم بگم این فرمی که قرار دادید برای کار دستی هست که از بین گزینه ها یکی رو تیک میزنه که به نظرم برای یک نرم افزار کامپیوتری این کاره اشتباهیه چون همه گزینه ها در نرم افزار وجود داره و شما فقط باید گزینه هایی که تیک میخورن رو ثبت کنید و وارد کردن گزینه ها رو هم به عهده کاربر بزارید، اینطور اگر تغییری پیش بیاد نیازی نیست که شما تغییر توی نرم افزار بدید
    موفق باشید


    درست می فرمایید فرم طراحی شده واقعا برای سیستم دستی و کاغذی هست و خود بنده خیلی بهشون پیشنهاد دارم برای گزینه های مختلف و ...

    اما مرغشان یک پا داره و میگن عین همین درست بشه . بنده سطوح دسترسی متفاوت گذاشتم و فرم های مختلف و جدا سازی های مختلف . آخرش گفتند نمیشه همه اینا به یک فرم تبدیل بشه ؟ دیگه فرم های مختلف باز نکنیم .( بنده قویا مقاومت کرده و راه خودم رو رفتم )

تاپیک های مشابه

  1. سوال: ارسال مقدار متغیرها به یک صفحه دیگه
    نوشته شده توسط mr.wolf در بخش JavaScript و Framework های مبتنی بر آن
    پاسخ: 1
    آخرین پست: یک شنبه 07 فروردین 1390, 12:24 عصر
  2. ارسال مقدار هگز به پورت سریال
    نوشته شده توسط seniamail در بخش برنامه نویسی در 6 VB
    پاسخ: 2
    آخرین پست: سه شنبه 23 شهریور 1389, 07:29 صبح
  3. ارسال مقدار combo به همراه مقدار لينك كليك شده
    نوشته شده توسط هادی2020 در بخش PHP
    پاسخ: 7
    آخرین پست: یک شنبه 21 مهر 1387, 16:37 عصر
  4. نحوه ارسال مقدار dropDownText به صفحه بعد
    نوشته شده توسط mahsa_kb در بخش طراحی وب (Web Design)
    پاسخ: 1
    آخرین پست: یک شنبه 27 خرداد 1386, 09:08 صبح
  5. ارسال مقدار ورودی به فایل اجرایی نوشته شده تو #C
    نوشته شده توسط turk_programmer در بخش C#‎‎
    پاسخ: 2
    آخرین پست: پنج شنبه 29 اردیبهشت 1384, 11:27 صبح

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

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