Stocker des valeurs dans des variables à l'aide d'Exécution SQL Objet de Tâche

J'ai une tâche d'exécution sql définie dans mon package qui va exécuter une procédure stockée. Lorsque la procédure stockée est exécutée, elle sera de retour d'informations d'identification utilisateur. J'ai pour stocker les informations d'identification dans une variable et ensuite utiliser ces informations d'identification dans une nouvelle tâche de script.

La suivante est ce que j'ai essayé jusqu'à présent.

ÉTAPE 1 - j'ai créé tâche SQL

Sur l'ONGLET Général, définissez les propriétés suivantes:

Resultset: Single row
connectionType: OLE DB
Connection:SourceDestination
SQLSourceType:DirectInput
SQLStatement: Execute dbo.GetLoginInfo1
ByPassPrepare = False

ÉTAPE 2 - Mappage des paramètres de l'Onglet

Variable Name = User::DatabaseUserName
Direction = Output
Data Type = NVarchar
Parameter Name = @UserId
Parameter Size = 50

ÉTAPE 3 - Jeu de résultats onglet

Result Name = 0
Variable Name = User::DatabaseUserName

Quand j'ai exécuté la tâche que j'ai erreurs suivantes.

[Execute SQL Task] Error: Executing the query "EXECUTE [dbo].[GetUserLoginInfo1]"
failed with the following error: "Value does not fall within the expected range."
Possible failure reasons: Problems with the query, "ResultSet" property not set
correctly, parameters not set correctly, or connection not established correctly

Quand je debug j'ai pu voir les informations suivantes:
Pause SUR l'Avant de l'exécuter:

User::DatabaseUserName = {Hi}

Pause SUR le Post de l'Exécuter: (erreur se produit, mais les valeurs obtient chanage)

User::DatabaseUserName = {User1}

Désolé j'ai oublié de mentionner la création de variables. J'ai créer une variable comme indiqué ci-dessous.

Name = DatabaseUserName
Scope = Package1
Datatype = String
Value = Hi

Mentionnés ci-dessous est la procédure stockée que j'ai utilisé.

ALTER PROCEDURE [dbo].[GetUserLoginInfo1]
AS
BEGIN
    SELECT userid AS userid
    FROM login_credentials 
    WHERE servername= 'server1'
END

J'ai essayé et lire beaucoup de nombreux sites, mais je suis toujours confronté au problème.C'est mon deuxième jour sur elle et ont à résoudre avant demain matin, donc toute aide sera vraiment appréciée.

InformationsquelleAutor Vinod Nair | 2012-03-01