Forms 使用表单在Access 2010中创建多个字段
所以,我有一张表格,当供应商想要发货给我们时,我会让他们填写。这是一个excel表单,然后我将其导入Access,以便运行报告。有时,当他们发送回表单时,表单的格式是我必须手动将数据输入数据库的格式 表单如下所示: 中间部分只是示例,所以它是一个包含文本的矩形 所以在我到达中间部分之前,一切似乎都很简单。在我的excel表格中,我有一个多采购订单和单位的部分。因此,基本上每批货物都可以有一到多个采购订单和单位。目前,我可以通过在表单上重新输入每个PO的信息的冗余方法来完成此任务。但我想让这件事变得简单 所以手头的任务是,我想为采购订单和单位创建一个表单字段,在这里我可以输入多行信息,这样当我点击提交按钮时。它出现在数据库中的不同行上,具有相同的供应商信息 所以,如果我填写表格,中间部分就有:Forms 使用表单在Access 2010中创建多个字段,forms,ms-access,Forms,Ms Access,所以,我有一张表格,当供应商想要发货给我们时,我会让他们填写。这是一个excel表单,然后我将其导入Access,以便运行报告。有时,当他们发送回表单时,表单的格式是我必须手动将数据输入数据库的格式 表单如下所示: 中间部分只是示例,所以它是一个包含文本的矩形 所以在我到达中间部分之前,一切似乎都很简单。在我的excel表格中,我有一个多采购订单和单位的部分。因此,基本上每批货物都可以有一到多个采购订单和单位。目前,我可以通过在表单上重新输入每个PO的信息的冗余方法来完成此任务。但我想让这件事
PO | Units
111111 22
222222 33
333333 44
当我点击submit时,我希望它在单独的行中将其余的表单信息附加到每个PO上,这样就可以:
Vendor | City | State | PO | Units
Nike Memphis TN 111111 22
Nike Memphis TN 222222 33
Nike Memphis TN 333333 44
那么,我该如何完成这项任务呢?从您对问题的描述以及数据最终如何存储在Access中的示例来看,在我看来,您将Access用作电子表格,而不是数据库。这是可以的,但是你可能想考虑数据的正常化,以充分利用数据库的力量。 例如:
- 创建一个Vendors表,其唯一目的是保存与您一起工作的每个供应商的详细信息。一个非常基本的实现将有一个
字段来唯一地标识每个供应商,并有一个ID
字段来标识供应商名称Name
- 如果供应商只有一个位置,那么您也可以将城市、州、ZipCode和电子邮件存储在同一个供应商表中,但我认为从长远来看,使用单独的VendorLocation或VendorAddress表更合适
- 创建一个VendorShipment表,用于跟踪实体模型上的更高级别信息,例如:
- ShipmentID(此表的主键)
- VendorID(返回供应商表的外键)
- 准备日期
- 承运人
- 估计成本
- 货运舱
- 追踪#
- 估计过境时间
- 最后,创建一个VendorShipmentDetail表,跟踪每个装运的信息,包括:
- ShipmentDetailID(此表的主键)
- ShipmentID(返回VendorShipment表的外键)
- PO
- 单位
- 您想要或需要跟踪的任何其他详细信息
供应商
表的组合框控件。如果表中存在供应商,则从列表中选择该供应商,并且您已经拥有地址信息,无需每次重新输入。如果该供应商不存在,请输入一次(可能在供应商屏幕上维护每个供应商的详细信息),并在将来利用该信息
然后,您将使用查询将信息重新绑定在一起以用于报告目的(对信息进行反规范化)
数据库设计的艺术可能需要一段时间才能开始,但一个好的起点可能是查看微软多年来维护的Northwind数据库。它提供了一些示例,您可以立即从中获得关于如何在Access中使用规范化的实际理解。您可以在此处找到更多信息: