Foxtable(狐表)用户栏目专家坐堂 → 保存外部数据的小问题


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

主题:保存外部数据的小问题

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


加好友 发短信
等级:二尾狐 帖子:553 积分:5016 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/10/8 17:04:00 [只看该作者]

又遇到一个小问题,找了帮助没有找到,就是第一次运行后,【提示】窗口里的数组在再次运行时需要先清空一下,请问大红袍老师,好像是用Remove或者类似的语句,就是不知道怎么写。


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


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

要vars变量。

 

save之前,vars("ls") = new List(of String)

 

beforeSaveDataRow事件代码,把 ls 改成 vars("ls")

[此贴子已经被作者于2015/10/8 17:09:08编辑过]

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


加好友 发短信
等级:二尾狐 帖子:553 积分:5016 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/10/8 17:14:00 [只看该作者]

又遇到一个小问题,在数组显示姓名后,再次运行时,文本框内还有上次运行的数组,觉得应该清空一下数组,估计是用Remove之类的,但又找不到说明书上类似的写法,请大红袍老师指点一下!


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


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

看12楼。

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


加好友 发短信
等级:二尾狐 帖子:553 积分:5016 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/10/8 22:52:00 [只看该作者]

是改以下的一段吗?我改了好多种方式,都出现运行错误

 

static ls As new List(of String)
If Forms("提示").Opened Then
    Forms("提示").Controls("Label1").Text = "共" & RowQty & "条记录,下面开始保存......"
    Dim txt As Winform.TextBox = Forms("提示").Controls("TextBox1")
    ls.add( "完成" & RowQty & "--" & e.DataRow("编号") & ": " & e.DataRow("姓名") & "......保存完毕")
    If ls.count > 22 Then
        ls.RemoveAt(0)     '删除ls的第一个值 
    End If
    Dim str As String = String.Join(vbcrlf, ls.ToArray)
    txt.Text = str
    Application.DoEvents()
End If


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


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

If Forms("提示").Opened Then

    Dim ls = vars("ls") 
    Forms("提示").Controls("Label1").Text = "共" & RowQty & "条记录,下面开始保存......"
    Dim txt As Winform.TextBox = Forms("提示").Controls("TextBox1")
    ls.add( "完成" & RowQty & "--" & e.DataRow("编号") & ": " & e.DataRow("姓名") & "......保存完毕")
    If ls.count > 22 Then
        ls.RemoveAt(0)     '删除ls的第一个值 
    End If
    Dim str As String = String.Join(vbcrlf, ls.ToArray)
    txt.Text = str
    Application.DoEvents()
End If


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


加好友 发短信
等级:二尾狐 帖子:553 积分:5016 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/10/8 23:50:00 [只看该作者]

   Dim ls = vars("ls") 

 

这个被提示为错误的代码。

     


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/10/9 8:41:00 [只看该作者]

Dim ls as List(of String) = vars("ls")

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


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

以下是引用zhangchi96在2015/10/8 23:50:00的发言:

   Dim ls = vars("ls") 

 

这个被提示为错误的代码。

     

 

不 可 能 报错,报什么错


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


加好友 发短信
等级:二尾狐 帖子:553 积分:5016 威望:0 精华:0 注册:2012/2/11 13:27:00
  发帖心情 Post By:2015/10/9 21:05:00 [只看该作者]

还是行不通

【外部数据表】的表属性的beforeSaveDataRow事件,我之前正确的代码如下:

 

Dim RowQty As Integer
RowQty = DataTables("个人基本信息").DataRows.Count  '当前表的总行数

static ls As new List(of String)
If Forms("提示").Opened Then    '事先必须建立【提示】窗体
    Forms("提示").Controls("Label1").Text = "共" & RowQty & "条记录,开始保存......"   

    Dim txt As Winform.TextBox = Forms("提示").Controls("TextBox1")   
     ls.add( "第" & e.DataRow("编号") & "条记录: " & e.DataRow("姓名") & "......." & Format( val(e.DataRow("编号"))/RowQty,"0.0%") & " ......保存完毕")
    If ls.count > 22 Then
        ls.RemoveAt(0)      '删除ls的第一个值
    End If
    Dim str As String = String.Join(vbcrlf, ls.ToArray)
    txt.Text = str
    Application.DoEvents()
    Forms("提示").Controls("Label1").Text = "共" & RowQty & "条记录,向服务器保存数据完毕,准备关闭......"
End If

 

添加 Dim ls = vars("ls")  和添加 Dim ls as List(of String) = vars("ls") 都不对

添加第一个语句:提示编译错误,Variable 'ls' hides a variable in an enclosing block

添加第二个语句,在运行时提示没有定义‘ls’

(我附上了最后一次能正确运行的代码,以便老师就直接用上述代码修改)

 

[此贴子已经被作者于2015/10/9 21:05:41编辑过]

 回到顶部
总数 46 上一页 1 2 3 4 5 下一页