FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Grabar datos definitivos con ClientDataSet
Buenas:
Estoy creando una pequeña aplicación con ClientDataSet y DataSetProvider. Lo que hago es acceder a una tabla, posicionarme y cambiar la la imagen en un dbimage. Hasta ahí todo bien. Cargo la imagen jpg y aplico ClientDataSet1.Post La imagen se ve en el DBImage. El problema es que no se queda grabada en la base de datos cuando cierro el programa. He probado con ClientDataSet1.ApplYUpdates(-1) pero me muestra el error "no se puede crear una nueva transaccion se excedio la capacidad" ¿Donde está el problema? Muchas gracias. |
#2
|
||||
|
||||
Hola.
No especificas con que DB ni la versión de Delphi con que estas trabajando pero revisa si este enlace, que trata sobre el mismo error, te aporta la solución: Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
|||
|
|||
Buenas Ecfisa.
Gracias por contestar Sigo con el mismo problema. Mi DB es SQLServer 2008 y mi delphi EX3. Tengo un formulario sencillo con dos TDBEdit, un TDBimage, con datos del registro, un Edit donde pongo la referencia del artículo y dos botones, uno para buscar el artículo a través del parámetro REFPROVEEDOR y otro para cargar una imagen jpg en el TDBImage. Hasta ahí todo bien hasta que ejecutamos la sentencia
que es donde da el error. Adjunto código por si se ve algo extraño
Última edición por Casimiro Notevi fecha: 22-08-2017 a las 12:59:46. |
#4
|
|||
|
|||
Estoy un poquito perdido y no consigo solucionar el problema.
Alguien me puede ayudar? Gracias |
#5
|
|||
|
|||
Mejor estrategia para manipular bases de datos
Buenos días:
Me gustaría preguntar a ver que pensáis vosotros sobre cual es la mejor estrategia a la hora de conectar con una base de datos como MSSQL. Actualmente utilizo XE3. Para las conexiones y manejo de datos, utilizo SQLConnection, SQLQuery, DataSetProvider, ClientDataSet. Llevo tiempo sin programar y no sé si esta es la mejor estrategia ya que estoy teniendo problemas a la hora de grabar los datos en el servidor SQL. En concreto con una imagen que grabo en un TDBImage y que a la hora de hacer ClientDataSet1.ApplyUpdates(-1) me da el error de "no se puede crear una nueva transacción, se excedió la capacidad" ¿Alguien sabe cual puede ser el fallo? Muchas gracias. |
#6
|
||||
|
||||
He unido el hilo que has creado con este porque es el mismo asunto.
Saludos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
|||
|
|||
He reestructurado un poco el diseño, no por nada sino por dejarlo todo mas ordenado.
He creado un DataModule y en el procedimiento donde aplico cambios he cerrado y abierto conexión. Código:
procedure TDM.Aplicar; begin SQLConnection1.Close; SQLConnection1.Open; if not (ClientDataSet1.State = dsInsert) then ClientDataSet1.Edit; ClientDataSet1.Post; if (ClientDataSet1.ChangeCount > 0) then ClientDataSet1.ApplyUpdates(-1); ClientDataSet1.Close; ClientDataSet1.Open; end; A partir de ahí, busco la imagen y la cargo en el dbimage Código:
procedure TForm1.CargarImageClick(Sender: TObject); begin IrARegistroClick(Sender); if OpenPictureDialog1.Execute then begin if not (DM.ClientDataSet1.State = dsInsert) then DM.ClientDataSet1.Edit; if (ANSIUpperCase(ExtractFileExt(OpenPictureDialog1.FileName)) = '.JPG') or (ANSIUpperCase(ExtractFileExt(OpenPictureDialog1.FileName)) = '.JPEG') then dbImage1.Picture.Bitmap := ConvertJPG2BMP(OpenPictureDialog1.FileName ) else dbImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName); end; end; Y ahora ya si puedo aplicar los cambios sin que se produzca el error Gracias a los que habéis contestado o seguido este hilo. Lo doy por cerrado. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Grabar DVD de datos | jandro | Varios | 10 | 01-04-2012 14:21:32 |
Grabar datos a tablas access | Aprendiendo | Varios | 8 | 24-01-2007 16:07:04 |
No se actualizan los datos al grabar | marcial | Conexión con bases de datos | 4 | 25-05-2006 12:04:29 |
grabar datos de un memo | @-Soft | Conexión con bases de datos | 8 | 16-08-2003 11:01:49 |
grabar datos en visual dbase | botones67 | Varios | 1 | 19-07-2003 09:40:42 |
|