تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 5 از 5

نام تاپيک: ایجاد گزارش گیری بدون دیتاست

  1. #1
    اگه نباشه جاش خالی می مونه neda_traveler's Avatar
    تاريخ عضويت
    Jun 2009
    محل سكونت
    مشهد
    پست ها
    248

    14 ایجاد گزارش گیری بدون دیتاست

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

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

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

    ولی ابزارهای گزارشگیری دیگر مانند stimul الزامی به کار با دیتاست ندارند و منابع دیگر را به صورت قابل شمارش پذیرفته و مصرف میکند.

  3. #3
    مدیر انجمن برنامه نویسی Payman_62's Avatar
    تاريخ عضويت
    Dec 2005
    محل سكونت
    تهران
    پست ها
    2,445

    پيش فرض

    سلام.
    _H2_ جان من هنگامی که با linq کار میکنم مشکل ارتباط با کریستال رو دارم. چون نمیتونم بین linq و دیتاست ارتباط برقرار کنم و خوب مسلما ارتباط با کریستال هم برقرار نمیشه.
    راه حلی به ذهنت میرسه؟

  4. #4
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

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

    در نتیجه ...
    پیشنهاد میکنم خودتان در یک حلقه foreach تمام سطرهای خروجی LINQ را در یک TypedDataSet (که روی کریستال هم تنظیم شده است) بریزید و سپس نمونه شی دیتاست مربوطه را به عنوان Datasource کریستال بدهید.

    البته در حال حاضر کریستال نصب ندارم که بتوانم امتحان کنم وگرنه با حصول شرایطش قاعدتاً باید خود کریستال بتواند تبدیل فوق الذکر را انجام دهد (گرچه درنهایت تفاوت سرعت و بازدهی نخواهید داشت و فقط مسئله چند خط کد بیشتر است)

    ولی همین مبحث جاری را با Stimul امتحان کردم و مشکلی نداشت.
    (یعنی یک کلاس با چند Property ایجاد کردم و مجموعه چند نمونه ان دستور LINQ ای اجرا و خروجی را به Stimul دادم که به خوبی گزارش را ارائه داد.)

    موفق باشید.

    و
    Last edited by _H2_; 15-07-2011 at 11:20.

  5. 2 کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده اند


  6. #5
    مدیر انجمن برنامه نویسی Payman_62's Avatar
    تاريخ عضويت
    Dec 2005
    محل سكونت
    تهران
    پست ها
    2,445

    پيش فرض

    سلام.
    با این روش اگه رکوردها زیاد باشن ممکنه خیلی زمان بر باشه. زیاد اصولی نیست.

    اصلا نمیفهمم چرا ماکروسافت ارتباط linq رو با دیتاست قطع کرده. هیچ جوری منطقی نیست. باید خودش یه متد برای تبدیل قرار میداد.

  7. این کاربر از Payman_62 بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •