欧美日韩国产网暴台湾_白拍偷拍制服丝袜_国产麻豆日韩在线观看_精品欧美在线va天堂资源站_亚洲色成人WWW永久_免费高级毛片AV_精品國產av色一區二區深夜久久_亚洲乱码中文字幕av综合_一级做A爱片特黄在线观看_少妇免费亚洲综合

Previous topicNext topic
Help > 開發(fā)指南 > SanMuGrid平臺編程 > 主要對象 > RowData >
GetFilterByParameterCols

GetFilterByParameterCols根據(jù)篩選列,結(jié)合當(dāng)前行的數(shù)據(jù),獲得一個用于篩選的SQL篩選條件字符串。

有兩種重載:

RowData.GetFilterByParameterCols(parameterCols) 字符串類型,要返回篩選條件涉及的列清單,多個列可以用“,”分隔開,例如:ColName,Name,ID

RowData.GetFilterByParameterCols(lstCols) 字符串集合,要返回篩選條件涉及的列清單。

如果是基于主鍵生成的查詢篩選條件的話可以直接使用GetFilterByPrimaryKey。這幾種用法可以直接看下面的代碼示例:

Vb.Net
Dim tbl As SmGrid=Proj.CurrentSmGrid
If tbl Is Nothing Then Return
Dim dr As RowData=tbl.CurrentRowData
If dr Is Nothing Then Return
Dim db As Database=tbl.DataTableHelp.Database
Dim strTableName As String=tbl.DataTableHelp.DataBaseTableName
If String.IsNullOrEmpty(strTableName) Then
    strTableName=tbl.DataTableHelp.EditDatatableName
End If
'根據(jù)行主鍵獲得一個更新指定列數(shù)據(jù)的SQL語句
Dim strSQLUpdate As String="Update " + db.SQLBuilder.QuotePrefix + strTableName + db.SQLBuilder.QuoteSuffix + " Set ColA=" + db.SQLBuilder.BooleanTrueString
Dim strSQLCommand As String =strSQLUpdate  + " where " + dr.GetFilterByPrimaryKey()
Proj.MsgDebug.Add(strSQLCommand)

'GetFilterByParameterCols可以傳入一個字符串,想要基于哪些列進行篩選
strSQLCommand=strSQLUpdate +" where " + dr.GetFilterByParameterCols("產(chǎn)品,客戶,業(yè)務(wù)員")
Proj.MsgDebug.Add(strSQLCommand)

'還可以傳入一個字符串集合
Dim lstCols As New List(Of String)
lstCols.Add("產(chǎn)品")
lstCols.Add("客戶")
strSQLCommand=strSQLUpdate +" where " + dr.GetFilterByParameterCols(lstCols)
Proj.MsgDebug.Add(strSQLCommand)

'返回結(jié)果:Update [訂單信息] Set ColA=1 where [_IdentifyFlag]=278
'返回結(jié)果:Update [訂單信息] Set ColA=1 where 產(chǎn)品='產(chǎn)品03' and 客戶='客戶02' and 業(yè)務(wù)員='業(yè)務(wù)員03'
'返回結(jié)果:Update [訂單信息] Set ColA=1 where 產(chǎn)品='產(chǎn)品03' and 客戶='客戶02'

C#
SmGrid tbl = Proj.CurrentSmGrid;
if (tbl == null)
    return;
RowData dr = tbl.CurrentRowData;
if (dr == null)
    return;
Database db = tbl.DataTableHelp.Database;
string strTableName = tbl.DataTableHelp.DataBaseTableName;
if (string.IsNullOrEmpty(strTableName))
    strTableName = tbl.DataTableHelp.EditDatatableName;
// 根據(jù)行主鍵獲得一個更新指定列數(shù)據(jù)的SQL語句
string strSQLUpdate = "Update " + db.SQLBuilder.QuotePrefix + strTableName + db.SQLBuilder.QuoteSuffix + " Set ColA=" + db.SQLBuilder.BooleanTrueString;
string strSQLCommand = strSQLUpdate + " where " + dr.GetFilterByPrimaryKey();
Proj.MsgDebug.Add(strSQLCommand);

// GetFilterByParameterCols可以傳入一個字符串,想要基于哪些列進行篩選
strSQLCommand = strSQLUpdate + " where " + dr.GetFilterByParameterCols("產(chǎn)品,客戶,業(yè)務(wù)員");
Proj.MsgDebug.Add(strSQLCommand);

// 還可以傳入一個字符串集合
List<string> lstCols = new List<string>();
lstCols.Add("產(chǎn)品");
lstCols.Add("客戶");
strSQLCommand = strSQLUpdate + " where " + dr.GetFilterByParameterCols(lstCols);
Proj.MsgDebug.Add(strSQLCommand);

//返回結(jié)果:Update [訂單信息] Set ColA=1 where [_IdentifyFlag]=278
//返回結(jié)果:Update [訂單信息] Set ColA=1 where 產(chǎn)品='產(chǎn)品03' and 客戶='客戶02' and 業(yè)務(wù)員='業(yè)務(wù)員03'
//返回結(jié)果:Update [訂單信息] Set ColA=1 where 產(chǎn)品='產(chǎn)品03' and 客戶='客戶02'