【问题标题】:How to do a mailing using a reporting tool?如何使用报告工具发送邮件?
【发布时间】:2010-08-30 08:57:43
【问题描述】:

环境:Reporting Services 或 XTraReport、SqlServer Express 2008 R2、VS2008、WinForms、C#

大家好,

我的 WinForms 应用程序必须向一群人(他们的联系信息在 SqlServer 中)发送一封定制的信件。这是 Word Mail/Merge 的典型工作。

但我想在客户端计算机上不安装 Word 的情况下执行此操作。我宁愿使用 MS Reporting Services(或 DevExpress XtraReport)。

问题是那些工具允许我放置姓名和地址的文本框(这很好),但它们不是真正的文字处理器。我需要在文本流中嵌入自定义字段。这在 Word 中很容易完成,但我在 Reporting Services 中找不到方法。

注意:就报道而言,我是新手。

请帮忙,

TIA。

塞尔吉。

【问题讨论】:

    标签: winforms reporting-services reporting mailmerge xtrareport


    【解决方案1】:

    在 MS Reporting Services 中,您可以将文本字段的值设置为 VB 表达式,而不是固定字符串。使用该表达式将您的数据库字段插入到文本中。

    例如,您可能有这样的表达式:

    ="Dear "+Fields!FirstName.Value+","
    

    对于更复杂的方法,您可以在文本中使用占位符并用一些正则表达式替换它们。在这种情况下,您可能希望将代码嵌入到报告或程序集中,然后将其作为文本字段中的函数调用。

    【讨论】:

    • 阿德里安,感谢您的帮助。现在,我将坚持使用 xtra 报告,但正如我的回答中所解释的那样。
    【解决方案2】:

    我发现 DevExpress XtraReport 可以做我想做的事:可以将字段嵌入到 RichEdit 控件的文本中:

    Hello [firstName], your subscription elapsed on [lastDay!dd/MM/yyyy]
    

    此外,邮寄问题可以通过仅包含在详细信息带中的报告来解决。

    我更喜欢 MS Reporting Services 解决方案,但这个解决方案非常适合我的需求。

    【讨论】:

      猜你喜欢
      • 2012-09-08
      • 1970-01-01
      • 2014-08-10
      • 2017-06-17
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 2013-02-18
      • 1970-01-01
      相关资源
      最近更新 更多