Leer inserciones de pc e insertar en base de datos

11/02/2008 - 23:54 por Martín | Informe spam
Hola,

tengo un gran gran gran problema, que espero que algún experto o alguien que
le haya pasado me puedo ayudar y es el siguiente:

tengo un software bajo licencia, que recopila muchos datos físicos,
este mismo tiene un botón de exportación, me exporta a una base de datos en
access con sus formatos los datos ... (esto no se puede tocar, porque el
soft no es de código abierto)
el problema, gran problema, es que me exporta a una carpeta cuyo nombre
siempre varía por la fecha (año, mes dia horas segundos) me concatena todos
esos números...

pero yo tengo una base de datos en sql server, la cual quiero fusionar con
esta última para hacer reportes.

mi problema es que yo había programado un dts, pensando que la base de datos
de access siempre iba a hacer la misma, entonces el dts era estático,
siempre me copiaba los datos de una tabla (que no variaba) a sql server, y
hacía los informes levantando los datos de sql server (donde estaban todos
los datos)



la única solución que le encontré, que no sé como implementarla (y es más,
no sé si se podría hacer) es poner un "spy", que monitoree cuando se haga
una inserción en una base de datos de access, y cuando se haga, hacerla
también en sql server (así no depende del nombre de la base de datos de
access, ni de donde se exporto, etc)

conozco el profiler, y sé que monitorea las transacciones que se hacen en
sql

pero no he podido encontrar la forma de "leer" la inserción, y ejecutarla en
una base de datos de sql server

busqué mucho en google, foros, etc, y nadie me ha dado la solución todavía,
lo que tengo hasta ahora es un scheduler en vb, que querría que me leyera
eso, y ahí metiendo mano en el código, hago la inserción correspondiente en
sql server

Si alguien me puede ayudar con esta solución, o brindar otra se lo agradezco
un montón ya que estoy contrareloj por temas de estimación y no he
encontrado ayuda todavía

Gracias!!!!!!!

Martín

Preguntas similare

Leer las respuestas

#1 Miguel Egea
12/02/2008 - 08:52 | Informe spam
No recuerdo como se hacía en DTS, supongo que con VBScript, pero podrías
averiguar los directorios que hay y entrar en cada uno de ellos para abrir
esa base de datos Access.
Tu inserción hecha sobre access será dificil que la cazes por que Access no
tiene ni profiler ni triggers, es decir, en mi opinión solo tienes la
alternativa de agendar ese DTS y construirlo con propiedades dinámicas para
que abra o bien todas o bien la última base de datos.

revisa en www.sqldts.com ahí veras algunas funciones para hacer estas cosas.
Saludos
Miguel Egea

"Martín" wrote in message
news:
Hola,

tengo un gran gran gran problema, que espero que algún experto o alguien
que le haya pasado me puedo ayudar y es el siguiente:

tengo un software bajo licencia, que recopila muchos datos físicos,
este mismo tiene un botón de exportación, me exporta a una base de datos
en access con sus formatos los datos ... (esto no se puede tocar, porque
el soft no es de código abierto)
el problema, gran problema, es que me exporta a una carpeta cuyo nombre
siempre varía por la fecha (año, mes dia horas segundos) me concatena
todos esos números...

pero yo tengo una base de datos en sql server, la cual quiero fusionar con
esta última para hacer reportes.

mi problema es que yo había programado un dts, pensando que la base de
datos de access siempre iba a hacer la misma, entonces el dts era
estático, siempre me copiaba los datos de una tabla (que no variaba) a sql
server, y hacía los informes levantando los datos de sql server (donde
estaban todos los datos)



la única solución que le encontré, que no sé como implementarla (y es más,
no sé si se podría hacer) es poner un "spy", que monitoree cuando se haga
una inserción en una base de datos de access, y cuando se haga, hacerla
también en sql server (así no depende del nombre de la base de datos de
access, ni de donde se exporto, etc)

conozco el profiler, y sé que monitorea las transacciones que se hacen en
sql

pero no he podido encontrar la forma de "leer" la inserción, y ejecutarla
en una base de datos de sql server

busqué mucho en google, foros, etc, y nadie me ha dado la solución
todavía, lo que tengo hasta ahora es un scheduler en vb, que querría que
me leyera eso, y ahí metiendo mano en el código, hago la inserción
correspondiente en sql server

Si alguien me puede ayudar con esta solución, o brindar otra se lo
agradezco un montón ya que estoy contrareloj por temas de estimación y no
he encontrado ayuda todavía

Gracias!!!!!!!

Martín

Respuesta Responder a este mensaje
#2 Martín
12/02/2008 - 15:49 | Informe spam
siempre se guarda por ejemplo en c:\Proy

pero en esa carpeta siempre se crea una carpeta distinta con la base de
datos,
y el nombre de la carpeta es la que lleva concatenada por ejemplo
20080212124812

hasta los segundos, y nunca va a ser igual...

pero probaré hacer alguna magia con los dts ...nunca los hice dinámicos,
pero veré si se puede, cualquier cosa posteo la sol,.


Gracias
Martín
"Miguel Egea" escribió en el mensaje
news:
No recuerdo como se hacía en DTS, supongo que con VBScript, pero podrías
averiguar los directorios que hay y entrar en cada uno de ellos para abrir
esa base de datos Access.
Tu inserción hecha sobre access será dificil que la cazes por que Access
no tiene ni profiler ni triggers, es decir, en mi opinión solo tienes la
alternativa de agendar ese DTS y construirlo con propiedades dinámicas
para que abra o bien todas o bien la última base de datos.

