![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
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. |
|
|
Temas Similares
|
||||
| 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 |
|