用于构建托盘装箱单的Microsoft Access VBA代码

时间:2017-06-28 18:37:55

标签: vba ms-access access-vba ms-access-2016

我在国际订单部分使用的Access中开发了一个商业发票系统。数据库本身运行得非常好,因为它非常简单和最小。但是,现在他们希望装箱单自动为他们建造托盘。以下是我想要做的快速细分:

产品| CaseSize | CasesPerPallet

11111 | 11x12x9 @ 8lbs | 72

12221 | 11x12x9 @ 8lbs | 72

55555 | 11x14x10 @ 9lbs | 72

ETC。

我的所有产品都有7种不同的CaseSize和5种不同的CasePerPallet数量。

我希望我的装箱单能够做到这一点:

示例Joe' Grocery订购了150箱产品11111和138箱12221 ..我希望我的报告能够"知道"我需要4个72托盘,通过第一个产品ID将产品保持在一起,然后通过CaseSize保留剩余产品(剩余产品)...即11111产品中的4个将与122个中的66个一起使用。

然而,由于许多不同尺寸的箱子,我不确定这可能有多高效,因为有时我们会将较大的箱子放在底部,而较小的箱子放在那些箱子的顶部,以减少托盘的占地面积。

我想我需要一个if语句:

if [ProdID!CaseSize] = [ProdID!CaseSize] and QTY >72 Then
   subtract 72 from qty get remainder number; pallet++
    if [ProdID!CaseSize] = [ProdID!CaseSize] and QTY >72 Then
    subtract 72 from qty get remainder number; pallet++
   Else 
   End if
End if

所以我认为它必须是一个循环,直到它不再是真的然后退出并显示托盘的总数。

我能想到的唯一另一种方法就是添加另一个字段,并让订单代表在输入订单时识别托盘。这将导致她根据托盘下订单。

所以她可以输入11111 x 72托盘1                    11111 x 72托盘2                    11111 x 6托盘3                    12221 x 66托盘3                    12221 x 72托盘4   然后我可以用托盘将我的装箱单分组,但我不想让她经历这一切。

提前感谢您的帮助!!

附图显示了我编写的订单。您可以看到它们都是相同的产品,但我没有将它们分组

This picture shows how the packing list looks now

0 个答案:

没有答案