revisa en www.sqldts.com ahí veras algunas funciones para hacer estas
cosas.
Saludos
Miguel Egea

"Martín" wrote in message
news:
Hola,

tengo un gran gran gran problema, que espero que algún experto o alguien
que le haya pasado me puedo ayudar y es el siguiente:

tengo un software bajo licencia, que recopila muchos datos físicos,
este mismo tiene un botón de exportación, me exporta a una base de datos
en access con sus formatos los datos ... (esto no se puede tocar, porque
el soft no es de código abierto)
el problema, gran problema, es que me exporta a una carpeta cuyo nombre
siempre varía por la fecha (año, mes dia horas segundos) me concatena
todos esos números...

pero yo tengo una base de datos en sql server, la cual quiero fusionar
con esta última para hacer reportes.

mi problema es que yo había programado un dts, pensando que la base de
datos de access siempre iba a hacer la misma, entonces el dts era
estático, siempre me copiaba los datos de una tabla (que no variaba) a
sql server, y hacía los informes levantando los datos de sql server
(donde estaban todos los datos)



la única solución que le encontré, que no sé como implementarla (y es
más, no sé si se podría hacer) es poner un "spy", que monitoree cuando se
haga una inserción en una base de datos de access, y cuando se haga,
hacerla también en sql server (así no depende del nombre de la base de
datos de access, ni de donde se exporto, etc)

conozco el profiler, y sé que monitorea las transacciones que se hacen en
sql

pero no he podido encontrar la forma de "leer" la inserción, y ejecutarla
en una base de datos de sql server

busqué mucho en google, foros, etc, y nadie me ha dado la solución
todavía, lo que tengo hasta ahora es un scheduler en vb, que querría que
me leyera eso, y ahí metiendo mano en el código, hago la inserción
correspondiente en sql server

Si alguien me puede ayudar con esta solución, o brindar otra se lo
agradezco un montón ya que estoy contrareloj por temas de estimación y no
he encontrado ayuda todavía

Gracias!!!!!!!

Martín




Respuesta Responder a este mensaje
#3 Miguel Egea
17/02/2008 - 15:51 | Informe spam
Si nola encuentras, con SSIS puedo ponerte yo un ejemplo, con DTS no lo
tengo amano, pero lo ví posteado en www.sqldts.com

saludos
"Martín" wrote in message
news:
siempre se guarda por ejemplo en c:\Proy

pero en esa carpeta siempre se crea una carpeta distinta con la base de
datos,
y el nombre de la carpeta es la que lleva concatenada por ejemplo
20080212124812

hasta los segundos, y nunca va a ser igual...

pero probaré hacer alguna magia con los dts ...nunca los hice dinámicos,
pero veré si se puede, cualquier cosa posteo la sol,.


Gracias
Martín
"Miguel Egea" escribió en el mensaje
news:
No recuerdo como se hacía en DTS, supongo que con VBScript, pero podrías
averiguar los directorios que hay y entrar en cada uno de ellos para
abrir esa base de datos Access.
Tu inserción hecha sobre access será dificil que la cazes por que Access
no tiene ni profiler ni triggers, es decir, en mi opinión solo tienes la
alternativa de agendar ese DTS y construirlo con propiedades dinámicas
para que abra o bien todas o bien la última base de datos.

revisa en www.sqldts.com ahí veras algunas funciones para hacer estas
cosas.
Saludos
Miguel Egea

"Martín" wrote in message
news:
Hola,

tengo un gran gran gran problema, que espero que algún experto o alguien
que le haya pasado me puedo ayudar y es el siguiente:

tengo un software bajo licencia, que recopila muchos datos físicos,
este mismo tiene un botón de exportación, me exporta a una base de datos
en access con sus formatos los datos ... (esto no se puede tocar, porque
el soft no es de código abierto)
el problema, gran problema, es que me exporta a una carpeta cuyo nombre
siempre varía por la fecha (año, mes dia horas segundos) me concatena
todos esos números...

pero yo tengo una base de datos en sql server, la cual quiero fusionar
con esta última para hacer reportes.

mi problema es que yo había programado un dts, pensando que la base de
datos de access siempre iba a hacer la misma, entonces el dts era
estático, siempre me copiaba los datos de una tabla (que no variaba) a
sql server, y hacía los informes levantando los datos de sql server
(donde estaban todos los datos)



la única solución que le encontré, que no sé como implementarla (y es
más, no sé si se podría hacer) es poner un "spy", que monitoree cuando
se haga una inserción en una base de datos de access, y cuando se haga,
hacerla también en sql server (así no depende del nombre de la base de
datos de access, ni de donde se exporto, etc)

conozco el profiler, y sé que monitorea las transacciones que se hacen
en sql

pero no he podido encontrar la forma de "leer" la inserción, y
ejecutarla en una base de datos de sql server

busqué mucho en google, foros, etc, y nadie me ha dado la solución
todavía, lo que tengo hasta ahora es un scheduler en vb, que querría que
me leyera eso, y ahí metiendo mano en el código, hago la inserción
correspondiente en sql server

Si alguien me puede ayudar con esta solución, o brindar otra se lo
agradezco un montón ya que estoy contrareloj por temas de estimación y
no he encontrado ayuda todavía

Gracias!!!!!!!

Martín








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida