Foros del Web » Programación para mayores de 30 ;) » Programación General »

actualizacion visible

Estas en el tema de actualizacion visible en el foro de Programación General en Foros del Web. resulta ke estoy ocupando el dataenvironment para conexion del visual basic con sql server. tengo un command que hace referencia a la tabla Operaciones llamado ...
  #1 (permalink)  
Antiguo 15/05/2004, 17:35
 
Fecha de Ingreso: marzo-2004
Mensajes: 34
Antigüedad: 20 años, 1 mes
Puntos: 0
actualizacion visible

resulta ke estoy ocupando el dataenvironment para conexion del visual basic con sql server. tengo un command que hace referencia a la tabla Operaciones llamado "Operaciones", mediante este command ingreso un registro nuevo a la tabla Operaciones.
Esto lo hago asi:
deLaMarina.rsOperaciones.AddNew
(meto los datos)
deLaMarina.rsOperaciones.Update

ahora en otro form tengo otro command llamado "cmdMaestroOp", ke solo obtiene ciertos datos de la tabla Operaciones, esto lo muestro en un datagrid...
mi consulta es:

Como puedo hacer que los datos(nuevo registro) que ingrese mediante el command "Operaciones" sea visible inmediatamente en el datagrid del command "cmdMaestroop"

Agradeceria muchisimo su ayuda

pd: deLamarina.rsOperaciones no admite el metodo refresh, cual me puede servir???

Última edición por sakateuna; 15/05/2004 a las 17:40
  #2 (permalink)  
Antiguo 15/05/2004, 19:28
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
Es muy facil, solo tienes que hacer esto.....

Despues de que haces la insercion en tu base de datos con tu command

deLaMarina.rsOperaciones.AddNew
(meto los datos)
deLaMarina.rsOperaciones.Update

ahi mismo mandas refrescar el recorset cmdMaestroop y le asignas nuevamente el recordset a tu dataGrid


cmdMaestroop.Requery
Set FORMULARIO.DataGrid.DataSource = cmdMaestroop

NOTA: Para esto, tu recordset lo debes declarar PUBLIC para que lo puedas accesar desde cualquier formulario.
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #3 (permalink)  
Antiguo 15/05/2004, 19:40
 
Fecha de Ingreso: marzo-2004
Mensajes: 34
Antigüedad: 20 años, 1 mes
Puntos: 0
como es eso de declarar publico el recordset????, lo que pasa que estoy trabajando con poco codigo ya que ocupo las herramientas visuales de acceso a dato del dataenvironment

agradeceria ke me aclararas eso
  #4 (permalink)  
Antiguo 15/05/2004, 20:12
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
Yo no soy mucho de utilizar dataenvironments, son muy faciles de usar, pero poco flexibles.

Te recomiendo utlizar controles ADODB agregando la libreria Microsoft ActiveX Data Objects
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #5 (permalink)  
Antiguo 15/05/2004, 20:19
 
Fecha de Ingreso: marzo-2004
Mensajes: 34
Antigüedad: 20 años, 1 mes
Puntos: 0
muy agradcido me ha resultado

mi codigo ha quedado asi:

deLaMarina.rsOperaciones.Update
deLaMarina.rscmdMaestroOp.Requery
Set frmMaestroOp.DataGrid1.DataSource = deLaMarina

ese deLaMarina es la conexion

me han dico ke cambie a ADODB...pero kreo ke ya me adentre cone sto de los data environment, aprovecho de hacerte la pregunta: porke es mejor usar ADODB, puedes ser mas especifico, soy un novato en el tema

Gracias
  #6 (permalink)  
Antiguo 15/05/2004, 20:30
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
Facilmente... los controles ADODB son mas nuevos, mas rapidos y mas eficientes y flexibles, y por tanto tus consultas son mas eficientes.

Como son variables, puedes declarar tus conexiones y recordsets en un modulo y hacerlas Publicas, de esta manera las podras acceder desde cualquiera de tus formularios u otros modulos.

Ejemplo:
Public Cnn As New ADODB.Connection
Public Rst As New ADODB.Recordset


Para que tengas un ejemplo mas real puedes ver los mensajes que les conteste a :

Ayuda a conectarme - alvinceb
http://www.forosdelweb.com/s5ca75382...msg203126.html

VB6 ayuda porfavor - slope
http://www.forosdelweb.com/s5ca75382...msg203127.html


En este mismo Foro de programacion

Hasta pronto
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #7 (permalink)  
Antiguo 15/05/2004, 23:46
 
Fecha de Ingreso: marzo-2004
Mensajes: 34
Antigüedad: 20 años, 1 mes
Puntos: 0
mira tengo otro problema, ojala logre explicarme bien:

tengo un command llamado "cmdCClte" enlazado a un datagrid en un form llamado "CuentaCClte", en este form tengo un boton ke abre otro form de forma modal llamado "frmFijarLCto" el cual contiene otro datagrid enlazado con un command secundario(del command "cmdCClte") llamado "cmdFijarLcto" el cual solo muestra los datos agrupados por rut del cliente.

En este segundo form tengo un boton que abre otro form llamado "frmIngresarLCto"para ingresar un registro a la tabla "LineaCredito" ahi hago lo que tu me dijiste:

deLaMarina.rsLineaCredito.Update
deLaMarina.rscmdCuentaCClte.Requery
Set frmCuentaCClte.DataGrid1.DataSource = deLaMarina
unload me

...saliendo al form "frmFijarLCto...

el problema es ke requery solo realiza cambios al datagrid(command primario "CuentaCClte") del primer form, por lo tanto lo cambios no se me ven reflejados en el 2 form(frmFijarLCto) el cual contiene el command secundario al cual no se le puede aplikar requery.

para ver los cambios tengo ke ir al primer form y luego entrar al segundo....y ahi si se ven

la pregunta es: Como puedo lograr luego de ingresar el registro en el 3 form ir al al primer form , posicionarme en el registro ke inserte y volver al form2 para ke se reflejen los cmabios?...se supone todo esto no tiene ke ser visible para el usuario

si me ayudas
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 21:39.