TX Text Control 邮件合并(一)与MS SQL Server 数据合并

我们之前提供的邮件合并功能示例使用的是XML作为数据源,在实际项目中,将MS SQL Server作为数据源的情况更为常见。不管使用什么样的数据源,其操作步骤都非常相似:我们需要循环所有的合并字段,并将这些字段与数据源中的特定列的数据进行合并。在该示例中,我们将使用DocumentServer命名空间中提供的适配器字段(MergeField类型),这些适配器字段可以用于创建/操纵特定的ApplicationField对象,而且不必手动修改ApplicationField.Parameters属性的值。

发布于 2012/11/16 00:00

我们之前提供的邮件合并功能示例使用的是XML作为数据源,在实际项目中,将MS SQL Server作为数据源的情况更为常见。
不管使用什么样的数据源,其操作步骤都非常相似:我们需要循环所有的合并字段,并将这些字段与数据源中的特定列的数据进行合并。在该示例中,我们将使用 DocumentServer命名空间中提供的适配器字段(MergeField类型),这些适配器字段可以用于创建/操纵特定的 ApplicationField对象,而且不必手动修改ApplicationField.Parameters属性的值。
下面的代码演示了合并操作的处理过程:

 
// loop through all fields to merge
    // the text with the database content
    foreach (TXTextControl.ApplicationField field in tx.ApplicationFields)
    {
        try
        {
            if (field.TypeName != "MERGEFIELD")
                return;

            // create a new field adapter
            TXTextControl.DocumentServer.Fields.MergeField mf =
                new TXTextControl.DocumentServer.Fields.MergeField(field);

            if (this.customersDataSet.customers.Columns.Contains(mf.Name) == false)
                continue;

            // merge the text
            field.Text = this.customersDataSet.customers.Rows[dataGridView1.SelectedRows[0].Index][mf.Name].ToString();
        }
        catch (Exception exc)
        {
            MessageBox.Show(exc.Message);
        }
    }
复制代码

运行效果:


源码:MS SQLServer + VS2010 + TX17.0

关于葡萄城

葡萄城软件是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

推荐相关案例
推荐相关资源
关注微信
葡萄城社区二维码

关注“葡萄城社区”

活字格低代码二维码

关注“活字格低代码”

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态