![]() |
| |||||||
| Registrarse | Preguntas Frecuentes | Lista de Foreros | Calendario | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
| | LinkBack | Herramientas | Desplegado |
| |||
| Hola, buenos dÃ***as. Tengo un formulario en el que se abre una tabla y de esta creo una vista con parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los campos clave, las tablas y los campos que actualizables e indices. El problema lo tengo cuando le digo que me cree un dato nuevo y me introducen un dato que ya existe en el campo indice unico. Al dar la orden de tableupdate(.t.) me da un error de integridad referencial. He probado con el metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si existe el dato introducido en la tabla. |
| | ||||
| ||||
| |
| |||
| Si el dato que te da duplicado es en el campo principal es porque lo estas calculando mal. Antes de grabar busca cual es el ultimo numero ingresado y sumale 1 select max(codigo) as codigo from tabla into cursor maximovalor mcodigo = maximovalor.codigo+ 1 y recien ahi graba el maximo valor y no tendras la clave duplicada. "Javier" escribió: > Hola, buenos dÃ***as. > > Tengo un formulario en el que se abre una tabla y de esta creo una vista con > parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los > campos clave, las tablas y los campos que actualizables e indices. > > El problema lo tengo cuando le digo que me cree un dato nuevo y me > introducen un dato que ya existe en el campo indice unico. Al dar la orden de > tableupdate(.t.) me da un error de integridad referencial. He probado con el > metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos > el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si > existe el dato introducido en la tabla. |
| |||
| Si el dato que te da duplicado es en el campo principal es porque lo estas calculando mal. Antes de grabar busca cual es el ultimo numero ingresado y sumale 1 select max(codigo) as codigo from tabla into cursor maximovalor mcodigo = maximovalor.codigo+ 1 y recien ahi graba el maximo valor y no tendras la clave duplicada. "Javier" escribió: > Hola, buenos dÃ***as. > > Tengo un formulario en el que se abre una tabla y de esta creo una vista con > parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los > campos clave, las tablas y los campos que actualizables e indices. > > El problema lo tengo cuando le digo que me cree un dato nuevo y me > introducen un dato que ya existe en el campo indice unico. Al dar la orden de > tableupdate(.t.) me da un error de integridad referencial. He probado con el > metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos > el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si > existe el dato introducido en la tabla. |
| |||
| Si el dato que te da duplicado es en el campo principal es porque lo estas calculando mal. Antes de grabar busca cual es el ultimo numero ingresado y sumale 1 select max(codigo) as codigo from tabla into cursor maximovalor mcodigo = maximovalor.codigo+ 1 y recien ahi graba el maximo valor y no tendras la clave duplicada. "Javier" escribió: > Hola, buenos dÃ***as. > > Tengo un formulario en el que se abre una tabla y de esta creo una vista con > parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los > campos clave, las tablas y los campos que actualizables e indices. > > El problema lo tengo cuando le digo que me cree un dato nuevo y me > introducen un dato que ya existe en el campo indice unico. Al dar la orden de > tableupdate(.t.) me da un error de integridad referencial. He probado con el > metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos > el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si > existe el dato introducido en la tabla. |
| |||
| Si el dato que te da duplicado es en el campo principal es porque lo estas calculando mal. Antes de grabar busca cual es el ultimo numero ingresado y sumale 1 select max(codigo) as codigo from tabla into cursor maximovalor mcodigo = maximovalor.codigo+ 1 y recien ahi graba el maximo valor y no tendras la clave duplicada. "Javier" escribió: > Hola, buenos dÃ***as. > > Tengo un formulario en el que se abre una tabla y de esta creo una vista con > parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los > campos clave, las tablas y los campos que actualizables e indices. > > El problema lo tengo cuando le digo que me cree un dato nuevo y me > introducen un dato que ya existe en el campo indice unico. Al dar la orden de > tableupdate(.t.) me da un error de integridad referencial. He probado con el > metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos > el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si > existe el dato introducido en la tabla. |
| |||
| Si el dato que te da duplicado es en el campo principal es porque lo estas calculando mal. Antes de grabar busca cual es el ultimo numero ingresado y sumale 1 select max(codigo) as codigo from tabla into cursor maximovalor mcodigo = maximovalor.codigo+ 1 y recien ahi graba el maximo valor y no tendras la clave duplicada. "Javier" escribió: > Hola, buenos dÃ***as. > > Tengo un formulario en el que se abre una tabla y de esta creo una vista con > parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los > campos clave, las tablas y los campos que actualizables e indices. > > El problema lo tengo cuando le digo que me cree un dato nuevo y me > introducen un dato que ya existe en el campo indice unico. Al dar la orden de > tableupdate(.t.) me da un error de integridad referencial. He probado con el > metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos > el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si > existe el dato introducido en la tabla. |
| |
| |
![]() |
| Herramientas | |
| Desplegado | |
| |
Temas Similares | ||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Integridad de Datos | Gustavo | Newsgroup microsoft.public.es.vfoxpro.datos | 3 | 05-07-2008 15:09:20 |
| Israel: Un modélo referencial para España. | libera | Newsgroup es.charla.religion | 0 | 21-06-2008 20:02:57 |
| Integridad referencial | Gabriel Dameñov | Newsgroup microsoft.public.es.vfoxpro | 4 | 16-04-2008 11:25:32 |
| Integridad referencial con fk ciclica | Pablo Roca | Newsgroup microsoft.public.es.sqlserver | 20 | 09-12-2007 18:22:20 |
| Sacar integridad referencial a código. | José Luis | Newsgroup microsoft.public.es.vfoxpro.datos | 0 | 09-11-2006 13:01:16 |