• Domingo 22 de Diciembre de 2024, 07:51

Autor Tema:  Re: Actualizacion en Data Environmnet  (Leído 3218 veces)

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« en: Lunes 22 de Septiembre de 2003, 11:44 »
0
He notado q despues un Insert en desde un Data Environment los cambios no se reflejan hasta q cierro la aplicacion y vuelvo a ajecutarla...como puedo evitar ese inconveniente?

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #1 en: Lunes 22 de Septiembre de 2003, 15:28 »
0
Hola.

Me da que las instrucciones en la base de datos se están ejecutando de forma asíncrona. Ahora mismo no sé si se puede indicar al dataenviroment que ejecute de forma síncrona/asíncrona.
Supervisa el evento ExecuteComplete del comando que utilices en el dataenvironment. Comprueba que el evento se desencadena antes de que tú cierres la aplicación. Si esto es así, tal vez el problema esté en que no refrescas algún recordset tras hacer cambios en la bd.

A ver si con esto obtenemos alguna pista.

Suerte.

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #2 en: Lunes 22 de Septiembre de 2003, 20:05 »
0
Pues puede ser eso si...pero como refresco el recorset usando data environment?

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #3 en: Martes 23 de Septiembre de 2003, 09:03 »
0
Utiliza una sintáxis de este estilo:

DataEnvironment1.Recordsets(Índice_o_nombre).Requery

Suerte.

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #4 en: Miércoles 24 de Septiembre de 2003, 09:49 »
0
Q torpeza la mia...a q llamas indice? nombre? te refieres al nombre del Command?...

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #5 en: Miércoles 24 de Septiembre de 2003, 10:11 »
0
Hola Zambito.

'Recordsets' es una especie de colección del DataEnvironment que contiene precisamente eso, recordsets. Para referirte a un elemento de la colección, es decir a un recordset en concreto, deberás referirte a él por su índice (normalmente si sólo tienes 1 elemento, su índice será 1) o por su clave.

Supongo que también puedes usar algo así:

Dim int1 as integer
For int1 = 1 to DataEnvironment1.Recordsets.Count
DataEnvironment1.Recordsets(int1).Requery
Next int1

Suerte.

pacegar

  • Miembro MUY activo
  • ***
  • Mensajes: 108
  • Nacionalidad: es
    • Ver Perfil
    • INTEGRA Canarias
Re: Actualizacion en Data Environmnet
« Respuesta #6 en: Miércoles 24 de Septiembre de 2003, 10:49 »
0
creo que a lo que zambito se refiere es al nombre del command.
Yo la sentencia la utilizo asi y funciona...

DataEnvironment.rscommand.requery
   (donde command es el nombre que le hayamos dado al command)
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com

zambito

  • Miembro activo
  • **
  • Mensajes: 71
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #7 en: Miércoles 24 de Septiembre de 2003, 12:24 »
0
Ok...si algo asi me imaginaba, trate de buscar el dichoso indice pero no los encontre en las propiedades, creo q me decanto por usar mejor el nombre...
otra duda se puede cambiar la sentencia sql del command estando en ejecucion?

por ejemplo mi command original es
Select * for clientes
pero en el transcurso de la aplicacion le quiero aplicar un filtro y necesito cambiar la sentecia a
select * for clientes where pais =?

puedo cambiarlo o necesito crear otro command?

pacegar

  • Miembro MUY activo
  • ***
  • Mensajes: 108
  • Nacionalidad: es
    • Ver Perfil
    • INTEGRA Canarias
Actualizacion en Data Environmnet
« Respuesta #8 en: Miércoles 24 de Septiembre de 2003, 13:02 »
0
si puedes cambiarlo, pero antes debes cerrar el data.

dataenvironment.rsnombre.close
dataenvironment.rsnombre.open "Select...."
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com

MestreZero

  • Nuevo Miembro
  • *
  • Mensajes: 23
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #9 en: Lunes 26 de Enero de 2004, 15:04 »
0
mira para actualizar un dataenvironment tienes que primero descargar de la memoria y luego volver a llamarla, asi:

unload dataenvironment1
datareport1.show


unload mas el nombre del dataenvironment para descargarlo de la memoria,
luego llama al datareport

ANRA

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Actualizacion en Data Environmnet
« Respuesta #10 en: Miércoles 29 de Septiembre de 2004, 14:35 »
0
No se si es un fallo de vb pero cuando en el dataenviorenment actualizas la consulta ejecuntado el comandol de.nombrede_comando los controles que tienes enlazados pierden el enlace, ejemplo el datagrid no te muestra nada.
la forma de solucionarlo es que despues de que ejecutas el comando tienes que reenlazar con el recordset. es decir poner
     datagrid.datamenber=""
     set datagrid.datasource=de.rscomando.

donde de.rscomando es el recordset que te crea el dataenvironment "de" para el comando.

ya verás como si te aparecen ahora.

Has de hacer lomismo para cada control enlazado.