Pedidos pendientes por autorizar SAP BO

Estimad@s buenas tardes

Estoy teniendo problemas para crear la siguiente consulta, es para saber ¿Qué pedidos son los que estan pendientes de autorización y por quién?

Utilizó SAP Business One 9.3 version for SAP HANA (9.30.220) PL: 12 (64-bit)

SELECT T0.WddCode, T2."UserID", CASE WHEN T0.Status = 'W' THEN 'PENDIENTE'
ELSE CASE WHEN T0.Status = 'Y' THEN 'AUTORIZADO'
ELSE CASE WHEN T0.Status = 'N' THEN 'RECHAZADO'
ELSE " END END END as 'Status'
FROM OWDD T0  INNER JOIN OUSR T1 ON T0.OwnerID = T1.USERID 
INNER JOIN WDD1 T2 ON T1.USERID = T2.UserID 
INNER JOIN ODRF T3 ON T1.USERID = T3.UserSign 
WHERE T0.DocDate  BETWEEN '[%0]' AND '[%1]'

Me arroja le siguiente error:

Algún alma caritativa que se apiade de este pobre hombre?

Prueba asi:

SELECT T0.WddCode, T2."UserID", CASE WHEN T0.Status = 'W' THEN 'PENDIENTE'
WHEN T0.Status = 'Y' THEN 'AUTORIZADO'  WHEN T0.Status = 'N' THEN 'RECHAZADO'
ELSE " END  as 'Status'
FROM OWDD T0  INNER JOIN OUSR T1 ON T0.OwnerID = T1.USERID 
INNER JOIN WDD1 T2 ON T1.USERID = T2.UserID 
INNER JOIN ODRF T3 ON T1.USERID = T3.UserSign 
WHERE T0.DocDate  BETWEEN '[%0]' AND '[%1]'

Buen día,

Gracias por contestar, sigo teniendo problemas con este desarrollo, me indica un error en la línea 3 posición 6, en la sentencia:

ELSE " END as ‘Status’

pero no encuentro la solución.

prueba con comillas dobles

"" END  as 'Status'
1 me gusta

No, tampoco es eso…

Sin comillas da error también.

estas en hana o estas en sql?

En HANA, modifique el código y ya corrió el desarrollo, sin embargo no me arroja resultados. Les platico un poco lo que pretendo.

Este desarrollo lo necesito para identificar básicamente los pedidos que aún no están autorizados y que usuario falta por autorizar, con la finalidad de tener un mejor control de las autorizaciones pendientes ya que en el reporte nativo de SAP debo entrar uno a uno para saber el dato anterior.

Les comparto el código que ya corre pero sin ningún resultado…

SELECT T0."WddCode", T2."UserID", CASE WHEN T0."Status" = 'W' THEN 'PENDIENTE' else 
case when T0."Status" = 'Y' THEN 'AUTORIZADO'  else  'RECHAZADO' 
END END  as "Status"
FROM OWDD T0  INNER JOIN OUSR T1 ON T0."OwnerID" = T1."USERID"
INNER JOIN WDD1 T2 ON T1."USERID" = T2."UserID" 
INNER JOIN ODRF T3 ON T1."USERID" = T3."UserSign"
WHERE T0."DocDate" BETWEEN '[%0]' AND '[%1]'

No tengo datos para verificar la consulta… pero por lo que dices tiene pinta que estas construyendo mal las relaciones entre tablas.
Te aconsejo que la reduzcas primero a la tabla T0 y pruebas que te trae los datos correctos, luego haces la join con WDD1 que parece sencilla y compruebas los datos, luego con OSUR que también es sencilla y compruebas los datos para finalmente ir a ODRF que será donde tengas el lío…
Como está de moda actualmente con la cocina, deporte etc… deconstruye o vete construyendo por etapas y analizando cada una

1 me gusta