问题标签 [subforms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1405 浏览

database - 根据第二个表过滤一个表中的数据,不重复

注意:我正在使用一个大型复杂数据库,所以为了清楚起见,我简化了下面的设置。

我对如何命名这个问题有点挣扎,因为它是一个有点复杂的问题。我希望它足够准确......

先说一点背景:

我有一个 Access 2010 数据库,其中包含一个名为“产品”的表和一个名为“数据集”的表之间的一对多关系(即我有一堆产品,每个产品都有多个数据集)。每个都有一个自动编号键字段(分别为 p_ID 和 d_ID)以及许多其他字段。

我有一个表单(我们称之为 frm_Main),它有两个子表单:sub_Products(基于“Products”表)和 sub_Datasets(基于“Datasets”表)。在主窗体上,我有一个控件 ctrl_SelectedProduct ,它链接到 [sub_Products]![p_ID] 以查看 sub_Products 中的哪条记录被选中/具有焦点,并且 sub_Datasets 子窗体链接到此控件,因此它只显示 Datasets 记录属于选定的产品记录。

在主窗体上,我还有一些控件用于过滤子窗体中的数据。例如,我有一个控件 ctrl_Category。我对这个控件进行了编码,因此当用户更改控件的值时,将应用一个过滤器,将 sub_Products 中的记录限制为仅 p_Category 值等于 ctrl_Category 中选择的值的那些记录。如果控件为空白,它将显示所有记录。如果基于 Products 表中的字段进行过滤,所有这些都非常有用。

现在的问题:

我的问题是我还希望能够根据数据集表中的字段进行过滤。例如,Datasets 有一个名为 d_Status 的字段。我希望用户能够在控件(ctrl_Status)中选择状态,并基于此:

1) sub_Products 将被过滤以仅显示那些具有关联数据集记录(或记录)的产品记录,其 d_Status 等于在 ctrl_Status 中选择的任何内容

然后

2)当在此过滤的 sub_Products 中选择 Products 记录时,sub_Datasets 将仅显示 d_Status 等于 ctrl_Status 中选择的任何内容的 Datasets 记录

我知道如何做第 2 部分。但我不知道如何让 part1 工作。由于 sub_Products 当前基于 Products 表,该表没有 d_Status 字段,因此我无法根据该字段对其进行过滤。因此,我假设我的第一步是更改我的设置,以便 sub_Products 基于组合两个表的查询(或至少添加 d_Status 字段)。

但是,如果我这样做,我会得到重复的产品记录。我不能使用查询的唯一值属性,因为如果我的产品有两个数据集,一个状态为“当前”,一个状态为“存档”,那么这些不被视为重复,并且产品信息在那里两次。如果我没有显示状态字段,它最初只显示独特的产品,但随后我不能基于该未显示的字段应用过滤器。

我还尝试将 sub_Products 基于 Totals 查询以利用 Group By 功能,但我仍然无法使其正常工作。即使我可以,我也不认为这是最好的解决方案,因为 Group By 只能有 10 个字段,而我的 Products 表有超过 10 个字段需要在 sub_Products 中显示。

我觉得我现在只是在兜圈子,不知道从这里尝试什么。请帮忙!

0 投票
1 回答
3085 浏览

forms - 从子表单访问父表单和其他打开的表单

在继续我的应用程序开发过程中,我遇到了另一个有趣的问题。

在我的 MS Access 应用程序中,我使用的表单只包含两个控件 - 一个文本框和一个命令按钮。这种形式被命名为HEADER FORM

HEADER FORM用作各种其他表单的标题部分的子表单。

下图显示了子窗体及其在主窗体之一中的使用。

在此处输入图像描述

现在,我想要的是,当用户单击子表单的注销按钮时,将发生注销操作(这很好,我能够弄清楚)并且在该时间点打开的所有表单都将关闭/卸载。

我尝试使用以下代码无济于事。

当我尝试单击注销按钮时,控制到达上面的 DoCmd.Close 语句。并在给出以下错误消息后停止执行:

运行时错误:2498。您输入的表达式是其中一个参数的错误数据类型。

它指向Parent.Form文本。

我无法弄清楚如何引用父表单并卸载它?

0 投票
1 回答
1284 浏览

forms - 从子窗体调用主窗体

我有一个访问数据库,它有一个带有 VBA 填充日期的表单。

每次表单加载时,日期都会自动填充到标有“日期”的文本框中。在同一个表单上,我有一个子表单链接到一个单独的表格以进行计算。

