FoxPro/Visual FoxPro - Tableupdate

 
Vista:

Tableupdate

Publicado por Luis Polo (134 intervenciones) el 09/04/2007 17:56:56
Hola amigos de la web:

MI duda es la siguiente: tengo un formulario de altas, y al momento de dar clic en el boton nuevo, hago un append blank a mi tabla. ahora si cancelo la operacion igual me graba el registro en blanco.
Mi Tabla ARTICULO esta en el entorno de datos con BufferModeOverride 3
Tengo las sgtes lineas en mi PRG:
set multilocks on
set exclusive off
set reprocess automati

codigo de mi boton NUEVO
xnew=0
sele ARTICULO
calculate codigo to xnew
appe blank

codigo de mi boton CANCELAR
sele ARTICULO
=TABLEREVERT(.T.)

Me puede echar una manito.
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
sin imagen de perfil

RE:Tableupdate

Publicado por neo (1604 intervenciones) el 09/04/2007 18:12:33
Y porqué no mejor utilizas un boton guardar y ahi Escribe tu Append Blank si el usuario que decida si guarda o no los datos.

Y en el botón nuevo, que solo se preparen los objetos para ingresar datos...(textbox,combo,grillas,etc.)

Ya que, si utilizas el Append Blank en nuevo, siempre te agregará un campo nuevo en tu tabla.

Suerte►
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:Tableupdate

Publicado por Luis Polo (134 intervenciones) el 09/04/2007 18:29:24
Hola Neo:

Gracias por responder.
Pero aun asi tengo entendido que si aun con el appen blank solo se añadira un registro en blanco en memoria ya con Tableupdate recien al disco, pero igual con Tablerevert lo esta haciendo.
Ahora todos mis campos estan enlazados al ControSource. obligado tengo que darle appenb blank en el boton nuevo.
Alguien mas tiene otra dia.

Saludos.
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:Tableupdate

Publicado por stadnick (53 intervenciones) el 09/04/2007 20:48:05
Te aconsejo que si quieres agragar registros una tabla o vista, lo mejor es que utlices ESTO ejemplo: INSERT INTO nombretabla (campo1,campo2,campo3) VALUES (vVAR1,vVAR2,vVAR3)
TABLEUPDATE(0,.F.,"nombretabla")
unlock all
ESTE CODIGO IRIA EN UN BOTON (AGREGAR)
Y EL TABLEREVERT("cAliasTabla") IRIA EN EN EL BOTON CANCELAR.
PRUEBALO
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
sin imagen de perfil

RE:Tableupdate

Publicado por Ernesto Hernandez (4623 intervenciones) el 10/04/2007 01:52:51
cuando uses nuevo puedes poner todos tus textbox en blanco solamente y como te dice neo apendeas cuando le des grabar

Suerte
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
sin imagen de perfil

RE:Tableupdate

Publicado por neo (1604 intervenciones) el 10/04/2007 18:32:05
Asi es, Ernesto. Usando la logica, debe ser así....pienso que programando orientado a objetos es mas sencillo y práctico.
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
sin imagen de perfil

RE:Tableupdate

Publicado por Ernesto Hernandez (4623 intervenciones) el 10/04/2007 20:25:54
de eso se trata compáñero que todo sea mas practico en un lenguaje orientado a objetos
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:Tableupdate

Publicado por Luis Polo (134 intervenciones) el 10/04/2007 22:38:47
Gracias por seguir aportando:

Le puse a mis texbox en 0.00 o en " ", segun sea el caso, y al darle nuevo me pone en blanco los texbox y si cancelo(Tablerevert) me graba el registro donde estaba el puntero en blanco.
Estoy al borde de la locura. alguna idea de lo q pueda estar pasando.

Saludos.
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
sin imagen de perfil

RE:Tableupdate

Publicado por neo (1604 intervenciones) el 11/04/2007 15:10:38
Si sigues usando el append Blank mucho antes de que grabes el dato, tendrás el mismo problema. Porqué no manejas mejor el codigo orientado a objetos...es mas simple...

Boton nuevo:

Thisform.text1.value=0
Thisform.text2.value=""

Thisform.refresh

Botón Guardar:
select 1
Locate for mitabla.clave=Thisform.text1.value
If found() then ** si la clave existe, actualizar datos
replace clave with thisform.text1.value
replace nombre with thisform.text2.value
wait window "Datos Actualizados" timeout .8

else

Go bott
Append Blank
replace clave with thisform.text1.value
replace nombre with thisform.text2.value
wait window "Datos Guardados" timeout .8

endif

Thisform.refresh


Es un ejemplo sencillo para nuevo y guardar datos...

Suerte►
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