以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  求助:如何判断一个表总行数 且大于某个数后不允许新增行!  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=63310)

--  作者:李孝春
--  发布时间: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


--  作者:有点甜
--  发布时间:2015/1/18 16:22:00
--  

 参考

 

http://www.foxtable.com/help/topics/0629.htm

 


--  作者:李孝春
--  发布时间:2015/1/18 16:31:00
--  回复:(有点甜) 参考 http://www.fox...
3、i1的值判断  求完善  期待实现:查询工具和设备表中 类型等于交通工具 且计划书编号等于创业计划书的计划书编号的 行的总数  求解
--  作者:有点甜
--  发布时间:2015/1/18 16:33:00
--  

呃,参考

 

http://www.foxtable.com/help/topics/0393.htm

 


--  作者:李孝春
--  发布时间:2015/1/18 16:54:00
--  回复:(有点甜)呃,参考 http://www.foxta...

求纠正红色部分代码

 

 

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


--  作者:有点甜
--  发布时间:2015/1/18 16:56:00
--  
Dim i1 As Integer = DataTables("工具和设备").Compute("Count([名称])", "类型 = \'交通工具\' And 计划书编号 = \'" & ab3 & "\'")
MessageBox.Show(i1)  ‘得到的值为零

--  作者:李孝春
--  发布时间:2015/1/18 17:18:00
--  回复:(有点甜)Dim i1 As Integer = DataTables("工...

谢谢

 

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

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


--  作者:有点甜
--  发布时间:2015/1/18 17:32:00
--  
 合理
--  作者:李孝春
--  发布时间:2015/1/18 18:24:00
--  回复:(有点甜) 合理
但是 运行却没有效果  哎
--  作者:有点甜
--  发布时间: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