FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Algo curioso con las tablas en firebird
Hola como están todos?
Mi caso es el siguiente: Tengo un formulario llamado frmProveedores el cual Agrego los atributos correspondientes como su respectivo ID, NIF, contacto, etc. bueno aplico el siguiente código simple para guardarlo en el btnGuardar:
Reviso mi aplicación lo busco en mi lista de proveedores y ahí esta no hay problema para ir mas aya en la verificación abro el Firebird ISQL Tool para ver los datos y si están. Bueno el problema esta en que al abrir otro formulario para agregar cuentas a un proveedor me aparece. Pero al darle el post al data set dice que el id_proveedor esta vacio. pero si cierro la aplicación y vuelvo abrirla abriendo el formulario de agregar cuenta ahi si no hay problema. Alguien ha pasado por esto? Saludos novato_erick |
#2
|
||||
|
||||
Veo que uno de los datos que agregas es el ID.
Puede que agregues ID=0 y luego los triggers se encarguen de darle el siguiente número al campo. En ese caso el Dataset habrá dado la instrucción a FB de que guarde el registro y ha guardado una copia en memoria, para no tener que releerlo. Mientras no cierres esa tabla/trasnaccion/conexión, el Dataset no se enterará de que en la base de datos se han modificado los datos insertados. Tienes dos opciones si ese es el problema: 1. Generas el ID antes de insertar y lo asignas al campo. 2. Insertas ID=0 y luego refrescas los datos. No recuerdo la instrucción, pero se que existe. Si es un generador, puedes tener un SQL que ejecute algo como lo siguiente: RDB$DATABASE tiene siempre un solo registro. Con esto y un trigger que haga más o menos esto:
|
#3
|
||||
|
||||
Para mi que el problema está en el manejo de las transacciones y/o en el nivel de aislamiento de las mísmas.
¿Por casualidad, haces commit o commitretaing después del post? ¿Qué nivel de aislamiento tienes configurados para las transacciones? Saludos, |
#4
|
|||
|
|||
Este es mi procedimiento en el boton de guardar corrijanme ya que no he logrado refrescar los datos sin tener que cerrar toda la aplicación.
utilizo directamente dbEdit mi conexion es dbexpress. y mi base da datos firebird. Saludos |
#5
|
||||
|
||||
hola novato_erick, te pongo el código de como lo hago yo
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
#6
|
|||
|
|||
hola he estado trabajando con transacciones como me lo han recomendado primero que nada les quiero agradecer a los que me han contestado en este foro Gracias Sres...
Leyendo un poco más sobre las transacciones en delphi el cual el libro Delphi 7 del autor Marco Cantú he realizado el siguiente procedimiento:
veo y reviso en la base de datos y ok esta bien pero aun asi sigo con el problema que si deseo por ejemplo agregar otros atributos al registro desde otro formulario por ejemplo llamado cuenta de proveedor no puedo seleccionarlo pero si aparece en el registro. Que sucederá alguna idea? Saludos novato_erick |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Algo más que "maestro/detalle": 3 tablas | Chandra_ | Firebird e Interbase | 1 | 21-12-2010 20:07:03 |
Muy curioso | gluglu | La Taberna | 10 | 21-06-2007 03:14:31 |
Algo curioso al salir de un edit... me lo graba | JoanKa | Varios | 6 | 20-01-2007 00:26:42 |
Curioso despertador | marcoszorrilla | Humor | 1 | 19-05-2006 09:02:29 |
Algo curioso que me paso, por si les sirve | jwmoreira | Firebird e Interbase | 0 | 09-07-2005 01:46:53 |
|