cancel
Showing results for 
Search instead for 
Did you mean: 

Orden de Venta de una llamada de servicio

Former Member
0 Kudos

     Buen día comunidad y estimados master.

Mi problema es sobre las Odenes de venta, en la cual me piden que traiga las ordenes de venta con su SN, articulo y cantidad

SELECT T0.[DocNum], T0.[CardCode], T1.[ItemCode], T1.[Dscription], T1.[Quantity]

FROM ORDR T0  INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry

asta este punto es sencillo, pero me piden que únicamente traiga las ordenes de venta que están en una llamada de servicio, por lo cual entro a la tabla SCL4 e indico que unicamente me traiga las que son igual a clase de documento 17.

ORDR T0  INNER JOIN RDR1 T1 ON T0.DocEntry = T1.DocEntry, SCL4 T2

T2.[Object] = '17'

pero no me manda absolutamente nada y el query marca error.

Agradecería cualquier comentario.

Gracias y Saludos!!

Accepted Solutions (1)

Accepted Solutions (1)

bfierro
Active Participant
0 Kudos

Hola, en tu query debes referencias a la actividad que contiene el documento vinculado "Orden de Venta". En este caso la tabla OCLG y ahí filtrar por el DocType '17', luego mediante inner llegas a la tabla ORDR y sacas los datos de la Orden de venta. saludos.

Answers (1)

Answers (1)

Former Member
0 Kudos

Gracias por tu respuesta Boris.

Tengo esta consulta que creo es lo que me intentas decir:

SELECT *  FROM SCL4 T0 inner join ORDR T1 ON T0.docabs = T1.docentry AND T0.object = '17'


Yes correcto me trae todas las ordenes de ventas que vienen de una llamada de servicio, pero mi problema es que no me trae los artículos

bfierro
Active Participant
0 Kudos

Hola. consulta: Si haces un select * from SCL4 ta tabla contiene datos?. slds

Former Member
0 Kudos

Nop unicamente trae el numerode documento, clase de documento y fechas.

bfierro
Active Participant
0 Kudos

Prueba la siguiente consulta, SELECT * FROM OSCL T0 INNER JOIN SCL5 T1 ON T1.SrvcCallId = T0.callID INNER JOIN OCLG T2 ON  T2.ClgCode = T1.ClgID INNER JOIN ORDR T3 ON T3.DocEntry = T2.DocEntry WHERE T0.callID = "id llamada " --reemplaza por una id de llamada de la sociedad que estes consultando slds.

bfierro
Active Participant
0 Kudos

Omar si quieres agregar el detalle de los artículos debes referenciar la tabla rdr1(mediante un inner, esta tabla almecena el detalle de las ordenes de venta) ejemplo: SELECT *  FROM SCL4 T0 inner join ORDR T1 ON T0.docabs = T1.docentry AND T0.object = '17' inner join RDR1 T2 ON T2.DocEntry = T1.DocEntry Saludos

Former Member
0 Kudos

Muchas gracias boris, me sirvió demasiado tu ayuda.

quedo de la siguiente manera.

SELECT T1.[CardCode], T1.[CardName],  T2.[ItemCode], T2.[Dscription], SUM (T2.[Quantity]) AS 'Cantidad Acumulada', T2.[StockPrice], SUM (T2.[Quantity]) * T2.[StockPrice] AS 'Costo Acumulado'

FROM SCL4 T0 INNER JOIN ORDR T1 ON T0.docabs = T1.docentry AND T0.object = '17' inner join RDR1 T2 ON T2.DocEntry = T1.DocEntry

WHERE T2.[ItemCode] NOT LIKE '%SERV%' AND T1.[TaxDate] >=[%0] AND  T1.[TaxDate] <= [%1] AND T1.[CANCELED] = 'N'

GROUP BY T1.[CardCode], T1.[CardName],  T2.[ItemCode], T2.[Dscription], T2.[Quantity], T2.[StockPrice]

ORDER BY T1.[CardCode], T2.[ItemCode]

Saludos Cordiales