Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8944

Re: Sumar Variables en un Query

$
0
0

Mario:

Acá te adjunto una query (crear vista asociada) que espero te sirva.

 

Saludos,

 

Manuel Díaz G.

 

 

 

-----------Create view-----

 

---Vista

 

CREATE View SI_OF_Val As

 

SELECT T0.DocEntry 'DocEntry',T8.name as 'Tipo Material',T9.Name as 'Subgrupo Material',T0.DocNum As 'Número de Orden de Fabricación',

(Case T0.Status When 'P' Then 'Planif.' When 'R' Then 'Liberado' When 'L' Then 'Cerrado' When 'C' Then 'Cancelado' End) Estado,

T0.ItemCode as 'Código Artículo',T1.ItemName As 'Nombre Artículo',

T0.PostDate as 'Fecha Creación',

(Case T0.OriginType When 'M' Then 'Manual' When 'R' Then 'MRP' When 'S' Then 'Pedido cliente' When 'U' Then 'Upgrade' End) Origen,

T0.PlannedQty as 'Cantidad Planificada',

T0.CmpltQty As 'Cantidad Terminada',

(T0.PlannedQty - T0.CmpltQty - T0.RjctQty) As 'Cantidad Pendiente',

T0.RjctQty As 'Cantidad Rechazada',

T1.InvntryUom as 'Unidad de Medida',

(T0.CmpltQty / T0.PlannedQty * 100) As 'por Ingreso',

'Costos Materia Prima' = (Case When (SELECT sum(round ((T5.OutQty -T5.InQty)* T5.CalcPrice, 0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'C') is Null Then 0 Else (SELECT sum(round ((T5.OutQty -T5.InQty)* T5.CalcPrice, 0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'C') End),

'Costos Indirectos de Fabricación' = (Case When (SELECT sum(round(T5.CompTotal, 0)) FROM WOR1 T5 WHERE T5.DocEntry = T0.DocNum and T5.IssueType = 'B') is Null Then 0 Else (SELECT sum(round(T5.CompTotal, 0)) FROM WOR1 T5 WHERE T5.DocEntry = T0.DocNum and T5.IssueType = 'B') End),

'Desviación' = (select sum(Round((T8.PlannedQty - T8.Issuedqty)* T1.AvgPrice,0)) FROM WOR1 T8  INNER JOIN OITM T1 on T1.ItemCode = T8.ItemCode where T0.DocEntry = T8.DocEntry),

'Valor Producto Terminado' = (Case When (SELECT sum(round( T5.InQty * T5.CalcPrice,0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'P') is Null Then 0 Else (SELECT sum(round( T5.InQty * T5.CalcPrice,0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'P') End),

'Valor en Proceso' = ((Case When (SELECT sum(round(T5.CompTotal, 0)) FROM WOR1 T5 WHERE T5.DocEntry = T0.DocNum and T5.IssueType = 'B') is Null Then 0 Else (SELECT sum(round(T5.CompTotal, 0)) FROM WOR1 T5 WHERE T5.DocEntry = T0.DocNum and T5.IssueType = 'B') End)

                   + (Case When (SELECT sum(round( (T5.OutQty -T5.InQty)* T5.CalcPrice, 0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'C') is Null Then 0 Else (SELECT sum(round( (T5.OutQty -T5.InQty)* T5.CalcPrice, 0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'C') End)

                   - (Case When (SELECT sum(round( T5.InQty * T5.CalcPrice,0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'P') is Null Then 0 Else (SELECT sum(round( T5.InQty * T5.CalcPrice,0)) FROM OINM T5 WHERE T5.ApplObj = 202 AND T5.AppObjAbs = T0.DocNum AND T5.AppObjType = 'P') End))

From OWOR T0

LEFT JOIN OCRD T3 On T0.CardCode = T3.CardCode

INNER JOIN OITM T1 On T0.ItemCode = T1.ItemCode

INNER JOIN OITB T4 On T1.ItmsGrpCod = T4.ItmsGrpCod

INNER JOIN OUSR T2 On T0.UserSign = T2.UserId

LEFT JOIN OUSR T6 ON T0.UserSign = T6.Internal_k

 

 

 

 

---Query a ejecutar ----

 

SELECT  T4.PrcName, T0.[Emisor Orden de Fabricación], T0.[Número de Orden de Fabricación], T0.[Estado], T0.[Código Artículo], T0.[Nombre Artículo], T0.[Fecha Creación], T0.[Cantidad Planificada], T0.[Cantidad Terminada], T0.[Cantidad Pendiente], T0.[Cantidad Rechazada], T0.[Unidad de Medida], T0.[por Ingreso], T0.[Costos Materia Prima], T0.[Costos Indirectos de Fabricación], T0.[Desviación]

From SI_OF_VAL T0

INNER JOIN OWOR T3 ON T0.[DocEntry]=T3.DocEntry

LEFT JOIN OPRC T4 ON T4.PrcCode = T0.[Centro de Costo]

WHERE T3.PostDate between [%3] and [%4]

 
 

----Query a ejecutar----

 

SELECT

T0.DocNum, T0.PostDate, T0.ItemCode, T3.ItemName, T0.PlannedQty, T0.CmpltQty, T1.LineNum, T1.ItemCode, T4.ItemName, T1.PlannedQty, T1.IssuedQty, T2.Price

FROM

OWOR T0

INNER JOIN WOR1 T1 ON T0.DocEntry=T1.DocEntry

LEFT JOIN IGE1 T2 ON T2.BaseEntry = T0.DocEntry AND T2.ItemCode = T1.ItemCode AND T2.BaseLine = T1.LineNum

LEFT JOIN OITM T3 ON T3.ItemCode = T0.ItemCode

LEFT JOIN OITM T4 ON T4.ItemCode = T1.ItemCode

WHERE

T0.PostDate BETWEEN '[%0]' AND '[%1]'

ORDER

BY T0.DocNum, T1.LineNum

 


Viewing all articles
Browse latest Browse all 8944

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>