Sitecore ECM详细信息报告

Sitecore ECM详细信息报告,sitecore,sitecore6,sitecore-dms,sitecore-ecm,Sitecore,Sitecore6,Sitecore Dms,Sitecore Ecm,我正在使用Sitecore 6.5 ECM进行电子邮件活动 有相当多的bug。。但不知何故,我成功地克服了它们 现在,ECM工作正常,它有一个接洽计划,可以查看发送了多少百分比,消息已打开,消息未打开等等 但是我的客户想要一份详细的报告。。像已发送,收件人,已打开,单击发送每封电子邮件 因此,我想知道我应该采用哪种方法来获得以下报告 我应该使用EmailCampaign dll API获取它们,还是直接从数据库中查询 我已经看过数据库了。而且表名不容易找到 以前有人这样做过吗?我可以用一些片段

我正在使用
Sitecore 6.5 ECM
进行电子邮件活动

有相当多的bug。。但不知何故,我成功地克服了它们

现在,ECM工作正常,它有一个
接洽计划
,可以查看发送了多少
百分比
消息已打开
消息未打开
等等

但是我的客户想要一份详细的报告。。像
已发送
收件人
已打开
单击
发送每封电子邮件

因此,我想知道我应该采用哪种方法来获得以下报告

我应该使用
EmailCampaign dll API
获取它们,还是直接从
数据库中查询

我已经看过数据库了。而且表名不容易找到


以前有人这样做过吗?我可以用一些片段来做这件事吗?

威廉-你是对的,你想要从ECM得到的详细报告还没有完成,而且没有现成的。我知道这样的东西会在某个时候出现,但我不知道什么时候,现在,这就是你可以做的事情,因为我现在正为客户做这件事

基本上,它是通过直接的SQL调用完成的。EngagementAutomation dll中存在api。。但从我的经验来看,方法签名会获取一些对象,尝试创建这些对象比自己构建SQL调用更痛苦。而不是张贴我的代码,这是广泛的。。我会告诉你数据在哪里,以及如何获取数据。有一个用于分析的SQL API,但我发现尝试创建比自己使用老式的.net和SQL命令更令人困惑

我的方法是创建一些类,这些类可以获取给定的信息,例如参与计划的GUID或消息本身的GUID。分析数据库中有几个表跟踪这些数据。一个是Automation和AutomationStates,它跟踪审计业务计划和发送的特定电子邮件(发送的每封电子邮件在AutomationStates表中都有一个条目,该条目链接到Automation(审计业务计划)。AutomationStates表非常关键,将显示发送电子邮件的Sitecore用户的实际用户名

跟踪事情(点击之类的事情)这是一个小把戏。所有操作都在Pages表和PageEvent表中完成并跟踪。它跟踪打开和单击。打开通过RegisterEmailOpened url进行跟踪,单击必须在包含Querystring的UrlText字段中进行跟踪,您可以解析指向AutomationStateID的EC_AS=列GUID

这还有很多,但这应该让你开始,让你看看如何开始这项工作。

我得到了一些结果

只是想和你核实一下他们是否正确

我将从
活动
表中获取相应ECM的
活动ID

然后我将从
Automation
表中获取该
activitid
AutomationID

之后,我将使用从
Automation
表中获得的
AutomationID
AutomationStates
表中获取相应的行

我为每个
AutomationID
获得的
行数
ECM
发送的电子邮件数

如果
VisitorID
NULL
,则收件人尚未打开电子邮件

如果
VisitorID
中有一个值,则该电子邮件可以被视为
已打开

对于
点击
,我想我可以使用
AutomationStates
表中的
StateID
StateName
,因为我看到
StateName
的一些旧数据的值称为
非生产性访问者

但当我点击新发送的
ECM
时,该字段不会改变任何内容

因此,我想知道我是否应该让用户
访问
表或
页面
PagesEvents
表,以便
点击

请告知


谢谢你的指导。

好的。谢谢你的建议。我有点忙这份报告。我可能会在下周完成。谢谢你的回答。:)嗨,divamatrix,我有了部分工作的想法。我将其作为另一个答案发布,并希望与您确认它们是否正确。活动ID指的是该活动。。不是订婚计划。该活动更侧重于营销方面,实际上与报道无关。这对执行摘要很有用。。但不用于其他报告目的。您真正想要的是AutomationID,它是交战计划ID,位于Automations表中。实际ECM消息本身的ID位于Automations表的数据字段中。automationid的行数是为该约定计划发送的emaisl数(从技术上讲,可以将多封电子邮件配置为使用同一约定计划..虽然开箱即用,但不能这样做)。状态指的是业务约定计划状态。。在这里,您可以了解用户是否打开了电子邮件或单击了链接等。VisitorID更侧重于分析,虽然它可能很有用,由于分析数据库中的外键/主键关系非常复杂,这也可能会产生误导。点击率非常棘手,因为它会将点击率记录为页面表中的页面,但您必须解析表中的一个字段,以查找特定于ECM消息的页面条目。下面是一个示例SQL语句,我用于为每个发送电子邮件的用户获取点击率:这将向您展示该结构在传递时的工作方式