THE SQL Server Blog Spot on the Web

Welcome to - The SQL Server blog spot on the web Sign in | |
in Search

Kirk Haselden's Kirkapedia

Surveying, Synthesizing & Scrutinizing Sophisticated Software

  • Contract SSIS Developer

    Anyone here interested in a contract role with Blackbaud to develop a repeatable transformation solution using SSIS?

    Please contact me if you have availability this quarter.

  • Sample Code for the SSIS Book

    Yes, I know I’ve been gone for a long time. I haven’t professionally blogged for years. But, the good folks here, Adam and Peter have out of the goodness of their hearts, left my blog around and well, I though I’d check in. Since then, I’ve changed jobs, gotten divorced, bought a few more laptops, bunches of guitars, a snowboard or two, iPads, iPhones, a few cars, travel to India, Europe, Middle East, backpacked Scotland (and still damp), Nepal and all over the US.

    I’m three roles away from the SSIS one and one company away from Microsoft. I’m now at Blackbaud and loving the challenge and the focus on helping non-profit companies be more efficient and effective at managing their businesses. If you’d like to contact me directly just to catch up or say hello, please drop me a line at Kirk dot Haselden overat Blackbaud dot com. I’d love to hear from you. I’m also on LinkedIn at

    Anyhow, back to the point of this post. Folks have been asking about how to find the samples for the books. They’re still where they were when the book was published, which is to say, unfortunately, not with the actual book as was the original plan but rather on the Sams Publishing website here and then click on the Downloads tab at the bottom.

    Well, that’s all for now folks. It’s been great reading all the articles and catching up with what’s happening in SQL Server land. If any of you are interested in helping non-profit companies and are looking for a quality company to join, please drop me a line. We’re always looking for solid SQL Server types, code junkies and especially test engineers.

    Happy Holidays!

    Universe.Earth.Blackbaud.Enterprise.Kirk  Smile

  • New Master Data Services Content (What Else?!)

    msdev is about to launch a series of training courses for Master Data Services that covers early concepts, setup, model building, configuration, security model setup and the object model. This should be a great series and promises to be a solid introduction to the product.

    If you haven’t noticed lately, there is a great set of entries up on the SSIS team blog now. These are quality blog entries that really get into the details of how the product works and how to use it. If you haven’t looked lately and you want to understand master data services, this is definitely a great resource. The entries are created by the engineers that designed, coded and documented the product and peer reviewed before being posted. They are of very high quality, accurate and authoritative.

    The online documentation for MDS has also been updated. The following explains derived hierarchies:

    Finally, Donald Farmer does his usual excellent job at describing Master Data Management and the important elements of making master data management useful and some of the key value propositions of MDS.

    A new MSDN article explains how to integrate MDS workflow with SharePoint.


  • Profisee Webinar

    For those of you wanting more information about Master Data Services, in 2010, Profisee is starting a series of webinars that should be great.

    Here’s the first one:

    Merry Christmas and a Happy New Year!

  • Master Data Services team blogging

    In a recent blog I mentioned that the Master Data Services team would be blogging soon. Matt Anderson has started and this should be a great resource for readers wanting to come up to speed on MDS quickly. We're planning some high level as well as in-depth blogging there. If you are interested in better understanding the newest addition to the SQL Server toolset, be sure to add this link to your blogroll!



  • MDS Staging table error codes

    These kinds of things always seem to be the last to be added to the documents. I saw in a recent blog post that someone had gotten a staging table error and they weren't sure what it was.

    Here are the staging table error codes thanks to our great support engineer Pam Matthews

    ERR210000           OK          
    ERR210001          Error - duplicate code in source data.      
    ERR210003          Error - code does not exist or has been deactivated for selected domain attribute.           
    ERR210004          Error - code does not exist for selected domain attribute.             
    ERR210006         Error - inactive member code.    
    ERR210007           Warning - redundant assignment; transaction will not be logged.              
    ERR210008           Error - may not stage inactive parents.   
    ERR210009           Error - member code does not exist.       
    ERR210010         Error - target code does not exist.            
    ERR210011        Error - target code may not be leaf when staging parent relationships.   
    ERR210012        OK - new relationship record.     
    ERR210013         OK - new collection record.         
    ERR210014           OK - relationship removed (moved to unused). 
    ERR210015           Error - Children must be unique in Non Mandatory Hierarchy.     
    ERR210016         Warning - unable to assign relationship or recursive relationship.              
    ERR210017          Error - user name is invalid.         
    ERR210018         Error - Model is required or invalid Model.           
    ERR210019      Error - model administrator privileges are required to stage into the selected model.      
    ERR210020     Error - Entity is required or  invalid entity name. 
    ERR210021           Error - member type ID must be 1 (leaf member), 2 (parent member), 3 (collection), or 5 (collection member).           
    ERR210022         Error - system attributes may not be updated via staging.             
    ERR210023          Error - file attributes may not be updated via staging.     
    ERR210024        Error - attribute value exceeds allowed length.  
    ERR210025     Error - data is the incorrect datatype for requested attribute (must be Numeric).              
    ERR210026         Error - data is the incorrect datatype for requested attribute (must be DateTime).            
    ERR210027                 Error - data is the incorrect datatype for requested attribute (must be Integer).                
    ERR210028        Error - invalid attribute name.    
    ERR210029         Error - attribute value is required.            
    ERR210030     Warning - attribute value will be unassigned.      
    ERR210031         Error - Attribute_Value must be either ''Active'' or ''De-Activated'' when attempting to change the member status.  
    ERR210032        Error - hierarchy is required or invalid hierarchy.                
    ERR210033        Error - collections may only be staged to entities that have a hierarchy.  
    ERR210034          Error - selected MemberCode is a reserved word. Please select another code.   
    ERR210035           Error - code is required without a code generation business rule.              
    ERR210036         Information - code is not required for a code generation business rule.  
    ERR210037       Error - member type ID must be 1 (leaf member), 2 (parent member), or 3 (collection). 
    ERR210038           Error - hierarchy is required if member type is 4; or invalid hierarchy.       
    ERR210039        Error - member type ID must be 4 (hierarchy) or 5 (collection).   
    ERR210040          Error - member code is required.              
    ERR210041          Error - may not use reserved code ''ROOT''.         
    ERR210042          Error - may not use reserved code ''MDMUNUSED''.       
    ERR210043           Error - target type ID must be 1 (parent) or 2 (sibling).    
    ERR210044      Error - target code is required.   
    ERR210045         Error - may not use reserved code ''MDMUNUSED'' in non-mandatory hierarchies.          
    ERR210046           Error - may not stage a sibling of the Root node.                
    ERR210047           Error - may not stage a sibling of the Unused node.         
    ERR210048           Error - member code and target code may not be the same.       
    ERR210049       Error - may not stage siblings for collections.       
    ERR210050      Information - hierarchy is not required for collections.    
    ERR210052       Error - The member cannot be deactivated because it is referenced by an entity.              

    I'm sure these will show up in the documentation at some point, but for now there here for your reference.

  • Master Data Services miscellaneous

    As we head into the US holiday season, I wanted to catch up on some things I've wanted to blog for some time. 

    Blogs Rolling

    First of all, it's good to see some blogging activity around MDS. 

    As is the usual case around the first release of a product, it takes some time for blog activity to get momentum. But, we're beginning to see some action now as folks pick up the November CTP of SQL Server R2 and start to put it through it's paces.

    This one by Nick Barclay is a series of seven introducing MDS and how to build a model and starts to get into the data model a bit as well.

    For those just picking up the product for the first time, this is an excellent quick start guide.

    Intrepid blogger and SSIS/MSBI geek Jamie Thomson has also been digging into the product and started blogging and he promises more to come.

    Roland Lenz gives a pretty good summary of MDS and talks a little about scenarios in which it can be used.

    Chris Webb blogged about John McAllister's recent presentation at PASS.!7B84B0F2C239489A!5288.entry

    For those that missed it, I have a short entry here that talks at a high level about the product and Master Data Management in general.

    Shaun Ryan has also started to blog and has one about creating hierarchies in MDS here.

    The MDS team will be blogging as well. Look for those blogs to show up soon and I'll link here.

    Matt Anderson has already created the first entry: Installing and Configuring Master Data Services 2008 R2 November CTP

    Hooo, that's a mouth full. Fortunately, it takes about as long to say it as it does to do it! As soon as we can get the blog up and running, he'll be posting that entry with more to follow.

    What's New 

    There are various comments about what's new in the November CTP MDS relative to the original product Microsoft acquired. Some have said it's basically the same thing. I'd like to give you all some background on that. For the benefit of those who are familiar with the Stratature product or the technology preview we released over a year ago, I'll briefly list some of the more important improvements. Later, I'll drop some hints as to what's coming next. But keep it between me and you.


    The team has been doing some great work around improving the performance of the product. We've improved the schema, optimized stored procedures, and changed the way we manage key elements such as business rules to be more efficient. This work has resulted some great performance improvements. In some cases, the improvements are orders of magnitude faster.


    We've done a load of work on security, accessibility, globalization and localization (21 languages), better setup and configuration.

    UI Spif

    While the user interface is mostly the same, we have done some changes to improve the experience including fixing bugs and swapping the control library for better management.

    Model Deployment  

    The perenial problem with building models is how to deploy them from the machine where they were developed without a lot of difficulty. And what's more, how do you build a model template and use it over and over without said efforts? Model deployment. With Model Deployment, you can build an entire model, including data on a development machine, deploy it to a test lab for testing and then easily deploy to the live production machines without ever getting your hands dirty. It's also useful for building pre-developed models for solution specialists or for sharing across the enterprise. While competitor products can sometimes take weeks to setup, configure and build the first model, I've done a demo where I setup, configured, deployed a model and built a derived hierarchy in roughly 10 minutes. That's simpler, easier and faster. That's Microsoft software.


    We've added a comprehensive API to the product with both bulk and message oriented functions. Then we rewrote the user interface to go through the API instead of directly to the database/stored procedures. Anything you can do through the UI and more, you can now do through the API. It is complete and comprehensive.

    So, while the product looks pretty much the same, much of the work we've been doing is to build the MDS platform into something that will support a rich set of experiences, integrations and additional scenarios.

    What's Next?

    It's a little early to be talking about the next version don't you think? OK, well, let's just say we're going to improve the user interface, integration and out of box experience and a few other goodies.



  • SQL Server 2008 Master Data Services November CTP Released

    Well, that's certainly a mouth full.

    I’m pleased to say that the SQL Server November CTP with Master Data Services is now available.

    If you’re interested in simply seeing the MDS documentation, you can find it here:

  • MDS Branding

    The branding is in.


    Where MONTH is the actual release month.

    Hooo! What a mouthful.

  • Master Data Services almost there...

    It's been a while since my last post so wanted to take some time and update folks on what's happening around Master Data Services.

    A little history 

    To catch everyone up, I thought I'd start by giving a short history of the product and get everyone on the same page. 

    In June, 2007 Microsoft acquired a company called Stratature. It was a small but well run company that built an analytical master data management solution. At the time, we were looking for a good solution to augment the PerformancePoint offering as well as a way to pull together various master data management capabilities for Office servers such as CRM and SharePoint. The focus was on bringing the master data to the people who understood it best. Who knows the customers, products, vendors, parts and other key business data better than the business users? MOSS (Microsoft Office SharePoint Server) seemed the logical ship vehicle and still makes a lot of sense for a business user perspective. Delivering the master data management stewardship experience throughout the enterprise by placing it in the hands of business users continues to be our strategy, however, after feedback from partners, customers and our field, we believed that the ship vehicle needed to change to better align with the sales motions, field expertise, R&D teams, marketing and underlying technologies. We weighed and considered different options and ultimately decided that SQL Server was a better fit. While delivering the master data experience to the business user continues to be a priority, the "master data" piece of MDM, the "management" piece is also important. What happens in the back end management experience is every bit as important as how the stewardship and governance experience is delivered to the business user. As purveyors of a master data platform, we have to provide both.

    Project "Bulldog" was a codename for the overall master data management project leading up to shipping as part of SQL Server. When we acquired Stratature, there were a few minor issues with the product, we were a small team, and the number of customers relative to Microsoft's typical customer base was quite small. We made the difficult decision to remove the product from the market so that the small team could focus on shipping a Microsoft quality product. We shipped a technology preview that was picked up by nearly 200 customers and partners. The technology preview was, essentially, a hygiene build of the Stratature bits with a few libraries removed, some simple modifications to improve the product security, and some bug fixes.

    The technology preview ran for over a year and was successful at building interest as well as providing an outlet for customers to use the product for initial evaluation purposes and building proofs of concept solutions. A few, we understand, have gone a little further with the product then we expected.

    Throughout this time, we've been busy improving the product on multiple dimensions including performance, flexibility, extensibility, localization and feature/function. To date, master data management solutions have been risky, expensive and difficult to implement. Master data management isn't all about technology. In fact, the technology is really about enabling the processes that lead to authoritative master data. But, the technology is important and we believe that we will make master data management technology truly available to enterprise and mid-market companies both from an implementation and affordability perspective.

    What now?

    We're now closing in on the first Microsoft release of a master data solution. Master Data Management isn't a household name, but as companies struggle with managing one of their most important assets in a consistent way with ever increasing complexity of IT ecosystems, dynamic business environments and stringent regulations the need for a way to manage key business data is critical. There is a lot of information out there about master data management, the need and the solutions. Unfortunately, much of it is confusing, contradictory and unbounded by reality. The space is maturing however, and you'll begin to see more and more about this important problem and the ways to solve it in the coming years. 

    Here's what's happening with the product now:

    • We're stabilizing and putting the finishing touches on the product for release in SQL Server 2008 R2 CTP3.
    • We're finalizing TAP customer selection
    • We're working with a number of services partners who are building service lines around MDS
    • We're working with a number of ISV partners to build components and integration with MDS
    • We're already planning the next release!

    Some resources 

    For those of you unfamiliar with MDM and Microsoft's forthcoming solution, or if you just want to drill down some more, here's a few links to get you started. - This is the official SQL Server website. - A brief introduction Roger Wolter and I wrote. - David Loshin's companion site for his excellent MDM book.




  • Master Data Services a new product in SQL Server

    As announced at TechEd earlier this week, Master Data Services will be shipping in SQL Server 2008 R2.

    I've blogged on SQL Insiders about it here:

    I'm glad I can be out of the SQL Server closet again and finally say in public, "It's good to be back in SQL Server!"

  • Whence Microsoft's Master Data Management Product?

    A while back I blogged about the Technology Preview for the Master Data Management product that we released to just about anyone that was interested. That was very early in the project and right after we had acquired the Stratature company. The preview was a success. In fact, we've had great response to it and many customers have actually used the preview edition in pre-production implementations and giving us great reports and feedback. Microsoft is also using the product for several internal implementations. Over all, we're happy with the technology preview and feel it's run it's course.

    Now that the team is focused on delivering the next version of the product as well as preparing for the first CTP release and accompanying TAP, we've discontinued the Technology Preview. This will give us more time to focus on delivering a quality release and gives our customers and partners some time to transition to planning around the forthcoming CTP and TAP.

    As I mentioned in my last entry, we'll be formally announcing the go to market plans for the master data management product soon. If the number of emails in my inbox is any indication, interest in Microsoft's MDM offering is really heating up. For those that may be wondering if the Stratature product lives on, I can definitely say yes. The core capabilities will be there, the people that came to Microsoft from Stratature are still part of our team and contributing with those that have joined since to deliver the next release.

    Folks who wanted to be on the Technology Preview but didn't make the cut off date don't need to wait long as the TAP is around the corner.



  • What's Going on Kirk?

    I've been vacant from blogging for some time. If the comments I've been getting in the blog, email and personally at conferences and in meetings is any indication, it's high time I started back again. Unlike some of the more successful and prolific bloggers out there, or those that aren't so prolific for that matter, I have no aspirations of consistently writing every day. The old blogging mantra "every day a blog entry" is not something I'm going to commit to doing. That way I set myself up for success. This is a lot like my annual new years resolution which I always manage to keep with smashing success which is "I will only make one resolution this year." I like that because I'm guaranteed success the moment I make the resolution. It's an atomic success. By making the resolution I'm successfully keeping it. So, my blogging commitment here is that I won't be consistent. That's something I can commit to not doing.

    So, what's happening in my world. True to Microsoft's disclosure policy, I could tell you all but then, the marketing folks would kill me, or worse... What I can tell folks is that the Master Data Management team is alive and thriving. We're doing good work, making progress on deliverables, getting ready to ship. Our plan hasn't changed with respect to timing of the release either. We're still targeting a release for roughly the same time as the next version of Office. That date hasn't been announced of course, so I can't say exactly when that is either, but if the past is prologue, you can take a pretty good guess at when that will be.

    Our team has completed new functionality and are now stabilizing the product for a prerelease to be announced during TechEd in May. We will be rolling out a lot of new information and announcing some exciting changes to the Microsoft Master Data product at that time. Folks that are interested should watch the TechEd wires. We're excited about the changes and the benefits we derive from them both from a customer satisfaction perspective as well as a technical, strategic and value perspective.

    Well, there you go. I've now succeeded at fulfilling my resolution to inconsistently blog. Hopefully it won't take me another year to get the next post done!


  • Fairfield/Westchester.Net User Group

    Last week I had the opportunity to speak to a user group about SQL Server and in particular Integration Services. It was a nice opportunity to clear out the cob webs and talk about one of my favorite topics.

    Initially, it wasn't going so well. I've found that the audiences vary for these events drastically. The closer one gets to Redmond, the more up to date the audience is on newer technologies. So, it's good to do a gut check sometimes and find out if what I'm saying is actually making sense to the audience. In this case, I was talking about what's new in SQL Server Integration Services 2008 and Master Data Management. Well, as I started talking about what's new, the audience began to get the glazed look on their faces.

    So, I asked some more questions and it became apparent quite clearly why that was. When I asked how many were currently using SSIS, only a few hands went up. But, when I asked how many were using DTS, I believe every person in the room raised their hand. I'd had an off by one version error.

    Super, so I switched gears and gave a talk that I've been giving for ~4 years. What's new in SSIS 2005.

    Suddenly, lights went on in people's eyes. The guy over on the far left woke up. People started asking questions, real questions.

    Overall, it was a fun experience. It's always cool to rub elbows with folks that are using the product and give constructive feedback and encouragement.

    Leonardo Junquera runs that group and does a great job. Thanks for the opportunity to speak Leo!


  • Surprise! MDM Technology Preview available tomorrow

    In a recent post I stated that we planned to have a technology preview available in February, '08. 

    Most folks aren't used to hearing these words in the same sentence, but here goes:

    We're shipping early. 

    Tomorrow I'll be sending out email to customers and partners alerting them to the availability of the technology preview (TP) for download from MSConnect.

    If you'd like to participate in the technology preview and haven't done so already, you can express interest by sending an email with "Interested in TP" in the subject to

    The TP product is pretty much identical to the product Microsoft acquired in June with a few notable exceptions:

    • Libraries changed - The Stratature product used some libraries that were either out of date, not supportable, or the license was questionable. We removed those libraries and replaced the code with Microsoft technology.
    • Patch rollup - The TP release represents a roll up of patch releases for the time since the acquistion.
    • Signed - The TP release is signed and has been through the Microsoft ship process including more rigorous testing and signoff.

    The primary purposes of this technology preview are two fold:

    1. We realize that there are a lot of rumors going around that the product was being removed from the market permanently. That just isn't true. We wanted to reintroduce the product into availability as soon as possible to mitigate the rumors.
    2. We wanted to expand the audience of customers and partners who are familiar with the product. While the product we ultimately ship for general availability will have many substantial improvements and new capabilities, the core product will remain largely intact. Customers and partners who participate in the technology preview will get a leg up on understanding the released product. 

    If you've expressed interest in participating in the MDM TP by sending email to, you should be recieving an email very soon that explains the next steps.

    While this is not a general availability release and only select individuals under NDA are allowed to participate, we do not have any arbitrary limitations on total number that may download the product.However, this release is not supported in any way by Microsoft. It is an early visibility release only.

    This is the first step in reintroducing the Microsoft MDM product into general availability leading up to TAP, CTP and release. We hope you have the opportunity to participate and give feedback about the product.


    Kirk Haselden
    Group Program Manager for Master Data Management
    Microsoft Office Business Platform

More Posts Next page »
Privacy Statement