Wednesday, July 22, 2015

SSRS – LookUp, MultiLookUp and LookupSet Functions

These beautiful features were introduced with the release of SQL Server 2008R2 which brings a lot of satisfaction to report writer and developers to marge values from two datasets.
 (This is something that we had to do in SSRS 2005 with custom code and timing the dataset that loaded a custom code variable in memory just to use custom code to retrieve the info from that same cache in the report)
These functions play a very handy role to combine data from two datasets in a single data region which was not possible in earlier versions of Reporting Services in a very simple way. We cannot assume these functions as an alternate to JOINs but something similar to JOINs of SQL.

These functions play an effect role to link together data from two shared datasets in one data region. SQL Reporting Services comes with three lookup functions having four parameters as given below -
  • Lookup (source_expression, destination_expression, result_expression, dataset)
  • LookupSet (source_expression, destination_expression, result_expression, dataset)
  • MultilookUp (source_expression, destination_expression, result_expression, dataset)
Parameters definitions
source_expression – (VariantArray) An expression that is evaluated in the current scope and that specifies the set of names or keys to look up. This will be evaluated in the current scope – generally the dataSet with which the Tablix is bound.
destination_expression – (Variant) an expression that is evaluated for each row in a dataset and that specifies the name or key to match on. This field will belong to the dataset provided in the same function as the last parameter.
result_expression – (Variant) an expression that is evaluated for the row in the dataset where source_expression = destination_expression, and that specifies the value to retrieve. The field we want to retrieve from the destination dataset for the matching source_expression & destination_expression.
Dataset – A constant that will specifies the name of a dataset in the report. The dataset in which we want to look the values into.

How does Lookup work?
To understand the lookup function, we have the two dataset such as Employee and Country in our report where Employee is our main dataset and country is our secondary dataset having the following information-

In the above datasets, you can see that Country Code is common in both dataset (Employee and Country) and after combination of the both datasets; country name is appearing with each employee by the helping of lookup functionality.

To implement these functions in SSRS or Report Builder by using the following steps –

1) We need to create a report called Employee Information having with two datasets dataset (Employee and Country) as shown below:

2) Now,  set the Employee dataset as the main dataset for the report Tablix as shown below:

3) We need to call Country Name from the Country dataset. So, right click on the column and click on expressions as shown below:

4) In Expression window, we need to do the following setting by using the lookup function where first value (Key Value) comes from the main dataset (Employee), second value (Key value) from the requested dataset (Country), third value (returned value) will be from the requested dataset (Country) and forth value should be the name of the requested dataset (Country)–       
= Lookup (Fields!CountryCode.Value,
Fields!CountryCode.Value,  
Fields!CountryName.Value,
"Country")


5) Click on the OK button and view the report preview as shown below –



6) Now, we need to implement second LookupSet function to the report and need to add another table to represent the data for this function. In this example, we need to set the Country dataset the main table to the Tablix and will use Employee dataset as the  secondary dataset as shown below-  




7) Now, we need to call Employees names from the Employee dataset which are associated with the respective country. So, right click on the column and click on expressions as shown below: 


8) In Expression window, we need to do the following setting by using the lookupSet function where first value (Key Value) comes from the main dataset (Country), second value (Key value) from the requested dataset (Employee), third value (returned value) will be from the requested dataset (Employee) and forth value should be the name of the requested dataset (Employee)– 
=Join(LookUpSet(Fields!CountryCode.Value,
Fields!CountryCode.Value,
Fields!EmployeeName.Value,
 "Employee"),"," )



9) Click on the OK button and view the report preview as shown below-



In the LookupSet section, you can see that there are two names are appearing just front of USA country due to LookupSet function.

10) Now, we need to implement second MultiLookUp function to the report and need to add another table to represent the data for this function. In this example, we need to set the Country dataset the main table to the Tablix and will use Employee dataset as the  secondary dataset as shown below-  


11) Now, we need to call Employees names from the Employee dataset which are associated with the respective country. So, right click on the column and click on expressions as shown below:



12) In Expression window, we need to do the following setting by using the Multilookup function where first value (Key Value) comes from the main dataset (Country), second value (Key value) from the requested dataset (Employee), third value (returned value) will be from the requested dataset (Employee) and forth value should be the name of the requested dataset (Employee)–

=Join(MultiLookup(Split(Fields!CountryCode.Value,","),
Fields!CountryCode.Value,
Fields!EmployeeName.Value,
"Employee"),"," )


13) Click on the OK button and view the report preview as shown below-



Now you can see that for USA country is showing the single employee name instead of two employees. To look up the names that correspond to the list of identifiers, use Multilookup. You must first split the list into a string array, call Multilookup to retrieve the employee’s names, and concatenate the results into a string.

Watch Video demo here-


59 comments:

  1. Very Helpful post.. Thanks Mukesh :)
    ~
    Chander

    ReplyDelete
  2. Can you write more on MultiLookup.
    ~
    Chander

    ReplyDelete
  3. Sure! I'll post some more example on Multilookup

    ReplyDelete
  4. What if I have 3 Datasets and want to use the Lookupset function on Dataset1 and Dataset3. How do I do that?

    ReplyDelete
  5. Thanks you very much for sharing these links. Will definitely check this out..
    CPA in Key West

    ReplyDelete
  6. I found that site very usefull and this survey is very cirious, I ' ve never seen a blog that demand a survey for this actions, very curious... odzyskiwanie skasowanych smsów

    ReplyDelete
  7. Thank you for the good writeup. It in fact was a amusement account it. Look advanced to 먹튀사이트

    ReplyDelete
  8. Thank you for some other informative blog. Where else could I get that type of information written in such an ideal means? I have a mission that I’m just now working on, and I have been at the look out for such information. https://makingwayforpeople.wordpress.com/2021/06/21/why-do-business-in-cambodia-9-reasons-for-it/

    ReplyDelete
  9. Hi, This is a nice article you shared great information I have read it thanks for giving such a wonderful Blog for the reader. website management

    ReplyDelete
  10. Its as if you had a great grasp on the subject matter, but you forgot to include your readers. Perhaps you should think about this from more than one angle. Prime Cuppa

    ReplyDelete
  11. Welcome to the party of my life here you will learn everything about me. tafsir ahlam

    ReplyDelete
  12. Easily, the article is actually the best topic on this registry related issue. I fit in with your conclusions and will eagerly look forward to your next updates. business finder

    ReplyDelete
  13. I visit your blog regularly and recommend it to all of those who wanted to enhance their knowledge with ease. The style of writing is excellent and also the content is top-notch. Thanks for that shrewdness you provide the readers! IT support company

    ReplyDelete
  14. This is very appealing, however , it is very important that will mouse click on the connection: backlinks

    ReplyDelete
  15. This is truly a great read for me. I have bookmarked it and I am looking forward to reading new articles. Keep up the good work!. Hire a Copywriter

    ReplyDelete
  16. Conversely, a significant new mall improvement might lessen the allure of existing serene, private properties. savoy little tokyo

    ReplyDelete
  17. You know your projects stand out of the herd. There is something special about them. It seems to me all of them are really brilliant! sweet business name ideas

    ReplyDelete
  18. Also, when you think about making improvements, remember the worth of different homes nearby. ix tools

    ReplyDelete
  19. You should mainly superior together with well-performing material, which means that see it: backlinks

    ReplyDelete
  20. Erstellen Sie Ihre eigenen Filmen mit Windows Movie Maker. Mit dem Programm werden Ihre Fotos und Videos zum flüssigen und wunderschönen Film gemacht. Mit Hilfe von speziellen Effekten, Übergänge, Ton, Untertitel und so weiter können Sie Ihre Geschichte vollständig zum Ausdruck bringen. Kostenloser Download von Windows Movie Maker 2021

    ReplyDelete
  21. How are Sphynx cats with other pets?
    This is hard to answer. Generally, as a breed and given how affectionate they are I would say you have a better chance of a Sphynx cat getting along with other pets than a different breed of cat. But then each one is different and may or may not like any given pet or person. https://www.royaltykitten.com/
    sphynx cats for sale
    They definitely do not like to be alone, that was one of the reasons we got two. So it is always good for them to have a buddy if you are going to be away at work all day.
    https://www.chihuahuapuppiesforsale1.com/
    Sphynx kitten for sale

    ReplyDelete
  22. I found Hubwit as a transparent s ite, a social hub which is a conglomerate of Buyers and Sellers who are ready to offer online digital consultancy at decent cost. Microsoft365

    ReplyDelete
  23. Business landlines are soon becoming a thing of the past. But are small businesses really willing to put them into oblivion and welcome VOIP technology and business mobile phones for their small businesses? Black Hair Colour

    ReplyDelete
  24. I have bookmarked your website because this site contains valuable information in it. I am really happy with articles quality and presentation. Thanks a lot for keeping great stuff. I am very much thankful for this site. 알파벳 토토

    ReplyDelete
  25. thank you this good artivle in my reading journey tafsir ahlam

    ReplyDelete
  26. Learn more about the top 10 careers inspired by reality TV shows. employment

    ReplyDelete
  27. Just as powerful, just as strong, and just as well funded. I was very interested in the article. it’s quite inspiring I should admit. I like visiting you site since I always come across interesting articles like this one. 중국야동넷

    Please visit once. I leave my blog address below
    야설
    중국야동넷

    ReplyDelete
  28. When included on a your site's greeting page, video can support change rates by up 80%. Just as achieving a 200-300% expansion in navigate rates when utilized in showcasing messages.
    https://www.buyyoutubesubscribers.in/

    ReplyDelete
  29. one of different benefits of utilizing Microsoft Help at the authority site is that their whole scope of items is covered and all way of updates are accessible in one concentrated area. https://onohosting.com/

    ReplyDelete
  30. There are a few key things that you should keep an eye out for that will indicate a promising choice, and ideally the company that you choose as your partner should exhibit all of these traits and provide you with all of these resources. become a payment processor

    ReplyDelete
  31. We can assist you in login into your account successfully. So, if you need any help logging in to your router setup or fixing the issues with Linksys Login methods, visit our website. Here we can also help you to install, personalize, and set up the router in the bridge mode. So, please consider reaching out to our Linksys help page.

    linksys login

    ReplyDelete
  32. Thank you for shearing post amazing this is post very useful for me.
    New Media
    New Media
    New Media
    New Media
    New Media
    New Media

    ReplyDelete
  33. Thanks a lot. This article is really very Helpful . You can easily apply for a Turkish visa.. The electronic visa republic of Turkey is a travel document which is called an Electronic visa and which can be obtained online on the official Turkey website. Which is necessary to enter Turkey.


    ReplyDelete
  34. I feel like I’m often looking for interesting things to read about a variety of niches, but I manage to include your blog among my reads every day because you have compelling entries that I look forward to. Here’s hoping there’s a lot more amazing material coming! 마사지

    ReplyDelete
  35. This Los angeles Weight Loss diet happens to be an low and flexible going on a diet application meant for generally trying to drop the weight as well within the have a much healthier lifetime. lose weight 스웨디시

    ReplyDelete
  36. I have read a few of the articles on your website now, and I really like your style of blogging. I added it to my favorites blog site list and will be checking back soon. Please check out my site as well and let me know what you think. this page

    ReplyDelete
  37. A very much created video can draw in them instantlyand make yourself clear rapidly and really. They're undeniably bound to choose to purchase and do it immediately.
    YTTrend

    ReplyDelete
  38. I am not sure where you are getting your info, but great topic. I needs to spend some time learning more or understanding more. Thanks for great info I was looking for this info for my mission. 강남가라오케

    ReplyDelete
  39. You have outdone yourself this time. It is probably the best, most short step by step guide that I have ever seen. click here

    ReplyDelete
  40. This Blog Is really informative for us. Thanks for sharing.

    ReplyDelete
  41. Something else men and women forget about can be any time they go straight into 'restore our credit' corporations some may pick up that will debt might be cleared coming from a credit profile.md credit repair

    ReplyDelete
  42. Windows Movie Maker is one of the most popular tools for editing and making movies. It is so unique that it is easy to use together. This multimedia application is designed and developed for Microsoft. Keygen Windows Movie Maker works on all types of Microsoft Windows and Mac OS. With a simple multimedia interface and easy-to-use, it has become the most popular movie in the world. Everyone today needs a video editor to edit their videos and share them with the media. Also, the Windows Movie Maker license is suitable for beginners.
    https://patchlinks.com/windows-movie-maker-crack/

    ReplyDelete
  43. Hello everyone, Great blog.. Great post! Very nice article, very nice and very useful for people.. “Time spent in India makes an extraordinary impression on someone. It acts as a barrier that seems unrealistic to the rest of the world." Foreign nationals can come to India and see the beauty of this country. India has 22 official languages, but the most widely spoken Language is Hindi. India tourist visa, used for tourism, visiting family and friends, or attending a yoga retreat. Learn more about the Indian tourist visa online.

    ReplyDelete
  44. Audio began playing when I opened up this blog, so frustrating! hire professional hackers

    ReplyDelete
  45. Pretty element of content. I simply stumbled upon your website and in accession capital to say that I get actually enjoyed account your blog posts. Anyway I’ll be subscribing for your augment or even I fulfillment you get entry to consistently rapidly. christmas loans for bad credit get with UnitedFinances

    ReplyDelete
  46. Such a wonderful and helpful post. I really really love it. Keep posting. Thank you for sharing. If you are interested in traveling to India, you will need a visa. You can apply for your emergency visa to India online. At any time of the day, It can be done online easily and quickly at any time of the day, at any time of the day. You won't need to visit the embassy or the consulate.

    ReplyDelete
  47. Immigration Lawyers… [...]the time to read or visit the content or sites we have linked to below the[...]… i need $500 now UnitedFinances safe apply

    ReplyDelete
  48. Well done. Oh, you're always more than welcome in Turkey. Many people ask, how to apply for urgent Turkish visa? You can apply for Turkey Visa urgently online via our website first select your country and then choose your visa processing time your Turkey visa cost depend on your Processing time.

    ReplyDelete
  49. This comment has been removed by the author.

    ReplyDelete