Foxtable(狐表)用户栏目专家坐堂 → 旧文件用新版打开后出现的问题


  共有3147人关注过本帖树形打印复制链接

主题:旧文件用新版打开后出现的问题

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/31 20:32:00 [显示全部帖子]

'''
Dim e As Object = Args(0)
Dim 函数名称 As String = Args(1)
Dim dr As DataRow = DataTables("表A").Find("第一列 = '" & 函数名称 & "' and 第二列 is not null and 第二列 <> ''")
If dr IsNot Nothing
    If 函数集.Contains(函数名称)
        try
            Functions.Execute(函数名称, e)
        catch ex As exception
            函数集.Remove(函数名称)
        End try
    Else
        try
            函数集.Remove(函数名称)
            Functions.Remove(函数名称)
            Functions.Add(dr("第一列"), dr("第二列"))
            Functions.complie()
            函数集.Add(函数名称)
            Functions.Execute(函数名称, e)
        catch ex As exception
            函数集.Remove(函数名称)
        End try
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/31 23:22:00 [显示全部帖子]

删除项目里的bin目录,重启项目测试

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/1 8:59:00 [显示全部帖子]

我反馈下,等开发那边处理

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/5 14:24:00 [显示全部帖子]

开发那边测试了一下,回复说建议在打开项目之后一次性编译所有的函数,可以避免问题,性能也更好。
Functions.Add("Sum",Code)
Functions.Add("Sum2",Code2)
Functions.Complie()

因为假定100个函数,原来方式要编译100次,而一次性编译只需编译一次。

再次,4.0的编译器和2.0确实是有差异了,prepareedit和drawcell事件执行的频繁,事件触发的动态编译会产生冲突。

或者可以考虑把常用的函数在项目启动后一次性编译出来,不常用的还是继续用到的时候再编译

 回到顶部