Problemas al ejecutar DTS desde VB.NET

15/12/2008 - 18:04 por Javi | Informe spam
Hola,

He creado un DTS en un SQL SERVER 2000. Éste se almacena en "Servicios de
transformación de datos --> Paquetes locales". Este DTS tiene una contraseña
y cuando lo ejecuta funciona correctamente. Concretamente el DTS exporta a un
fichero Access toda las tablas y datos de la base de datos SQL SERVER.

Ahora quiero ejecutarlo desde una páginas ASP.NET y concretamente en VB.NET.
Después de buscar información encuentro el siguiente código que supuestamente
ejecuta dicho DTS:

Dim dtsp As New DTS.Package
dtsp.LoadFromSQLServer( _
ServerName:="(local)", _
ServerUserName:="NombreUsuario", _
ServerPassword:="PasswordUsuario", _
PackageName:="NombreDTS", PackagePassword:="PasswordDTS")
dtsp.Execute()

Cuando lo ejecuto no sale ningún error, pero cuando voy a ver el Access
supuestamente actualizado y creado, no hace nada, supuestamente no ejecuta
nada. Hago pruebas metiendo información nueva y luego ejecuto el DTS y nada.
No actualiza el Access, en cambio si lo lanzo desde SQL SERVER (botón
derecho, ejecutar) funciona correctamente.

¿Alguien me puede ayudar?, ¿donde puede estar el fallo?, ¿me falta algo?

Muchas gracias, Saludos,

Preguntas similare

Leer las respuestas

#1 Gustavo Larriera (MVP)
15/12/2008 - 22:03 | Informe spam
Posiblemente es un problema de permisos, recuerde que una aplicación ASP.NET
ejecuta bajo la cuenta del servicio IIS y que además hay configuración de
"impersonation" que considerar.


Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi" wrote:

Hola,

He creado un DTS en un SQL SERVER 2000. Éste se almacena en "Servicios de
transformación de datos --> Paquetes locales". Este DTS tiene una contraseña
y cuando lo ejecuta funciona correctamente. Concretamente el DTS exporta a un
fichero Access toda las tablas y datos de la base de datos SQL SERVER.

Ahora quiero ejecutarlo desde una páginas ASP.NET y concretamente en VB.NET.
Después de buscar información encuentro el siguiente código que supuestamente
ejecuta dicho DTS:

Dim dtsp As New DTS.Package
dtsp.LoadFromSQLServer( _
ServerName:="(local)", _
ServerUserName:="NombreUsuario", _
ServerPassword:="PasswordUsuario", _
PackageName:="NombreDTS", PackagePassword:="PasswordDTS")
dtsp.Execute()

Cuando lo ejecuto no sale ningún error, pero cuando voy a ver el Access
supuestamente actualizado y creado, no hace nada, supuestamente no ejecuta
nada. Hago pruebas metiendo información nueva y luego ejecuto el DTS y nada.
No actualiza el Access, en cambio si lo lanzo desde SQL SERVER (botón
derecho, ejecutar) funciona correctamente.

¿Alguien me puede ayudar?, ¿donde puede estar el fallo?, ¿me falta algo?

Muchas gracias, Saludos,
Respuesta Responder a este mensaje
#2 Javi
16/12/2008 - 10:31 | Informe spam
Muchas gracias Gustavo por la respuesta.

¿Podrías ser un poco mas explícito?, en el código estoy poniendo el usuario
y la password de la base de datos así como la password del DTS, y aún no
ejecutada nada si lo llamo desde asp.net.

Muchas gracias de nuevo,

Saludos,

"Gustavo Larriera (MVP)" wrote:

Posiblemente es un problema de permisos, recuerde que una aplicación ASP.NET
ejecuta bajo la cuenta del servicio IIS y que además hay configuración de
"impersonation" que considerar.


Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi" wrote:

