Ich habe ein Paket, das ich aktualisiere. Das Paket wird von einem Job Agent-Job ausgeführt. Nachdem ich das Paket gelöscht und dann die neue Version bereitgestellt habe, führe ich ein Skript aus, das alle erforderlichen Anweisungen [create_environment], [create_environment_reference], [create_environment_variable] und [set_object_parameter_value] ausführt.
Wenn ich den Job starte, schlägt dies jedoch mit der folgenden Fehlermeldung fehl (wobei "n" eine Zahl ist, die in keiner der relevanten SSISDB-Tabellen oder -Ansichten als ID jeglicher Art angezeigt wird):
Die Umgebungsreferenz n ist dem Projekt nicht zugeordnet
environment_references
.Alter Beitrag, aber um anderen zu helfen, und möglicherweise eine Lösung: Wenn das SSIS-Paket von einem Job ausgeführt wird, werden die im SSIS-Projektkatalog festgelegten Referenzen verwendet.
Wenn Sie ein SSIS-Projekt erneut bereitstellen, gehen diese Referenzen verloren und Sie müssen sie im SSIS-Katalog zurücksetzen.
Unter SSMS> Instanz verbinden> Baum öffnen Integration Services-Kataloge> SSIDB> Projekte> Klicken Sie mit der rechten Maustaste auf das Projekt, das das im SQL Agent-Job ausgeführte Paket enthält. Klicken Sie auf Konfigurieren> Klicken Sie auf Verweise
Ist die Referenz noch da? Wenn nicht, fügen Sie es erneut hinzu. Sie können dies auch als SQL-Skript nach der Bereitstellung skripten.
quelle
Sie können das Erstellen der Referenz, der Umgebungsvariablen und der Zuordnung zum Parameter mit folgenden Skripten ausführen:
Wenn Sie dies vor dem Erstellen des Agentenjobs tun, können Sie die Umgebungsreferenz-ID in Ihrem Befehlstext zur Erstellung des Agentenjobs verwenden.
quelle