Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-06-2012
Avatar de Jere_84
Jere_84 Jere_84 is offline
Miembro
NULL
 
Registrado: sep 2011
Ubicación: Córdoba, Argentina
Posts: 214
Poder: 0
Jere_84 cantidad desconocida en este momento
Unhappy Problema de edición en SQLQuery

Hola, estoy haciendo una prueba en delphi 2010 datasnap utilizando los componentes de la paleta DbExpress. El ejemplo consta de una carga de facturación y al momento de grabar se descuenta el stock en la tabla de artículos. Esta operación la estoy haciendo en la aplicación servidor en el ServerMethod correspondiente, en el evento AfterUpdateRecord del componente DataSetProvider.

Este es mi codigo:

Código Delphi [-]
var
  CodigoArtic: integer;
  CantidadArtic: double;
  oTempArticulos: TSQLQuery;
//..
  case UpdateKind of
    ukInsert: Begin  //si es una inserción
         if SourceDS.Name = 'SQLDataSetDetalle' then  //si el que pasa es un SQLDataSetDetalle
         begin
           if DeltaDS.FieldByName('CANTIDAD').Value > 0 then
           begin
             CodigoArtic:= DeltaDS.FieldByName('COD_ARTIC').AsInteger;
             CantidadArtic:= DeltaDS.FieldByName('CANTIDAD').AsFloat;
             oTempArticulos:= TSQLQuery.Create(nil);
             oTempArticulos.SQLConnection:= SQLConnectionMovimientos;
             oTempArticulos.Close;
             oTempArticulos.SQL.Clear;
             oTempArticulos.SQL.Add('Select * From "Articulos" Where CODIGO= ' + inttostr(CodigoArtic));
             oTempArticulos.Open;
             oTempArticulos.Edit; <----------ERROR
             oTempArticulos.FieldByName('CANTIDAD').AsFloat:= oTempArticulos.FieldByName('CANTIDAD').AsFloat - CantidadArtic;
             oTempArticulos.Post;
           end;
         end;
     End;

El Error dice: Project servidor.exe raised exception class EDatabaseError with message 'Cannot modify a read-only dataset'.

Elegí este foro porque no creo que la excepción tenga que ver con Datasnap, mas bien parecería que me falta aclarar algo del componente. Como dice el enunciado de la excepción "no se puede modificar un dataset de solo-lectura" pero lo cierto es que ni siquiera hay una propiedad ReadOnly en el SQLQuery. Bueno cualquier sugerencia es bienvenida, gracias de antemano.
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
Problema con edicion de tabla JULIPO MySQL 1 21-08-2007 17:08:30
problema con edicion de imagenes 7pilas Gráficos 3 15-04-2006 00:41:54
problema de edicion en una Form thrys Conexión con bases de datos 1 08-09-2005 01:52:28
Problema con Edicion En Master-Detail Paradiso Conexión con bases de datos 0 26-01-2005 06:28:28
Como puedo cambiar la propiedad de edicion y no edicion a un StringGrid1 ctronx Varios 2 25-06-2004 23:10:19


La franja horaria es GMT +2. Ahora son las 06:34:48.


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