<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-908426635622988731</id><updated>2024-10-04T18:58:50.307-07:00</updated><category term="SSIS"/><category term="Integration Services"/><category term="ASP .NET"/><category term="Drill Down Reports"/><category term="Passing Parameters using URL"/><category term="SQL Agent Jobs"/><category term="SSRS"/><category term="passing parameters"/><category term="64 bit"/><category term="70-515"/><category term="ADO NET Source"/><category term="AjaxToolkit"/><category term="Analysis Services"/><category term="Avoid Null"/><category term="Begin Tran"/><category term="Calendar Extender"/><category term="Commit Tran"/><category term="Date Validation"/><category term="Excel"/><category term="Excel Data Range"/><category term="Excel Source"/><category term="Grid View"/><category term="Grid View DataBind"/><category term="MCTS"/><category term="Microsoft .NET Framework 4"/><category term="OpenRowset"/><category term="PerformancePoint filter default value"/><category term="Proxy account"/><category term="Range Validator"/><category term="Reporting Services"/><category term="Retain Same Connection"/><category term="RollBack Tran"/><category term="SSAS"/><category term="SSIS package Execution"/><category term="Security of agent job"/><category term="SharePoint Integrated"/><category term="Thread"/><category term="Unpivot"/><category term="Unpivot in SSIS"/><category term="Update Panel"/><category term="Update Progress"/><category term="Web Applications Development"/><category term="dimension default value"/><category term="get retrun value"/><category term="multiple value"/><category term="multiple value parameters"/><category term="passing multivalue parameter to SSRS report"/><category term="set default value dynamically"/><title type='text'>Anushka&#39;s Tech Notes</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-5813156939488062278</id><published>2012-05-23T23:03:00.001-07:00</published><updated>2012-05-26T22:16:59.011-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Proxy account"/><category scheme="http://www.blogger.com/atom/ns#" term="Security of agent job"/><category scheme="http://www.blogger.com/atom/ns#" term="SQL Agent Jobs"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS package Execution"/><title type='text'>Executing SQL Agent Job with Proxy Account</title><content type='html'>&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When we going to execute a SQL Agent job, most of the times we do not bother about execution user. By default SQL Agent job is executing under the SQL Agent service account. Most probably this account&amp;nbsp; can be a high privileged user. (this is the account which is Log on account for SQL Agent service)&lt;br /&gt;
&lt;a href=&quot;http://technet.microsoft.com/en-us/library/ms345578.aspx&quot; title=&quot;http://technet.microsoft.com/en-us/library/ms345578.aspx&quot;&gt;http://technet.microsoft.com/en-us/library/ms345578.aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Which means SQL Agent job is executing with administrative privilages. That is not a safe way because some average user can execute dangerous operating system commands and etc. So we need a safe way to execute SQL Agent job.&lt;br /&gt;
&lt;br /&gt;
The solution is Proxy account!&lt;br /&gt;
&lt;br /&gt;
Basically this is act as a proxy for a perticular user. In order to use proxy account we need to store set of credentials. If we store some average user’s credentials for this, then SQL Agent job is executing with those privilages. That’s not harm at all.&lt;br /&gt;
&lt;br /&gt;
This is the way to use proxy account for executing a SQL Agent job.&lt;br /&gt;
&lt;br /&gt;
1.Create the credential – Use an average user for credentials. (I used an average user named TestUser)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-g7gw6QtEAcBg96pRWx9W-l7KltXziUYVQeLP7NaZ5-lBuPqNRW7leq27io75oxbW60eEzkMYwfNOPcOmkQNz57JxrSiDn8hrhY9YNlBDpdUWsIvD_MSI-1RmeEX8PgCBcxwyk_HaXAj/s1600/credentials1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-g7gw6QtEAcBg96pRWx9W-l7KltXziUYVQeLP7NaZ5-lBuPqNRW7leq27io75oxbW60eEzkMYwfNOPcOmkQNz57JxrSiDn8hrhY9YNlBDpdUWsIvD_MSI-1RmeEX8PgCBcxwyk_HaXAj/s1600/credentials1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
2.Create a proxy that references the credential&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk0mWHMzN0ewkVhB3_IX4rfk6ElAbMuG4ap4-lrhw1Ds2xeMQHp_sOd1NG42sDZKbZNoQ20ZhkCay9f4OwlGc3fclhYGGj878wZjT1FpKG9asNDKyIJ9p26aJYCE5n8cKZSZVsSlwPLVkd/s1600/proxy.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjk0mWHMzN0ewkVhB3_IX4rfk6ElAbMuG4ap4-lrhw1Ds2xeMQHp_sOd1NG42sDZKbZNoQ20ZhkCay9f4OwlGc3fclhYGGj878wZjT1FpKG9asNDKyIJ9p26aJYCE5n8cKZSZVsSlwPLVkd/s1600/proxy.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig69ffiXy0pDF0WmtFCH_DrSxjtlvvGl61sZ6FSOdLG-6jfLI-MVco0fcM9G_7BA-P1XB-1LPpd7MyakNoAPVyx7o2nClNANlF3lJJo13FykL99uM5QzH-_eLA3CSp2BILmva_UOCIfFgN/s1600/proxy21.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEig69ffiXy0pDF0WmtFCH_DrSxjtlvvGl61sZ6FSOdLG-6jfLI-MVco0fcM9G_7BA-P1XB-1LPpd7MyakNoAPVyx7o2nClNANlF3lJJo13FykL99uM5QzH-_eLA3CSp2BILmva_UOCIfFgN/s1600/proxy21.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
3. Assign the Principle for the proxy. ( TestUser is in SQLAgentUser role , so we need to add this role as a principle)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhymbKtvmU3LTFqOck4J9gdsy2292wRgJPgigQDIEPz4OA13pXqXLx8T9XfA3ouQGjYR0p70eAl8Cf9iEITxKSQZFmdX0pvrhKMsrDhAwL79tZ1JMSEWQNrDCzB8VWXXbd6t7NLLhyphenhyphenDzu-o/s1600/principle1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhymbKtvmU3LTFqOck4J9gdsy2292wRgJPgigQDIEPz4OA13pXqXLx8T9XfA3ouQGjYR0p70eAl8Cf9iEITxKSQZFmdX0pvrhKMsrDhAwL79tZ1JMSEWQNrDCzB8VWXXbd6t7NLLhyphenhyphenDzu-o/s1600/principle1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can add user to the SQLAgentUser role as follows. (SQLAgentUser role is the lowest permission group to execute a SQL Agent job).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggyE8UYb9_z1jv4lkYvdr8CJ9oGVf3YN0x3Fgtijv2RKV1a55aP0U-9M9uTp8h9t2gVglFJ61tfBcvQfZZUZIQymMdnJGFb3qNEmbSYfnOFhtaXxoZxtdqhJu1_QXjK8cqpmqMHEnu0FuE/s1600/permissions1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggyE8UYb9_z1jv4lkYvdr8CJ9oGVf3YN0x3Fgtijv2RKV1a55aP0U-9M9uTp8h9t2gVglFJ61tfBcvQfZZUZIQymMdnJGFb3qNEmbSYfnOFhtaXxoZxtdqhJu1_QXjK8cqpmqMHEnu0FuE/s1600/permissions1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
4.Assign the run as value in SQL Agent job step to the proxy.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3D8B2-VoVoAsystw6Y3kq-uwCp-K_1UwBa0eYQr7Wd1n1hfopzGYy3jKIgTTfXxnUMfWJycmJcesFfxuPTk_Oq61SsWWFx3xjMEOyAuVgnnnQduLqM5n911PIiyICHjRZoy-NAnOfwnr8/s1600/creatingjob1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3D8B2-VoVoAsystw6Y3kq-uwCp-K_1UwBa0eYQr7Wd1n1hfopzGYy3jKIgTTfXxnUMfWJycmJcesFfxuPTk_Oq61SsWWFx3xjMEOyAuVgnnnQduLqM5n911PIiyICHjRZoy-NAnOfwnr8/s1600/creatingjob1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
Now execute the SQL Agent job and see the history. You can clearly see job is executed by that average user we mentioned in credentials. &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g&quot; /&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/5813156939488062278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/executing-sql-agent-job-with-proxy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/5813156939488062278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/5813156939488062278'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/executing-sql-agent-job-with-proxy.html' title='Executing SQL Agent Job with Proxy Account'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-g7gw6QtEAcBg96pRWx9W-l7KltXziUYVQeLP7NaZ5-lBuPqNRW7leq27io75oxbW60eEzkMYwfNOPcOmkQNz57JxrSiDn8hrhY9YNlBDpdUWsIvD_MSI-1RmeEX8PgCBcxwyk_HaXAj/s72-c/credentials1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-1221592385150378739</id><published>2012-05-23T22:55:00.001-07:00</published><updated>2012-05-26T22:30:50.535-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Drill Down Reports"/><category scheme="http://www.blogger.com/atom/ns#" term="multiple value"/><category scheme="http://www.blogger.com/atom/ns#" term="multiple value parameters"/><category scheme="http://www.blogger.com/atom/ns#" term="passing multivalue parameter to SSRS report"/><category scheme="http://www.blogger.com/atom/ns#" term="passing parameters"/><category scheme="http://www.blogger.com/atom/ns#" term="Passing Parameters using URL"/><category scheme="http://www.blogger.com/atom/ns#" term="SSRS"/><title type='text'>Pass Multi Value Parameter to SSRS Report Using URL</title><content type='html'>&lt;body&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;ca-pub-0910872792790218&quot;;
/* AltecnotesBlogger */
google_ad_slot = &quot;2128746353&quot;;
google_ad_width = 728;
google_ad_height = 90;
//--&gt;
&lt;/script&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;I have published a post that explaining about &lt;a href=&quot;http://altecnotes.blogspot.com/2012/05/passing-parameters-to-ssrs-report-using.html&quot; target=&quot;_blank&quot; title=&quot;Passing Parameters to SSRS Report using URL&quot;&gt;Passing Parameters to SSRS Report using&amp;nbsp;URL&lt;/a&gt; few months ago. That post solves one problem but still have some other problems. When we going to pass a multiple value parameter then that is stuck. The reason is we cannot pass 1-dimensional array through an URL.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; When we&amp;nbsp; want to pass dynamically changing&amp;nbsp; multiple values to SSRS report through URL&amp;nbsp; try the following way.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; We have our original report and target report. The error says exactly cannot pass a string array. So I have to pass values as one string. What I’m going to do is pass all the values as string to temporary parameter in the target report and then split those values.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;In Original Report&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I want to pass &lt;em&gt;Status&lt;/em&gt; (which is a multi-valued parameter) parameter’s values to my target report. Using Join I can pass the parameter values separated by commas as one string. That’s the only thing we should do in our original report. Don’t bother about &lt;em&gt;param1. &lt;/em&gt;For the time being use it as following.&lt;br /&gt;
&lt;br /&gt;
=”javascript:void(window.open(‘&lt;em&gt;&amp;lt;ReportServerURL&amp;gt;&lt;/em&gt;?&amp;lt;ReportURL&amp;gt;&amp;amp;rs:Command=Render&amp;amp;param1=” &amp;amp; Replace(Join(Parameters!Status.Value,”,”),”&amp;amp;”,”%2526″)&amp;nbsp; &amp;amp; “,’_blank’))”&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(Above code is clearly described in &lt;a href=&quot;http://altecnotes.blogspot.com/2012/05/passing-parameters-to-ssrs-report-using.html&quot; target=&quot;_blank&quot;&gt;Passing Parameters to SSRS Report using&amp;nbsp;URL&lt;/a&gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;In Target Report&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Then we comes to target report. I have to set those values to parameter called&amp;nbsp;&lt;em&gt;MonthlyStatus&lt;/em&gt;&amp;nbsp; in my target report. Before that we need to add new parameter for target report. I named it as ‘&lt;em&gt;param1&lt;/em&gt;‘ ( I think now you can get the idea about param1 which I used in above expression. Instead of directly passing to &lt;em&gt;MonthlyStatus&lt;/em&gt; I use &lt;em&gt;param1&lt;/em&gt;). &lt;em&gt;param1&lt;/em&gt; is a new parameter, which haven’t&amp;nbsp; any available values or any default values.&amp;nbsp; Set &lt;em&gt;parma1&lt;/em&gt; as a hidden parameter.(Because no one want to see that &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g&quot; /&gt; )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Then we come to the simple part. Now we have all the values separated by commas in &lt;em&gt;param1&lt;/em&gt; and need to split each value and set to related parameter. We can do this by editing the default value expression of the related parameter (in this case &lt;em&gt;MonthlyStatus&lt;/em&gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2mdAddFCsuZEYDCHbNI2xbDck5Sd-LThV96Cb9za3639MOSc8rWOd8B6AnATspjFHByPP7-KsBEldPFm5NADjoG9Z6iMP4qY4js90TViQaqV_VK4geQlgaFVUhpoWE-9ws-4lQHoYCE_/s1600/parameterproperties.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2mdAddFCsuZEYDCHbNI2xbDck5Sd-LThV96Cb9za3639MOSc8rWOd8B6AnATspjFHByPP7-KsBEldPFm5NADjoG9Z6iMP4qY4js90TViQaqV_VK4geQlgaFVUhpoWE-9ws-4lQHoYCE_/s1600/parameterproperties.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaBiWoBKedfj5kyKOgnha8hGZSKmMjOATaL8-6ZpzUhKw98_wl11gpIcwsvg5MMuB5ZqKRJXJIks7J7Dv-zjsLI3mFa-mkwGrD_Q8ksv_NZnjdQIHtWmlpmb_PUqh8hIB-rRf-H5sMbaYV/s1600/defaultvalueexpression.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaBiWoBKedfj5kyKOgnha8hGZSKmMjOATaL8-6ZpzUhKw98_wl11gpIcwsvg5MMuB5ZqKRJXJIks7J7Dv-zjsLI3mFa-mkwGrD_Q8ksv_NZnjdQIHtWmlpmb_PUqh8hIB-rRf-H5sMbaYV/s1600/defaultvalueexpression.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Make sure &lt;em&gt;param1&lt;/em&gt; is placed above than &lt;em&gt;MonthlyStatus&lt;/em&gt;&amp;nbsp; of the parameter order. Because &lt;em&gt;MonthlyStatus&lt;/em&gt;&amp;nbsp; using &lt;em&gt;param1&lt;/em&gt; value as default value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXHHzNAZy8xU4q9QdAyisLifRd8s6NGRwvK-6DcieslP7Z0PWJ6K62Cv7b0oaMb0bmK8yWb4i-SC5L61p9RbYg9zM2KrqW65PhWKDJ9f_co9djCba7z_dbM2NzlgH5nr47jvQORPckn54X/s1600/paremeterorder.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; qba=&quot;true&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXHHzNAZy8xU4q9QdAyisLifRd8s6NGRwvK-6DcieslP7Z0PWJ6K62Cv7b0oaMb0bmK8yWb4i-SC5L61p9RbYg9zM2KrqW65PhWKDJ9f_co9djCba7z_dbM2NzlgH5nr47jvQORPckn54X/s1600/paremeterorder.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: You cannot see the report preview in BIDS. But after deploying the report you can see that multi-value parameter’s values are passing to target report.&lt;br /&gt;
&lt;br /&gt;
There may be some better solutions for this ! If then please leave as comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/body&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/1221592385150378739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/pass-multi-value-parameter-to-ssrs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/1221592385150378739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/1221592385150378739'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/pass-multi-value-parameter-to-ssrs.html' title='Pass Multi Value Parameter to SSRS Report Using URL'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgx2mdAddFCsuZEYDCHbNI2xbDck5Sd-LThV96Cb9za3639MOSc8rWOd8B6AnATspjFHByPP7-KsBEldPFm5NADjoG9Z6iMP4qY4js90TViQaqV_VK4geQlgaFVUhpoWE-9ws-4lQHoYCE_/s72-c/parameterproperties.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-7814352690276268484</id><published>2012-05-21T03:17:00.002-07:00</published><updated>2012-05-26T22:24:33.441-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="70-515"/><category scheme="http://www.blogger.com/atom/ns#" term="MCTS"/><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft .NET Framework 4"/><category scheme="http://www.blogger.com/atom/ns#" term="Web Applications Development"/><title type='text'>Web Applications Development with Microsoft .NET Framework 4</title><content type='html'>&lt;body&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;ca-pub-0910872792790218&quot;;
/* AltecnotesBlogger */
google_ad_slot = &quot;2128746353&quot;;
google_ad_width = 728;
google_ad_height = 90;
//--&gt;
&lt;/script&gt;&lt;br /&gt;
&lt;script type=&quot;text/javascript&quot;
src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hello All,&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I would happy to inform that i have successfully completed the Web  Applications Development with Microsoft .NET Framework 4. (exam no  70-515).&amp;nbsp; For more details about this exam go to following link.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.microsoft.com/learning/en/us/exam.aspx?ID=70-515&amp;amp;locale=en-us&quot; target=&quot;_blank&quot; title=&quot;Web Applications Development with Microsoft .NET Framework 4&quot;&gt;Web Applications Development with Microsoft .NET Framework 4&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/body&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/7814352690276268484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/web-applications-development-with.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/7814352690276268484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/7814352690276268484'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/web-applications-development-with.html' title='Web Applications Development with Microsoft .NET Framework 4'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-4079251234039376620</id><published>2012-05-21T03:16:00.004-07:00</published><updated>2012-05-21T03:29:56.388-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Analysis Services"/><category scheme="http://www.blogger.com/atom/ns#" term="dimension default value"/><category scheme="http://www.blogger.com/atom/ns#" term="PerformancePoint filter default value"/><category scheme="http://www.blogger.com/atom/ns#" term="set default value dynamically"/><category scheme="http://www.blogger.com/atom/ns#" term="SSAS"/><title type='text'>Set Default Value of PerformancePoint Filter</title><content type='html'>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Basically default value of&amp;nbsp; a PerformancePoint filter is the default 
value of&amp;nbsp; the&amp;nbsp; relevant dimension. Following shows how to set default 
value of SSAS dimension. In my example I use dimTime dimension. I want 
to create a filter using dimTime dimension.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_hmi-N6w3F2A32JoS9jmos8nDj6nxXDz_jRGLHJTV2yciKmvc7LWYpWPRVqFWk6G0-oZklAznutDoKHq4tYJyAn6z8vKmQac5Nq8KHjmvItQlXvHDYvE5oZmpVjfbZ2px1h4bXGe3Y6Bj/s1600/defaultvalueproperties.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_hmi-N6w3F2A32JoS9jmos8nDj6nxXDz_jRGLHJTV2yciKmvc7LWYpWPRVqFWk6G0-oZklAznutDoKHq4tYJyAn6z8vKmQac5Nq8KHjmvItQlXvHDYvE5oZmpVjfbZ2px1h4bXGe3Y6Bj/s1600/defaultvalueproperties.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I’m going to use YearMonth member of dimTime dimension for the 
filter. So I set default value of YearMonth as shown in above figure.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;Set Default Value Dynamically&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Moreover we can use MDX expression to set the default value 
dynamically. Using that we can change the default value according to 
purpose.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKZ0UTJ0Pt_Yi07xTRyjI3AHRJvxkDgtpHZYOEdaqzzwOvRlUXsy_ZiIbX1Oing9bkhZhQmyULnr7yy6QnoNpIvU1pSJae4mu_X_ScD2tanQODGlLkUk8sIQakFX3eQnevLNZBLnCxphv7/s1600/mdxexpression.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKZ0UTJ0Pt_Yi07xTRyjI3AHRJvxkDgtpHZYOEdaqzzwOvRlUXsy_ZiIbX1Oing9bkhZhQmyULnr7yy6QnoNpIvU1pSJae4mu_X_ScD2tanQODGlLkUk8sIQakFX3eQnevLNZBLnCxphv7/s1600/mdxexpression.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxGPvgrWpAYAaKij6Pf4aLISZp30m2pFV1a3S3LXsNBo9VVbcadI0fRTq0Qbo-6d765g0H-tN-uZy4BbKfNk02FnH3a2URk3qTd4PTcSHMP5alZkzvOV0i_pBg1j1WTJqiAdArjLrHowQF/s1600/dynamicallydefaultvalue.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxGPvgrWpAYAaKij6Pf4aLISZp30m2pFV1a3S3LXsNBo9VVbcadI0fRTq0Qbo-6d765g0H-tN-uZy4BbKfNk02FnH3a2URk3qTd4PTcSHMP5alZkzvOV0i_pBg1j1WTJqiAdArjLrHowQF/s1600/dynamicallydefaultvalue.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Above MDX expression use to set the current month as default value in my scenario.&lt;br /&gt;
Now when I create PerformancePoint filter, this value becomes the default value.!!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/4079251234039376620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/set-default-value-of-performancepoint.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4079251234039376620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4079251234039376620'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/set-default-value-of-performancepoint.html' title='Set Default Value of PerformancePoint Filter'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_hmi-N6w3F2A32JoS9jmos8nDj6nxXDz_jRGLHJTV2yciKmvc7LWYpWPRVqFWk6G0-oZklAznutDoKHq4tYJyAn6z8vKmQac5Nq8KHjmvItQlXvHDYvE5oZmpVjfbZ2px1h4bXGe3Y6Bj/s72-c/defaultvalueproperties.png" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-2380724759041889128</id><published>2012-05-21T03:13:00.002-07:00</published><updated>2012-05-21T03:13:19.747-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><category scheme="http://www.blogger.com/atom/ns#" term="Unpivot"/><category scheme="http://www.blogger.com/atom/ns#" term="Unpivot in SSIS"/><title type='text'>Unpivot In SSIS</title><content type='html'>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Using Unpivot component in SSIS is a very easy task.&amp;nbsp; Following is 
the source table which I extracting from a excel source. It shows 
Application Software categorization and I want to get those categories 
(Business,Communication and Graphics) in to rows.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 543px;&quot;&gt;
&lt;colgroup&gt;&lt;col width=&quot;216&quot;&gt;&lt;/col&gt;
&lt;col width=&quot;186&quot;&gt;&lt;/col&gt;
&lt;col width=&quot;140&quot;&gt;&lt;/col&gt;
&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot; width=&quot;216&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;color: #993300;&quot;&gt;Business&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/td&gt;
&lt;td width=&quot;186&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;color: #993300;&quot;&gt;Communication&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/td&gt;
&lt;td width=&quot;140&quot;&gt;&lt;u&gt;&lt;b&gt;&lt;span style=&quot;color: #993300;&quot;&gt;Graphics&lt;/span&gt;&lt;/b&gt;&lt;/u&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;School Administration Software&lt;/td&gt;
&lt;td&gt;Microsoft Email Software&lt;/td&gt;
&lt;td&gt;3D Graphics Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Time Tracking Software&lt;/td&gt;
&lt;td&gt;BitTorrent Clients&lt;/td&gt;
&lt;td&gt;Image Viewers&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Cost Analysis Software&lt;/td&gt;
&lt;td&gt;WordPress&lt;/td&gt;
&lt;td&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
Following figure shows the Data Flow task of the ssis package.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi68lZPVwMZIUvMrtXahRkDvrSv5FUn-yfOx5ivftqYED1u9zYxEbQnRlshx4Oi-uPOGpyFazIvH-9Ti3J8IvR54Xe3eoFk6Pi0Y9NktKobay8EqAOJRMRy0IaDqab4UruU1Je2I48D_19W/s1600/df1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi68lZPVwMZIUvMrtXahRkDvrSv5FUn-yfOx5ivftqYED1u9zYxEbQnRlshx4Oi-uPOGpyFazIvH-9Ti3J8IvR54Xe3eoFk6Pi0Y9NktKobay8EqAOJRMRy0IaDqab4UruU1Je2I48D_19W/s1600/df1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Following is how we have to configure the Unpivot component. In here 
Destination Column name should be same for every input column.&amp;nbsp; Other 
destination column name is the pivot key value column name.&amp;nbsp; You can see
 these column headers in out put.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpoHgXd_YWS1FjM6rUarWKX6N7IiurTeVqYUYCO8rAfePRM3L1yujMEi8U5S3pKRjpVuHD-CKmpuBksJ-vshhpZjG9MVEa13gC78VWGH8I94Y4rtGhGtpFOYn_p53P3Y2xbtdbMPJmY-9D/s1600/unpivot.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpoHgXd_YWS1FjM6rUarWKX6N7IiurTeVqYUYCO8rAfePRM3L1yujMEi8U5S3pKRjpVuHD-CKmpuBksJ-vshhpZjG9MVEa13gC78VWGH8I94Y4rtGhGtpFOYn_p53P3Y2xbtdbMPJmY-9D/s1600/unpivot.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is how we have the out put after the unpivot operation.&lt;br /&gt;
&lt;br /&gt;

&lt;br /&gt;

&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 314px;&quot;&gt;
&lt;colgroup&gt;&lt;col width=&quot;106&quot;&gt;&lt;/col&gt;
&lt;col width=&quot;208&quot;&gt;&lt;/col&gt;
&lt;/colgroup&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot; width=&quot;106&quot;&gt;&lt;strong&gt;&lt;span style=&quot;color: #993300;&quot;&gt;Category&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td width=&quot;208&quot;&gt;&lt;strong&gt;&lt;span style=&quot;color: #993300;&quot;&gt;Application Software&lt;/span&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Business&lt;/td&gt;
&lt;td&gt;School Administration Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Communication&lt;/td&gt;
&lt;td&gt;Microsoft Email Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Graphics&lt;/td&gt;
&lt;td&gt;3D Graphics Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Business&lt;/td&gt;
&lt;td&gt;Time Tracking Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Communication&lt;/td&gt;
&lt;td&gt;BitTorrent Clients&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Graphics&lt;/td&gt;
&lt;td&gt;Image Viewers&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Business&lt;/td&gt;
&lt;td&gt;Cost Analysis Software&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height=&quot;20&quot;&gt;Communication&lt;/td&gt;
&lt;td&gt;WordPress&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

Make any comments about this post.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/2380724759041889128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/unpivot-in-ssis.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/2380724759041889128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/2380724759041889128'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/unpivot-in-ssis.html' title='Unpivot In SSIS'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi68lZPVwMZIUvMrtXahRkDvrSv5FUn-yfOx5ivftqYED1u9zYxEbQnRlshx4Oi-uPOGpyFazIvH-9Ti3J8IvR54Xe3eoFk6Pi0Y9NktKobay8EqAOJRMRy0IaDqab4UruU1Je2I48D_19W/s72-c/df1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-4237024872621682320</id><published>2012-05-21T03:01:00.000-07:00</published><updated>2012-05-21T03:01:12.169-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Avoid Null"/><category scheme="http://www.blogger.com/atom/ns#" term="Excel"/><category scheme="http://www.blogger.com/atom/ns#" term="Excel Data Range"/><category scheme="http://www.blogger.com/atom/ns#" term="Excel Source"/><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="OpenRowset"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><title type='text'>Avoid Null Values From Excel File with SSIS</title><content type='html'>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Working with Excel is bit mess in Integration Services.When we 
extracting data from Excel File sometimes struggle with Null values.&lt;br /&gt;
&lt;br /&gt;

Assume that you want to get the data from selected area of an Excel 
file excluding Null values. Ex:- &amp;nbsp;I need to get the data only from 
A8:C20 range in following excel file. I don’t want to get the first 7 
rows of the excel file because it’s just a topic.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV89d2mRoIUJji-NJ3ltKi3NFwuvFWRIdHMjsMutykowifMTJ4TVEO6cl1G-dx5DDsrYLPdAwrNuU8UoqoWFD0dwqu9W0NHWZ85NtVTmjKNuKXCW5pHS6iFdzhDvWOgEXH8Wm3TueC51ip/s1600/excel_file1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV89d2mRoIUJji-NJ3ltKi3NFwuvFWRIdHMjsMutykowifMTJ4TVEO6cl1G-dx5DDsrYLPdAwrNuU8UoqoWFD0dwqu9W0NHWZ85NtVTmjKNuKXCW5pHS6iFdzhDvWOgEXH8Wm3TueC51ip/s1600/excel_file1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
This can be done directly through the Excel Source component. There is a property named &lt;strong&gt;OpenRowSet&lt;/strong&gt; in Excel Source component. After configuring the Excel Source component you can only see the sheet name.&lt;br /&gt;

I just change the &lt;strong&gt;OpenRowset&lt;/strong&gt; property to Sheet1$A8:C20 . Now it’s only extracting&amp;nbsp; data from selected area.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNtc5mQlIr4hSK5gnxN0UGDVe01aAv5p8p92LMmLih40GvLv4NrRHH5Wsb-nPlaOqBPZddhITtb6arux7g0Fg0M84rgR4TEX1zDpbHMP_PzaSWbDhQCU_CIu6YoIbORJ_XW5SCTMsfun_b/s1600/excelsource_properties1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNtc5mQlIr4hSK5gnxN0UGDVe01aAv5p8p92LMmLih40GvLv4NrRHH5Wsb-nPlaOqBPZddhITtb6arux7g0Fg0M84rgR4TEX1zDpbHMP_PzaSWbDhQCU_CIu6YoIbORJ_XW5SCTMsfun_b/s1600/excelsource_properties1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;If you want this value can be given as a variable. It can be done easily by changing the &lt;strong&gt;AccessMode&lt;/strong&gt; property .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdoEyDT-eAZCzeItJ_dn9Y9XvUfmC6KNZLqS8vNd5N-c_FVFcWMD802HwZpvoL4uNSSAgx-lZBWqMAPPn6Qz3FYXLSPlYbpfTmPJ94HeH90gZKgCTHjdoMhQsgTfY2QACcg2CS0xrwvtQI/s1600/excelsource_accessmode.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdoEyDT-eAZCzeItJ_dn9Y9XvUfmC6KNZLqS8vNd5N-c_FVFcWMD802HwZpvoL4uNSSAgx-lZBWqMAPPn6Qz3FYXLSPlYbpfTmPJ94HeH90gZKgCTHjdoMhQsgTfY2QACcg2CS0xrwvtQI/s1600/excelsource_accessmode.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/4237024872621682320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/avoid-null-values-from-excel-file-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4237024872621682320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4237024872621682320'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/avoid-null-values-from-excel-file-with.html' title='Avoid Null Values From Excel File with SSIS'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiV89d2mRoIUJji-NJ3ltKi3NFwuvFWRIdHMjsMutykowifMTJ4TVEO6cl1G-dx5DDsrYLPdAwrNuU8UoqoWFD0dwqu9W0NHWZ85NtVTmjKNuKXCW5pHS6iFdzhDvWOgEXH8Wm3TueC51ip/s72-c/excel_file1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-4985487763120451473</id><published>2012-05-21T02:57:00.002-07:00</published><updated>2012-05-21T02:57:30.735-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP .NET"/><category scheme="http://www.blogger.com/atom/ns#" term="Grid View"/><category scheme="http://www.blogger.com/atom/ns#" term="Grid View DataBind"/><title type='text'>Grid View Data Bind with an Image field</title><content type='html'>Today I’m going to discuss how to bind data to Grid View component that has image field. ( using C#)&lt;br /&gt;

Let’s do it step by step.&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;text-decoration: underline;&quot;&gt;Step 1&lt;/span&gt; – Create the Grid View component.&lt;br /&gt;
&lt;br /&gt;

I’m using only three columns(File Name, Status , ImageStatus) 
Following shows the Source view. This can be done by Design view easily.&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;asp:GridView&lt;/span&gt;&lt;span style=&quot;color: red;&quot;&gt; ID&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”GridView1″&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”server”&lt;/span&gt; &amp;nbsp;&lt;span style=&quot;color: red;&quot;&gt;Width&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”500px”&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;PageSize&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”12″ &amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt; &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Columns&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt; &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;asp:BoundField&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;HeaderText&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”File Name”&lt;/span&gt;&amp;nbsp; &lt;span style=&quot;color: red;&quot;&gt;DataField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”FileName”&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: red;&quot;&gt;&amp;nbsp;HeaderStyle-Width&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”300px”&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;/asp:BoundField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;asp:BoundField&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;HeaderText&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”Status&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;DataField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”Status” &amp;gt; &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;/asp:BoundField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;asp:ImageField&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;HeaderText&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”ImageStatus”&amp;nbsp;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;DataImageUrlField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;=”ImageUrl”&amp;gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;/asp:ImageField&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt; &amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;/Columns&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;/asp:GridView&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;text-decoration: underline;&quot;&gt;Step 2&lt;/span&gt; — Get required data to data table&lt;br /&gt;

I’m not going to explain this step. I assume that GetTable() method do data retrieving part and store them to &lt;strong&gt;fileInfo&lt;/strong&gt; DataTable. This DataTable contains FileName and Staus columns.&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: #33cccc;&quot;&gt;DataTable&lt;/span&gt; fileInfo = GetTable();&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;text-decoration: underline;&quot;&gt;Step 3&lt;/span&gt; – Create DataSet and Add new&lt;strong&gt; ImageUrl &lt;/strong&gt;column.&lt;br /&gt;

This ImageUrl contains appropriate image for Status column.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;gridSet = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt;&lt;span style=&quot;color: #33cccc;&quot;&gt; DataSet&lt;span style=&quot;color: black;&quot;&gt;();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;

gridSet.Tables.Add(fileInfo);&lt;br /&gt;

gridSet.Tables[0].Columns.Add(&lt;span style=&quot;color: maroon;&quot;&gt;“ImageUrl”&lt;/span&gt;,&lt;span style=&quot;color: blue;&quot;&gt; typeof&lt;/span&gt;(&lt;span style=&quot;color: #33cccc;&quot;&gt;String&lt;/span&gt;));&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;text-decoration: underline;&quot;&gt;Step 4&lt;/span&gt; – Add the Image URL to &lt;strong&gt;ImageUrl&lt;/strong&gt; column&lt;br /&gt;

Assume that Status column have two values(R-Readable and 
U-Unreadable) . Now we are going to map the image suitable for status&amp;nbsp; 
of the file.&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt; for&lt;/span&gt; (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 0; i &amp;lt; gridSet.Tables[0].Rows.Count; i++)&lt;br /&gt;

{&lt;br /&gt;

&lt;div style=&quot;padding-left: 30px;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;&amp;nbsp; switch&lt;/span&gt; (gridSet.Tables[0].Rows[i].Field&amp;lt;Char&amp;gt;(“Status”))&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
{&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;case&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt; ‘R’&lt;/span&gt;:&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
gridSet.Tables[0].Rows[i][&lt;span style=&quot;color: maroon;&quot;&gt;&quot;ImageUrl&quot;&lt;/span&gt;] = &lt;span style=&quot;color: maroon;&quot;&gt;“\\Server1\Files\Images\ readable.png”&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt; break&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: maroon;&quot;&gt;‘U’&lt;/span&gt;:&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
gridSet.Tables[0].Rows[i][&lt;span style=&quot;color: maroon;&quot;&gt;&quot;ImageUrl&quot;&lt;/span&gt;] =&lt;span style=&quot;color: maroon;&quot;&gt; “\\Server1\Files\Images\unreadable.png”&lt;/span&gt;;&lt;/div&gt;
&lt;div style=&quot;padding-left: 30px;&quot;&gt;
&lt;span style=&quot;color: blue;&quot;&gt; break&lt;/span&gt;;&lt;/div&gt;
}&lt;br /&gt;

}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;text-decoration: underline;&quot;&gt;Step 5&lt;/span&gt; – Bind the Data to Grid View&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.GridView1.DataSource = gridSet.Tables[0];&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.GridView1.DataBind();&lt;br /&gt;
&lt;br /&gt;

That’s all. See the following grid view sample. Post your comments !&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9y-ZDFQn3peiunNmlhPK1gMcW0gWVDe5jerExryVO00P1KXVvfcPLhxfdJEXOCdoc1J0bGvgDCUGq4l2EvY42g3xLNKFeqQ6BD2p6cQr2i1BFuf4AkOvxU1oo3yCpqS5lFFUbQn-JCksd/s1600/sample_gridview1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9y-ZDFQn3peiunNmlhPK1gMcW0gWVDe5jerExryVO00P1KXVvfcPLhxfdJEXOCdoc1J0bGvgDCUGq4l2EvY42g3xLNKFeqQ6BD2p6cQr2i1BFuf4AkOvxU1oo3yCpqS5lFFUbQn-JCksd/s1600/sample_gridview1.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/4985487763120451473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/grid-view-data-bind-with-image-field.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4985487763120451473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4985487763120451473'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/grid-view-data-bind-with-image-field.html' title='Grid View Data Bind with an Image field'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9y-ZDFQn3peiunNmlhPK1gMcW0gWVDe5jerExryVO00P1KXVvfcPLhxfdJEXOCdoc1J0bGvgDCUGq4l2EvY42g3xLNKFeqQ6BD2p6cQr2i1BFuf4AkOvxU1oo3yCpqS5lFFUbQn-JCksd/s72-c/sample_gridview1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-6343937750308928105</id><published>2012-05-21T02:39:00.001-07:00</published><updated>2012-05-21T02:39:21.495-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP .NET"/><category scheme="http://www.blogger.com/atom/ns#" term="Calendar Extender"/><category scheme="http://www.blogger.com/atom/ns#" term="Date Validation"/><category scheme="http://www.blogger.com/atom/ns#" term="Range Validator"/><title type='text'>Date Validation Using Range Validator</title><content type='html'>There may be instances that you want to restrict some range of dates in 
calendar extender. In this instance I’m restricting the future dates. 
(Current date is the maximum date !)&amp;nbsp; I have Calendar Extender and 
TextBox(DateBox) to select the date. When the user is selecting some 
date that exceeding current date, I want to give a restrict message.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdItCZp2MA3elepOslJgi9aiCXcErRnA76vpExeXWNivqNSzK4IYOtXKmrMyTKT_YxKzDFGSBwLyAzttrsbA-PYPHuw77iqGJe00hoSa51LDQYyCftgYIadb5S8akxgljaTJG0Gr8cWY1m/s1600/calendarextender.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdItCZp2MA3elepOslJgi9aiCXcErRnA76vpExeXWNivqNSzK4IYOtXKmrMyTKT_YxKzDFGSBwLyAzttrsbA-PYPHuw77iqGJe00hoSa51LDQYyCftgYIadb5S8akxgljaTJG0Gr8cWY1m/s1600/calendarextender.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&amp;nbsp;Insert the Range Validator component to the page.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMj92oiVOsfr1CPTnLIjhlwl4waQF318SOdgjg-uH936-j07J3EZvFJB7scP5yXXHQwnNx1G92f_PG-I965w7D_HPUVCaPOpaTBw22-9Av8PgAaRKbg7h_gxAXOmb_PSutg2H-sNVcPWMn/s1600/toolbox.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMj92oiVOsfr1CPTnLIjhlwl4waQF318SOdgjg-uH936-j07J3EZvFJB7scP5yXXHQwnNx1G92f_PG-I965w7D_HPUVCaPOpaTBw22-9Av8PgAaRKbg7h_gxAXOmb_PSutg2H-sNVcPWMn/s1600/toolbox.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
Set properties as shown in following. Most important properties are&lt;br /&gt;

&lt;ul&gt;
&lt;li&gt;ControlToValidate – What is the control we want to compare with Range Validator (DateBox)&lt;/li&gt;
&lt;li&gt;Type – Since we are going to validate Date, this should be Date type&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVFiFWiCmY0nUQwwq08RQtswmQX_M9drC3gDBTysMhCwLupdhWD20BNZRXrh2DuRa7N6-XlL8qqxynQcWCjnPJmtquxo4juIxqNCCN8Hb7E8yJ9oVUfqLyKhI3oa2gqvJu0cG8_83wM8Lr/s1600/rangevalidator.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVFiFWiCmY0nUQwwq08RQtswmQX_M9drC3gDBTysMhCwLupdhWD20BNZRXrh2DuRa7N6-XlL8qqxynQcWCjnPJmtquxo4juIxqNCCN8Hb7E8yJ9oVUfqLyKhI3oa2gqvJu0cG8_83wM8Lr/s1600/rangevalidator.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: #339966;&quot;&gt;&amp;nbsp;&amp;nbsp;// set the default date in date box&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;

DateBox.Text = &lt;span style=&quot;color: #33cccc;&quot;&gt;DateTime&lt;/span&gt;.Today.ToShortDateString();&lt;br /&gt;
RangeValidator1.MaximumValue = DateTime.Today.ToShortDateString();&lt;br /&gt;
&lt;br /&gt;

RangeValidator1.Validate();&lt;br /&gt;
&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt; if&lt;/span&gt; (RangeValidator1.IsValid)&lt;br /&gt;

&lt;span style=&quot;color: #339966;&quot;&gt; // your code when date is valid.&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: blue;&quot;&gt;else&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: #339966;&quot;&gt;&amp;nbsp; // your code when date is exceeding today.&lt;/span&gt;&lt;br /&gt;

Set the Minimum Value of the Range Validator in properties window or in page load event. Done!!&lt;br /&gt;
&lt;br /&gt;

When the user is selecting a invalid date then RangeValidator1 is 
displaying and your custom code which is in commented area is working. 
Post your comments!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/6343937750308928105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/date-validation-using-range-validator.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/6343937750308928105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/6343937750308928105'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/date-validation-using-range-validator.html' title='Date Validation Using Range Validator'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdItCZp2MA3elepOslJgi9aiCXcErRnA76vpExeXWNivqNSzK4IYOtXKmrMyTKT_YxKzDFGSBwLyAzttrsbA-PYPHuw77iqGJe00hoSa51LDQYyCftgYIadb5S8akxgljaTJG0Gr8cWY1m/s72-c/calendarextender.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-4940415415110881523</id><published>2012-05-21T02:12:00.001-07:00</published><updated>2012-05-21T02:12:08.875-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP .NET"/><category scheme="http://www.blogger.com/atom/ns#" term="get retrun value"/><category scheme="http://www.blogger.com/atom/ns#" term="passing parameters"/><category scheme="http://www.blogger.com/atom/ns#" term="Thread"/><title type='text'>Passing Parameters to Threads and Get Return Value</title><content type='html'>When you using threads, in most cases you need to pass parameters or you need to get return value or you need to do both.&lt;br /&gt;
&lt;br /&gt;

Following example demonstrates this scenario clearly in c#.&lt;br /&gt;
&lt;br /&gt;

There’s a method called ExecutePackage that we want to start using our thread and should provide a parameter(String).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;

&lt;address&gt;
&lt;span style=&quot;color: blue;&quot;&gt;private&lt;/span&gt; &lt;span style=&quot;color: #33cccc;&quot;&gt;String&lt;/span&gt; ExecutePackage(&lt;span style=&quot;color: #33cccc;&quot;&gt;String&lt;/span&gt; pName)&lt;/address&gt;
&lt;address&gt;
{&lt;/address&gt;
&lt;address&gt;
……&lt;/address&gt;
&lt;address&gt;
……&lt;/address&gt;
&lt;address&gt;
……&lt;/address&gt;
&lt;address&gt;
&amp;nbsp;&lt;/address&gt;
&lt;address&gt;
&lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; status;&lt;/address&gt;
&lt;address&gt;
}&lt;/address&gt;
You can pass parameter and get the return value using following thread.&lt;br /&gt;

&lt;address&gt;
&lt;span style=&quot;color: blue;&quot;&gt;using&lt;/span&gt; System.Threading;&lt;/address&gt;
&lt;address&gt;
&lt;span style=&quot;color: #33cccc;&quot;&gt;Thread&lt;/span&gt; thr;&lt;/address&gt;
&lt;address&gt;
thr = new &lt;span style=&quot;color: #33cccc;&quot;&gt;Thread&lt;/span&gt;(&lt;span style=&quot;color: blue;&quot;&gt;delegate&lt;/span&gt;()&lt;/address&gt;
&lt;address&gt;
{&lt;/address&gt;
&lt;address&gt;
result = &lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.ExecutePackage(packageName);&lt;/address&gt;
&lt;address&gt;
});&lt;/address&gt;
&lt;address&gt;
thr.Start();&lt;/address&gt;
&lt;address&gt;
&amp;nbsp;&lt;/address&gt;
It’s done !!!</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/4940415415110881523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/passing-parameters-to-threads-and-get.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4940415415110881523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/4940415415110881523'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/passing-parameters-to-threads-and-get.html' title='Passing Parameters to Threads and Get Return Value'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-5541853017967406043</id><published>2012-05-21T02:11:00.000-07:00</published><updated>2012-05-21T02:11:00.174-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Begin Tran"/><category scheme="http://www.blogger.com/atom/ns#" term="Commit Tran"/><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="Retain Same Connection"/><category scheme="http://www.blogger.com/atom/ns#" term="RollBack Tran"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><title type='text'>The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION ???</title><content type='html'>When this error occurred to me, first what I did was check the Begin 
Transaction. But unfortunately there were no problems in those 
components. But every time package execution was failed.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkexL5J3AWmfLE0v_OXXvp6RmWuBdCBjoywamPampSGdd9QmzaO2QZ5yOXpXqqimK7CJZdEzcpbhQQLsQMAE-7P9_dpWgOnna-KJAaXCm-jxgINQtFCPCg7ITcJr0YpMkH1tqBe0rA9SM9/s1600/fail_process.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkexL5J3AWmfLE0v_OXXvp6RmWuBdCBjoywamPampSGdd9QmzaO2QZ5yOXpXqqimK7CJZdEzcpbhQQLsQMAE-7P9_dpWgOnna-KJAaXCm-jxgINQtFCPCg7ITcJr0YpMkH1tqBe0rA9SM9/s1600/fail_process.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
In this case we want to do some transaction using a connection and 
commit or rollback that transaction using same connection but in 
different task. So it’s essential to keep the same connection to do that
 operation.&lt;br /&gt;

We can set this using Retain Same Connection property of the 
connection. Set that property to True in the properties window of the 
connection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTJDenoQO1xThl81bKUKl0rhRol-GOwhxKEM8P1TJH10xqTzfSv4pniwQNsSY2dbe9EdotmzYypSiDoJi2ShBuynoa0-lKyfwwCwrAAkv5eRNiDMeoXqFWTufuivwIUQVvq-anYDYShck_/s1600/connection_properties.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTJDenoQO1xThl81bKUKl0rhRol-GOwhxKEM8P1TJH10xqTzfSv4pniwQNsSY2dbe9EdotmzYypSiDoJi2ShBuynoa0-lKyfwwCwrAAkv5eRNiDMeoXqFWTufuivwIUQVvq-anYDYShck_/s1600/connection_properties.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;This will solve the above problem. &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/5541853017967406043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/commit-transaction-request-has-no.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/5541853017967406043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/5541853017967406043'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/commit-transaction-request-has-no.html' title='The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION ???'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkexL5J3AWmfLE0v_OXXvp6RmWuBdCBjoywamPampSGdd9QmzaO2QZ5yOXpXqqimK7CJZdEzcpbhQQLsQMAE-7P9_dpWgOnna-KJAaXCm-jxgINQtFCPCg7ITcJr0YpMkH1tqBe0rA9SM9/s72-c/fail_process.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-6174797728728250756</id><published>2012-05-21T02:08:00.000-07:00</published><updated>2012-05-21T03:20:44.771-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AjaxToolkit"/><category scheme="http://www.blogger.com/atom/ns#" term="Update Panel"/><category scheme="http://www.blogger.com/atom/ns#" term="Update Progress"/><title type='text'>Update Progress is not working properly</title><content type='html'>Update Progress is used to display animated text or some message to 
users, while target Update Panel is working. But some cases this isn’t 
happening as we want.&lt;br /&gt;
&lt;br /&gt;
We can use Ajax toolkit component as alternative.&lt;br /&gt;
First you have to download AjaxToolkit latest release and add it as reference into your project.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s1600/ado-net1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;279&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s320/ado-net1.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgr7fx7SmJ6LmnoHXmd1GLHt2RtlOQuI8bJ7kJ9hyCWP939iMvHkpvZ-XCzX58JJYse6JnTNGXPXs7DkyQ5vN4lfmQOPiWTVhzQHbNkZ4px0ZSCurPfeOZ19UxzhOohzo5UZJTt0Q4eS0AM/s1600/solution_explorer1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgr7fx7SmJ6LmnoHXmd1GLHt2RtlOQuI8bJ7kJ9hyCWP939iMvHkpvZ-XCzX58JJYse6JnTNGXPXs7DkyQ5vN4lfmQOPiWTVhzQHbNkZ4px0ZSCurPfeOZ19UxzhOohzo5UZJTt0Q4eS0AM/s1600/solution_explorer1.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Add a assembly to your config file.&lt;br /&gt;
Then instead of &amp;lt;asp:UpdateProgress&amp;gt; tag you can use 
&amp;lt;ajaxToolkit:UpdatePanelAnimationExtender&amp;gt; tag and target control 
id should be your update panel id.&lt;br /&gt;
&lt;br /&gt;
Inside &amp;lt;OnUpdating&amp;gt; tag you can assign a task that will working
 while processing and inside &amp;lt;OnUpdated&amp;gt; tag you can assign task 
that should work after processed.&lt;br /&gt;
&lt;br /&gt;
In following example code I have used a label to display a message to user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEiGEwgf8eEMxSZxNTxKlfiXkN4Tb2DMYjmtOZz4hG1pAOp_PaxK_wWl9z4qOzdMINd_apI_lpINklMEWZiR4BLKEuN8Pb9nXF8fW-uQgbUF6VWMgB78b_erQ8-FOTwvu_J54P0EB2t0Y4/s1600/updatepanel.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEiGEwgf8eEMxSZxNTxKlfiXkN4Tb2DMYjmtOZz4hG1pAOp_PaxK_wWl9z4qOzdMINd_apI_lpINklMEWZiR4BLKEuN8Pb9nXF8fW-uQgbUF6VWMgB78b_erQ8-FOTwvu_J54P0EB2t0Y4/s1600/updatepanel.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Zn6TsQXOv53BUt7o63SK28zwdG9RnHMeRTtN1gGIvMQTh7iJb1ZKVDt_K9fy9TcH6u76WTWWSXt8tXQX3n8Yevo7Z27Fp0V41Ewgdw8BV5kIsDTs0HTwSZ5NMw93ado6W-P1G8OUjFgz/s1600/updatepanelanimationextender3.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Zn6TsQXOv53BUt7o63SK28zwdG9RnHMeRTtN1gGIvMQTh7iJb1ZKVDt_K9fy9TcH6u76WTWWSXt8tXQX3n8Yevo7Z27Fp0V41Ewgdw8BV5kIsDTs0HTwSZ5NMw93ado6W-P1G8OUjFgz/s1600/updatepanelanimationextender3.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/6174797728728250756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/update-progress-is-not-working-properly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/6174797728728250756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/6174797728728250756'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/update-progress-is-not-working-properly.html' title='Update Progress is not working properly'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s72-c/ado-net1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-3191567050187313508</id><published>2012-05-21T02:04:00.002-07:00</published><updated>2012-05-21T02:04:28.895-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ADO NET Source"/><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><title type='text'>Dynamic SQL Command in ADO NET Source</title><content type='html'>In ADO NET Source there is no place to insert dynamic SQL command. (OLEDB Source there is &lt;strong&gt;SQL command from variable&lt;/strong&gt; to insert dynamic SQL command).&lt;br /&gt;

As shows in following figure there are only two options in ADO NET Source.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s1600/ado-net1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s1600/ado-net1.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&amp;nbsp;What you have to do is just go back to control flow and check the properties of Data Flow task that consist ADO NET Source.&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;

Once you get the Expression Editor window you can set the [your ADO NET Source Name][SQL Command] as you want.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKUQXZdviotfbbj-_iXBqXlcykpIMxJdrsnLniAIsvPWNoX7g4s7hqUgdIenn9l5_w6VEyfRMLfa3tRe2LfkrXGHLpTOUnBPeWJydOXjvTyoRT2eDjENcgtXRTXiljq95uOvepNnfMvBib/s1600/expression1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKUQXZdviotfbbj-_iXBqXlcykpIMxJdrsnLniAIsvPWNoX7g4s7hqUgdIenn9l5_w6VEyfRMLfa3tRe2LfkrXGHLpTOUnBPeWJydOXjvTyoRT2eDjENcgtXRTXiljq95uOvepNnfMvBib/s1600/expression1.jpg&quot; /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
You can set a dynamic SQL command to a variable in earlier step. Then use that variable in Expression builder as shown below. &lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&amp;nbsp;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTJkhZpbDORfJQpmV6HOatmMWs3drsHDujw6PD-CriOCFB_A4gEJTR5Z2VCmF1onj6OVVFktQJ1n-RhWNGkUhC_7IwXHcLw-jMULmjyCW7958OPBqMxhW44D-baH3ieZ247yyXzVK8Skef/s1600/expressionbuilder.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTJkhZpbDORfJQpmV6HOatmMWs3drsHDujw6PD-CriOCFB_A4gEJTR5Z2VCmF1onj6OVVFktQJ1n-RhWNGkUhC_7IwXHcLw-jMULmjyCW7958OPBqMxhW44D-baH3ieZ247yyXzVK8Skef/s1600/expressionbuilder.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&amp;nbsp;That’s it! &amp;nbsp;It works fine . &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/3191567050187313508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/dynamic-sql-command-in-ado-net-source.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/3191567050187313508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/3191567050187313508'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/dynamic-sql-command-in-ado-net-source.html' title='Dynamic SQL Command in ADO NET Source'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibz5ZJvsEOflUt6-PzH03vLJf-sBATqpWrEY-8zynn1AM9m_cHJx2m6UgH6bjAyVHFFLjJS4Jbj-9871Nfv0HdhqDt7MXcB1KjDR_qa6tQETwmdqHXXVvvhW0jY0V7vEIFx58T5Fd9EZxx/s72-c/ado-net1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-465025359132051669</id><published>2012-05-19T23:35:00.000-07:00</published><updated>2012-05-19T23:38:49.797-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Drill Down Reports"/><category scheme="http://www.blogger.com/atom/ns#" term="Passing Parameters using URL"/><category scheme="http://www.blogger.com/atom/ns#" term="Reporting Services"/><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Integrated"/><category scheme="http://www.blogger.com/atom/ns#" term="SSRS"/><title type='text'>Passing Parameters to SSRS Report using URL</title><content type='html'>&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Parameters are very useful when you come to report customization. Its
 going to more useful, if those parameters can set before loading the 
report. you can do it easily using URL. With SharePoint Integrated mode,
 this is little bit confused.&lt;br /&gt;
&lt;br /&gt;
There are two ways to do this task.&lt;br /&gt;
&lt;br /&gt;
1]&amp;nbsp; using Report Viewer (this is the default way when you configured reporting service to SharePoint Integrated mode)&lt;br /&gt;
&lt;br /&gt;
2] using HTML viewer (This is the most interesting way in SharePoint Integrated mode. I’m going to stick to this way mostly)&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: cyan;&quot;&gt;




