توابع Lookup در SSRS
این مقاله به شما نحوه استفاده از تابع SSRS Lookup و مزایای آن را نشان خواهد داد. همچنین توضیح خواهیم داد که چگونه چندین Dataset را در گزارش ترکیب کنید و یا چگونه با استفاده از Lookup با چندین Data Set در فرآیند ایجاد گزارش کار کنید.
ما از یک DataSet ساده از جدول Employee با ۱۵ رکورد برای توضیح نحوه عملکرد تابع Lookup در SSRS استفاده خواهیم کرد. لطفاً برای درک مراحل ایجاد Embedded Data Source و Dataset که در این گزارش SSRS استفاده شدهاند، به مقالات مربوطه مراجعه کنید.
پیشنمایش گزارش دادههایی را نشان میدهد که با استفاده از SQL Query سفارشی که در Dataset بالا استفاده کردیم، نوشته شده است. برای اطلاعات بیشتر در مورد LookupSet، لطفاً به مقاله مربوطه مراجعه کنید.
مثال SSRS Lookup
برای نمایش نحوه عملکرد Lookup، از گزارش طراحیشده قبلی استفاده خواهیم کرد. ابتدا اجازه دهید پیشنمایش گزارش را نشان دهم.
برای درک مراحل ایجاد و قالببندی گزارش جدول، افزودن Header و Footer به گزارش، و همچنین افزودن Page Headers و Footers به گزارش، لطفاً به مقاله مربوط به Table Report و Format Table Report مراجعه کنید.

گزارش بالا معیار اصلی مورد نظر مشتری بود، اما بهطور ناگهانی مشتری از شما خواست که نام دپارتمان (Department Name) را نیز به گزارش اضافه کنید. همانطور که میدانید، جدول Employees شامل نام دپارتمان نیست. بنابراین، باید یک DataSet جدید اضافه کنیم.
برای افزودن DataSet دوم:
روی پوشهی Datasets در Report Data Pane کلیک راست کرده و از منوی زمینه، گزینهی Add Dataset.. را انتخاب کنید.

این کار پنجرهی Dataset Properties را باز میکند تا یک Embedded Dataset ایجاد کنیم که از آن برای تابع SSRS Lookup استفاده خواهیم کرد. اجازه دهید نام این دیتاست را SQLTESTDepartmentDS بگذارم و کوئری زیر را برای استخراج نام دپارتمان بنویسم.

ممکن است وسوسه شوید که بهسادگی نام دپارتمان را اضافه کنید. اجازه دهید نشان دهم که چه اتفاقی میافتد اگر ستون Department Name را به جدول موجود بکشید و رها کنید.

اسکرینشات بالا نشان میدهد که یک خطا رخ داده است، زیرا طراح گزارش تنها اجازه میدهد از یک Dataset در هر جدول استفاده شود.
اکنون اجازه دهید روش ایدهآل را به شما نشان دهم، که استفاده از تابع Lookup است. ابتدا، یک ستون جدید در سمت راست ستون Sales اضافه کنید. برای این کار روی ستون Sales کلیک راست کرده و مسیر Insert Column -> Right را انتخاب کنید. قبل از ادامه، اجازه دهید تابع Lookup را توضیح دهم.
مثال تابع Lookup در SSRS
تابع Lookup رکوردهای مطابق را از دیتاست مشخصشده بازیابی میکند. ساختار این تابع به شکل زیر است:

Source_IDColumn: مشابه کلید اصلی (Primary Key) است. این ستون شناسه (ID) از دیتاست اول میباشد.
Target_IDColumn: مشابه کلید خارجی (Foreign Key) است. این ستون شناسه از دیتاست دوم میباشد. تابع Lookup بررسی میکند که آیا مقدار Source_IDColumn برابر با Target_IDColumn است یا نه، و در صورت تطابق، مقدار متناظر از Target_Column را بازمیگرداند.
Target_Column: ستونی است که میخواهید به جدول موجود اضافه کنید.
Target_Dataset: نام دیتاست دوم است.
در مرحله بعد، ستون جدیدی را که ایجاد کردهاید انتخاب کرده و روی آن کلیک راست کنید تا منوی زمینه باز شود. سپس گزینهی Expression را از منو انتخاب نمایید.

بهمحض انتخاب گزینهی Expression، پنجرهای جدید با عنوان Expression باز خواهد شد. از این پنجره برای نوشتن تابع SSRS Lookup استفاده میشود.


بهمحض انتخاب گزینهی Expression، پنجرهای جدید با عنوان Expression باز خواهد شد. از این پنجره برای نوشتن تابع SSRS Lookup استفاده میشود.

همانطور که مشاهده میکنید، پیشنمایش گزارش ما نام دپارتمان (Department Name) را نمایش میدهد. این بدان معناست که گزارش با استفاده از تابع Lookup، دادهها را از چندین Dataset مختلف نمایش میدهد.

دیدگاهتان را بنویسید