早上好,
我正在 Microsoft Access 中构建一个表单来跟踪构建新产品的组件/部件,并且我有一个关于使用最小值/最大值的问题。
首先,一些背景。稍微简化*,涉及的表格是:
- 组件:这些是构建正在销售的小部件所需的部件
- 供应商:这些是我们可以从中获取组件的地方。一些组件在多个地点以不同的价格提供。
- 产品:可以构建的各种小部件。
- CompSuppliers:组件和供应商之间的有效多对多关系。包括一些附加信息,例如每个供应商的每个项目的单价。
- ProdComponets:产品和组件之间的有效多对多关系。包括一些额外的细节,例如制作有问题的小部件需要多少项目。
所有表都有一个自动编号 ID 字段,所有关系都在数据库中定义。
我想制作一个将这些信息汇总在一起的表单,以便在查看给定小部件时有一个子表单,其中列出了进入所述小部件的所有组件,以及每个部件的最佳价格和供应商。然后,在主表格上,我可以对这些值求和以获得“最佳组件价格”(同样,如果我们必须与更昂贵的供应商合作,则为最坏情况下的价格),以便我们可以为小部件。
最后,表单/子表单应该允许您创建一个新的小部件,通过子表单添加所有组件并为您提供总零件成本(最佳情况和最坏情况)。
例子:
构建 Widgitizer 需要 2 x Foo 和 1 x Bar。
- Foo 可从 Supercorp Prime 以 1 美元的价格购买
- Foo 也可从 Emergicorp Alpha 购买,每个 2 美元
- Foo 也可从 Emergicorp Beta 获得,每个 3 美元
- 酒吧仅在 Supercorp Prime 提供,每支 5 美元
- 在组件子表单中,Foo 应该在 Supercorp Prime 以最低成本 1 美元出现,但最坏的情况是我们必须支付 3 美元
- 在组件子表单中,Bar 的最低和最高成本应为 5 美元,同样来自 Supercorp Prime
- 最好的情况下,构建 1 个 Widgitizer 将花费 (2x 1 + 5 美元) = 7 美元
- 但是,如果由于某种原因我们无法从首选供应商处获得零件,则构建 Widgitizer 的零件成本可能高达 (2x$3 + $5) = $11
我认为这会相对简单,但我似乎无法完成这项工作,也无法找到任何足够相似的主题来显示我在编码尝试中出错的地方。
感谢您的任何帮助/见解!让我知道是否需要任何其他详细信息。
~D
*实际实现的设计有一些额外的复杂性,但如果我能得到上面描述的简单案例,我应该很好地扩展它以使用我所拥有的。