Foxtable(狐表)用户栏目专家坐堂 → 求助:如何判断一个表总行数 且大于某个数后不允许新增行!


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

主题:求助:如何判断一个表总行数 且大于某个数后不允许新增行!

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
求助:如何判断一个表总行数 且大于某个数后不允许新增行!  发帖心情 Post By:2015/1/18 16:17:00 [只看该作者]

求助:如何判断一个表总行数 且大于某个数后不允许新增行!

下述代码 在工具和设备窗体中的按钮事件中

 

Dim i1 As Integer = DataTables("工具和设备").DataRows.Count
Dim h As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim ab1 As Row =Tables("创业计划书.工具和设备").Current
If i1 = h.text  Then
    Dim Result As DialogResult
    Result = MessageBox.Show("根据当前行设置数据,不能再次增加!且新增数据不会显示在模板中,是否确定操作!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Tables("创业计划书.工具和设备").AddNew()
        ab1("类型") ="交通工具"
    Else
       
    End If    
Else
    Dim vals() As String = {"交通工具","交通工具","交通工具","交通工具","交通工具","交通工具"}
    For i As Integer =0 To vals.Length - 1
        Dim ab As Row=Tables("创业计划书.工具和设备").AddNew()
        ab("类型") = vals(i)
    Next
End If

 

 

如何将上面的代码完善一下

实现如下效果

1、按钮新增行数为6行 类型为交通工具

2、新增行等于6行 且类型等于交通工具时候 提醒 只能一行一行增加

3、i1的值判断  求完善  期待实现:查询工具和设备表中 类型等于交通工具 且计划书编号等于创业计划书的计划书编号的 行的总数

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:创业计划书.foxdb


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/18 16:22:00 [只看该作者]


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜) 参考 http://www.fox...  发帖心情 Post By:2015/1/18 16:31:00 [只看该作者]

3、i1的值判断  求完善  期待实现:查询工具和设备表中 类型等于交通工具 且计划书编号等于创业计划书的计划书编号的 行的总数  求解

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/18 16:33:00 [只看该作者]


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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)呃,参考 http://www.foxta...  发帖心情 Post By:2015/1/18 16:54:00 [只看该作者]

求纠正红色部分代码

 

 

Dim h As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim ab1 As Row =Tables("创业计划书.工具和设备").Current
Dim ab2 As Row =Tables("创业计划书").Current
Dim ab3 As String = ab2("计划书编号")
MessageBox.Show(ab3)
Dim i1 As Integer = DataTables("工具和设备").Compute("Count([名称])", "类型 = '交通工具' And 计划书编号 = 'ab3' ")
MessageBox.Show(i1)  ‘得到的值为零

'DataTables("工具和设备").DataRows.Count
If i1 = h.text  Then
    Dim Result As DialogResult
    Result = MessageBox.Show("根据当前行设置数据,不能再次增加!且新增数据不会显示在模板中,是否确定操作!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Tables("创业计划书.工具和设备").AddNew()
        ab1("类型") ="交通工具"
    Else
       
    End If    
Else
    Dim vals() As String = {"交通工具","交通工具","交通工具","交通工具","交通工具","交通工具"}
    For i As Integer =0 To vals.Length - 1
        Dim ab As Row=Tables("创业计划书.工具和设备").AddNew()
        ab("类型") = vals(i)
    Next
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/18 16:56:00 [只看该作者]

Dim i1 As Integer = DataTables("工具和设备").Compute("Count([名称])", "类型 = '交通工具' And 计划书编号 = '" & ab3 & "'")
MessageBox.Show(i1)  ‘得到的值为零

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)Dim i1 As Integer = DataTables("工...  发帖心情 Post By:2015/1/18 17:18:00 [只看该作者]

谢谢

 

代码先修正如下  基本实现效果   下面红色部分写法合理不  麻烦指导下!

Dim h As WinForm.TextBox = e.Form.Controls("TextBox1")
Dim ab1 As Row =Tables("创业计划书.工具和设备").Current
Dim ab2 As Row =Tables("创业计划书").Current
Dim ab3 As String = ab2("计划书编号")
'MessageBox.Show(ab3)
Dim i1 As Integer = DataTables("工具和设备").Compute("Count([类型])", "类型 = '交通工具' And 计划书编号 = '" & ab3 & "'")
'MessageBox.Show(i1)
'DataTables("工具和设备").DataRows.Count
If i1 = h.text  Then  ’当I1等于H.TEXT时候 弹出如下提示
    Dim Result As DialogResult
    Result = MessageBox.Show("根据当前行设置数据,不能再次增加!且新增数据不会显示在模板中,是否确定操作!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Dim ab4 As Row=Tables("创业计划书.工具和设备").AddNew()
        ab4("类型") ="交通工具"
    Else
       If i1 < h.text  Then   '当小于预定值的时候  执行下面的操作 假设h的值等于9 I1等于6 那么新增三行

Dim ab5 As Row=Tables("创业计划书.工具和设备").AddNew(h.text-i1)
        ab5("类型") ="交通工具"
end if

    End If    
Else
    Dim vals() As String = {"交通工具","交通工具","交通工具","交通工具","交通工具","交通工具"}
    For i As Integer =0 To vals.Length - 1
        Dim ab As Row=Tables("创业计划书.工具和设备").AddNew()
        ab("类型") = vals(i)
    Next
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/18 17:32:00 [只看该作者]

 合理

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


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜) 合理  发帖心情 Post By:2015/1/18 18:24:00 [只看该作者]

但是 运行却没有效果  哎

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/1/18 19:13:00 [只看该作者]

 不知道你到底先做什么

 

If i1 = h.text  Then  '当I1等于H.TEXT时候 弹出如下提示
    Dim Result As DialogResult
    Result = MessageBox.Show("根据当前行设置数据,不能再次增加!且新增数据不会显示在模板中,是否确定操作!", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Dim ab4 As Row=Tables("创业计划书.工具和设备").AddNew()
        ab4("类型") ="交通工具"
    End If
Else  If i1 < h.text  Then   '当小于预定值的时候  执行下面的操作 假设h的值等于9 I1等于6 那么新增三行
    Dim ab5 As Row=Tables("创业计划书.工具和设备").AddNew(h.text-i1)
    ab5("类型") ="交通工具"
Else
    Dim vals() As String = {"交通工具","交通工具","交通工具","交通工具","交通工具","交通工具"}
    For i As Integer =0 To vals.Length - 1
        Dim ab As Row=Tables("创业计划书.工具和设备").AddNew()
        ab("类型") = vals(i)
    Next
End If


 回到顶部
总数 14 1 2 下一页