以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  曲线图调用父表数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=196250)

--  作者:fangshen
--  发布时间:2025/4/11 14:10:00
--  曲线图调用父表数据
"BMC品名管理"是父表,"临时表2"\'是子表
下面代码是调用子表的"凝胶化时间最大值",我希望调用父表的"凝胶化时间最大值",如何修改代码?
谢谢

Dim Chart As WinForm.Chart\'定义一个图表变量
Dim Series As Winform.ChartSeries\'定义一个图表变量
Chart=Forms("100批次").Controls("Chart2")
Chart.DataSource="临时表2"\'定义一个变量引用表
Chart.DataFilter="品名序号="& tables("BMC品名管理").current("品名序号")&"" \'调用与父表"品名序号"相同的数据
Chart.AxisY.Min=Forms("100批次").Controls("TextBox2").Value \'最小值
Chart.AxisY.Max=Forms("100批次").Controls("TextBox1").Value \'最大值
Chart.SeriesList.Clear()\'清除图表原有的图系
Series=Chart.SeriesList.Add()\'新增一个图系
Series.LineColor = Color.black\'线条黑色
Series.MarkColor = Color.black\'圆点黑色
Series.X.DataField="批号"\'X轴调用生产批号数据
Series.Y.DataField="凝胶化时间"
Series=Chart.SeriesList.Add()\'新增一个图系
Series.LineColor = Color.red
Series.MarkColor = Color.red
Series.X.DataField="批号"\'X轴调用生产批号数据
Series.Y.DataField="凝胶化时间最大值"     
→能否调用父表的"凝胶化时间最大值"

--  作者:有点蓝
--  发布时间:2025/4/11 14:12:00
--  
子表添加一个表达式列,引用父表的"凝胶化时间最大值",然后绑定这个表达式列
--  作者:fangshen
--  发布时间:2025/4/11 14:37:00
--  
你好:这个我做了,因为数据太大,跑不动。一个画面曲线图有5组,每组曲线图有上万个数据
--  作者:fangshen
--  发布时间:2025/4/11 14:41:00
--  
我希望有些调用父表,有些调用子表,这样子表的数据可以变少,速度可以上去。谢谢
速度慢的原因我好像没有参数清楚

--  作者:有点蓝
--  发布时间:2025/4/11 14:53:00
--  
一屏上万行,上万个点,肯定慢的。考虑分页,比如一次只显示一个月,或者100个点的数据,点击下一页,再按时间取以后面100个点的数据
--  作者:fangshen
--  发布时间:2025/4/11 15:51:00
--  
你好:我已经只加载100行了,但是还是慢
我现在有父表《BMC品名管理》和两个子表《数据表》《临时表2》
我是先把《数据表》中100行,用按钮加载到《临时表2》,同时《临时表2》根据父表再自动填入上限,下限,平均,标准偏差,标准偏差3a,标准偏差负3a,标准偏差2a,标准偏差负2a,等等数据(这些数据都在父表中同时存在)这时的速度非常慢,非常耗时
其实曲线图呈现时速度可以。
所以我想,如果生产呈现曲线图的代码既可以调用子表,又可以调用父表,这样在生成《临时表2》时速度会快很多。

希望能够给与指导。

谢谢



--  作者:有点蓝
--  发布时间:2025/4/11 16:07:00
--  
应该是有什么表事件,或者表达式列的表达式计算影响了。具体请上传实例测试
--  作者:fangshen
--  发布时间:2025/4/12 11:27:00
--  
你好:容量太大,不好发,我周一重做一个再发过来?
--  作者:有点蓝
--  发布时间:2025/4/12 11:51:00
--  
可能是生成《临时表2》填入数据的代码慢,考虑使用视图直接生成《临时表2》,而不是事后填充数据