我希望将该“日期”字段中的相同日期保存在我的子表单计算表中。

有什么建议么?

0 投票
2 回答
3617 浏览

zend-framework2 - 如何在 Zend Framework2 中使用子表单

有没有办法在 Zend Framework2 中使用 zend 子表单。当我在互联网上进行搜索时,我发现了许多示例,这些示例展示了如何使用 Zend 子表单,但使用的是 Zend Framework1。

如果有人有一个可以通过基本示例的链接/示例,那就太好了。

任何信息表示赞赏。

0 投票
1 回答
1598 浏览

php - zend 框架子表单isValidPartial?

我有一个表格,上面有几个子表格。我有一种isValid用于检查是否只有一个特定子表单有效的表单方法。例如,我必须检查是否subform2正确验证。如果子表单验证成功,则整个表单都应该验证成功,即使其他子表单的值错误。他们只是不应该被验证。我试过这样的事情:

但没有成功。此代码始终返回 true。当整个表单在没有被isValid覆盖的情况下正常验证时,子表单会被正确验证,但你都会被验证。

0 投票
2 回答
8174 浏览

php - symfony2 表单禁用

我使用相同的表单来“预览”一个对象,就像我“编辑/更新”同一个对象一样。在我showAction()的控制器中,我有以下代码:

此代码适用于主要表单,但有许多子表单通过包含而成为其中的一部分。show.html.twig 中的一个示例是:

不幸的是,父表单上的 read_only 设置似乎没有级联到包含的子表单。有没有办法处理这个?

0 投票
2 回答
2802 浏览

c# - 如何在c#中将子表单添加到表单中

我有两个小问题要问您:如何在 C# 中将多个子表单添加到表单中,如下图所示:

http://i.stack.imgur.com/ag1WD.jpg [级联]

http://i.stack.imgur.com/SzBGH.jpg [瓦]

第二个是如何管理他们的位置(Cascade、Tile 等)。感谢您的时间!

0 投票
2 回答
2546 浏览

forms - 访问子表单可见性

我有一个访问表单,其中包含从表中填充的表单名称的下拉列表。当有人从下拉列表中选择特定项目时,我希望能够显示相应的子表单中的 1 个。例如,我在下拉列表中有表格 1、表格 2、表格 3。我选择表格 2,然后出现子表格 2。我尝试访问 VBA 中的子窗体可见属性,但遇到了多个错误,它从来没有完全奏效。任何人都可以帮忙吗?

这是填充下拉列表的代码:

对于我尝试的子表单可见性:

0 投票
2 回答
1310 浏览

c# - 一次只打开一个子窗体的实例c#

我正在编写一个应用程序,它使用类似向导的 5 个简单表单系列。第一个表单 NewProfile 是从主应用程序 MainForm 上的菜单项打开的,MainForm 的子表单也是如此。第二种形式,TwoProfile,是从 NewProfile 上的一个按钮打开的。第三种形式,ThreeProfile 是从 TwoProfile 上的一个按钮打开的,对于所有 5 个形式,依此类推。顺序如下:MainForm --> NewProfile <--> TwoProfile <--> ThreeProfile <--> FourProfile <--> FiveProfile。我的问题是,当打开任何表单(NewProfile、TwoProfile、ThreeProfile、FourProfile 或 FiveProfile)时,我不希望用户能够创建 NewProfile 的实例。

我从实现一个单例模式开始,它在半途而废。如果 NewProfile 打开并且我转到 MainForm 并尝试创建另一个 NewProfile 实例,它就可以工作。如果 NewProfile 已被破坏,则它不起作用,通过前进到下一个表单并且 TwoProfile、ThreeProfile、FourProfile 或 FiveProfile 之一打开。它告诉我 NewProfile.IsDisposed 是真的,给了我对 Singleton 实例的错误引用。

我想不通的是如何执行我的逻辑,以便在 TwoProfile、ThreeProfile、FourProfile 或 FiveProfile 之一打开或 NewProfile 本身打开时不会创建 NewProfile。

我希望这是有道理的。除了我为 Singleton 所做的之外,我并没有太多要发布的代码。

谢谢 :)

0 投票
0 回答
299 浏览

c# - 从子窗体捕获并不断发送到主窗体

我做到了,但是 Mainform.cs 出现了太多异常

子窗体.cs

上面的代码可以获取图像并发送到主窗体,但是 RAM 在 1 分钟内增加了 2GB。我不明白为什么,如果我没有关闭计时器,但 RAM 不会减少,直到关闭子窗体。为什么或任何解决方案?