Foxtable(狐表)用户栏目专家坐堂 → 求助:动态编译函数中自定义代码的写法


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

主题:求助:动态编译函数中自定义代码的写法

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
求助:动态编译函数中自定义代码的写法  发帖心情 Post By:2016/6/2 13:54:00 [只看该作者]

请老师看看,下面的代码死活搞不定了,请老师改一下

Dim dt1 As DataTable = cmd.ExecuteReader
If dt1.DataRows.Count > 0 Then
    Functions.remove("菜单设置")  '删除用Add方法增加的自定义函数
    Dim Code As String
    code = code & "For Each dr As DataRow" & "In" & dt1.DataRows & vbcrlf
       ' Functions.remove("菜单设置")  '删除用Add方法增加的自定义函数
        code = code & "dim aaa = " & dr("引用") & vbcrlf
        code = code & "aaa.enabled = not aaa.enabled "  & vbcrlf
        'Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
        'Functions.Complie()  '重新编译函数
        'Functions.Execute("菜单设置")  '调用函数
    code = code & "Next"
        Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
        Functions.Complie()  '重新编译函数
        Functions.Execute("菜单设置")  '调用函数

End If


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/2 14:30:00 [只看该作者]

Dim dt1 As DataTable = cmd.ExecuteReader
If dt1.DataRows.Count > 0 Then
    Functions.remove("菜单设置")  '删除用Add方法增加的自定义函数
    Dim Code As String = "For Each dr As DataRow In dt1.DataRows" & vbcrlf
    code = code & "dim aaa = dr('引用')" & vbcrlf
    code = code & "aaa.enabled = false"  & vbcrlf
    code = code & "Next"
    Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
    Functions.Complie()  '重新编译函数
    Functions.Execute("菜单设置")  '调用函数
End If
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/2 14:37:00 [只看该作者]

Dim Code As String = "dim dt1 As DataTable = args(0)" & vbcrlf
code = code & "For Each dr As DataRow In dt1.DataRows " & vbcrlf
code = code & "dim aaa = " & dr("引用") & vbcrlf
code = code & "aaa.enabled = not aaa.enabled "  & vbcrlf

code = code & "Next"
msgbox(code)

 

Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
Functions.Complie()  '重新编译函数
Functions.Execute("菜单设置", dt1)  '调用函数


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/2 14:51:00 [只看该作者]

大红袍老师,代码运行后出错,请再看看
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/2 15:00:00 [只看该作者]

Dim Code As String = "dim dt1 As DataTable = args(0)" & vbcrlf
code = code & "For Each dr As DataRow In dt1.DataRows " & vbcrlf
code = code & "dim aaa = dr(""引用"")" & vbcrlf
code = code & "aaa.enabled = not aaa.enabled "  & vbcrlf
code = code & "Next"
msgbox(code)

Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
Functions.Complie()  '重新编译函数
Functions.Execute("菜单设置", dt1)  '调用函数


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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/2 15:08:00 [只看该作者]

谢谢大红袍老师,又出了新的问题
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/2 15:23:00 [只看该作者]

请大红袍老师再看看

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/2 15:31:00 [只看该作者]

For Each dr As DataRow In dt1.DataRows
    Functions.remove("菜单设置")
    Dim Code As String = ""
    code = code & "dim aaa = " & dr("引用") & vbcrlf
    code = code & "aaa.enabled = not aaa.enabled "  & vbcrlf
   
    Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
    Functions.Complie()  '重新编译函数
    Functions.Execute("菜单设置")  '调用函数
Next

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


加好友 发短信
等级:四尾狐 帖子:995 积分:6712 威望:0 精华:0 注册:2015/1/12 22:12:00
  发帖心情 Post By:2016/6/2 15:38:00 [只看该作者]

时间太长,执行了将近5分钟

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/2 15:43:00 [只看该作者]

Functions.remove("菜单设置")
Dim Code As String = ""
For Each dr As DataRow In dt1.DataRows
    Dim bl As String =  "aaa" & dr("_Identify")
    code = code & "dim " & bl & " = " & dr("引用") & vbcrlf
    code = code & bl & ".enabled = not " & bl & ".enabled "  & vbcrlf
Next
msgbox(code)
Functions.Add("菜单设置",Code) '增加自定义函数,code是用vbcrlf连起来的一段代码字符串
Functions.Complie()  '重新编译函数
Functions.Execute("菜单设置")  '调用函数

 回到顶部
总数 21 1 2 3 下一页