Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-05-2010
Ledian_Fdez Ledian_Fdez is offline
Miembro
 
Registrado: jun 2006
Ubicación: Ciudad Habana, Cuba
Posts: 242
Poder: 21
Ledian_Fdez Va por buen camino
Thumbs down Incorrect syntax near

Cita:
Empezado por Ñuño Martínez Ver Mensaje
Pregunta: ¿Qué gestor de base de datos estás usando?

Otra pregunta, aún más importante: ¿Cuál es la línea 26? Porque en la que yo creo que es la 26 no hay ningún @Total.
EL gestor de base de datos que utilizo es MSSQL Server 2000
La linea 26 es la que esta en rojo.


En espera de su ayuda un delphiano

Salu2,
Ledian.
Responder Con Cita
  #2  
Antiguo 03-05-2010
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.025
Poder: 27
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
No me había dado cuenta, o quizá lo cambiaste. Da igual, ahora sí la he visto. Que conste que yo de SQL sólo sé hacer consultas simples con SELECT, INSERT, UPDATE y DELETE.

Dicho esto, se me ocurre que en todas las asignaciones utilizas SET, pero en la línea del error no. Quizá sea eso, dicho desde la confesa ignorancia.
Responder Con Cita
  #3  
Antiguo 03-05-2010
Ledian_Fdez Ledian_Fdez is offline
Miembro
 
Registrado: jun 2006
Ubicación: Ciudad Habana, Cuba
Posts: 242
Poder: 21
Ledian_Fdez Va por buen camino
Thumbs up Ok

Ya lo resolví, me quedo así.

Código SQL [-]
alter  procedure Nueva_BajaIns

@CodSAF varchar(4),
@CodIns varchar(5),
@Cant int,
@Motivo char(2),
@Fecha datetime,
@Observ varchar(50)

AS

declare @errorvar int
set @errorvar = 0

declare @Total int
set @Total = 0

begin transaction
 if exists(select * from Existencia where SAF=@CodSAF and INS=@CodIns)  
   begin
    select @Total = Cant from Existencia where SAF=@CodSAF and INS=@CodIns
    if(@Total >= @Cant)
      begin
       insert into Salidas (CodSAF, CodIns, Cant, Motivo, Fecha, Observ)
       values (@CodSAF, @CodIns, @Cant, @Motivo, @Fecha, @Observ)
       set @errorvar = @errorvar + @@ERROR      
       if(@Total > @Cant)
         begin 
    update Existencia
          set Cant = Cant - @Cant
          where SAF=@CodSAF and INS=@CodIns
          set @errorvar = @errorvar + @@ERROR
         end
       else 
         begin
    delete from Existencia
    where SAF=@CodSAF and INS=@CodIns
    set @errorvar = @errorvar + @@ERROR
         end
      end
   end
 if (@errorvar = 0)
   commit transaction
 else
  rollback transaction

Muchas gracias de todos modos !!!


Salu2,
Ledian.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Incorrect values within SQLDA structure fedelinardi SQL 5 01-02-2018 03:52:07
Como crear un "Cryptographic Message Syntax" en Delphi? old_martinez Varios 3 09-12-2016 15:41:59
Incorrect string value Willo MySQL 0 07-04-2010 19:45:55
error (incorrect token followed by ":") en query voldemmor Conexión con bases de datos 4 16-04-2008 18:27:00
Truncated incorrect Double value: 'Airport' richy08 MySQL 5 10-10-2007 17:11:22


La franja horaria es GMT +2. Ahora son las 15:55:35.


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