Active directory import to table using SSIS with Directory Services
Hello, I have spent the last few days trying to piece together different pieces of documentation to work out how to import a bunch of users from Active Directory (AD) using SSIS. The best document is this one: http://social.technet.microsoft.com/wiki/contents/articles/processing-active-directory-information-in-ssis.aspx Following the DataFlow method, I understand that you have to use the ADO.Net data provider in the Data Source and Data Destination. I have got the package running which is great. However when I check the data imported, the object GUID column data is showing as a string literal = system.byte[], ie not the guid data just a string saying system.byte. When I add a data conversion step, and set the datatype to unique identifier I get this error: Conversion from "DT_NTEXT" to "DT_GUID" is not supported. Ideally the column would be imported as a binary. I have a script that does what I want in SQL 2000 by the way, which uses VB Script. When I try to run this as an Active X task in SSIS I get this error: An error occurred while adding the managed SSIS type library to the script host. Verify that the DTS 2000 runtime is installed. I don't understand why I need this installed, nor how to install it. Ahhhh! I guess it would be easier to write a program to do this from scratch, but I guess other people have got this to work? Thanks Matt
September 12th, 2011 10:57am

Hi wilko2000, Upgrading a DTS package that has an ActiveX script does not work smoothly most times if not always. The workaround is to create a Script Task manually and implement the logic. For more details please refer to the following article: http://sqlyoga.com/2009/10/sql-server-ssis-activex-task.html And I found that this is a known issue in SSIS 2008, you can refer to the connection: http://connect.microsoft.com/SQLServer/feedback/details/637815/vbscript-task-generated-error Please feel free to ask if you have any question. Thanks, Eileen Forum Support Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.
Free Windows Admin Tool Kit Click here and download it now
September 13th, 2011 4:16am

Thanks for that Eileen, Just for the record I have got it all working now. I set the GUID column in the table to binary(16) and ran this code: if (result.Properties["objectGuid"] != null && result.Properties["objectGuid"].Count > 0) { byte[] val = (byte[])result.Properties["objectGuid"][0]; Output0Buffer.objectGuid = val; } Following the solution in this post: http://social.msdn.microsoft.com/Forums/en/sqldataaccess/thread/fd2550e8-d75b-4378-8a28-baf1235f51ba
September 13th, 2011 5:51am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics