Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 04-01-2014
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 416
Poder: 17
bulc Va por buen camino
Cita:
Empezado por jafera Ver Mensaje
Hola Bulc.

Mi sugerencia es tal y como te indica Casimiro es que nos des más datos de dónde se produce el problema y que lo puede proiducir.
En tu explicación no se acaba de entender bien lo que te sucede, tu intentas explicarte al máximo pero tienes la ventaja de que ves en cada momento lo que sucede, nosotros no.
Comentas algo de un dbgrid, recuerda que un dbgrid no es más que la representación ordenada de los datos de una tabla o consultao sea que si realizas cualquier acción en este grid, realmente estas trabajando en los datasets, post, append, cancel, update, etc.

Pon algo de código, (si es que este no es un secreto de estado), bueno bromas aparte intenta colocarnos la sentencia que te da el error y seguro que recibirás la respuesta adecuada.

Saludos

Josep

!Es que no hay código apenas! Sólo hemos hecho la conexión. Usamos IBDataBase, IBTransaction, IBQuery, IBProvider, ClientDataSet, TDataSource y DBGrid. La conexión es correcta.
Hemos creado la DBase por código en el prompt de la aplicación en modo de comandos ISQL de Firebird (Antiguo DOS command). La Base tiene una tabla.
En ella hay cuatro campos el primero NUM es numérico; es clave primaria, not null. Luego hemos creado un generator y un trigger para que se autoincremente el camp NUM. Hemos hecho un insert y funciona el Trigger perfectamente. Sólo hay una tabla con un registro y este lleva un 1 en NUM.
El TDBGrid tiene una barra TDBNavigator. Pues bien, escribimos un dato nuevo para el registro nº 2 (el primero se ve en el Grid) del DBGrid. Al guardar el dato con el TDBNavigator, surge el error de "No hay valor para columna NUM". Entonces colocamos un botón con el código necesario para que el ClientDataSet guarde los datos. Usamos Post y ApplyUpdates, lo normal.
Pues bien, si se coloca un 2 en el campo NUM del DBGrid los datos se guardan sin problema, pero si se deja ese campo en blanco (a la espera de que el Trigger) haga su trabajo, entonces salta el error de nuevo. O sea, hay un error si se deja NUM en blanco.
Bueno, lo he intentado. Puedo poner el código pero repito solo tiene un botón de Guardar y un DBNavigator asociado al DBGrid.
El código del generator y del trigger funcionan correctamente.
Dime si hay algo que pueda ponerte más y te lo pongo.
Gracias.
Bulc
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
esta function no me funciona en XE2 y si funciona en D6 darkbits Varios 1 06-11-2012 17:00:45
IP de la PC en Trigger noelia89 Firebird e Interbase 5 04-09-2012 17:03:41
Trigger en Firebird no funciona payo7 SQL 2 06-11-2011 00:19:24
funciona bien en windows 7 64b pero en XP no funciona ASAPLTDA Varios 5 06-05-2011 16:24:50
Un trigger que dispara un procedimiento que dispara un trigger... sitrico Firebird e Interbase 5 04-06-2007 22:05:13


La franja horaria es GMT +2. Ahora son las 00:52:13.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi