Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
No encuentro el error en esta sentencia Sql.....

Buenas a todos!!! Tengo un problema con esta sentencia, es un Insert bastante comun pero lo que quiero hacer es partirla en varias lineas ya que la que realmente tengo que usar tiene muchos campos y se me hace muy larga en una sola linea. Cuando compilo en Delphi me marca error en la linea que sigue de la consulta Sql, se que el error esta en la consulta porque si la anulo complila bien. Esta es la sentencia:


Código SQL [-]
   with QueryDataModule.ConyugeZQuery do 
                begin 
                     If active then close; 
                     SQL.Clear; 
                     SQL.Add('Insert Into cliente(Apellido,Nombre)'); 
                     SQL.Add('Values (:Apel,:Nom)'); 
                     ParamByName('Apel').Value:=AltasForm.ApellidoEdit.Text; 
                     ParamByName('Nom').Value:=AltasForm.NombreEdit.Text; 
                     ExecSQL; 
                end; 
              end;

Este es el error que arroja:
Código Delphi [-]
Declaration expected but identifier 'xxxx' found

Espero que me puedan ayudar!! Desde ya muchas Gracias!
Responder Con Cita
  #2  
Antiguo 14-01-2011
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Así como la pones, no le veo ningún problema. Tendríamos que ver cómo estás partiendo la consulta.

// Saludos
Responder Con Cita
  #3  
Antiguo 14-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Declaration expected but identifier 'xxxx' found
¿Ese es el mensaje exacto?, ¿identifier 'xxxx'?
Responder Con Cita
  #4  
Antiguo 14-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Gracias por contestar! Roman no entiendo eso que dijistes q tendriamos que ver como estás partiendo la consulta, así es como lo tengo en el delphi copie el código y lo pegue acá. Casimiro puse xxx por poner algo, quise decir que no es que me tira siempre la misma linea si anulo esa linea me salta el error en la que sigue. Gracias a los dos, que estaré haciendo mal? Saludos!
Responder Con Cita
  #5  
Antiguo 14-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pero copia y pega aquí el mensaje exacto, que tenemos la bola de cristal en el servicio técnico y hasta el lunes no está lista.
Responder Con Cita
  #6  
Antiguo 14-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Código SQL [-]
with QueryDataModule.ConyugeZQuery do 
                begin 
                     If active then close; 
                     SQL.Clear; 
                     SQL.Add('Insert Into cliente(Apellido,Nombre)'); 
                     SQL.Add('Values (:Apel,:Nom)'); 
                     ParamByName('Apel').Value:=AltasForm.ApellidoEdit.Text; 
                     ParamByName('Nom').Value:=AltasForm.NombreEdit.Text; 
                     ExecSQL; 
                end; 
              end;

Código Delphi [-]
  QueryDataModule.ClienteZQuery.Close;

                 flag:=False;

                 NuevaTarjetaForm.Close;

                 AltasForm.Close;

                 release;

Código Delphi [-]
[Error] DatosVentas.pas(419): Declaration expected but identifier 'QueryDataModule' found

Ahí Esta Todo, lo que te explicaba hoy es que abajo de la consulta tengo el código que sigue
si anulo el ClienteZQuery.Close, me tira error en flag, y así continuo hasta el End.
Saludos!
Responder Con Cita
  #7  
Antiguo 14-01-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y qué hay antes de
QueryDataModule ?
Responder Con Cita
  #8  
Antiguo 14-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
Esta la consulta y seguido a esta el codigo. Y antes de la consulta no hay nada. Que opinas que puede ser? Gracias!!!
Responder Con Cita
  #9  
Antiguo 14-01-2011
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Hola, creo que te sobra un end;

Código Delphi [-]
with QueryDataModule.ConyugeZQuery do 
begin 
  If active then close; 
  SQL.Clear; 
  SQL.Add('Insert Into cliente(Apellido,Nombre)'); 
  SQL.Add('Values (:Apel,:Nom)'); 
  ParamByName('Apel').Value:=AltasForm.ApellidoEdit.Text; 
  ParamByName('Nom').Value:=AltasForm.NombreEdit.Text; 
  ExecSQL; 
  end; //Este sobra.
end;
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #10  
Antiguo 14-01-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
prueba asi

umm creo que el problema esta en que no tienes declarado el el uses el form de donde tomas los datos , ahora si es el mismo por que no pruebas de la siguiente manera.
Código Delphi [-]
with QueryDataModule.ConyugeZQuery do
     begin
      SQL.Clear;
      SQL.Add('insert into cliente(apellido,nombre)');
      SQL.Add('values(:Papellido,:Pnombre)');
      Parameters.ParamByName('Papellido').Value:=self.ApellidoEdit.text;
      Parameters.ParamByName('Pnombre').Value:=self.Nombreedit.text;     
      try
       ExecSQL;
       Application.MessageBox('Registro Almacenado con Éxito','Error', MB_OK + MB_ICONINFORMATION);       
      except
      on E:EOleException do
       begin
        MessageDlg(Format('Error: %s    Codigo: %d', [E.Message, E.ErrorCode]), mtError, [mbOK], 0);
       end;
      end;
     end;


tienes que hacer mencion a la libreria ComObjs para que funcione, es este caso al menos capturamos el mensaje para ver que es.
Responder Con Cita
  #11  
Antiguo 14-01-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
mmm.. amigo, debes saber que en algunos tipos de error Delphi indica visualmente que el problema está en la línea 15 cuando en realidad está en la línea 14 por ejemplo. En otras ocaciones hay varias líneas de diferencia. Es por eso que lo mejor sería que nos proporcionaras todo el código del procedimiento para ayudarte a debugearlo.

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #12  
Antiguo 14-01-2011
verito_83mdq verito_83mdq is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 118
Poder: 14
verito_83mdq Va por buen camino
No se enojen muchachos pero el ganador es defcon1, le borre el end y compilo lo mas bien, tenia entendido que llevaba el end, es mas vi varios ejemplos de consultas en varias lines y el with se cerraba con el end
Me siento mal por hacerles perder tiempo por semejante pavada! Lo cómico es que tengo una consulta partida en varias lineas pero de Update y si le saco el end no compila! Que opinan ustedes, acepto criticas!
Saludos!
Responder Con Cita
  #13  
Antiguo 14-01-2011
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Jejeje, jugaba con ventaja

Es un error de lo más tonto, que me ha pasado varias veces, hasta que me instalé cnPack, que entre otras cosas, colorea el código fuente.

Ahora ya no me dan ese tipo de errores
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #14  
Antiguo 14-01-2011
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
jajajaja suele pasar, aunque eso indica que deberias darle una leida, o consultar mas seguido la cara oculta de delphi jajajajaja. que maña
Responder Con Cita
Respuesta



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
Que tiene de malo esta sentencia? kdemia SQL 1 01-09-2010 01:27:24
No Encuentro El Error En Este *.rc MON___ Varios 4 05-09-2007 13:50:28
error de sentencia if , else Epunamun Conexión con bases de datos 8 29-07-2005 13:23:24
Como se si una sentencia esta en la query satabel Conexión con bases de datos 1 24-07-2005 21:42:25
no encuentro esta unit qrprntr.pas viajero2015 Impresión 1 25-10-2003 14:00:03


La franja horaria es GMT +2. Ahora son las 23:38:15.


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