MS Access 2010过滤器可重用子表单,基于父字段

时间:2017-02-14 21:56:34

标签: mysql forms ms-access filter parent

父窗体有一个包含ID

的文本框

子表单(子表单)是一个多表单,包含链接到父ID(和其他)的ID的内容

许多不同的父表单使用相同的子表单(子表单),这意味着通常的方法:

WHERE [Child_IDs]=[Forms]![ParentFormName]![ID_TextBox]

不能直接使用,因为一旦保存,它会覆盖其他父表单的过滤器(打破它们)。

在寻找解决方案时,每个人都在说使用:

Me.Parent![ID_TextBox]

Parent![ID_TextBox]

解决问题,但是当我在表达式构建器中尝试使用它们时,它无法找到MeParent。阿卡不起作用。

我也试图保持这种设置足够灵活,以处理父表单的多个实例。

我走的是正确的轨道吗?关于我应该做什么的任何建议?

我正在做什么的详细版本

我正在尝试创建一个小型需求数据库,以帮助我完成我正在进行的一些项目。

特定记录(父级)信息很好,大多数关系也是如此,因为它们足够具体,可通过Link Master/Child Fields直接链接。

问题儿童是“评论”,“参考”和“标签”,它们链接到每种类型的记录(即使是他们自己,为了简单起见)。

我创建了一个查询,将每个表的所有ID组合在一起,同时将它们放入“标准”格式LLL000000,其中LLL是表格的三字母缩写词(TLA)。 / p>

即使我将LLL与记录分开,我仍然卡住了因为TLA未在有界父表单中引用。如果我可以直接引用父项并询问其ID_TextBox字段,我会没事的。如果我不必为多个父表单重用相同的子表单,我会没事的。

多个表单实例以“祖父母”形式出现,它将(希望)同时查看(最多)2个父表单,包括2个相同类型。

我故意将多个实例留到最后,因为当激励等于之后立即完成时我想离开(我还没有和VBA一起玩过)。

1 个答案:

答案 0 :(得分:0)

我最终为所有" main"添加了一个新字段。表默认为每个记录冗余地添加三个字母的首字母缩写词。

因为它在那里我可以在主/子链接部分中引用它以及ID(有效地重建LLL000000 ID,但需要在系统中添加更多硬编码值并浪费内存空间.. 。)

是理想的解决方案,因为它只会增加维护费用。 (没有我想到的其他一些解决方案,但仍然如此)。

因此,我不会将此标记为 答案,而是等待其他建议。