2010-08-12 8 views
2

J'écris mon premier SSIS pkg et je suis coincé. Toute idée serait grandement apprécié. J'exécute un travail d'agent sql qui lance un rapport SSRS. (Le travail a été généré via un abonnement planifié.)Comment passer un paramètre au rapport SSRS à partir du package SSIS?

  • Ce rapport repose sur 2 processus stockés nécessitant le paramètre 'When' (type de date) et un fichier PDF du rapport vers un partage de fichiers.

  • Ma tâche execute sql exécute ceci: EXEC msdb.dbo.sp_start_job N'myJobName '; Comment puis-je transmettre une valeur pour le paramètre 'When' dans le rapport?

  • Répondre

    1

    Pourquoi avez-vous même besoin de SSIS pour cela? Configurez un abonnement dans SSRS pour exporter le rapport dont vous avez besoin dans le format dont vous avez besoin, quel que soit le calendrier. Les abonnements dans SSRS permettent également de stocker des paramètres avec l'abonnement.

    0

    J'ai compris comment accomplir ceci. Lorsque vous définissez le rapport dans SSRS, activez la vue "Report Data". Sur cette vue, vous trouverez un dossier nommé Paramètres. L'expansion montre un nœud pour chaque paramètre. Faites un clic droit et affichez les propriétés du paramètre.

    J'ai résolu mon problème en sélectionnant valeurs par défaut> Obtenir des valeurs à partir d'une requête (spécifiez Dataset et champ). J'ai mis en place une nouvelle table db nommée ReportParams.

    CREATE TABLE ReportParams (ParamName varchar(50), ParamVal varchar(50)) 
    

    Cela m'a permis de faire une

    SELECT top(1) ParamVal FROM ReportParams WHERE ParamName = 'myparamname'. 
    

    En ayant mon travail SSIS insérons le nom du paramètre et la valeur dans ce tableau, je suis en mesure de passer un paramètre à la valeur par défaut du rapport SSRS.

    D'accord, c'est un peu kludgy, mais ça marche. Si quelqu'un a une façon plus propre d'y arriver, j'aimerais l'entendre. William - le travail SSIS est nécessaire pour remplir la base de données avec les données qui pilotent les DataSets dont dépend le rapport.