> Hola,
>
> He creado un DTS en un SQL SERVER 2000. Éste se almacena en "Servicios de
> transformación de datos --> Paquetes locales". Este DTS tiene una contraseña
> y cuando lo ejecuta funciona correctamente. Concretamente el DTS exporta a un
> fichero Access toda las tablas y datos de la base de datos SQL SERVER.
>
> Ahora quiero ejecutarlo desde una páginas ASP.NET y concretamente en VB.NET.
> Después de buscar información encuentro el siguiente código que supuestamente
> ejecuta dicho DTS:
>
> Dim dtsp As New DTS.Package
> dtsp.LoadFromSQLServer( _
> ServerName:="(local)", _
> ServerUserName:="NombreUsuario", _
> ServerPassword:="PasswordUsuario", _
> PackageName:="NombreDTS", PackagePassword:="PasswordDTS")
> dtsp.Execute()
>
> Cuando lo ejecuto no sale ningún error, pero cuando voy a ver el Access
> supuestamente actualizado y creado, no hace nada, supuestamente no ejecuta
> nada. Hago pruebas metiendo información nueva y luego ejecuto el DTS y nada.
> No actualiza el Access, en cambio si lo lanzo desde SQL SERVER (botón
> derecho, ejecutar) funciona correctamente.
>
> ¿Alguien me puede ayudar?, ¿donde puede estar el fallo?, ¿me falta algo?
>
> Muchas gracias, Saludos,
Respuesta Responder a este mensaje
#3 Gustavo Larriera (MVP)
16/12/2008 - 12:15 | Informe spam
Por favor díganos como ha usted configurado la seguridad en su aplicación
ASP.NET:

- Qué método de autenticación ha configurado en el Internet Information
Services Manager? Autenticación Windows, usuario anónimo, cuál?

- Qué ha configurado en su web.config ASP.NET en el elemento Authentication?

- Cuál es la cuenta de inicio configurada para el servicio IIS ?

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi" wrote:


Muchas gracias Gustavo por la respuesta.

¿Podrías ser un poco mas explícito?, en el código estoy poniendo el usuario
y la password de la base de datos así como la password del DTS, y aún no
ejecutada nada si lo llamo desde asp.net.

Muchas gracias de nuevo,

Saludos,

"Gustavo Larriera (MVP)" wrote:

> Posiblemente es un problema de permisos, recuerde que una aplicación ASP.NET
> ejecuta bajo la cuenta del servicio IIS y que además hay configuración de
> "impersonation" que considerar.
>
>
> Gustavo Larriera, Microsoft MVP
> http://www.linkedin.com/in/gustavolarriera
> Este mensaje se proporciona tal como es, sin garantías de ninguna clase.
>
>
>
> "Javi" wrote:
>
> > Hola,
> >
> > He creado un DTS en un SQL SERVER 2000. Éste se almacena en "Servicios de
> > transformación de datos --> Paquetes locales". Este DTS tiene una contraseña
> > y cuando lo ejecuta funciona correctamente. Concretamente el DTS exporta a un
> > fichero Access toda las tablas y datos de la base de datos SQL SERVER.
> >
> > Ahora quiero ejecutarlo desde una páginas ASP.NET y concretamente en VB.NET.
> > Después de buscar información encuentro el siguiente código que supuestamente
> > ejecuta dicho DTS:
> >
> > Dim dtsp As New DTS.Package
> > dtsp.LoadFromSQLServer( _
> > ServerName:="(local)", _
> > ServerUserName:="NombreUsuario", _
> > ServerPassword:="PasswordUsuario", _
> > PackageName:="NombreDTS", PackagePassword:="PasswordDTS")
> > dtsp.Execute()
> >
> > Cuando lo ejecuto no sale ningún error, pero cuando voy a ver el Access
> > supuestamente actualizado y creado, no hace nada, supuestamente no ejecuta
> > nada. Hago pruebas metiendo información nueva y luego ejecuto el DTS y nada.
> > No actualiza el Access, en cambio si lo lanzo desde SQL SERVER (botón
> > derecho, ejecutar) funciona correctamente.
> >
> > ¿Alguien me puede ayudar?, ¿donde puede estar el fallo?, ¿me falta algo?
> >
> > Muchas gracias, Saludos,
Respuesta Responder a este mensaje
#4 Javi
16/12/2008 - 12:55 | Informe spam
Hola Gustavo, respondo a las preguntas me indicas:

