FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Key Violation no esta duplicada
Holas otra vez pidiendo ayuda...
tengo un problema de violacion de clave (Key Violation). En un Formulario tengo un DataSource y un DBGrid y en el grid listo los pedidos de un cliente o los pendientes. Cuando quiero agregar un nuevo registro abro otro formulario, al cual le conencto todos los campos con el DataSource del Formulario Principal con controles DBEdits. Todo muy lindo, pero al momento de hacer el post... CHAN error de Key violation... La clave no se repite eso estoy seguro . Si alguien puede saber que le ocurre al sistema se lo agradeceria Código:
// Hago el post o eso intento FrmPanelCliente->DSListado->DataSet->Post(); DMDatos->CDSTrabajo->ApplyUpdates(0); // Llamo a la transaccion DMDatos->Grabar();
__________________
:D chinosoft - only
|
#2
|
||||
|
||||
Que tal,
Creo que tu error esta en que estas dando Post (bajas los cambios o inserciones) y luego haces un ApplyUpdates del ClientDataset que intenta nuevamente hacer las operaciones de insercion y/o modificacion. Saludos |
#3
|
||||
|
||||
Probe comentar las dos lineas de a una por ves y me sigue dando el mismo error...
luego deje el Guardar() solo y tambien me da el mismo error... Gracias igual por la ayuda!
__________________
:D chinosoft - only
|
#4
|
||||
|
||||
Puedes indicar cual(es) es(son) los campos que conforman tus indices y si son unicos o no.
Gracias |
#5
|
||||
|
||||
Tiene un solo campo clave
lo asigno en el evento OnNewRecord del ClientDataSet Código:
DMDatos->CDSTrabajo->FieldByName("NUMERO")->AsInteger = DMDatos->getID("TRABAJO");
__________________
:D chinosoft - only
|
#6
|
||||
|
||||
Ok, eso es ent CDS, pero en la tabla de la base de datos como está conformado el o los indices y si es o son unicos.
Saludos |
#7
|
||||
|
||||
En la tabla tengo a NUMERO como clave primaria y ID_CLIENTE como clave forania
__________________
:D chinosoft - only
|
#8
|
||||
|
||||
Ya esta! se me habia corrompido la tabla! :X la volvi a definir y anda todo de 10! gracias por el consejo del post y el ApplyUpdates.
Solo deje el ApplyUpdates y la transaccion Guardar(). Muchas gracias de enserio!
__________________
:D chinosoft - only
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
El arroz que está llegando a nuestras mesas no está autorizado para consumo humano | sakuragi | La Taberna | 5 | 13-10-2013 01:07:14 |
Está bien esta consulta Select count? | enecumene | MySQL | 12 | 30-08-2007 04:54:29 |
Eliminar info duplicada/tripicada en algunos campos | marceloalegre | SQL | 5 | 18-07-2006 17:22:48 |
Violation key | maravert | Conexión con bases de datos | 3 | 17-05-2006 13:00:50 |
access violation cuando la impresora no esta lista | fabianbbg | Impresión | 1 | 06-09-2003 23:29:08 |
|