FoxPro/Visual FoxPro - ERROR AL AGREGAR

 
Vista:

ERROR AL AGREGAR

Publicado por Edith (29 intervenciones) el 23/01/2007 21:32:37
HOLA A TOD@S

Estoy realizando pruebas a mi formulario donde doy de alta a mis clientes pero mis problemas son
1.- cuando le doy click en el boton nuevo me abre el ultimo registro que tengo en mi tabla y me modifica la informacion
2.- una ves que termino de hacer el punto anterior (actualizar datos) vuelvo a dar clic en nuevo y ahora si me genera el id consecutivo pero al momento de guardar me manda el siguiente error
"UNIQUENESS OF INDEX IDCLIENTE IS VIOLATED"
Este el el codigo que tengo en el boton guardar en el cual me echaron la mano para hacerlo

Select 1
go bott
Locate for cliente.idcliente=Thisform.txtidcli.value
If found() then
replace idcliente with Thisform.txtidcli.value
replace cliente with Thisform.txtcliente.value
replace direccion with Thisform.txtdir.value
replace rfc with Thisform.txtrfc.value

Thisform.txtcliente.Enabled=.f.
Thisform.txtdir.Enabled=.f.
Thisform.txtrfc.Enabled=.f.

Thisform.cmdnuev.Enabled=.t.
Thisform.cmdguar.Enabled=.f.
Thisform.cmdsal.Enabled=.t.

Wait Window "Los datos se Actualizaron con éxito" Timeout .8

else
Append Blank ***********A QUI EN DONDE ME MARCA EL ERROR*****************
replace idcliente with Thisform.txtidcli.value
replace cliente with Thisform.txtcliente.value
replace direccion with Thisform.txtdir.value
replace rfc with Thisform.txtrfc.value

Thisform.txtcliente.Enabled=.f.
Thisform.txtdir.Enabled=.f.
Thisform.txtrfc.Enabled=.f.

Thisform.cmdnuev.Enabled=.t.
Thisform.cmdguar.Enabled=.f.
Thisform.cmdsal.Enabled=.t.

Wait Window "Los datos se Guardaron con éxito" Timeout .8

Thisform.refresh
endif

no se que pasa ya que el dia de ayer que lo empece a probar estaba funcionando bien
Ojala me puedan ayudar y de antemano les agradesco su ayuda.
SALUDOS!!!!
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:ERROR AL AGREGAR

Publicado por Plinio (7841 intervenciones) el 23/01/2007 22:39:15
Si te da un error con un append blank es porque hay otro registro en blanco y estas usando un indice primario o uno candidato.
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:ERROR AL AGREGAR

Publicado por neo (1604 intervenciones) el 24/01/2007 02:34:19
Saludos...

Como dice nuestro amigo Plinio, hay en tu tabla una fila en blanco...y al momento de revisar con Append Blank te marca ese mensaje de error...porque como te comente antes, en indices primarios no debe haber duplicados...

Revisa la tabla y elimina el campo en blanco...

Ademas observa que cuando presiones el boton nuevo estén los textbox vacios y liostos para agregar...

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:ERROR AL AGREGAR

Publicado por Ernesto Hernandez (4623 intervenciones) el 24/01/2007 21:03:53
cuando le doy click en el boton nuevo me abre el ultimo registro que tengo en mi tabla y me modifica la informacion

If found() then
replace idcliente with Thisform.txtidcli.value
replace cliente with Thisform.txtcliente.value
replace direccion with Thisform.txtdir.value
replace rfc with Thisform.txtrfc.value

Aqui le estas diciendo que si lo encuentra lo modifuique con la informacion que tiene tu forma en ese momento

UNIQUENESS OF INDEX IDCLIENTE IS VIOLATED

El problema es que estas duplicando el valor de un campo que estas utilizando como indice

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