2010-11-18 3 views
3

Je charge environ 40 fichiers vers Oracle à partir de mon package SSIS ETL. À la fin de chaque processus de chargement de fichiers, j'exécute une requête SQL pour effectuer une mise à jour de type 2 pour l'expiration des anciennes données.Enregistrement des expressions de variable SSIS

La requête SQL est stockée dans une variable appelée ExpireOldRecordsQuery qui est construit à l'exécution si la propriété EvaluateAsExpression est définie sur TRUE et l'expression est quelque chose comme ce

"Update MyTable Set ExpiredOn = SYSDATE Where ExpiredOn IS NULL AND DownloadID <> " + @User::CurrentDownloadId

Je veux enregistrer la requête réelle à partir de la variable ExpireOldRecordsQuery.

Comment est-ce que je fais le journal de SSIS à quoi l'expression est évaluée?

Répondre

1

Chaque fois que votre variable est référencée, elle sera évaluée à la valeur actuelle. Cela signifie que la valeur de ExpireOldRecordsQuery sera toujours égale à la chaîne plus la valeur actuelle de @User :: CurrentDownLoadId. La variable ExpireOldRecordsQuery peut être utilisée comme n'importe quelle autre variable, ce qui vous permet d'enregistrer sa valeur. Si vous utilisez la journalisation SSIS, vous pouvez utiliser la fonction FireInformation() dans une tâche de script pour envoyer les informations de variable au journal SSIS.

Questions connexes