none
Sintaxis en procedimiento almacendo. RRS feed

  • Pregunta

  • Hola...tengo el sgte procedimineto almacenado y tira error en sintaxis en variables declaradas...creo que debe ser por las comillas o no estoy seguro.

    el error es sintaxis cerca de @FechaOrdenDesde

    if @Opcion = 'True'
        set @Sentencia='select o.Cartera,o.nro_orden,o.fecha,o.operacion,o.tipomt,o.referenciaorigen,o.originador,o.estado,p.FECHA_LIQUIDACION
                                             from ordenes o
                inner join pareooperaciones p
                on o.Cartera = p.cartera and
                o.nro_orden = p.nro_orden
                where p.FECHA_LIQUIDACION between  @FechaOrdenDesde  AND @FechaOrdenHasta '
                     else
                set @Condicion="*"
                end

                begin

    martes, 11 de septiembre de 2012 15:42

Respuestas

  • Cambialo por esto:

    f @Opcion = 'True'
        set @Sentencia='select o.Cartera,o.nro_orden,o.fecha,o.operacion,o.tipomt,o.referenciaorigen,o.originador,o.estado,p.FECHA_LIQUIDACION
                                             from ordenes o 
                inner join pareooperaciones p
                on o.Cartera = p.cartera and 
                o.nro_orden = p.nro_orden
                where p.FECHA_LIQUIDACION between ' + @FechaOrdenDesde + '  AND ' + @FechaOrdenHasta +'
                     else
                set @Condicion="*"
                end 
    
                begin

    Te faltaba el signo + para concatenar parámetros en tu sentencia.

    where p.FECHA_LIQUIDACION between ' + @FechaOrdenDesde + '  AND ' + @FechaOrdenHasta +'


    Un saludo, Cristian Pérez

    • Marcado como respuesta kpl_1 martes, 11 de septiembre de 2012 15:55
    martes, 11 de septiembre de 2012 15:49

Todas las respuestas

  • Cambialo por esto:

    f @Opcion = 'True'
        set @Sentencia='select o.Cartera,o.nro_orden,o.fecha,o.operacion,o.tipomt,o.referenciaorigen,o.originador,o.estado,p.FECHA_LIQUIDACION
                                             from ordenes o 
                inner join pareooperaciones p
                on o.Cartera = p.cartera and 
                o.nro_orden = p.nro_orden
                where p.FECHA_LIQUIDACION between ' + @FechaOrdenDesde + '  AND ' + @FechaOrdenHasta +'
                     else
                set @Condicion="*"
                end 
    
                begin

    Te faltaba el signo + para concatenar parámetros en tu sentencia.

    where p.FECHA_LIQUIDACION between ' + @FechaOrdenDesde + '  AND ' + @FechaOrdenHasta +'


    Un saludo, Cristian Pérez

    • Marcado como respuesta kpl_1 martes, 11 de septiembre de 2012 15:55
    martes, 11 de septiembre de 2012 15:49
  • En general es correcto, pero debes tomar en cuenta:
    1. Dar formato al las fechas.
    2. Usar comillas al rededor de los variables.

    El castellano no es mi lengua materna. Discúlpenme por los errores gramaticales, y, si pueden, corríjanme en los comentarios, o por correo electrónico. ¡Muchas gracias! Blog: http://about.me/GeriReshef

    martes, 11 de septiembre de 2012 17:52