1. 背景
1)仓库为方便安排拣货人员分工,需方便查看包裹sku种类数;
2)仓库绩效管理规则改变,新的绩效为采用记件进行考核,需增加数据导出,支持新业务;
2. 功能设计
1)在备货订单包裹(新)中,增加“当前页sku数”字段,sku数显示在字段后后面括号中;
数字的统计方法为当前页所有包裹中sku数量之和,以包裹维度,重复sku也计算在内;
举例:
包裹1包含:A产品,B产品,C产品;---sku数为3
包裹2包含:C产品,D产品;---sku数为2
则总sku数为5,重复的C产品也计算在内

2)【报告中心-自定义报告导出-报告下载-仓库工作统计报表】,在现有导出数据的基础上,增加以下字段:
- 理货重量(装箱总重)
- 理货重量(包裹体积重)
- 交付箱数
- 交运重量(装箱总重)
- 交运重量(包裹体积重)


数据统计方式如下:
根据【备库订单包裹(新)】中对应的理货人员和交运人员统计到各人员处理的包裹;
根据包裹详情中的装箱总重和包裹体积重统计到各人员的理货重量和交运重量;


- #48996 11629【备库订单包裹(新)】全部页面,列表增加【当前页SKU数】字段显示
- #48997 11629【备库订单包裹(新)】未配货页面,列表增加【当前页SKU数】字段显示
- #48998 11629【备库订单包裹(新)】待打印页面,列表增加【当前页SKU数】字段显示
- #48999 11629【备库订单包裹(新)】待装箱页面,列表增加【当前页SKU数】字段显示
- #49000 11629【备库订单包裹(新)】待发货页面,列表增加【当前页SKU数】字段显示
- #49001 11629【备库订单包裹(新)】已发货页面,列表增加【当前页SKU数】字段显示
- #49002 11629【自定义报告导出】仓库工作报表统计,导出增加理货重量(装箱总重)字段
- #49003 11629【自定义报告导出】仓库工作报表统计,导出增加理货重量(包裹体积重)字段
- #49004 11629【自定义报告导出】仓库工作报表统计,导出增加交付箱数字段
- #49005 11629【自定义报告导出】仓库工作报表统计,导出增加交运重量(装箱总重)字段
- #49006 11629【自定义报告导出】仓库工作报表统计,导出增加交运重量(包裹体积重)字段
开发报告
1.备库包裹(新)列表页面新增当前页SKU数显示
2.自定义报表没有代码逻辑处理 理货箱数统计,就是一个sql
--理货箱数统计
SELECT
tp.TallyPersonName '理货人员',
tp.TallyPersonNum '理货数量',
tp.TallyPersonTotalWeight '理货重量(装箱总重)',
tp.TallyPersonTotalvolWeight '货重量(包裹体积重)',
ISNULL(cp.CompletePersonNum, 0) '交付箱数',
ISNULL(cp.CompletePersonTotalWeight, 0) '交运重量(装箱总重)',
ISNULL(cp.CompletePersonTotalvolWeight, 0) '交运重量(包裹体积重)'
FROM
(
SELECT
o.TallyPersonName,
o.TallyPersonID,
COUNT(1) TallyPersonNum,
ROUND(SUM(ISNULL(t.Weight, 0) / 1000), 2) AS TallyPersonTotalWeight,
ROUND(SUM((t.Long * t.Wide * t.High) / 6000), 2) AS TallyPersonTotalvolWeight
FROM
RB_PackingBoxingList t WITH (NOLOCK)
LEFT JOIN RB_Procurement_Order_Package o WITH (NOLOCK) ON o.ID = t.OrderPackageID
AND o.CustomerID = t.CustomerID
WHERE
o.CustomerID = @CustomerID
AND o.IsStockOrderWithPackage = 1
AND o.TallyPersonID > 0
AND o.TallyTime BETWEEN @StartTime
AND @EndTime
GROUP BY
o.TallyPersonName,
o.TallyPersonID
) tp
LEFT JOIN (
SELECT
o.CompletePersonName,
o.CompletePersonID,
COUNT(1) CompletePersonNum,
ROUND(SUM(ISNULL(t.Weight, 0) / 1000), 2) AS CompletePersonTotalWeight,
ROUND(SUM((t.Long * t.Wide * t.High) / 6000), 2) AS CompletePersonTotalvolWeight
FROM
RB_PackingBoxingList t WITH (NOLOCK)
LEFT JOIN RB_Procurement_Order_Package o WITH (NOLOCK) ON o.ID = t.OrderPackageID
AND o.CustomerID = t.CustomerID
WHERE
o.CustomerID = @CustomerID
AND o.IsStockOrderWithPackage = 1
AND o.CompletePersonID > 0
AND o.CompleteTime BETWEEN @StartTime
AND @EndTime
GROUP BY
o.CompletePersonName,
o.CompletePersonID
) cp ON cp.CompletePersonID = tp.TallyPersonID
AND cp.CompletePersonName = tp.TallyPersonName;