Consulta SQL Sap ADOC

Hola buen día, estoy haciendo una consulta a la tabla de ADOC, lo que requiero es saber el ultimo cambio del documento que un campo definido por el usuario cambio de estatus de 0 a 1 o 3. (el que esta en negritas es el registro que debería traer

EJEMPLO:

id / U_Entrega
1 / 0
2 / 0
3 / 3
4 / 3
5 / 0
6 / 0
7 / 3
8 / 3
9 / 3
10/ 0
11/ 0

este es un fragmento de la consulta, hasta el momento solo he logrado traer la primera vez que este campo cambia de 0 a 1 o 3

(SELECT TOP 1 SUBSTRING(CONVERT(VARCHAR(20),UpdateDate),1,11)+' '+SUBSTRING(CONVERT(VARCHAR(10),UpdateTS),1,2)+':'+SUBSTRING(CONVERT(VARCHAR(10),UpdateTS),3,2)--UpdateDate + (' ')
		FROM ADOC T
		WHERE T.DocEntry = T0.DocEntry
			AND T.ObjType = 17
			AND T.U_Entrega IN (1, 3)
			--AND DOcNum = 72117
		ORDER BY T.UpdateDate, T.UpdateTS) AS 'FECHA SOLICITUD ENTREGA'

Hola GTorres, buenas tardes. Desde mi punto de vista, esto no lo puedes hacer con un solo select. Tendrás que hacer un pequeño script que incluya un cursor y un while, El cursor sería un select a la tabla ADOC, ordenado en forma descendente por ID, y de ahí vas recorriendo hacia abajo. Si encuentras un 3, prendes una bandera (variable lógica) que indique que has detectado un 3. Si el siguiente ciclo dentro del while es un cero, entonces encontraste la información que buscas. Si no es así, limpias la bandera lógica y vuelves a empezar a buscar el 3.

Saludos.

1 me gusta

Este tema se cerró automáticamente 7 días después de la última publicación. No se permiten nuevas respuestas.