2017-12-01 1 views
1

Ich versuche, einen Parameter zu setzen, während ein Paket von der Kommandozeile ausgeführt wirdSSIS Parameter können nicht durch aufgelöst werden dtexec

dtexec /f mypackage.dtsx /set \package.variables[$Project::MRNS_Database].Value;myvalue 

ich den unten Fehlermeldung erhalten

Der Paketpfad ein Objekt referenziert, die nicht gefunden werden: "\ Project.Variables [$ Project :: MRNS_Database]". Dies tritt auf, wenn ein Versuch unternommen wird, einen Paketpfad zu einem Objekt aufzulösen, das nicht gefunden werden kann.

Tatsächlich ist die MRNS_Database tatsächlich ein Parametersatz auf Projektebene (ich kann dies unter Parameter im Package Explorer sehen). Außerdem kann ich den Parameter/Par nicht verwenden, da ich die Option/File verwende.

Wie setze ich den Parameter in diesem Fall von der Kommandozeile dtsexec?

Antwort

2

Sie müssen Ispac Projektdatei als auch, wie in diesem Beispiel

DTEXEC /Project "Path to proj\YourProj.ispac" /Package "yourpackage.dtsx" 
/Set \Package.Variables[$Project::MRNS_Database];yourvalue 

Weitere Details in Microsoft dtexec Reference angeben.

2

Wie Ferdipux darauf hinweist, müssen Sie auf Ihre ipac-Datei verweisen. Stellen Sie sicher, dass Sie Ihr Projekt erstellt haben, andernfalls kann es zu Fehlern kommen.

Stellen Sie sicher, dass alles auf EINER Zeile steht, wenn Sie die Datei bat verwenden. Ich fügte auch Paketparameter hinzu, wenn Sie diese haben.

Bat-Datei

@ECHO OFF 
ECHO. 
ECHO This is a batch file 
ECHO. 

DTEXEC.EXE /Project "C:\Users\thoje\Documents\Visual Studio 2015\Projects\Integration Services Project8\Integration Services Project8\bin\Development\Integration Services Project8.ispac" /Package Package24.dtsx /Set \Package.Variables[User::Test3].Value;1 /set \Package.Variables[$Package::Test2];1 /set \Package.Variables[$Project::Test4];1 
PAUSE 
CLS 
Verwandte Themen