todo esto es muy extraño. Haciendo prueba, detecto que este codigo:
Código:
ORDER BY
CASE WHEN @OrderBy = 'padre' THEN id_articulo
WHEN @OrderBy = 'razonSocial' THEN razonSocial
ELSE nombre
END
no funciona si le mando como ordenacion a "razonSocial" (que es varchar), me dice
Código:
Error de conversión al convertir el valor nvarchar 'Proveedor 2' al tipo de datos int.
('proveedor 2' es el nombre de un proveedor, el campo es varchar)
pero si funciona si le mando "padre" (que es int)
Ahora, si yo quito la siguiente linea:
WHEN @OrderBy = 'padre' THEN id_articulo
y le mando "razonSocial", ¡¡Funciona!!.
Es una locura. Es solo un order by, no es una cosa tan rara en SQL, no puedo entender porque si le pongo un campo numerico en un CASE WHEN me tome como numericos todos los demas CASE WHEN
me parece que abandono la programacion, me voy a estudiar Jardineria.