اعمال شرط روی ردیف
اهمیت: مهم نوع: درخواست راهنمایی شماره نگارش: 2.7
با سلام.
بعضی اوقات نیاز است که روی ردیف‌ها شروطی اعمال شود، مثلا ردیف یا رکورد جاری با ردیف قبلی مقایسه گردد و در صورت null بودن یک فیلد، ردیف قبلی نمایش داده نشود و یا بالعکس (نمایش یکی از دو ردیف براساس مقدار یک فیلد). در ابزار گزارشگیری کریستال ریپورت و در محیط اسکریپت نویسی آن، توسط دو خاصیت می‌توان به ردیف قبلی یا ردیف بعدی دسترسی داشت. آیا در PdfReport امکان شرط گذاشتن روی ردیف‌ها نیز وجود دارد؟ آیا نیازی هست که خاصیتی مانند ردیف قبلی یا بعدی وجود داشته باشد یا اینکه راهکار دیگری برای اینگونه مسائل وجود دارد؟ با تشکر فراوان
  • #
    ‫۹ سال و ۷ ماه قبل، شنبه ۲ اسفند ۱۳۹۳، ساعت ۱۵:۴۴
    - اگر می‌خواهید ردیفی در گزارش وجود نداشته باشد، از همان ابتدای کار منبع داده اصلی را طوری فیلتر کنید که آن ردیف خاص، در آن حضور نداشته باشد.
    - اگر منابع داده فعلی آن نیاز شما را برآورده نمی‌کنند، یک منبع داده جدید بنویسید. یکی از این منابع داده نهایتا برای تامین اطلاعات ردیف‌ها استفاده می‌شوند.
    + در این پروژه امکان دسترسی به یک سری رخداد در حین اضافه شدن سلول‌ها و ردیف‌ها وجود دارد.
    مثال رخدادها و یک نمونه دیگر از کاربرد رخدادها در حین کار با گروه‌ها و یا نمونه‌ای برای تزریق ردیف‌های جدید به گزارش. مثالی در مورد گزارش‌های حسابداری جهت نگهداری مقادیر ردیف‌های قبلی.
  • #
    ‫۹ سال و ۷ ماه قبل، شنبه ۲ اسفند ۱۳۹۳، ساعت ۱۷:۰۱
    یک رخداد جدید به نام ShouldSkipRow به مجموعه رخدادهای موجود اضافه شد. (در SVN موجود است)
    events.ShouldSkipRow(args =>
    {
        var rowData = args.TableRowData;
        //var previousTableRowData = args.PreviousTableRowData;
     
        var description = rowData.FirstOrDefault(x => x.PropertyName == "Description");
        if (description != null &&
            description.PropertyValue.ToSafeString() == "Description Description ... 1")
        {
            return true;
        }
     
        return false;
    });