Ver Mensaje Individual
  #2  
Antiguo 12-01-2007
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Reputación: 24
Bicho Va por buen camino
Hola, antetodo bienvenido al ClubDelphi.
Primero échale un vistazo a la Guía de Estilo y entenderás que el título de tu hilo no es el más idóneo.

En cuanto a tú problema, no veo la solución ahora mismo, pero puedes intentar varias cosas para intentar sacarlo por tí mismo.

- Puedes añadir un breakPoint en la linea donde asignas tu cadena a la variable Query. Llegar hasta el ExecSQL con F8 y ver que contiene Query, eso lo puedes copiar y ejecutar directamente sobre el cliente que tengas instalado de la base de datos y ver si funciona allí.
- El problema quizá esté en el SP, quizá deberías ponerlo aquí para verlo más claro.
- Esto ya es más un consejo:
Código Delphi [-]
   if Messagedlg('Está seguro de guardar este registro?', mtwarning, [mbYes,mbNo],0) = mrYes then
       begin
          Query2.SQL.Clear;
          Query2.SQL.Add(query);
          Query2.ExecSQL;
          Showmessage('Registro guardado en forma correcta');
          close
       end;
Tras hacer el ExecSQL muestras un mensaje informando de que se ha guardado bien. En tu caso, seguro que te debe aparecer el error de la base de datos y despues el de registro guardado, no?
Quizá deberías encerrar el intento de guardado en un bloque Try Except, algo como esto:

Código Delphi [-]
   if Messagedlg('Está seguro de guardar este registro?', mtwarning, [mbYes,mbNo],0) = mrYes then
       begin
          try
            Query2.SQL.Clear;
            Query2.SQL.Add(query);
            Query2.ExecSQL;
          except
             on e:Exception do //En lugar de Exception puedes usar cualquier otro manejador de excepciones
               ShowMessage('Se produjo un erro al guardar el registro: ' + e.message);
          end;
//Yo no mostraría el mensaje de se ha guardado correctamente, ya que se entiende que debe ir bien y se debe guardar, sólo mostrar algo si falla. Siguiendo la "norma" inglesa: No news, good news!
//          Showmessage('Registro guardado en forma correcta');

          close;
       end;

Espero te sirva.

Saludos
Responder Con Cita