![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Error al ejecutar consulta de inserción
Buenas tarde:
Necesito hacer los siguiente
Donde obtengo valores de unas tablas, para posteriormente a través de los parámetros REFDELPROVEEDOR, FOTO Y VisibleEnWeb, realizar las inserción de un registro con una foto y asignarle dicha foto a un artículo. Hasta ahí, creo que la consulta no está mal hecha. El problema es que no consigo que me funcione. Estoy utilizando un SQLQuery y para mi base de datos utilizo SQLServer. Aquí pongo el código de la inserción de una imagen. Código:
procedure TForm1.CargarImagen3(directorio: string; indice: integer; visibleWEB : boolean); var fichero: string; Imagen : TBitMap; Buffer : TStream; begin Imagen := TBitmap.Create; Buffer := TMemoryStream.Create; fichero := directorio+'\'+FileListBox1.Items.Strings[indice]; if (ANSIUpperCase(ExtractFileExt(fichero)) = '.JPG') or (ANSIUpperCase(ExtractFileExt(fichero)) = '.JPEG') then begin Imagen := ConvertJPG2BMP(fichero); Imagen.SaveToStream(buffer); DM.SQLQuery2.Params.ParamByName('FOTO').LoadFromStream(buffer,ftblob); end else DM.SQLQuery2.Params.ParamByName('FOTO').LoadFromFile(fichero,ftblob); DM.SQLQuery2.Params.ParamValues['REFDELPROVEEDOR'] := NombreSinExtension(FileListBox1.Items.Strings[indice]); DM.SQLQuery2.Params.ParamValues['VISIBLEENWEB'] := visibleWeb; DM.AplicarCambios(DM.SQLConnection1, DM.ClientDataSet2, false); end; Código:
procedure TDM.AplicarCambios(SQLConnection : TSQLConnection; ClientDataSet : TClientDataSet; seleccion : Boolean); begin SQLConnection.Close; SQLConnection.Open; if seleccion = true then ClientDataSet.Open else ClientDataSet.Execute; if not (ClientDataSet.State = dsInsert) then ClientDataSet.Edit; ClientDataSet.Post; if (ClientDataSet.ChangeCount > 0) then ClientDataSet.ApplyUpdates(-1); ClientDataSet.Close; ClientDataSet.Open; end; ClientDataSet.Edit; me da el error "cannot perform this operation on a closed dataset" He buscado por todos los lados, pero no encuentro nada que me solucione el problema. Espero que podáis ayudarme. Gracias. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error al ejecutar consulta a MySQL con Zeos | DSK25 | Lazarus, FreePascal, Kylix, etc. | 3 | 31-12-2014 10:13:55 |
Error en delphi al ejecutar consulta SQL | josi | SQL | 2 | 29-03-2008 14:38:37 |
Error al ejecutar consulta | mierda | SQL | 1 | 11-03-2007 22:06:36 |
Error al Ejecutar consulta de Eliminacion | JoanKa | Varios | 2 | 02-01-2007 16:10:53 |
ADO: Error al ejecutar una consulta repetidamente | sostro | Conexión con bases de datos | 6 | 31-08-2004 17:43:50 |
![]() |
|