Búsqueda formateada con Case When SAP B1

Hola compañeros;
tengo un error en una búsqueda formateada para el detalle de factura de proveedores, lo que deseo es que cuando el campo Centro de costo sea igual a 150 me muestre un subquery.

SELECT 
(
CASE WHEN  $[$39.2004.0]= '150' 
THEN

SELECT T0.OcrCode,T0.OcrName, T1.Balance, T0.OcrTotal
FROM [OOCR] T0
INNER JOIN [OPRC] T1 ON T1.PrcCode=T0.OcrCode

END)

pero me sale error

image

Pero si en vez del subquery le pongo que me muestre un texto funciona bien, o el query solo también funciona, que le falta a la busqueda formateada? gracias

Hola Alguien puede ayudarme ?,saludos ?

Hola.

Creaste tu tema en el “limbo”, por ello tienes poca visibilidad, ya lo muevo a la sección de Business One.

De igual manera te invito a que marques la solución a tus temas, dando una vista rápida a tu perfil me doy cuenta que tienes varios temas sin seguimiento, la comunidad te ha brindado grandes respuestas, sería un buen gesto apoyar marcando las soluciones.

Sigo atento, saludos.

Saludos. :mexico:

No se bien que resultado quieres obtener al hacerlo de esa forma, pero aunque no fuera una búsqueda formateada eso no se puede ejecutar, los paréntesis están mal colocados.

En el supuesto de que funcionara, lo único que hace el query es devolver una lista de todas las normas de reparto.

Tienes estas 2 opciones de acuerdo a lo que logro entiendo:
1.- cambia el case por un IF

IF $[$39.2004.0] = '150' 
BEGIN
	SELECT T0.OcrCode,T0.OcrName, T1.Balance, T0.OcrTotal
	FROM [OOCR] T0
	INNER JOIN [OPRC] T1 ON T1.PrcCode=T0.OcrCode
END

2.- solo devuelve los que coincidan con el centro de costo (150)

SELECT T0.OcrCode,T0.OcrName, T1.Balance, T0.OcrTotal
FROM [OOCR] T0 INNER JOIN [OPRC] T1 ON T1.PrcCode=T0.OcrCode
WHERE T0.OcrCode = '150' AND T0.OcrCode = $[$39.2004.0]
4 Me gusta

EPR06 Muchas Gracias.

1 me gusta