以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何判断数值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=89269)

--  作者:clchen
--  发布时间:2016/8/18 11:50:00
--  如何判断数值
Dim sl As String = Tables("仓库待出库信息_Table1").Current("数量")
Dim chsl As String = Tables("选择出库信息_Table1").Current("数量")
Dim cksl As WinForm.TextBox = e.Form.Controls("chsl")
Dim dd As Integer
Dim num3 As Integer = 0
Dim sum As Integer
If chsl > sl Then
    cksl.Text = sl
Else
If cksl.text <> "" Then
    num3 = cint(cksl.text)
End If
If e.Row.Checked  Then
    num3 = num3 + e.Row("数量")
    cksl.text =num3
Else
    num3 = cint(cksl.text)
    num3 = num3 -  e.Row("数量")
    cksl.text =num3
End If
    For Each r As Row In  e.Table.GetCheckedRows
        sum+=1
    Next
End If

如何判断chsl 如果大于 sl 则cksl 就等于数量? 如果小于sl的则继续勾选直到勾选数值大于等于sl(大于的话就直接等于sl) 如果判断成功的话那就直接将chsl 减 ckls 

--  作者:大红袍
--  发布时间:2016/8/18 11:55:00
--  
Dim sl As Double = Tables("仓库待出库信息_Table1").Current("数量")
Dim chsl As Double = 0
For Each r As Row In Tables("选择出库信息_Table1").rows
    If chsl >= sl Then
        chsl = sl
        Exit For
    Else
        r.checked = True
    End If
    chsl = chsl + r("数量")
Next

--  作者:clchen
--  发布时间:2016/8/18 15:04:00
--  
你可能理解错了
如果 待出库table1 中的数量 >  选择出库信息table1 的数量
就继续勾选数量 如果超出 待出库table1中的数量 就是  cksl(出库数量) = 待出库table1的数量

如果待出库table1的数量 <=  选择出库table1的数量
就是 cksl(出库数量) = 待出库table1的数量

--  作者:大红袍
--  发布时间:2016/8/18 16:18:00
--  
 没理解错,认认真真看2楼代码
--  作者:clchen
--  发布时间:2016/8/18 17:20:00
--  
难道是没有定义吗
图片点击可在新窗口打开查看此主题相关图片如下:jf4$j4br}9lgdd0@vb5@ttt.png
图片点击可在新窗口打开查看
图片点击可在新窗口打开查看此主题相关图片如下:h1rq0)tge~p7~024pudzzl9.png
图片点击可在新窗口打开查看


--  作者:大红袍
--  发布时间:2016/8/18 17:36:00
--  
没看懂你要做什么
 
Dim sl As Double = Tables("仓库待出库信息_Table1").Current("数量")
Dim chsl As Double = 0
For Each r As Row In e.Table.GetCheckedRows
    chsl = chsl + r("数量")
Next

Dim cksl As WinForm.TextBox = e.Form.Controls("chsl")

cksl.Text = chsl


--  作者:clchen
--  发布时间:2016/8/18 17:45:00
--  
比如
待审核table的数量是1000
选择出库的table的数量有 500,1001,500

当我勾选数量为1001的数量时 出库数量Text就会是待审核table中的数量1000
当我勾选500时数量不够的情况的下继续相加勾选下一条500 如果数量足够了 就给提示 数量已经够了

如果首先我选的数量为500 继续勾选的话 我勾选数量为1001这条数据,出库数量Text就会是待审核table中的数量1000

当我点击出库的时候 就会在选择出库中减掉刚才那些勾选的数量,
如果我勾选的是500这两条数据出库的话,那么下次点击选择出库的时候就会只有一条数量为1001的数据


--  作者:大红袍
--  发布时间:2016/8/18 18:03:00
--  
 
Dim sl As Double = Tables("仓库待出库信息_Table1").Current("数量")
Dim chsl As Double = 0
For Each r As Row In e.Table.GetCheckedRows
    chsl = chsl + r("数量")
Next

If chsl >= sl then

    chsl = sl

    msgbox("足够了")

End If


Dim cksl As WinForm.TextBox = e.Form.Controls("chsl")

cksl.Text = chsl