在GetSystemWideList中使用PublishTransactionState过滤器不起作用

Jan*_*n H 6 tridion tridion-2011

我在Core Service(SDL Tridion 2011 SP1)上使用GetSystemWideList操作时尝试为PublishTransactionState应用过滤器.

如果我尝试设置过滤器值,如PublishTransactionState.ScheduledForPublish或PublishTransactionState.WaitingForPublish,我得不到任何结果,即使我确定在队列中有这种状态的发布事务.

var filter = new PublishTransactionsFilterData {ForRepository = new LinkToRepositoryData {IdRef = "tcm:0-69-1"}};
filter.PublicationTarget = new LinkToPublicationTargetData { IdRef = "tcm:0-1-65537" };
filter.PublishTransactionState = PublishTransactionState.ScheduledForPublish;
//filter.StartDate = DateTime.Today.AddDays(-1);

var transactions = coreServiceSession.GetSystemWideList(filter);
Console.WriteLine(transactions.Count() + " publish transactions");
Run Code Online (Sandbox Code Playgroud)

启用filter.PublishTransactionState行后,核心服务始终返回0结果.通过此行注释,我们将按预期获取发布事务列表,其中包括一些状态为SceduledForPublish的事务.

其他过滤器,如StartDate过滤器按预期工作.

有人这个有用吗?

Pet*_*aer 4

这是一个已知问题,已于 2013 年修复。

目前没有可用的修补程序,但您可以通过请求列表而不设置 PublishTransactionState 属性然后对结果进行后处理来解决此问题。