FoxPro/Visual FoxPro - problema de actualizacion

 
Vista:

problema de actualizacion

Publicado por Mauricio (105 intervenciones) el 23/10/2004 22:24:54
Hola amigos, Tengo un extraño problema resulta que tengo dos tablas, ProgEstudio y TipoAula las cuales abro en mi prg principal. Luego en un formulario realizo un SELECT donde muestro los campos de dichas tablas, en el mismo form tengo un boton con el cual llamo a otro formulario donde agrego un nuevo registro a la tabla ProgEstudio, hasta ahi todo bien, pero sucede que despues de agregar el registro cuando vuelvo al primer formulario y vuelvo a ejecutar el SELEC no me muestra el ult registro ingresado a menos que cierre el sistema y lo vuelva a abrir.
A que creen que se deberá este problema?, desde ya muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problema de actualizacion

Publicado por Roman Suazo (2723 intervenciones) el 24/10/2004 00:30:38
Te falta correr el tableupdate para que la infromacion se grabe en el disco, despues de correr ese comando ejectua un FLUSH...Ojo, cuando trabajas con cursores los cambios no se miraran, tendrias que eejcutar de nuevo el SELECT para asi ver los nuevos cambios, esto si no usas buffers
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema de actualizacion

Publicado por Mauricio (105 intervenciones) el 24/10/2004 00:39:54
Gracias por contestar, pero... me falto contarte que trabajo con append blank y replace en la tabla, creo que lo que me explicas en cuando se usa Scatter, puede ser?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema de actualizacion

Publicado por Roman Suazo (2723 intervenciones) el 24/10/2004 03:15:31
A ver si esto te parece mas claro:

Cuando creas un CURSOR a partir de un SELEC, el cursor resultante no tiene ninguna relacion con las tablas originales, es simplemente una especie de resultado, por lo tanto cualquier registro que añadas o actualices en el cursor NO se graban en las tablas, igual funciona a la inversa. Si quieres ver tu cursor actualizado debes cerrar el cursor orgininal y crearlo de nuevo. En tu caso tal vez las vista te puedan servir mejor (revisar la ayuda del fox para entender el tema). Hay formas de hacer que los cambios realziados en un cursor se efectuen en las tablas originales pero aun asi no sepueden ver las actualizaciones de las tablas originales en los cursores.

Cuando usas tablas con BUFFERS es como si trabajaras con un cursor extra, donde, se realizan los cambios y actulizaciones antes de ser grabadas en las tablas originales. Cuando ejecutas el TABLEUPDATE()
los datos del cursor se pasan la tablas reales.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema de actualizacion

Publicado por Mauricio (105 intervenciones) el 24/10/2004 15:30:00
Muchas gracias por tu explicación, ahora lo tengo mas, claro voy a intentar solucionar el problemita y luego te cuento muchas gracias de nuevo y hasta luego.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema de actualizacion

Publicado por Edgar Zambrano (90 intervenciones) el 24/10/2004 18:00:23
como te dice el compañero Roman, cuando realices cambios, despues de esto cierra el cursor creado y vuelve a ejecutar la sentencia, así veras que tus datos se actualizan.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar