Solicitud de Compra con Pedido Borrador

Buen día colaboradores, estoy con una duda.

El comprador de la cía tiene un contador de Solicitudes de Pedido Abiertas (las que él debe generar pedidos)

Un usuario genera una Solicitud de Compra, el comprador de la cía levanta esa solicitud y la copia a un Pedido (desde el contador)

El pedido entra a un proceso de autorización y por lo tanto queda en borrador.

Luego el comprador vuelve a abrir el contador y copia a pedido todas las solicitudes.

El tema es que esas solicitudes quizás ya tienen un pedido en borrador y se vuelven a generar pedidos. Una vez que se autoriza UNO los otros quedan sin efecto, no se pueden autorizar porque el documento Base fue cerrado (por el pedido que se autorizó primero)

Ésto genera multiplicar la misma tarea.

Cómo puedo hacer para que sólo me traiga las solicitudes de compra abiertas y que además no fueron copiadas a un pedido borrador?

intenté buscar qué dato tiene la solicitud de pedido sobre el paso siguiente en borrador pero no logro dar con ello.

Les agradezco a todos por su tiempo y colaboración.

Que tengan un excelente viernes.

Tu contador me imagino que te refieres a un query, tendrias que añadir la exclusion de las solicitudes que han generado los borradores de pedido.
Los borradores se guardan en las tablas ODRF y DRF1 (aqui se guardan borradores de todos los documentos de marketing) y adicional usas el filtro del tipo de documento pedido (objtype 22) y claro que tenga relacion con la solicitud a travez del detalle (TargetType, TargetEntry, BaseEntry, BaseType)

Espero te ayude.

Saludos,

Willy cómo siempre muchas gracias por tu ayuda. Me estoy rompiendo el coco para saber cómo armar la query.
Tengo los datos, tengo las tablas, pero me parece que el JOIN no sé cómo hacerlo.
Las tablas son:
OPRQ (solicitudes de pedido)
PRQ1 (linea de solicitud de pedido)
ODRF (borradores)
DRF1 (linea de borradores)

Lo que preciso es lo siguiente:
Solicitudes de Pedido con status ABIERTO y que no tengan un borrador de pedido generado.

El join me lo arma entre las solicitudes y sus borradores

Me está limando

intenté seleccionando para la query las tablas:
OPOR
ODRF
DRF1
OPRQ
pero tampoco logro dar con el JOIN

es frustrante

No deberia ser tan complicado, solo listar las solicitudes abiertas, y excluir las que tengan referencia en los draft;

select PQ.* from OPRQ PQ where PQ.DocStatus = 'O'
and PQ.DocEntry not in (select BaseEntry from DRF1 D1 where D1.BaseType=22)
2 Me gusta

Willy cómo estás?
Ayer hice eso mismo, después de quemarme el coco porque pensaba mal la lógica y por desconocer los tipo de JOIN logré dar con ésto:

SELECT *  FROM "VELEZ_NO_INVENTARIO"."OPRQ"  T0 LEFT JOIN DRF1 T1 ON T0."DocEntry" = T1."BaseEntry" WHERE T0."DocStatus" = 'O' AND  T1."BaseEntry" IS NULL

Muchas gracias hermano por tus respuestas!!!

Abrazo.

1 me gusta

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