名稱(chēng) | 說(shuō)明 |
Item[ ColData] | 根據(jù)ColData對(duì)象返回當(dāng)前行指定列的值. |
Item[序號(hào)] | 根據(jù)列的序號(hào)返回當(dāng)前行指定列的值. |
Item[列名稱(chēng)] | 根據(jù)列的名稱(chēng)返回當(dāng)前行指定列的值. |
Item[ ColData, DataRowVersion] | 根據(jù)ColData對(duì)象返回當(dāng)前行相應(yīng)版本的數(shù)據(jù) |
Item[序號(hào), DataRowVersion] | 根據(jù)列的序號(hào)返回當(dāng)前行相應(yīng)版本的數(shù)據(jù) |
Item[列名稱(chēng), DataRowVersion] | 根據(jù)列的名稱(chēng)返回當(dāng)前行相應(yīng)版本的數(shù)據(jù) |
示例:在下面這樣的表中執(zhí)行下面的代碼
執(zhí)行后變成這樣
Vb.Net |
'先定義變量獲取表 Dim tbl As SmGrid = Proj.CurrentSmGrid '定義ColData對(duì)象 Dim col As ColData=tbl.DataTableHelp.DataCols("產(chǎn)品") '獲得RowData對(duì)象 tbl.Position=1 '先定位到第二行 Dim dr As RowData=tbl.CurrentRowData '取到當(dāng)前行對(duì)象 Proj.MsgDebug.Add("根據(jù)ColData對(duì)象返回對(duì)應(yīng)列的值:{0}",dr(col)) Proj.MsgDebug.Add("根據(jù)列序號(hào)返回對(duì)應(yīng)列的值:{0}",dr(1)) Proj.MsgDebug.Add("根據(jù)列名稱(chēng)返回對(duì)應(yīng)列的值:{0}",dr("業(yè)務(wù)員")) '查看修改后如何獲得各版本的值 tbl.Position=2 '先定位到第二行 dr=tbl.CurrentRowData '重新獲取當(dāng)前行對(duì)象 Proj.MsgDebug.Add("當(dāng)前行'產(chǎn)品'列原本的數(shù)據(jù):{0}",dr("產(chǎn)品").ToString()) dr("產(chǎn)品")="新值" '修改當(dāng)前行產(chǎn)品列的值 Proj.MsgDebug.Add("獲取當(dāng)前行行狀態(tài)的版本:{0}",dr.RowState.ToString()) Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Current)) Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Default)) If dr.RowState=DataRowState.Added Then Proj.MsgDebug.Add("當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。") Else Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列Original版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Original)) End If '在實(shí)際使用中,無(wú)法獲得DataRowVersion.Proposed的值 '新增行如何獲得各版本的值 dr=tbl.DataTableHelp.AddNew() dr("產(chǎn)品")="新增行" '修改當(dāng)前新增行產(chǎn)品列的值 Proj.MsgDebug.Add("獲取當(dāng)前行行狀態(tài)的版本:{0}",dr.RowState.ToString()) Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Current)) Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Default)) If dr.RowState=DataRowState.Added Then Proj.MsgDebug.Add("當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。") Else Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列Original版本的值:{0}",dr("產(chǎn)品",DataRowVersion.Original)) End If '返回結(jié)果:根據(jù)ColData對(duì)象返回對(duì)應(yīng)列的值:產(chǎn)品03 '返回結(jié)果:根據(jù)列序號(hào)返回對(duì)應(yīng)列的值:2 '返回結(jié)果:根據(jù)列名稱(chēng)返回對(duì)應(yīng)列的值:業(yè)務(wù)員01 '返回結(jié)果:當(dāng)前行'產(chǎn)品'列原本的數(shù)據(jù):產(chǎn)品02 '返回結(jié)果:獲取當(dāng)前行行狀態(tài)的版本:Modified '返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:新值 '返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:新值 '返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列Original版本的值:產(chǎn)品02 '返回結(jié)果:獲取當(dāng)前行行狀態(tài)的版本:Added '返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:新增行 '返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:新增行 '返回結(jié)果:當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。 |
C# |
// 先定義變量獲取表 SmGrid tbl = Proj.CurrentSmGrid; // 定義ColData對(duì)象 ColData col = tbl.DataTableHelp.DataCols["產(chǎn)品"]; // 獲得RowData對(duì)象 tbl.Position = 1; // 先定位到第二行 RowData dr = tbl.CurrentRowData; // 取到當(dāng)前行對(duì)象 Proj.MsgDebug.Add("根據(jù)ColData對(duì)象返回對(duì)應(yīng)列的值:{0}", dr[col]); Proj.MsgDebug.Add("根據(jù)列序號(hào)返回對(duì)應(yīng)列的值:{0}", dr[1]); Proj.MsgDebug.Add("根據(jù)列名稱(chēng)返回對(duì)應(yīng)列的值:{0}", dr["業(yè)務(wù)員"]); // 查看修改后如何獲得各版本的值 tbl.Position = 2; // 先定位到第二行 dr = tbl.CurrentRowData; // 重新獲取當(dāng)前行對(duì)象 Proj.MsgDebug.Add("當(dāng)前行'產(chǎn)品'列原本的數(shù)據(jù):{0}", dr["產(chǎn)品"].ToString()); dr["產(chǎn)品"] = "新值"; // 修改當(dāng)前行產(chǎn)品列的值 Proj.MsgDebug.Add("獲取當(dāng)前行行狀態(tài)的版本:{0}", dr.RowState.ToString()); Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Current]); Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Default]); if (dr.RowState == DataRowState.Added) Proj.MsgDebug.Add("當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。"); else Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列Original版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Original]); // 在實(shí)際使用中,無(wú)法獲得DataRowVersion.Proposed的值 // 新增行如何獲得各版本的值 dr = tbl.DataTableHelp.AddNew(); dr["產(chǎn)品"] = "新增行"; // 修改當(dāng)前新增行產(chǎn)品列的值 Proj.MsgDebug.Add("獲取當(dāng)前行行狀態(tài)的版本:{0}", dr.RowState.ToString()); Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Current]); Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Default]); if (dr.RowState == DataRowState.Added) Proj.MsgDebug.Add("當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。"); else Proj.MsgDebug.Add("獲取當(dāng)前行'產(chǎn)品'列Original版本的值:{0}", dr["產(chǎn)品", DataRowVersion.Original]); //返回結(jié)果:根據(jù)ColData對(duì)象返回對(duì)應(yīng)列的值:產(chǎn)品03 //返回結(jié)果:根據(jù)列序號(hào)返回對(duì)應(yīng)列的值:2 //返回結(jié)果:根據(jù)列名稱(chēng)返回對(duì)應(yīng)列的值:業(yè)務(wù)員01 //返回結(jié)果:當(dāng)前行'產(chǎn)品'列原本的數(shù)據(jù):產(chǎn)品02 //返回結(jié)果:獲取當(dāng)前行行狀態(tài)的版本:Modified //返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:新值 //返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:新值 //返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列Original版本的值:產(chǎn)品02 //返回結(jié)果:獲取當(dāng)前行行狀態(tài)的版本:Added //返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列當(dāng)前版本的值:新增行 //返回結(jié)果:獲取當(dāng)前行'產(chǎn)品'列默認(rèn)版本的值:新增行 //返回結(jié)果:當(dāng)前行為新增行,沒(méi)有Original版本,訪問(wèn)此版本會(huì)報(bào)錯(cuò)。 |