Búsqueda Formateada en linea de documento con CASE

Hola buenas.

Quizá me esté oxidando…

Pretendo que según el valor de la columna tipo que escoge el usuario de unos valores predefinidos, le asigne otro valor en el campo de usuario contiguo, pero no lo logro… en algo me estoy equivocando…

Según logro ver, no está bien la sintaxis

SELECT
  CASE
    WHEN U_tipo = 'PARTE' THEN 'V5'
    WHEN U_tipo = 'SERVICIO' THEN 'V6'
    WHEN U_tipo = 'RERCARGA' THEN 'V4'
    ELSE ''
END AS TIPO...
3 Me gusta

Buenos días

continuando con lo que menciona @dgrvedado, tu sintaxis no esta correcta, al menos yo lo pondría asi:

SELECT 
(CASE 
WHEN $[TU TABLA.U_tipo]= 'PARTE' THEN 'V5' 
WHEN $[TU TABLA.U_tipo]= 'SERVICIO' THEN 'V6' 
WHEN $[TU TABLA.U_tipo]= 'RECARGA' THEN 'V4' 
END)
1 me gusta

Que tal @meqs, buenos días

Solo tengo la duda, si tu combo en el campo U_Tipo ya tiene los códigos como valores, como en la siguiente imagen:
imagen

De ser así, solo bastaría el siguiente código para la búsqueda formateada.
select $[RDR1.U_Tipo]

Saludos
SAP B1, v9.2 PL03
México

No, @chavalito son valores válidos predefinidos en el propio campo de usuario.

Finalmente he encontrado la solución.

SELECT TOP 1
case when $[$39.U_tipo.0] = 'SERVICIO' then 'V6'
when $[$39.U_tipo.0] = 'RECARGA' then 'V5'
when $[$39.U_tipo.0] = 'PARTE' then 'V4' 
end
FROM RDR1 T1
LEFT JOIN ORDR T0 ON T1.DocEntry = T0.DocEntry
WHERE T0.DocNum = $[ORDR.DocNum.1]

Gracias por los aportes y dejo constancia de la solución.

1 me gusta

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.