<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlblog.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Search results matching tags 'ssis' and 'SSIS Snack'</title><link>http://sqlblog.com/search/SearchResults.aspx?o=DateDescending&amp;tag=ssis,SSIS+Snack&amp;orTags=0</link><description>Search results matching tags 'ssis' and 'SSIS Snack'</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>SSIS Snack: Name Those Connections!</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2012/02/09/ssis-snack-name-those-connections.aspx</link><pubDate>Thu, 09 Feb 2012 12:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:41621</guid><dc:creator>andyleonard</dc:creator><description>&lt;p&gt;When creating Connection Managers in SSIS, take a moment to click the “All” page and set a value in the Application Name property. In SSIS 2008+, a default value is applied to this property. It’s useful but it contains a GUID. Yuck. I prefer to enter a more concise identifier like the one shown here:&lt;/p&gt;  &lt;p&gt;&lt;img src="http://vsteamsystemcentral.com/images/ext/SSIS_ConnectionManager_ApplicationName.jpg" /&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;“Why should I enter this information, Andy?” I’m glad you asked! When troubleshooting performance or locking / blocking issues, DBAs start with a query to ascertain what is currently executing calls to the SQL Server instance. As shown below, sp_who2 is one way to obtain a peek into the inner workings of SQL Server. Note the column labeled “Program Name” displays the value we configured into the Application Name property of the SSIS Connection Manager. This gives the DBA a fighting chance at isolating SSIS packages from other applications and jobs executing.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;img src="http://vsteamsystemcentral.com/images/ext/SSIS_ConnectionManager_ApplicationName_SPwho2.jpg" /&gt;&lt;/p&gt;  &lt;p&gt;I use the following format: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;[SSIS].&amp;lt;&lt;em&gt;Package Name&lt;/em&gt;&amp;gt;.&amp;lt;&lt;em&gt;Connection Manage Name&lt;/em&gt;&amp;gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The format you choose isn’t all that important. Being consistent is very important.&lt;/p&gt;  &lt;p&gt;Happy Integrating!&lt;/p&gt;  &lt;p&gt;:{&amp;gt;&lt;/p&gt;</description></item><item><title>SSIS Snack: Data Flow Source Adapters</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/03/19/ssis-snack-data-flow-source-adapters.aspx</link><pubDate>Fri, 19 Mar 2010 11:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:23371</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Configuring a Source Adapter&amp;nbsp;in a Data Flow Task couples (binds) the Data Flow to an external schema. This has implications for dynamic data loads.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;"Why Can't I...?"&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:271px;HEIGHT:183px;" src="http://vsteamsystemcentral.com/images/ext/DataFlowSourceAdapterSnack_1.jpg" width=271 height=183&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'm often asked a question similar to the following: "I have 17 flat files with different schemas that I want to load to the same destination database - how many Data Flow Tasks do I need?" I reply "17 different schemas? That's easy, you need 17 Data Flow Tasks."&lt;/P&gt;
&lt;P&gt;In his book &lt;SPAN id=btAsinTitle&gt;&lt;A href="http://www.amazon.com/Microsoft-Server-2005-Integration-Services/dp/0672327813" target=_blank&gt;Microsoft SQL Server 2005 Integration Services&lt;/A&gt;, Kirk Haselden (&lt;A href="http://sqlblog.com/blogs/knightreign/default.aspx" target=_blank&gt;Blog&lt;/A&gt;) includes a blurb about "long discussions" regarding binding the data flow pipeline to the source metadata in this manner (Note, p. 539). The decision to tightly couple the source schema and the Data Flow was largely driven by the "Move Large Amounts of Data" use case. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;"What Can I Do?"&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;You can load data from 17 files, as long as they have the same schema. There are advanced techniquues for loading data dynamically, but they are beyond the scope of this post.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;</description></item><item><title>SSIS Snack: OLE DB Destination 1</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/03/01/ssis-snack-ole-db-destination-1.aspx</link><pubDate>Mon, 01 Mar 2010 12:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:22662</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This SSIS Snack is a continuation of&amp;nbsp;a couple previous SSIS Snacks: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/09/ssis-snack-configuring-an-ssis-2005-lookup-transformation-for-a-left-outer-join.aspx" target=_blank&gt;SSIS Snack: Configuring an SSIS 2005 Lookup Transformation for a Left Outer Join&lt;/A&gt;&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;(please see the clarification &lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/16/ssis-snack-lookup-transformations-101.aspx" target=_blank&gt;SSIS Snack: SSIS 2005 Lookup Transformations 101&lt;/A&gt;)&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;&lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/11/ssis-snack-configuring-a-conditional-split.aspx" target=_blank&gt;SSIS Snack: Configuring a Conditional Split&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/19/ssis-snack-conditional-split-outputs.aspx" target=_blank&gt;SSIS Snack: Conditional Split Outputs&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;Final (?) Destination&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Drag an OLE DB Destination adapter from the toolbox onto the data flow canvas (if you haven't already). After connecting a data flow path from the output of the Conditional Split to the OLE DB Destination, double-click the data flow path and select the Metadata page.&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:751px;HEIGHT:637px;" src="http://vsteamsystemcentral.com/images/ext/SSISnackOLEDBDest1_1.jpg" width=751 height=637&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Note this contains a definition of the "columns" in the data flow pipeline.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Rename the OLE DB Destination adapter StageRows. Open the editor, select the destination connection manager&amp;nbsp;and set the Data Access Mode property to "Table or view". Next (this is the cool part) click the New button beside the "Name of the table or view" dropdown.&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:791px;HEIGHT:565px;" src="http://vsteamsystemcentral.com/images/ext/SSISnackOLEDBDest1_2.jpg" width=791 height=565&gt;&lt;/P&gt;
&lt;P&gt;The New button pops open a Create Table window populated with a CREATE TABLE statement. The table name comes from the name of the OLE DB Destination adapter, the column DDL is derived from the Data Flow Path's metadata (we saw this earlier). Isn't that cool?&lt;/P&gt;
&lt;P&gt;As soon as you click the OK button, the DDL is executed and the table created.&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;</description></item><item><title>SSIS Snack: Conditional Split Outputs</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/02/19/ssis-snack-conditional-split-outputs.aspx</link><pubDate>Fri, 19 Feb 2010 12:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:22295</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;&lt;STRONG&gt;Introduction&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;This SSIS Snack is a continuation of&amp;nbsp;a couple previous SSIS Snacks: &lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/09/ssis-snack-configuring-an-ssis-2005-lookup-transformation-for-a-left-outer-join.aspx" target=_blank&gt;SSIS Snack: Configuring an SSIS 2005 Lookup Transformation for a Left Outer Join&lt;/A&gt; (please see the clarification &lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/16/ssis-snack-lookup-transformations-101.aspx" target=_blank&gt;SSIS Snack: SSIS 2005 Lookup Transformations 101&lt;/A&gt;) and &lt;A href="http://sqlblog.com/blogs/andy_leonard/archive/2010/02/11/ssis-snack-configuring-a-conditional-split.aspx" target=_blank&gt;SSIS Snack: Configuring a Conditional Split&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Landing Zone&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;When you use a Conditional Split to create an additional buffer, downstream connections must know which output you are trying to connect. In this case, I have an OLE DB Destination adapter to which I am trying to connect the Conditional Split:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:856px;HEIGHT:442px;" src="http://vsteamsystemcentral.com/images/ext/DestinationSnack_1.jpg" width=856 height=442&gt;&lt;/P&gt;
&lt;P&gt;Note that because I defined two new buffers in the Conditional Split&amp;nbsp;- and renamed the Default Conditional Split Output to "Uchanged Rows" -&amp;nbsp;I am prompted to select the output, and I select New Rows.&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;</description></item><item><title>SSIS Snack: SSIS, Excel, and a 64-bit OS</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/01/19/ssis-snack-ssis-excel-and-a-64-bit-os.aspx</link><pubDate>Tue, 19 Jan 2010 12:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:21033</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;Let's say you want to load data from an Excel 2003 (.xls) file into a database using SSIS:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:259px;HEIGHT:199px;" src="http://vsteamsystemcentral.com/images/ext/ExcelLoader_1.jpg" width=259 height=199&gt;&lt;/P&gt;
&lt;P&gt;If you're running on a 64-bit machine, you'll get this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG style="WIDTH:245px;HEIGHT:197px;" src="http://vsteamsystemcentral.com/images/ext/ExcelLoader_2.jpg" width=245 height=197&gt;&lt;/P&gt;
&lt;P&gt;Plus this error:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;EM&gt;[PASS Regional Mentor Spreadsheet [1]] Error: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.&amp;nbsp; The AcquireConnection method call to the connection manager "Excel Connection Manager" failed with error code 0xC0202009.&amp;nbsp; There may be error messages posted before this with more information on why the AcquireConnection method call failed. &lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Not good. There is no 64-bit JET driver, and the JET driver is used by the Excel ConnectionManager. Phooey.&amp;nbsp;Sad face. Bummer. &lt;/P&gt;
&lt;P&gt;So how do you get around this? One quick and easy way is to execute this package using the 32-bit debugger. To change the default setting, right-click the Project in Solution Explorer and click Properties:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:323px;HEIGHT:342px;" src="http://vsteamsystemcentral.com/images/ext/ExcelLoader_3.jpg" width=323 height=342&gt;&lt;/P&gt;
&lt;P&gt;When the Properties dialog displays, click the Debugging page from the list on the left and then change the Run64BitRuntime property to False:&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH:702px;HEIGHT:426px;" src="http://vsteamsystemcentral.com/images/ext/ExcelLoader_4.jpg" width=702 height=426&gt;&lt;/P&gt;
&lt;P&gt;When you execute the package in the debugger (or in the runtime), it will now succeed:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG style="WIDTH:625px;HEIGHT:313px;" src="http://vsteamsystemcentral.com/images/ext/ExcelLoader_5.jpg" width=625 height=313&gt;&lt;/P&gt;
&lt;P&gt;:{&amp;gt; Andy&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>SSIS Snack: Package Version</title><link>http://sqlblog.com/blogs/andy_leonard/archive/2010/01/06/ssis-snack-package-version.aspx</link><pubDate>Wed, 06 Jan 2010 12:00:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:20175</guid><dc:creator>andyleonard</dc:creator><description>&lt;P&gt;Here's a couple cool SSIS Expressions for creating Package Version strings:&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Format: 1.0.0&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;(DT_STR,4,1252) @[System::VersionMajor] + "." + &lt;FONT face="Courier New"&gt;(DT_STR,4,1252) @[System::VersionMinor]&amp;nbsp;+ "." + &lt;FONT face="Courier New"&gt;(DT_STR,4,1252) @[System::VersionBuild] &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;Format: 1.0.0.20100106&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;(DT_STR,4,1252) @[System::VersionMajor] + "." + (DT_STR,4,1252) @[System::VersionMinor] + "." + (DT_STR,4,1252) @[System::VersionBuild] + "." + (DT_STR,4,1252) Year(GetDate()) + (Month(GetDate()) &amp;lt; 10 ? "0" + (DT_STR,2,1252) Month(GetDate()) : (DT_STR,2,1252) Month(GetDate()))&amp;nbsp; + (Day(GetDate()) &amp;lt; 10 ? "0" + (DT_STR,2,1252) Day(GetDate()) : (DT_STR,2,1252) Day(GetDate()))&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&lt;FONT face=Arial&gt;Enjoy!&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&lt;FONT face=Arial&gt;:{&amp;gt; Andy&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;</description></item></channel></rss>