@ -18,6 +18,12 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
public string 客 户 { set ; get ; }
[ExporterHeader(DisplayName = "出库类型")]
public string 出 库 类 型 { set ; get ; }
[ExporterHeader(DisplayName = "结算编码")]
public string 结 算 编 码 { set ; get ; }
[ExporterHeader(DisplayName = "销售渠道")]
public string 销 售 渠 道 { set ; get ; }
[ExporterHeader(DisplayName = "客户代码")]
public string 客 户 代 码 { set ; get ; }
[ExporterHeader(DisplayName = "结算单")]
public string 结 算 单 { set ; get ; }
[ExporterHeader(DisplayName = "物料号")]
@ -25,42 +31,27 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
[ExporterHeader(DisplayName = "通用代码号")]
public string 通 用 代 码 号 { set ; get ; }
[ExporterHeader(DisplayName = "结算数量")]
public string 结 算 数 量 { set ; get ; }
public decimal 结 算 数 量 { set ; get ; }
[ExporterHeader(DisplayName = "实际出库数量")]
public string 实 际 出 库 数 量 { set ; get ; }
public decimal 实 际 出 库 数 量 { set ; get ; }
[ExporterHeader(DisplayName = "差异数量")]
public string 差 异 数 量 { set ; get ; }
public decimal 差 异 数 量 { set ; get ; }
[ExporterHeader(DisplayName = "开票单价")]
public string 开 票 单 价 { set ; get ; }
public decimal 开 票 单 价 { set ; get ; }
[ExporterHeader(DisplayName = "结算金额")]
public string 结 算 金 额 { set ; get ; }
public decimal 结 算 金 额 { set ; get ; }
[ExporterHeader(DisplayName = "已出库金额")]
public string 已 出 库 金 额 { set ; get ; }
public decimal 已 出 库 金 额 { set ; get ; }
[ExporterHeader(DisplayName = "WMS待出库金额")]
public string WMS待出库金额 { set ; get ; }
public decimal WMS待出库金额 { set ; get ; }
[ExporterHeader(DisplayName = "物料组编码")]
public string 物 料 组 编 码 { set ; get ; }
[ExporterHeader(DisplayName = "物料组车型")]
public string 物 料 组 车 型 { set ; get ; }
[ExporterHeader(DisplayName = "物料描述")]
public string 物 料 描 述 { set ; get ; }
[ExporterHeader(DisplayName = "备注")]
public string 备 注 { set ; get ; }
}
public class WmsOutPutSumExtend
@ -98,22 +89,25 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
public virtual List < WmsOutputSum > GetWmsSumExtendList ( string version )
{
var _ sql = "SELECT\n" +
" ROW_NUMBER()OVER(ORDER BY Type DESC) 行号 ,\n" +
var _ sql = "SELECT\n" +
" ROW_NUMBER() OVER ( ORDER BY Type DESC ) 行号 ,\n" +
" Client 客户,\n" +
" Type 出库类型,\n" +
" BillNum 结算单,\n" +
" CODE 结算编码,\n" +
" SaleCode 销售渠道,\n" +
" ClientCode 客户代码,\n" +
" MaterialCode 物料号,\n" +
" MaterialDesc 物料描述,\n" +
" BillNum 结算单号,\n" +
" MaterialGroup 物料组,\n" +
" ISnull([0], 2 ) 结算数量,\n" +
" ISNULL([2], 0 ) 实际出库数量,\n" +
" isnull([0], 2 ) - ISNULL([2], 0 ) 数量差异,\n" +
" ISnull([ 0 ], 2 ) 结算数量,\n" +
" ISNULL([ 2 ], 0 ) 实际出库数量,\n" +
" isnull([ 0 ], 2 ) - ISNULL([ 2 ], 0 ) 数量差异,\n" +
" Price 开票单价,\n" +
" Round( ISnull([0], 2 )* Price, 2 ) 结算金额,\n" +
" Round( ISNULL([2], 0 )* Price, 2 ) 已出库金额,\n" +
" ROUND(( isnull([0], 2 ) - ISNULL([2], 0 ))* Price, 2 ) WMS待出库金额 \n" +
" Round( ISnull([ 0 ], 2 )* Price, 2 ) 结算金额,\n" +
" Round( ISNULL([ 2 ], 0 )* Price, 2 ) 已出库金额,\n" +
" ROUND(( isnull([ 0 ], 2 ) - ISNULL([ 2 ], 0 ))* Price, 2 ) WMS待出库金额 \n" +
"FROM\n" +
" (\n" +
" SELECT\n" +
@ -122,6 +116,9 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" (\n" +
" SELECT\n" +
" temp.Client,\n" +
" temp.CODE,\n" +
" temp.SaleCode,\n" +
" temp.ClientCode,\n" +
" temp.Type,\n" +
" temp.BillNum,\n" +
" temp.MaterialCode,\n" +
@ -137,12 +134,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众准时化出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z11' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" ChassisNumber CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsJitOutPutDetial \n" +
" WHERE\n" +
@ -150,17 +149,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" ChassisNumber UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '大众看板出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z12' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" Kanban CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsKanbanOutPutDetial \n" +
" WHERE\n" +
@ -168,17 +168,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" Kanban UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '大众无看板出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z12' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
@ -190,12 +191,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众备件汇总出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z13' CODE,\n" +
" '20' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 1 IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsSharePartOutPutDetial \n" +
" WHERE\n" +
@ -207,12 +210,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众备件条码出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z13' CODE,\n" +
" '20' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 1 IsBack,\n" +
" Price,\n" +
" OrderBillNum CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsSharePart90OutPutDetial \n" +
" WHERE\n" +
@ -220,17 +225,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" OrderBillNum UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗看板出库' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z34' CODE,\n" +
" '10' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" Kanban CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQHKanbanOutPutDetial \n" +
" WHERE\n" +
@ -238,41 +244,90 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" Kanban UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗一轿手工出库' AS Type,\n" +
" '一轿手工出库' AS Type,\n" +
" '一轿' Client,\n" +
" 'Z32' CODE,\n" +
" '10' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" IsBack,\n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 0 \n" +
" AND VERSION = '{0}' \n" +
" AND Extend = '100113' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '一轿手工出库(备件)' AS Type,\n" +
" '一轿' Client,\n" +
" 'Z33' CODE,\n" +
" '20' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" IsBack,\n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 1 \n" +
" AND VERSION = '{0}' \n" +
" AND Extend = '100113' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗手工出库' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z34' CODE,\n" +
" '10' SaleCode,\n" +
" '100053' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 0 \n" +
" AND VERSION = '{0}' \n" +
" AND Extend = '100053' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗一轿手工出库(备件)' AS Type,\n" +
" '红旗手工出库(备件)' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z35' CODE,\n" +
" '20' SaleCode,\n" +
" '100053' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 1 \n" +
" AND VERSION = '{0}' \n" +
" AND Extend = '100053' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
@ -287,12 +342,15 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" (\n" +
" SELECT\n" +
" temp.Client,\n" +
" temp.CODE,\n" +
" temp.SaleCode,\n" +
" temp.ClientCode,\n" +
" temp.Type,\n" +
" temp.BillNum,\n" +
" temp.MaterialCode,\n" +
" temp2.MaterialDesc,\n" +
" temp.Qty,\n" +
" 0 STATE,\n" +
" 2 STATE,\n" +
" EstimateTypeDesc MaterialGroup,\n" +
" EstimateType,\n" +
" IsBack,\n" +
@ -302,12 +360,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众准时化出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z11' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" ChassisNumber CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsJitOutPutDetial \n" +
" WHERE\n" +
@ -316,17 +376,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" ChassisNumber UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '大众看板出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z12' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" Kanban CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsKanbanOutPutDetial \n" +
" WHERE\n" +
@ -335,17 +396,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" Kanban UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '大众无看板出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z12' CODE,\n" +
" '10' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" SUM( RealityNumber ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
@ -358,12 +420,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众备件汇总出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z13' CODE,\n" +
" '20' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" SUM( RealityNumber ) Qty,\n" +
" 1 IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsSharePartOutPutDetial \n" +
" WHERE\n" +
@ -376,12 +440,14 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" SELECT\n" +
" '大众备件条码出库' AS Type,\n" +
" '大众' Client,\n" +
" 'Z13' CODE,\n" +
" '20' SaleCode,\n" +
" '10001' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 1 IsBack,\n" +
" Price,\n" +
" OrderBillNum CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsSharePart90OutPutDetial \n" +
" WHERE\n" +
@ -390,17 +456,18 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" OrderBillNum UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗看板出库' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z34' CODE,\n" +
" '10' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" Kanban CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQHKanbanOutPutDetial \n" +
" WHERE\n" +
@ -409,43 +476,94 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" GROUP BY\n" +
" BillNum,\n" +
" MaterialCode,\n" +
" Price,\n" +
" Kanban UNION ALL\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗一轿手工出库' AS Type,\n" +
" '红旗' Client,\n" +
" '一轿手工出库' AS Type,\n" +
" '一轿' Client,\n" +
" 'Z32' CODE,\n" +
" '10' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( RealityNumber ) Qty,\n" +
" IsBack,\n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 0 \n" +
" AND VERSION = '{0}' \n" +
" AND State = 2 \n" +
" AND Extend = '100113' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '一轿手工出库(备件)' AS Type,\n" +
" '一轿' Client,\n" +
" 'Z33' CODE,\n" +
" '20' SaleCode,\n" +
" '100113' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 1 \n" +
" AND VERSION = '{0}' \n" +
" AND State = 2 \n" +
" AND Extend = '100113' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗手工出库' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z34' CODE,\n" +
" '10' SaleCode,\n" +
" '100053' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( RealityNumber ) Qty,\n" +
" IsBack,\n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 0 \n" +
" AND VERSION = '{0}' \n" +
" AND State = 2 \n" +
" AND Extend = '100053' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" IsBack,\n" +
" Price UNION ALL\n" +
" SELECT\n" +
" '红旗一轿手工出库(备件)' AS Type,\n" +
" '红旗手工出库(备件)' AS Type,\n" +
" '红旗' Client,\n" +
" 'Z35' CODE,\n" +
" '20' SaleCode,\n" +
" '100053' ClientCode,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" SUM( Qty ) Qty,\n" +
" SUM( RealityNumber ) Qty,\n" +
" IsBack,\n" +
" Price,\n" +
" '' CNumber \n" +
" Price \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 1 \n" +
" AND VERSION = '{0}' \n" +
" AND State = 2 \n" +
" AND Extend = '100053' \n" +
" GROUP BY\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
@ -454,9 +572,9 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
" ) temp\n" +
" LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" +
" ) t2 \n" +
" ) TEMP PIVOT ( SUM( QTY ) FOR STATE IN ([0],[1],[2],[3]) ) A \n" +
" ) TEMP PIVOT ( SUM( QTY ) FOR STATE IN ([ 0 ],[ 1 ],[ 2 ],[ 3 ]) ) A \n" +
"ORDER BY\n" +
" 客户,出库类型,结算单" ;
" 客户,出库类型,结算单; " ;
_ sql = string . Format ( _ sql , version ) ;
var _ query = DbConnection . Query < WmsOutputSum > ( _ sql , null , null , true , 1 2 0 0 , null ) ;