Error al utilizar Case para ordenar un procedimiento almacenado
Publicado por Daniel (5 intervenciones) el 20/05/2019 15:42:27
Hola . si alguien me puede comentar por que me da error al enviar al parametro @Orden = 2 cuando ejecuto este procedimiento almacenado que cree.
si envio el parametro @Orden = 1 funciona correctamente
Con parametro @Orden = 2
Mens 245, Nivel 16, Estado 1, Procedimiento Informe_Articulos, Línea 4
Error de conversión al convertir el valor varchar 'A_Cuero Fino 1
Desde Ya Muchas Gracias
si envio el parametro @Orden = 1 funciona correctamente
Con parametro @Orden = 2
Mens 245, Nivel 16, Estado 1, Procedimiento Informe_Articulos, Línea 4
Error de conversión al convertir el valor varchar 'A_Cuero Fino 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Articulos.Art_Codigo int
Articulos.Art_Descripcion char
ALTER PROCEDURE [dbo].[Informe_Articulos]
@DesdeArticulo Int, @HastaArticulo Int, @Rubro Int = Null, @SubRubro Int = Null, @Orden int
AS
Select Articulos.Art_Codigo, Articulos.Art_Descripcion , Unidades.*, Tipo_Rubros_Articulos.*
FROM (Articulos INNER JOIN Tipo_Rubros_Articulos ON Articulos.Art_Rubro = Tipo_Rubros_Articulos.Tipo_Rub_Codigo)
INNER JOIN Unidades ON Articulos.Art_Unidad_De_Medida = Unidades.Tipo_Uni_Codigo
Where (Articulos.Art_Codigo Between @DesdeArticulo And @HastaArticulo)
And ( @Rubro Is NULL OR Articulos.art_rubro = @Rubro)
And ( @SubRubro Is NULL OR Articulos.Art_SubRubro = @SubRubro)
Order By Case @Orden
When 1 then Articulos.Art_Codigo
When 2 then Articulos.Art_Descripcion
END
Desde Ya Muchas Gracias
Valora esta pregunta


0