web-dev-qa-db-fra.com

SSIS: la tâche de script (vs15) ne fonctionne pas lors du déploiement sur le serveur SQL 2014

L'erreur:

Une exception s'est produite lors du chargement de la tâche de script à partir de XML: System.Exception: la tâche de script utilise un script de la version 14.0 qui n'est pas pris en charge dans cette version de Integration Services. Pour exécuter le package, utilisez la tâche de script pour créer un nouveau script VSTA. Dans la plupart des cas, les scripts sont automatiquement convertis pour utiliser une version prise en charge lorsque vous ouvrez un package SQL Server Integration Services dans% SQL_PRODUCT_SHORT_NAME% Integration Services. sur Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask.LoadFromXML (XmlElement elemProj, événements IDTSInfoEvents)

Je fais exactement ce que ça dit, mais ça n'aide pas.

Toute solution?

4
Refael

La version révisée du SSDT (maintenant 14.0.61x) contient un correctif.

  1. Installez la nouvelle version. ( SSDT Pour télécharger )

  2. Cliquez avec le bouton droit sur projet> Propriétés> Propriétés de configuration> Général> TargetServerVersion - Mettre à jour vers SQL Server 2014> Redéployer.

3
Refael

Cela a fonctionné pour moi:

  1. Installez SSDT-BI pour Visual Studio 2013.
  2. Ouvrez votre solution dans Visual Studio 2015.
  3. Sélectionnez votre projet SSIS dans l'explorateur de solutions.
  4. Dans le menu Projet, sélectionnez Propriétés.
  5. Dans la boîte de dialogue Pages de propriétés, sélectionnez Propriétés de configuration -> Général.
  6. Sous Version cible de déploiement, remplacez la version du serveur cible par "SQL Server 2014".
  7. Nettoyer et reconstruire la solution et le redéployer.
19
Laurie Koudstaal

Même si cette question est un peu obsolète, je reçois la même erreur sur le serveur ciblé, mais dans un contexte légèrement différent:

  1. créé un package SSIS ciblant SQL Server 2014
  2. ajouter une tâche de script
  3. déployé sur SQL Server 2014
  4. la validation du package a échoué avec "La tâche de script utilise un script de la version 15.0 non pris en charge dans cette version de Integration Services ..."

J'ai utilisé les environnements suivants pour le développement et le déploiement:

La version actuelle de SSDT 17.1 prend en charge SQL Server 2014 cible - SQL Server vNext. La version actuelle du SSDT résout le problème de la question en fournissant une option ciblée dans la configuration du projet, comme indiqué précédemment.

J'ai remarqué que le projet SSIS ci-dessus fonctionne sur le serveur ciblé s'il est déployé avec:

  1. VS 2015 (Sélectionnez Projet SSIS -> Clic droit -> Sélectionner Déployer )
  2. Déploiement SSIS de SQL Server 2014 Wizard (probablement disponible uniquement si vous avez une instance locale installée; trouvée dans le Menu Démarrer de Microsoft SQL Server 2014 Windows)

Si vous essayez de le déployer à l'aide de SQL Server Management Studio v17.1 version du déploiement de SSIS Wizard le package déployé échoue. La tâche de script déployée est déployée en tant que version 15.0 et n'est pas prise en charge sur SQL Server 2014.

Si je déploie le même package à l’aide de Déploiement SSIS Wizard à partir de Microsoft SQL Server vNext CTP2.0 Menu Démarrer de Windows, probablement ajouté en installant SSMS 17.1, le La tâche de script de package déployé échoue avec la même erreur.

En résumé:

  1. Le dernier SSDT v17.1 pour VS2015 résout le problème ci-dessus en fournissant des options de configuration de serveur ciblée.
  2. Il doit être déployé via Visual Studio 2015.
  3. Il peut être déployé à l'aide de la version serveur cible du Déploiement SSIS Wizard
  4. Si vous utilisez la dernière version SSMS v17.1 et la version intégrée Déploiement SSIS Wizard la tâche de script du package SSIS échouera sur le serveur ciblé pour être mise à niveau vers la version SQL Server 2017

Peut-être que cela est voulu par la volonté, mais c'est très déroutant et m'a pris de garde. Juste au cas où il s'agisse d'un bogue, j'ai soumis un rapport de bogue .

0
Branko