-En el IIS el acceso es anónimo con el nombre de usuario IUSR_NOMBRESERVIDOR
y la autenticación de Windows Integrada

-En el Web.Config tengo: <authentication mode="Windows" />

-La respuesta a la 3º pregunta no la encuentro

Muchas gracias, Saludos,

"Gustavo Larriera (MVP)" wrote:

Por favor díganos como ha usted configurado la seguridad en su aplicación
ASP.NET:

- Qué método de autenticación ha configurado en el Internet Information
Services Manager? Autenticación Windows, usuario anónimo, cuál?

- Qué ha configurado en su web.config ASP.NET en el elemento Authentication?

- Cuál es la cuenta de inicio configurada para el servicio IIS ?

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi" wrote:

>
> Muchas gracias Gustavo por la respuesta.
>
> ¿Podrías ser un poco mas explícito?, en el código estoy poniendo el usuario
> y la password de la base de datos así como la password del DTS, y aún no
> ejecutada nada si lo llamo desde asp.net.
>
> Muchas gracias de nuevo,
>
> Saludos,
>
> "Gustavo Larriera (MVP)" wrote:
>
> > Posiblemente es un problema de permisos, recuerde que una aplicación ASP.NET
> > ejecuta bajo la cuenta del servicio IIS y que además hay configuración de
> > "impersonation" que considerar.
> >
> >
> > Gustavo Larriera, Microsoft MVP
> > http://www.linkedin.com/in/gustavolarriera
> > Este mensaje se proporciona tal como es, sin garantías de ninguna clase.
> >
> >
> >
> > "Javi" wrote:
> >
> > > Hola,
> > >
> > > He creado un DTS en un SQL SERVER 2000. Éste se almacena en "Servicios de
> > > transformación de datos --> Paquetes locales". Este DTS tiene una contraseña
> > > y cuando lo ejecuta funciona correctamente. Concretamente el DTS exporta a un
> > > fichero Access toda las tablas y datos de la base de datos SQL SERVER.
> > >
> > > Ahora quiero ejecutarlo desde una páginas ASP.NET y concretamente en VB.NET.
> > > Después de buscar información encuentro el siguiente código que supuestamente
> > > ejecuta dicho DTS:
> > >
> > > Dim dtsp As New DTS.Package
> > > dtsp.LoadFromSQLServer( _
> > > ServerName:="(local)", _
> > > ServerUserName:="NombreUsuario", _
> > > ServerPassword:="PasswordUsuario", _
> > > PackageName:="NombreDTS", PackagePassword:="PasswordDTS")
> > > dtsp.Execute()
> > >
> > > Cuando lo ejecuto no sale ningún error, pero cuando voy a ver el Access
> > > supuestamente actualizado y creado, no hace nada, supuestamente no ejecuta
> > > nada. Hago pruebas metiendo información nueva y luego ejecuto el DTS y nada.
> > > No actualiza el Access, en cambio si lo lanzo desde SQL SERVER (botón
> > > derecho, ejecutar) funciona correctamente.
> > >
> > > ¿Alguien me puede ayudar?, ¿donde puede estar el fallo?, ¿me falta algo?
> > >
> > > Muchas gracias, Saludos,
Respuesta Responder a este mensaje
#5 Gustavo Larriera (MVP)
16/12/2008 - 13:07 | Informe spam
Hola Javi,

"Javi" wrote:

Hola Gustavo, respondo a las preguntas me indicas:

-En el IIS el acceso es anónimo con el nombre de usuario IUSR_NOMBRESERVIDOR
y la autenticación de Windows Integrada

-En el Web.Config tengo: <authentication mode="Windows" />

-La respuesta a la 3º pregunta no la encuentro




Ejecute en linea de comandos: SERVICES.MSC

Busque en la lista de servicios al IIS ("world wide web publishing services"
si Windows es en inglés, en español no estoy seguro del nombre "servicio
internet" o parecido). Cuando lo encuentre, vea las propiedades, el valor
LogOn As.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida