PDA

View Full Version : گزارش گیری پویا



bahar_n
شنبه 02 بهمن 1389, 14:41 عصر
سلام
فرض کنید توی یک برنامه، کاربر میخواهد از تعداد کتاب ها با ویژگی های خاص موجود در یک کتابخانه گزارش گیری کنه، کابر میتونه یک موضوع خاص را انتخاب کنه و یا گزینهء همهء موضوعات را انتخاب کنه، همچنین میتونه یک انتشارات خاص را انتخاب کنه، و یا گزینه تمام انتشارات را انتخاب کنه، همچنین میتونه یک سال نشر را انتخاب کنه و یا گزینه تمامی سالهای انتشار را انتخاب کنه، و ... و سپس نتیجه گزارش گیری را مشاهده کنه.
اگر کاربر مثلا یک انتشارات خاص را انتخاب کنه، نام انتشارات باید در شرط where در دستور select باشه، ولی اگر همه انتشارات را انتخاب کنه دیگه هیچ شرطی در این باره وجود نداره، سوال من اینه که آیا میتوان با یک دستور select چنین گزارش پویایی که بعضی فیلد ها گاهی در where هستند و گاهی نیستند نوشت؟؟؟

pezhvakco
شنبه 02 بهمن 1389, 17:02 عصر
شما می تونی در sp ها دستورات شرطی رو بنویسی .
کد نویسی در sp ها مانند برنامه های دیگه است . همین رو در سایت جستحو کن ...

bahar_n
یک شنبه 03 بهمن 1389, 08:03 صبح
فهمیدم، باید توی where اینجوری بنویسیم
where (FildName= @parameter or @parameter is null)
توجه داشته باشین که این فرق داره با اینکه بنویسی
where (FildName= @parameter or FildName is null
اگه به روش دوم بنویسی، وقتی به پارامتر مقدار ندی ردیفهایی از جدول را برمیگردونه که این فیلد برابر null است. در صورتی که در روش اول اگر به پارامتر مقدار ندی، جوری برخورد میشه که انگار اصلا هیچ شرطی بر روی این فیلد نگذاشتی.