L’esecuzione di un Pacchetto SSIS utilizzo di dtexec

Sono in esecuzione di un pacchetto SSIS utilizzo di dtexec. Il pacchetto funziona bene in OFFERTE sul mio sistema. Quando vado a creare un processo di agente SQL server per eseguire il pacchetto in base a una pianificazione. Il pacchetto eseguendo passo è prevista come attività T-SQL, non un pacchetto SSIS). Il processo segnala nessun errore, ma non anche la creazione di output del file di excel @ la mia destinazione desiderata sul server.

Inoltre, quando ho separatamente eseguire il comando comando di shell, mi restituisce errori mostrato di seguito. In modo discontinuo, deve anche restituire errori sul FileSystem Compito che posso usare per copiare i file, dicendo che l’origine o la destinazione non esiste!! Quando gli stessi valori delle variabili di lavorare per me in OFFERTE, perché il processo di SQL fallire?

Started:  7:33:27 PM
Error: 2012-10-26 19:33:27.60
   Code: 0xC0016016
   Source:
   Description: Failed to decrypt protected XML node "DTS:Password" with error 0
x8009000B "Key not valid for use in specified state.". You may not be authorized
to access this information. This error occurs when there is a cryptographic err
or. Verify that the correct key is available.
End Error
Error: 2012-10-26 19:33:27.78
   Code: 0xC00F9304
   Source: GICSReport Connection manager "Excel Connection Manager"
   Description: SSIS Error Code DTS_E_OLEDB_EXCEL_NOT_SUPPORTED: The Excel Conne
ction Manager is not supported in the 64-bit version of SSIS, as no OLE DB provi
der is available.
End Error
Error: 2012-10-26 19:33:27.78
   Code: 0xC020801C
   Source: Data Flow Task Excel Destination [22]
   Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAG
ER.  The AcquireConnection method call to the connection manager "Excel Connecti
on Manager" failed with error code 0xC00F9304.  There may be error messages post
ed before this with more information on why the AcquireConnection method call fa
iled.
End Error
Error: 2012-10-26 19:33:27.78
   Code: 0xC0047017
   Source: Data Flow Task SSIS.Pipeline
   Description: component "Excel Destination" (22) failed validation and returne
d error code 0xC020801C.
End Error
Error: 2012-10-26 19:33:27.78
   Code: 0xC004700C
   Source: Data Flow Task SSIS.Pipeline
   Description: One or more component failed validation.
End Error
Error: 2012-10-26 19:33:27.79
   Code: 0xC0024107
   Source: Data Flow Task
   Description: There were errors during task validation.
End Error
DTExec: The package execution returned DTSER_FAILURE (1).
Started:  7:33:27 PM
Finished: 7:33:27 PM
Elapsed:  0.343 seconds

Pls help! 🙂 …. Devo essere l’aggiunta di tutte le variabili, le gestioni, e tutto per il mio file di configurazione? attualmente ho solo aggiunto alcuni ppty valori delle variabili e gestioni, ma non combo sembra funzionare efficacemente.

+1 in quanto questo è un errore comune di molti potrebbero beneficiare di lettura per decifrare tutti gli errori e arrivare ad una soluzione.

InformationsquelleAutor Vivek | 2012-10-26

2 Replies
  1. 11

    Il primo errore che ho affrontato è “Gestione Connessione Excel non è supportata nella versione a 64 bit di SSIS, come OLE DB provider è disponibile.”

    Fuori della finestra di Excel driver esistono solo nella versione a 32 bit di spazio di indirizzi. OFFERTE/SSDT è un’applicazione a 32 bit in modo Excel di origine e destinazioni. Tuttavia, quando si esegue da riga di comando/Agente SQL, allora avete bisogno di utilizzare in modo esplicito la versione a 32 bit di DTEXEC programma.

    Punto 1, sarà quello di garantire che si può eseguire il pacchetto dalla riga di comando sul server, l’agente esegue come te. Supponendo che il vostro SQL Server è installato nella consueta location, è probabilmente uno dei seguenti DTEXEC.exe disponibili

    C:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTExec.exe
    c:\Program Files\Microsoft SQL Server\100\DTS\Binn\DTExec.exe
    C:\Program Files\Microsoft SQL Server\110\DTS\Binn\DTExec.exe
    C:\Program Files\Microsoft SQL Server\120\DTS\Binn\DTExec.exe
    C:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn\DTExec.exe
    C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe
    C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\DTExec.exe
    C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\DTExec.exe

    Si desidera utilizzare (x86) versione. I futuri lettori, se vi capita di essere su un 32 versione di Windows (Windows 2003, forse), i primi 3 saranno le uniche opzioni disponibili per voi. Come Vivek il messaggio di errore è indicato, è l’esecuzione di un pacchetto SSIS a 64 bit mode.

    dtexec fornisce un’opzione della riga di comando /X86 per consentire di utilizzare senza soluzione di continuità lo stesso eseguibile a 32 e 64 bit operazioni. BUGIE! La documentazione viene chiamata fuori, ma chi legge documentazione?

    Questa opzione è utilizzata solo da SQL Server Agent. Questa opzione viene ignorata
    se si esegue l’utilità dtexec al prompt dei comandi.

    Quindi, è necessario per eseguire il pacchetto fornendo il percorso esplicito

    C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe /file C:\folder\GICSReport.dtsx

    Vedo “non è Riuscito a decifrare il nodo XML protetto” in uscita ed è anche stato si sta utilizzando i file di configurazione, in modo che si può molto probabilmente cambiare la tua PackageProtectionLevel dal default EncryptSensitiveWithUserKey per DontSaveSensitive. Che la funzione esiste per prevenire l’esposizione accidentale di dati sensibili (password) ma dal momento che sono già in trattamento, che con i file di configurazione, che non dovrebbe essere un problema. … Che potrebbe essere anche un errore di un altro pacchetto di livelli di protezione, ora che ci penso.

    In ogni caso, provare a eseguire il file eseguibile a 32 bit prima. Se non funziona prova a cambiare il livello di protezione del pacchetto come indicato. Se uno di questi per rendere il pacchetto eseguito come previsto, quindi si tenta di eseguire lo stesso comando SQL Agent.

    Se tutto funziona come dovrebbe, segnare la risposta. Se non, si prega di aggiornare il biglietto con la corrente errore viene generato e ci chiediamo per ulteriori informazioni.

    Bella risposta esauriente come al solito Bill!

    InformationsquelleAutor billinkc

  2. 0

    Qui è la soluzione, se si sta tentando di eseguire un pacchetto SSIS con dtexec da transact SQL che contiene un’importazione da excel.

    1. Creare un file batch che contiene il codice riportato di seguito.

      cd C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\
      DTEXEC.exe /DE “password” /F “C:\mySSISfolder\package.dtsx”

    2. Creare un collegamento che punta al vostro file batch, è possibile impostare il properties\advanced di scelta rapida per l’esecuzione come amministratore.

    3. da transact sql procedura eseguire il seguente comando

      exec xp_cmdshell ‘C:\myfolder\runssis_sc.lnk’

    InformationsquelleAutor user3509058

Lascia un commento