Saludos Clarioneros
Estoy haciendo un desarrollo nuevo en Clarion, empleando como motor a MSSQL. En una de las tablas (RECIBOS) tengo una columna llamada Folio, la cual, marque como llave única y con autoincremento, para que me sirva como ID principal y Folio
La cosa es que al generar con los templates la conocida Browse-Forma, intento insertar un registro, y todo funciona aparentemente bien (Folio = 1), lleno los demas datos etc. Pero si por alguna razon CANCELO la forma, la siguiente vez que intento agregar un registro, el sistema ha insertado un registro en blanco con el folio que habia intentado apartar
Como saben, el template de Clarion, cuando ponemos AutoINC, lo que hace es insertar un registro en la base y cambiar el request de Insert a Change, pero si yo cancelo, el mismo template BORRA el folio, para que siga disponible
¿No funciona esta conducta en MSSQL?
Desde ya, gracias por su ayuda
Autoincremento no me funciona
-
- Ayudante de Santa
- Mensajes: 81
- Registrado: Lun Feb 17, 2014 6:42 pm
- Contactar:
- Mauricio
- Desarrollador de Clarion
- Mensajes: 1125
- Registrado: Dom Feb 06, 2011 9:34 am
- Ubicación: España
- Contactar:
Re: Autoincremento no me funciona
No dejes que sea Clarion el que genere el autoincremento, es para problemas. Para eso tienes el IDENTITY en SQL y lo único que debes hacer es recuperar el valor insertado.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog
www.tdcsoftware.com y www.clarioneros.com/blog
-
- Ayudante de Santa
- Mensajes: 81
- Registrado: Lun Feb 17, 2014 6:42 pm
- Contactar:
Re: Autoincremento no me funciona
Saludos Mauricio
Gracias por tu consejo, lo voy a tomar en cuenta y quitaré lo de autoincremento para hacerlo manualmente. Lo mas raro es que en otra aplicacion, donde empleo el ODBC para MySQL, el template funciona de manera correcta !
Gracias por tu consejo, lo voy a tomar en cuenta y quitaré lo de autoincremento para hacerlo manualmente. Lo mas raro es que en otra aplicacion, donde empleo el ODBC para MySQL, el template funciona de manera correcta !
- Mauricio
- Desarrollador de Clarion
- Mensajes: 1125
- Registrado: Dom Feb 06, 2011 9:34 am
- Ubicación: España
- Contactar:
Re: Autoincremento no me funciona
Yo seteo el campo como IDENTITY en SQL. En el dct de Clarion le pongo IsIdentity = TRUE y le podés setear el SCOPE_IDENTITY para que te devuelve el último agregado. El problema con Clarion es ese, si tenés el auto-increment te crea ese registro fantasma y puede llegar a ser un problema. Me pasó que una tabla tenía otra clave única, no sé si el nombre del cliente, entonces al crear el registro lo creaba en blanco (no null). Si otro usuario intentaba crear el registro al mismo tiempo fallaba porque no podía haber 2 registros con ese nombre en blanco.
Clarion es muy lindo pero cuando es tan general, da problemas.
Clarion es muy lindo pero cuando es tan general, da problemas.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog
www.tdcsoftware.com y www.clarioneros.com/blog
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado