Pregunta

He creado un paquete SSIS para crear un archivo XML, que funciona bien en Visual Studio, pero cuando intento ejecutarlo en el indicador de cmd con dtexec / f " C: \ OakeyCreek.dtsx " arroja un error

  

Paquete SSIS " TestOakey " falló con el código de salida: 1

En el paquete, un sqltask proporciona un conjunto de resultados como XML y una tarea de script crea el archivo xml.

Hice un poco de investigación, el mismo paquete sin tarea de script se ejecutó bien tanto en el estudio como en el indicador de cmd. Sospecho que hay un problema con la tarea de script, porque tengo tanto VS2005 como VS2008 en la misma máquina.

¿Alguna idea de cómo resolver este problema?

La ventana emergente de error exacto es ...

  

La información de registro para esta aplicación debe actualizarse. Para actualizar, inicie sesión como administrador y ejecute este comando.

     

" C: \ Archivos de programa \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe " / HostID SSIS_ScriptTask / setup

Mi sistema operativo es Vista

¿Fue útil?

Solución

Nota: ¡Editado para proporcionar la respuesta!

Así que ha configurado un trabajo del Agente SQL Server y ahora no puede escribir en el sistema de archivos. Este es el comportamiento esperado, ya que el Agente SQL Server utiliza Credenciales de SQL Server para iniciar el trabajo, no las credenciales de Windows. Entonces, lo que tendrás que hacer es esto:

  1. Bajo la carpeta de Seguridad en el Servidor de Base de Datos en SQL Server Management Studio, encuentre la carpeta de Credenciales.
  2. Haga clic con el botón derecho en Credenciales y presione Nueva credencial.
  3. Configure la Credencial como usted.
  4. Expanda el Agente SQL Server, haga clic con el botón derecho en Proxies y presione Nuevo proxy.
  5. Configure el Proxy como usted, utilizando la Credencial que acaba de crear.
  6. Habilite el Proxy para que tenga el subsistema SSIS (si es admin, revíselos todos).
  7. Vaya a editar el paso en su trabajo que llama al paquete SSIS.
  8. Cambie el campo Ejecutar como del Agente de SQL Server al Proxy que acaba de configurar (si lo hizo bien, será la única otra opción en el menú desplegable).
  9. ¡Deberías ser bueno para ir!

Saludos,
Eric

Otros consejos

Está creando el paquete con SSIS 2005, pero ejecutándolo con DTEXEC desde SSIS 2008: probablemente tenga ambos SSIS 2005 y 2008 instalados, y DTEXEC 2008 aparece primero en la ruta.

Para usar DTEXEC 2005, especifique la ruta completa, como " c: \ archivos de programa \ Microsoft Sql Server \ 90 \ dts \ binn \ dtexec.exe " / f Package.dtsx

En teoría, DTEXEC 2008 también debería poder ejecutar el paquete (debería actualizarlo en el formato SSIS 2008), pero puede haber errores e incompatibilidades entre las versiones. También parece que algo está mal con la configuración de la tarea de script en SSIS 2008. ¿Por qué no seguirías las instrucciones en el mensaje de error: iniciar sesión como administrador y (usando el símbolo del sistema elevado) ejecutar -

" C: \ Archivos de programa \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ VSTA.exe " / HostID SSIS_ScriptTask / setup

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top