我正在尝试显示一个带有附加报告的电子邮件弹出窗口。我希望在弹出窗口中的电子邮件字段中填充附件报告的邮件设置-类似于在直接运行报告时单击“发送”按钮时发生的情况。我正在尝试通过PXAction方法执行此操作。
我已经完成了大部分工作,但是,如果“邮件设置”中包含公式,就会出现问题。例如,如果主题设置为“ = [table]。[field]”,则在我的电子邮件弹出窗口的“主题”框中获得“ = [table]。[field]”,而不是table.field的值。>
关于如何获取报告中“邮件设置”字段的值而不是逐字记录文本的任何想法?
TIA!
答案 0 :(得分:1)
这对我有用。我确定有一种方法可以省去删除“ =”的代码,但是,这满足了我的需要。
protected string GleanMailSetting(Report report, ReportNode reportNode, string settingText)
{
if ((string.IsNullOrEmpty(settingText)) || (!settingText.StartsWith("=")))
return settingText;
string trimmedText = settingText.TrimStart(new char[] { '=' });
PX.Common.Parser.ExpressionNode node = Reports.Parser.ReportExprParser.Parse(trimmedText, report);
node.Bind(report.DataSource);
return (string)node.Eval(reportNode.DataItem);
}