Foros del Web » Programando para Internet » ASPX (.net) »

Como sincronizar datos local-web

Estas en el tema de Como sincronizar datos local-web en el foro de ASPX (.net) en Foros del Web. Hola, Feliz día del trabajo a todos (a todos los que trabajamos)! He creado antes catalogos en linea con carritos de compra, donde como todos ...
  #1 (permalink)  
Antiguo 01/05/2006, 17:00
 
Fecha de Ingreso: febrero-2005
Mensajes: 33
Antigüedad: 19 años, 2 meses
Puntos: 0
Como sincronizar datos local-web

Hola,
Feliz día del trabajo a todos (a todos los que trabajamos)!

He creado antes catalogos en linea con carritos de compra, donde como todos la gente echa en el carrito y los compra al final. La sitacion nueva es que, ahora necesito crear un campo de "cantidad de producto" en la tabla de productos y buscar la manera de sincronizar este dato con la base de datos local de la empresa.

Ellos lo que quieren es que no se venda un producto que no tienen, o que ya les queda poco. De hecho tengo que ahora, programarle las condiciones al sistema en linea para que desabilite un producto cuando no haya y lo demás...

Mi problema es el siguiente: Por diferentes motivos, lo que puedo programar es una aplicacion de escritorio, que lea la tabla de productos local, y cree sentencias sql (Updates de cantidades de productos). Necesito que la aplicacion corra 10 horas al dia, y que cada hora genere estas sentencias y las mande a la web mediante una conexion permante a internet que tiene la maquina local. Lo que no se es como mandarle estos datos al servidor en la web, tomando en cuenta que es un servidor de hosting compartido.

No se si queda claro mi pregunta...

Ojala alquien me pueda ayudar,

Gracias

Inter
Diseño web y hosting
  #2 (permalink)  
Antiguo 01/05/2006, 20:58
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 22 años
Puntos: 7
la mas rapida, aunque no la mas segura, generate un servicio web que reciba una cadena sql mas algunos parametros. Invoca desde tu aplicacion desktop a ese servicio web y mandas la cadena sql y los parametros extra(para evitar el sql injection)
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 02/05/2006, 12:38
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
No entiendo bien como tienes tu diseño físico de la aplicacion, si lo que quieres es sincronizar datos entre 2 Bd´s, si quieres pasarlo desde una aplicacion a una determinada Bd,..etc..etc..

porque para eso existen los jobs de SQL Server (si es que lo tienes) o en otro caso hacer una pequeña console app y la subes a un schedule task para que se ejecute de manera automatica aunque lo mejor sería hacerlo parte del servicio..

sería cosa de que nos proporcionaras mas detalles de lo que tienes para poderte dar una mejor referencia..

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #4 (permalink)  
Antiguo 02/05/2006, 21:37
 
Fecha de Ingreso: febrero-2005
Mensajes: 33
Antigüedad: 19 años, 2 meses
Puntos: 0
Aqui va la explicacion...

Hola,
Primero que todo, gracias por las sugerencias.

Les cuento como es y luego me dicen si lo que sugieren aplica para lo que necesito.

Yo le hice a esta compañía un catalogo de productos en línea. La base de datos esta alojada en el servidor, en SQL Server 2000. La tabla de productos, tiene todos los productos que son como 150. Al principio esto solo iba a mostrar los productos, pero luego se pensó en vender en línea. Para esos efectos, ellos necesitan que si se venden los productos, de alguna manera estén actualizados las cantidades de los productos en la Web, y no se venda algo de lo que hay muy poco o ya no hay (puede que no haya para el momento de la venta en internet, ya que ellos tienen su tienda física donde venden, con un sistema de inventario, de otra base de datos SQL Server 2000).

No tengo experiencia en hacer que una aplicacion web en línea consulte una base de datos que reside en la compañía, es más no sabría ni por donde comenzar... Bueno, lo que he averiguado es que para hacer esto necesitarían una IP dedicada y otras cosas de seguridad como Firewalls y más para que la aplicacion consulte la base de datos local. La compañía no cuenta con esto ni el presupuesto para hacer tanto.

Ya que el movimiento de productos no es demasiado, pense en hacer una pequeña aplicacion winform para poner en una compu de la compañía (que si tienen acceso a internet por banda ancha), que consulte cada hora las cantidades que tiene cada producto y mande sentencias SQL (updates) a la aplicacion o base de datos de la Web, y actualice las cantidades, para que asi, si un producto tiene poco o nada ya no se muestre en la pagina web y no se venda de un producto que no hay.

De ahi mi pregunta, como hacer que la base de datos remota (la de la web) reciba mis sentencias para que actualice las unidades disponibles de cada producto.

Ahora si mi solución es descabellada, complicada o incoherente, les agradezco mucho las sugerencias, quisiera aprender algo que de otra manera no sabría como hacer.

Gracias por contestar anteriormente y lo nuevo que sugieran,

Saludos,

Inter
Diseño web Costa Rica
  #5 (permalink)  
Antiguo 04/05/2006, 00:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 33
Antigüedad: 19 años, 2 meses
Puntos: 0
...

Alguien con un consejo!

Gracias!
  #6 (permalink)  
Antiguo 04/05/2006, 08:48
 
Fecha de Ingreso: abril-2006
Mensajes: 40
Antigüedad: 18 años
Puntos: 0
Bueno hay dos cosas importantes.
La primera en donde se encuentra tu sitio web es un servidor con ip fija y esta en internet me supongo al menos asi deberia de ser.
La segunda tu tienes acceso a la base de datos de este servidor, es decir puedes crear un usuario en la base de datos y administrarla (no es tan importante pero con que tengas acceso).

por otro lado me dices que el sistema de inventarios esta en sql server tambien

Si este es tu caso, puedes hacer dos cosas, una es atravez de sqlserver (el de la compañia no el de servidor web), puedes crear una tarea que se ejecute cada determinado tiempo y ajustar los valores de los productos.
(En teoria lo se pero te suguiero que te informes de como realizarlo, con el administrador de sqlserver - Administracion -Agente sql server - trabajos es donde se configura)

Por otro lado tambien puedes crear un web services e instalarlo en el servidor web, en el cual programes toda la logica para ajustar los productos, y realizas una aplicacion de escritorio que puedes instalarla en el servidor de inventarios desde la cual mandes llamar al web services con un timer.
Entonces tu aplicacion de escritorio solicitaria al web services la informacion sobre los productos y la aplicacion win ajustaria los datos segun sea el caso actualizaria la db de inventarios, los cuales se enviarian de nuevo al web services para actualizar la base datos del servidor web.

Asi estarias creando una interfaz para tener acceso a la base de datos del servidor web.

Esta solucion es la que se me ocurre.

Espero te sea de utilidad.
Un Saludo.
  #7 (permalink)  
Antiguo 06/05/2006, 21:11
 
Fecha de Ingreso: febrero-2005
Mensajes: 33
Antigüedad: 19 años, 2 meses
Puntos: 0
Gracias

Gracias por las respuestas. Considero que me servirán mucho.

Saludos a todos,

Inter
Diseño web Costa Rica
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:26.