on 01-20-2015 10:13 PM
Que tal, tengo un examen complicado, para mi desempeño en SAP, se trata de bloquear un pedido si ya existe otro igual en cardcode, cardname, itemcode, y quantity he probado algunos códigos pero no me funcionan, si alguno tiene alguna pista o solución, saludos
Buen día Estimado Gerardo,
Usa este Query para que establezcas una Alerta diaria
/* ----- Query para mostrar lineas repetidas en orden de venta ----*/
SELECT t1.itemcode as 'Codigo de Articulo', count(*) as 'repetido N veces', t1.Dscription as 'Descripcion', t2.CardName
FROM RDR1 t1 inner join ORDR t2 on t1.DocEntry = t2.DocEntry
GROUP BY t1.itemcode, t1.LineStatus, t1.Dscription, t2.CardName
HAVING t1.LineStatus = 'o' and count(*) > 1
/* ---- Instruccion para unir ambos queries quitando la info de lineas repetidas ----*/
Except --Union
/* -----Query para mostrar solo las lineas repetidas en un solo orden de venta -----*/
SELECT t1.itemcode as 'Codigo de Articulo', count(*) as 'repetido N veces', t1.Dscription as 'Descripcion', t2.CardName
FROM RDR1 t1 inner join ORDR t2 on t1.DocEntry = t2.DocEntry
GROUP BY t1.itemcode, t1.LineStatus, t1.Dscription, t1.DocEntry, t2.DocEntry, t2.cardname
HAVING t1.LineStatus = 'o' and count(*) > 1 and t1.DocEntry like t2.DocEntry
Con esto te generara una alerta diaria en donde te dirá el código del producto, las veces que se ha repetido en distintos ordenes de venta abiertas (del mismo cliente), la descripción y el nombre del cliente.
Saludos
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Se suponía que sí, pero; ya realicé una prueba y no lo corre, creo que es por el EXCEPT talvez tengas que grabar la alerta en el SQL manager y hacer que corra la alerta desde ahí dando de alta operadores y.... déjame hacer unas pruebas, el Query corre bien desde Query manager dentro de SAP pero no se porque no despliega la alerta (EXCEPT podría ser jjaja) .
Grábalo en Query manager y correlo, dime si es lo que estas buscando, saludos !
Aquí está el Query para la alerta, ahora si ya solo guardalo y crea la alerta en base a ese query, dale la programación de frecuencia que gustes y los user que debe llegar, ya lo probé por aquí y todo OK, saludos !
set quoted_identifier on
select * from (SELECT t1.itemcode as "Codigo de Articulo", count(*) as "repetido N veces", t1.Dscription as "Descripcion", t2.CardName
FROM RDR1 t1 inner join ORDR t2 on t1.DocEntry = t2.DocEntry
GROUP BY t1.itemcode, t1.LineStatus, t1.Dscription, t2.CardName
HAVING t1.LineStatus = 'o' and count(*) > 1
Except --union
SELECT t1.itemcode as "Codigo de Articulo", count(*) as "repetido N veces", t1.Dscription as "Descripcion", t2.CardName
FROM RDR1 t1 inner join ORDR t2 on t1.DocEntry = t2.DocEntry
GROUP BY t1.itemcode, t1.LineStatus, t1.Dscription, t1.DocEntry, t2.DocEntry, t2.cardname
HAVING t1.LineStatus = 'o' and count(*) > 1 and t1.DocEntry like t2.DocEntry)as x
En cuanto a generar un bloqueo por TN no te lo recomiendo porque puede haber casos en donde sea valido tener dos Ordenes de venta del mismo cliente por el mismo articulo (programaciones de entregas, etc)
Message was edited by: Alberto Loera
Podrias crear una alerta diaria que incluya un Query en donde se muestren los Números de Orden de venta que incluyan productos que se repitan con el mismo socio de negocios en mas de una Numero de orden de venta "Abierta" y esta alerta deberá ser monitoreada diariamente por algún usuario para cerrar las que no deban estar abiertas.
Saludos !
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola
¿Qué ocurre si el pedido que encuentras duplicado está cerrado? ¿Y si está parcialmente servido? ¿Y si está cancelado?
¿Lo vas a comprobar con todos los pedidos de venta grabados en el sistema? ¿O sólo con los del periodo actual?
Me parece un poco locura porque esta comprobación en el transaction notification va a ralentizar la grabación de los pedidos.
Yo lo haría con un proceso que se ejecute cada cierto tiempo e inserte los datos en una tabla de usuario. Luego pondría una alarma y que sea el usuario de SBO quien decida qué hacer con el pedido duplicado.
Aparte de tu control, la empresa debe decidir qué tiempo tiene de entrega para el pedido y tenga tiempo suficiente para encontrar los duplicados y qué hacer con ellos antes de servirlos.
Un saludo
Agustín Marcos Cividanes
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.