Previous topicNext topic
Help > 开发指南 > SanMuGrid平台编程 > 主要对象 > DataTableHelp > 数据增删改查 >
MergeVLookupCols

MergeVLookupCols根据关联字段从另外一个新的DataTableHelp中添加指定的列并返回一个完整的新DataTableHelp。此函数的效果跟AddVlookupCols的功能差不多,只是这里是以一个新的DataTableHelp对象返回。不像AddVlookupCols是针对源表本身进行修改。

语法:

MergeVLookupCols(addDataTable,addlinkCols,sourceLinkCols,addCols)

参数说明

名称 说明
addDataTable 必填项,DataTableHelp类型,新加字段的关联表。
addlinkCols 必填项,字符串类型,新表的关联字段。这里如果有多个关联字段的话,每个字段名之间用“,”隔开,例如:ID,SubID。
sourceLinkCols 可选项,字符串类型,源表的关联字段。如果省略为空的话,则默认与上面新表的关联字段一样。如果字段名不一样则需要设置一一对应的字段名。格式也同addlinkCols参数一样,每个字段名之间用“,”隔开。
addCols 可选项,字符串类型,新表要添加的字段名,如果有多个关联字段的话,每个字段名之间用“,”隔开。默认为空,表示将除了关联字段外的所有字段都添加了。

参考“数据查询Demo”中的演示效果。

Vb.Net
Public Sub btnMergeVLookupCols_Click(sender As Object,e As  System.EventArgs)
    '如果最后一个参数什么都不指定,则添加tblMain2中所有字段
    Dim dt As DataTableHelp= tblMain1.DataTableHelp.MergeVLookupCols(tblMain2.DataTableHelp,"客户","客户","")
    tblResult.DataSource=dt '将结果绑定到tblResult中并显示出来
    
End Sub
Public Sub btnMergeVLookupCols2_Click(sender As Object,e As  System.EventArgs)
    '只添加指定的几个列
    Dim dt As DataTableHelp=tblMain1.DataTableHelp.MergeVLookupCols(tblMain2.DataTableHelp,"客户","客户","客户名称,客户联系人")
    tblResult.DataSource=dt '将结果绑定到tblResult中并显示出来
End Sub

C#
public void btnMergeVLookupCols_Click(object sender, System.EventArgs e)
{
    // 如果最后一个参数什么都不指定,则添加tblMain2中所有字段
    DataTableHelp dt = tblMain1.DataTableHelp.MergeVLookupCols(tblMain2.DataTableHelp, "客户", "客户", "");
    tblResult.DataSource = dt; // 将结果绑定到tblResult中并显示出来
}
public void btnMergeVLookupCols2_Click(object sender, System.EventArgs e)
{
    // 只添加指定的几个列
    DataTableHelp dt = tblMain1.DataTableHelp.MergeVLookupCols(tblMain2.DataTableHelp, "客户", "客户", "客户名称,客户联系人");
    tblResult.DataSource = dt; // 将结果绑定到tblResult中并显示出来
}