1.&lt;/h1&gt;
When you passing parameters to&amp;nbsp; report viewer you have to follow this way.&lt;br /&gt;
&lt;b&gt;ReportViewer URL&amp;amp;rp:&lt;i&gt;parameter1=Value1&amp;amp;rp:parameter2=value2&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
nothing can be wrong with this except parameters displaying in right hand side pane, which i do not like. &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h1 style=&quot;background-color: cyan;&quot;&gt;




2.&lt;/h1&gt;
&lt;br /&gt;
You can use the HTML viewer to view the reports .&lt;br /&gt;
here is the way to view the report in HTML viewer.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Your Report Server Virtual Directory&lt;/b&gt; &lt;b&gt;? Full Path of Report&lt;/b&gt; (where report is deployed in SharePoint site)&lt;br /&gt;
&lt;br /&gt;
Example — &amp;gt; &lt;b&gt;&lt;i&gt;http://Server1/ReportServer?http://server1/sites/Test/Reports/YearlyTrend.rdl&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Using above example you can view the report in HTML viewer. When it 
comes to parameter passing&amp;nbsp; just append the parameter names and values 
to end of the URL with &lt;i&gt;rs:command=render&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;http://Server1/ReportServer?http://server1/sites/Test/Reports/YearlyTrend.rdl&lt;b&gt;&amp;amp;&lt;i&gt;rs:command=render&lt;/i&gt;&amp;amp;parameter1=Value1&amp;amp;parameter2=value2&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
You can pass multiple parameters using above format. Target report’s parameters affected by values that you passed in URL &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif?m=1129645325g&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Further Modifications …&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
This can be used in SSRS Report drill down. When you want to drill down report there is an option to set URL.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPrdp_rqXbYlB_nH-dqEas8C95p4SnRd7Tp9dxOAWS882x-ibIAc5eJ0pLCIOjrnB0-2bx5b0x8gmg0QcSd2-kbG2NKBIAsSPumAiFq0oTfAa0A1X7CH7Rbv_Voeyaj41waGziw01QdO4K/s1600/reportdrilldown.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPrdp_rqXbYlB_nH-dqEas8C95p4SnRd7Tp9dxOAWS882x-ibIAc5eJ0pLCIOjrnB0-2bx5b0x8gmg0QcSd2-kbG2NKBIAsSPumAiFq0oTfAa0A1X7CH7Rbv_Voeyaj41waGziw01QdO4K/s1600/reportdrilldown.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Simply can set the URL to target report using expression with 
available parameters. Following expression can use to pop up the target 
report in separate window.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;=”javascript:void(window.open(&lt;/b&gt;‘&lt;i&gt;http://Server1/ReportServer?http://server1/sites/Test/Reports/YearlyTrend.rdl&amp;amp;&lt;i&gt;rs:command=render&lt;/i&gt;&amp;amp;parameter1=Value1&amp;amp;parameter2=value2&lt;/i&gt;&lt;i&gt;&lt;/i&gt;&lt;b&gt;‘,’&lt;/b&gt;&lt;b&gt;_blank’))”&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After all most common seen problem is ‘&amp;amp;’ (ampersand) symbol 
cannot pass in URL. because most of the time parameter values contain 
‘&amp;amp;’ symbol. See the following example.&lt;br /&gt;
&lt;br /&gt;
=”javascript:void(window.open(‘&lt;i&gt;http://Server1/ReportServer?http://server1/sites/Test/Reports/YearlyTrend.rdl&lt;/i&gt;&amp;amp;ReportParameter1=” &amp;amp; Parameters!ReportParameter1.value &amp;amp; ” ‘,’_blank’))”&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Parameters!ReportParameter1.value containing a ‘&amp;amp;’ symbol but 
this cannot be passed. you can Replace the ‘&amp;amp;’ symbol with ‘%2526′ (
 which is the url encoding of ‘&amp;amp;’)&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
=”javascript:void(window.open(&lt;i&gt;‘http://Server1/ReportServer?http://server1/sites/Test/Reports/YearlyTrend.rdl&lt;/i&gt;&amp;amp;ReportParameter1=” &amp;amp; &lt;b&gt;Replace(Parameters!ReportParameter1.value,”&amp;amp;”,”%2526″)&lt;/b&gt; &amp;amp; ” ‘,’_blank ‘))”&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Post any problems that you have regarding this. Any thoughts will be welcomed !&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/465025359132051669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/passing-parameters-to-ssrs-report-using.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/465025359132051669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/465025359132051669'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/passing-parameters-to-ssrs-report-using.html' title='Passing Parameters to SSRS Report using URL'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPrdp_rqXbYlB_nH-dqEas8C95p4SnRd7Tp9dxOAWS882x-ibIAc5eJ0pLCIOjrnB0-2bx5b0x8gmg0QcSd2-kbG2NKBIAsSPumAiFq0oTfAa0A1X7CH7Rbv_Voeyaj41waGziw01QdO4K/s72-c/reportdrilldown.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-863059184184402748</id><published>2012-05-19T23:01:00.000-07:00</published><updated>2012-05-19T23:01:03.181-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="SQL Agent Jobs"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><title type='text'>Get SSIS package Execution Status</title><content type='html'>&lt;strong&gt;When SSIS Package is executing by SQL Agent Job&lt;/strong&gt;…&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

DTSExecResult result;&lt;br /&gt;

package = app.LoadPackage(packagePath, null);&lt;br /&gt;

try&lt;br /&gt;

{&lt;br /&gt;

package.Execute();&lt;br /&gt;

result = package.ExecutionResult;&lt;br /&gt;

}&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

.&lt;br /&gt;

Yes. It works fine. But in this case we are going to execute our SSIS
 package using SQL Server Agent job. Therefore above code is useless.&lt;br /&gt;
&lt;br /&gt;

What I did in this case is, use &lt;strong&gt;sysjobhistory&lt;/strong&gt; table. Each and every time start the SQL Agent job , one entry is stored in &lt;strong&gt;sysjobhistory&lt;/strong&gt; table.&amp;nbsp; Just need to get the status from that entry.&lt;br /&gt;
&lt;br /&gt;

You can find all the job history in &lt;strong&gt;sysjobhistory&lt;/strong&gt; table while the job details stored in &lt;strong&gt;sysjobs&lt;/strong&gt; table.&amp;nbsp; You need to connect SQL server with &lt;strong&gt;sa&lt;/strong&gt; account to view this.&lt;br /&gt;
&lt;br /&gt;

Following figure shows how to reach those tables.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bfeVwfa9tdzcqXSwzrqEg-_hdvlvrGrwkmSUKjfNWD2FP139IJg_XIFbr5LCl9Kk978YzIbDfQokmSpifUbKdS4-8S0NIOrebDr95UZ2l_HTRuFORYKQgdBJYyQlyxibZP1HgEEKLsOO/s1600/sysjobhistory.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bfeVwfa9tdzcqXSwzrqEg-_hdvlvrGrwkmSUKjfNWD2FP139IJg_XIFbr5LCl9Kk978YzIbDfQokmSpifUbKdS4-8S0NIOrebDr95UZ2l_HTRuFORYKQgdBJYyQlyxibZP1HgEEKLsOO/s1600/sysjobhistory.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Now you can easily get the execution status (run_status) &amp;nbsp;from &lt;strong&gt;sysjobhistory&lt;/strong&gt; table by stored procedure.&amp;nbsp; Run_Status containing numbers 0 to 4.&amp;nbsp; Following stored procedure get the status of particular job.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheDk_BuY_22ZSBbGobeW3tAaLPaKAQ9xxWGZShc9EGiqBO9bvyoCk8tTCQCHAFENlmouQ6wrxGmN58gN5JmJERqwu1PbY0ldf3d9YB73Y3lcTh-uWJisEXwuaYdhbcGD3iPrwAWKY3a5zc/s1600/sp11.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheDk_BuY_22ZSBbGobeW3tAaLPaKAQ9xxWGZShc9EGiqBO9bvyoCk8tTCQCHAFENlmouQ6wrxGmN58gN5JmJERqwu1PbY0ldf3d9YB73Y3lcTh-uWJisEXwuaYdhbcGD3iPrwAWKY3a5zc/s1600/sp11.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bfeVwfa9tdzcqXSwzrqEg-_hdvlvrGrwkmSUKjfNWD2FP139IJg_XIFbr5LCl9Kk978YzIbDfQokmSpifUbKdS4-8S0NIOrebDr95UZ2l_HTRuFORYKQgdBJYyQlyxibZP1HgEEKLsOO/s1600/sysjobhistory.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That’s it.&lt;br /&gt;

But make sure that SSIS package is completed its execution, before you get the status.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/863059184184402748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/get-ssis-package-execution-status.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/863059184184402748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/863059184184402748'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/get-ssis-package-execution-status.html' title='Get SSIS package Execution Status'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2bfeVwfa9tdzcqXSwzrqEg-_hdvlvrGrwkmSUKjfNWD2FP139IJg_XIFbr5LCl9Kk978YzIbDfQokmSpifUbKdS4-8S0NIOrebDr95UZ2l_HTRuFORYKQgdBJYyQlyxibZP1HgEEKLsOO/s72-c/sysjobhistory.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-908426635622988731.post-2589065260509533544</id><published>2012-05-19T21:51:00.003-07:00</published><updated>2012-05-19T21:51:45.993-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="64 bit"/><category scheme="http://www.blogger.com/atom/ns#" term="Integration Services"/><category scheme="http://www.blogger.com/atom/ns#" term="SSIS"/><title type='text'>Stuck with 64 bit ?</title><content type='html'>&lt;strong&gt;Execute SSIS packages with 32 bit configuration in a 64 bit environment&lt;/strong&gt;&lt;br /&gt;

If you,&lt;br /&gt;

&lt;ul&gt;
&lt;li&gt;Working on 64 bit environment&lt;/li&gt;
&lt;li&gt;Executing SSIS packages using a separate application&lt;/li&gt;
&lt;li&gt;Using two separate server machines for SharePoint and SQL servers&lt;/li&gt;
&lt;/ul&gt;
Then definitely you have struggled with this issue.&lt;br /&gt;
&lt;br /&gt;

If you have Excel Connection Manger in your SSIS package or 
&amp;nbsp;extracting data from db2 source then your SSIS package might failed 
without any reason. It’s because 64 bit version is not compatible with 
these components.&lt;br /&gt;

What I did as solution is, execute the SSIS packages using SQL Server Agent jobs .&lt;br /&gt;
&lt;br /&gt;

&lt;em&gt;How to do it ?&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;

&lt;ul&gt;
&lt;li&gt;Connect to SQL server with &lt;strong&gt;sa&lt;/strong&gt; privileges.&lt;/li&gt;
&lt;li&gt;Create a new job&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgwye3n6Bt_evMhdAIJuLmztpB2deJUMWfoMitc5-pIZE-o5n2IqSNOMyh00NpuLGUWsXl7FHnT6QKcIXQsYMQrrTiaTvONdEvYym6rzxJgBata8h1BDwFQcEDzycf0OPwlTCZVD3HZIUx/s1600/object_explorer.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgwye3n6Bt_evMhdAIJuLmztpB2deJUMWfoMitc5-pIZE-o5n2IqSNOMyh00NpuLGUWsXl7FHnT6QKcIXQsYMQrrTiaTvONdEvYym6rzxJgBata8h1BDwFQcEDzycf0OPwlTCZVD3HZIUx/s1600/object_explorer.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ6zHI7n5f1FNZscMemN5r-Aq2IRTgIae1cJSiuyEtSb7xrElIzRlw56UWXzEpig3X2soFv4AWJImH9dW9dOR2KlmxhAdtzMhLCxIqsuTdAqRxE0hq36i4O6Ofy8_PURGKZi3RABNEia5N/s1600/new_job.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZ6zHI7n5f1FNZscMemN5r-Aq2IRTgIae1cJSiuyEtSb7xrElIzRlw56UWXzEpig3X2soFv4AWJImH9dW9dOR2KlmxhAdtzMhLCxIqsuTdAqRxE0hq36i4O6Ofy8_PURGKZi3RABNEia5N/s1600/new_job.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Then in steps you can browse your SSIS package in the file system &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiugaOFbksoRhx2i2p5ElPXI7MH5iwWb7D8zDVcHx735lfqLhMj6QFZW5ZaIuDbEHJaZLtuSrH6I-uXfP9owSjSno5BiBJk6T9RFcXxWAkzG3bDo4u8EsvQn4GAwgYM2cR_bG2zXlGWrBa-/s1600/job_step.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiugaOFbksoRhx2i2p5ElPXI7MH5iwWb7D8zDVcHx735lfqLhMj6QFZW5ZaIuDbEHJaZLtuSrH6I-uXfP9owSjSno5BiBJk6T9RFcXxWAkzG3bDo4u8EsvQn4GAwgYM2cR_bG2zXlGWrBa-/s1600/job_step.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;The important point is to tick the &lt;strong&gt;Use 32 bit runtime &lt;/strong&gt;option in Execution options tab.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8-uTv7Itmq7XYxluXF_d9TJ531MspUTgL_MVI0zMoP3r4jnbrxp8c08cFVkxaXhoqQGSuUWtPYZkye0joKaZrYqYGLgXJDEZy655694a8jPBkrw2cInDlil-pK0Vi5Rt6IoyRcWdL2wCZ/s1600/32bit.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8-uTv7Itmq7XYxluXF_d9TJ531MspUTgL_MVI0zMoP3r4jnbrxp8c08cFVkxaXhoqQGSuUWtPYZkye0joKaZrYqYGLgXJDEZy655694a8jPBkrw2cInDlil-pK0Vi5Rt6IoyRcWdL2wCZ/s1600/32bit.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That’s all about creating a SQL Server Agent job. It will execute your SSIS package in 32 bit mode.&lt;br /&gt;

But now how to start this job ?&lt;br /&gt;

Simply write a stored procedure to start this job. Following figure shows how to do it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDDek58Kd-kB2wLto-NjdV0xzBZU5KGh7ovOAzvj-nKzOpEejbsya6ZbLQtFKj4E6sCKHG5mkUeazC3Tgthh825ffqxFVDA-2KzCnl6_GjrHhUfYGdm7J1kMo8qfzXGZY4-LRFup3jjTap/s1600/sp.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDDek58Kd-kB2wLto-NjdV0xzBZU5KGh7ovOAzvj-nKzOpEejbsya6ZbLQtFKj4E6sCKHG5mkUeazC3Tgthh825ffqxFVDA-2KzCnl6_GjrHhUfYGdm7J1kMo8qfzXGZY4-LRFup3jjTap/s1600/sp.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
That’s all !&lt;br /&gt;

Now just you need to do is execute this stored procedure using your code with job name as a parameter.&lt;br /&gt;

I will talk about how to get the execution status of this SSIS package in next post .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://altecnotes.blogspot.com/feeds/2589065260509533544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://altecnotes.blogspot.com/2012/05/stuck-with-64-bit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/2589065260509533544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/908426635622988731/posts/default/2589065260509533544'/><link rel='alternate' type='text/html' href='http://altecnotes.blogspot.com/2012/05/stuck-with-64-bit.html' title='Stuck with 64 bit ?'/><author><name>Anushka Weerakkodyge</name><uri>http://www.blogger.com/profile/04039937231349692952</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgwye3n6Bt_evMhdAIJuLmztpB2deJUMWfoMitc5-pIZE-o5n2IqSNOMyh00NpuLGUWsXl7FHnT6QKcIXQsYMQrrTiaTvONdEvYym6rzxJgBata8h1BDwFQcEDzycf0OPwlTCZVD3HZIUx/s72-c/object_explorer.jpg" height="72" width="72"/><thr:total>0</thr:total><georss:featurename>Sri Uttarananda Mawatha, Colombo 00300, Sri Lanka</georss:featurename><georss:point>6.9168838710792784 79.850692749023438</georss:point><georss:box>6.8538328710792786 79.771728749023438 6.9799348710792781 79.929656749023437</georss:box></entry></feed>