以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]列条件求助  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=100415)

--  作者:jyh7081
--  发布时间:2017/5/11 9:33:00
--  [求助]列条件求助

窗口表的类型Normal,有两段代码:

 

1、指定"AAAA"列,执行代码(或者换一种方式:遍历列后,如果列属性是数值型,那么... )
Dim t As Table = CurrentTable  

If t.Cols.Name = "AAAA" Then   

    Syscmd.Edit.SerialFill()    \'序列填充
Else
     ......
End If

 

--------------------------------------------------------------------

2、如果窗口表的“保存历史”列的逻辑值为false,那么清除数据
If e.Form.Controls("Table1").Cols("保存历史") = False Then

Dim dt As DataTable = DataTables("AAAA")
For Each dr As DataRow In dt.datarows
    For Each dc As DataCol In dt.datacols
        If dc.Expression = "" Then
            dr(dc.name) = Nothing
        End If
    Next
Next
End If

 

请老师指教!谢谢!


--  作者:有点色
--  发布时间:2017/5/11 10:05:00
--  

1、

 

Dim t As Table = CurrentTable
For Each c As Col In t.Cols
    If c.IsNumeric Then
        Syscmd.Edit.SerialFill()    \'序列填充
    Else
       
    End If
Next

2、

 

If e.Form.Controls("Table1").Table.Current("保存历史") = False Then


--  作者:jyh7081
--  发布时间:2017/5/11 10:35:00
--  

老师,第二段代码没起作用,什么原因?

    If e.Form.Controls("Table1").Table.Current("保存历史") = False Then

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:清除 - 副本.table


--  作者:有点色
--  发布时间:2017/5/11 10:51:00
--  
Dim t As Table = e.Form.Controls("Table1").Table
For Each dr As Row In t.rows
    If dr("保存历史") = False Then
        For Each dc As Col In t.cols
            If dc.DataCol.Expression = "" Then
                dr(dc.name) = Nothing
            End If
        Next
    End If
Next