对于 eMessage 报告,限制变化量处理的范围
9.1 eMessage 报告包已改进的性能一部分依赖于新采用的登台表,这些登台表与当前 eMessage 系统表关联。
有关模式更改的更多信息,请参阅 IBM® eMessage 9.1 系统表和数据字典。eMessage 存储过程的初始设置依赖于下列新的数据库脚本:
*
acer_indexes_dbname.sql
*
acer_scripts_dbname.sql
*
acer_tables_dbname.sql
对于 Oracle、IBM® DB2®Microsoft SQL Server 数据库,这些数据库脚本位于 Campaign_reportspack_home\cognos10\emessage-ddl 目录中。
这些脚本设置索引、表、视图和存储过程。存储过程会刷新邮件发送活动数据,以填充登台表。 必须定期运行批处理过程以填充登台表。
eMessage 存储过程的初始运行可能要用很长时间来完成,具体时间取决于表中包含的数据量。后续变化量处理也可能要用很长时间来完成。可通过限制由存储过程处理的邮件发送实例(容器)数来显著减少处理时间。
缺省情况下,数据的处理时间为过去的 90 天。但是,可更改缺省值。可在运行 eMessage 的 SQL 脚本前后更改缺省值。有关运行这些 SQL 脚本的更多信息,请参阅对于 eMessage 报告,创建存储过程登台表和索引
以下示例说明在数据库为 Oracle 的情况下,要将处理时间限制为过去的 30 天时可对 acer_tables 脚本进行的更改:
*
当前视图的定义
CREATE VIEW UARE_MAILING_MASTER AS
(
(SELECT UCC_CONTAINER.CAMPAIGNID,UCC_CONTAINER.CONTAINERID,
substr(UCC_CONTAINERATTR.STRINGVALUE,1,100) AS CAMPAIGN_NAME,
UCC_CONTAINER.CONTAINERNAME AS MAILING_INST,
UCC_CONTAINER.CREATED AS MAILING_CREATED,
UCC_CONTAINER.CONTAINERTYPEID CONTAINERTYPEID,
UCC_CONTAINER.CONTCHANNELTYPEID CONTCHANNELTYPEID
FROM
UCC_CONTAINER,UCC_CONTAINERATTR
WHERE
UCC_CONTAINERATTR.CONTAINERID=UCC_CONTAINER.CONTAINERID AND
UCC_CONTAINERATTR.ATTRIBUTENAME='CampaignName' AND
UCC_CONTAINER.CREATED >= sysdate - 91
)
上述用例的已修改视图的定义(Oracle 数据库)
CREATE VIEW UARE_MAILING_MASTER AS
(
SELECT UCC_CONTAINER.CAMPAIGNID, UCC_CONTAINER.CONTAINERID,
substr(UCC_CONTAINERATTR.STRINGVALUE,1,100) AS CAMPAIGN_NAME,
UCC_CONTAINER.CONTAINERNAME AS MAILING_INST, UCC_CONTAINER.CREATED AS
MAILING_CREATED FROM UCC_CONTAINER,UCC_CONTAINERATTR WHERE
UCC_CONTAINERATTR.CONTAINERID=UCC_CONTAINER.CONTAINERID AND
UCC_CONTAINERATTR.ATTRIBUTENAME='CampaignName'
AND
UCC_CONTAINER.CREATED >= sysdate - 30
)
要再次查看所有的可用报告数据,请修改 UARE_MAILING_MASTER 视图以从该视图中除去日期过滤器,然后再次刷新所有 Oracle 或 DB2® 具体化视图。例如,在上面显示的样本视图创建代码中,除去以下行:
UCC_CONTAINER.CREATED >= sysdate - 30