2013-04-15 3 views
2

J'ai créé une source de données personnalisée en utilisant les instructions données dans le lien suivant: http://msdn.microsoft.com/en-us/library/ms136088.aspxErreur lors de l'ajout source de données SSIS personnalisée à la boîte à outils de Visual Studio

Cependant une fois que je construis le projet et essayez d'ajouter la nouvelle source de données à la boîte à outils, je reçois l'erreur suivante:

There are no components in 'C:\Somepath\bin\Debug\CustomDataSource.dll' that can be placed on the toolbox

Voici les outils que j'ai utilisés:

pour créer et construire la source de données personnalisée; Visual Studio 2010 & Framework 3.5 build dans

Pour créer le package SSIS SSIS - SQL Server 2008 R2 & Business Intelligence Development SQL Server Management Studio (VS2008)

Toute aide serait grandement appréciée.

Nandun

+0

Après avoir généré le.dll, quelle (s) étape (s) effectuez-vous? Pourriez-vous éditer votre question pour refléter cela. – billinkc

Répondre

3

J'ai trouvé la réponse à mon problème; voici la solution et j'espère que cela aidera quelqu'un.

ref - http://msdn.microsoft.com/en-us/library/ms403356.aspx

  1. copier le dll dans le dossier suivant (s). le dossier exact dépend si votre x64 ou x86 (ne pas mal d'avoir sur les deux):

    C: \ Program Files (x86) \ Microsoft SQL Server \ 100 \ DTS \ PipelineComponents
    C: \ Programmes \ Microsoft SQL Server \ 100 \ DTS \ PipelineComponents

  2. Installez la DLL dans votre GAC. vous devrez l'avoir signé pour le faire. Dans BI Dev Studio, accédez à Outils> Choisir les éléments de la boîte à outils. vous trouverez votre source de données dans l'onglet

Pour les étapes 1 & 2 vous pourriez trouver utile d'avoir un événement post build « Articles SSIS Dataflow » comme suit:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -u $(TargetName) 
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -iF $(TargetFileName) 
copy $(TargetPath) "C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents" 
copy $(TargetPath) "C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents" 

Petit Modifier à la réponse:

Si vous utilisez SSIS 2012 avec BIDS 2010, les éléments de la boîte à outils sont ajoutés automatiquement (vous ne devez pas aller dans Outils> Choisir les éléments de la boîte à outils) il vous suffit de le copier dans la DLL. places (ref - http://fendy-huang.blogspot.com/2011/09/how-to-add-ssis-custom-component-to.html):

C:\Program Files\Microsoft SQL Server\110\DTS\PipelineComponents 
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\PipelineComponents 
C:\Program Files\Microsoft SQL Server\110\DTS\Tasks 
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Tasks 
1

Il y a un report here qu'un problème similaire a été résolu en faisant le public de classe. (En outre, signature de l'assembly et le placer dans le GAC.)

Here is a case où quelqu'un devait implémenter IComponent et hériter de la classe Component.

Je vois le nombre d'autres messages lorsque je google le message d'erreur. Est-ce que l'un d'eux a aidé?

+0

Malheureusement, je n'ai pas encore trouvé de solution. mon composant est de type PipelineComponent. et n'implémente pas IComponent. la plupart de ces articles parlent d'ajouter des contrôles d'interface utilisateur à la boîte à outils. mais mon problème est avec une source de données SSIS. Merci pour votre réponse. – Nandun

Questions connexes