Core Service(SDL Tridion 2011 SP1)でGetSystemWideList操作を使用するときに、PublishTransactionStateのフィルタを適用しようとしました。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");
filter.PublishTransactionState行を有効にすると、コアサービスは常に0の結果を返します。この行をコメントすることで、パブリッシュトランザクションのリストを期待どおりに取得します。これには、状態SceduledForPublishを持つトランザクションが含まれます。
StartDateフィルターなどの他のフィルターは、期待どおりに機能します。
誰でもこの作品はありますか?
私は簡単に問題を再現できます: 'State = ScheduleForPublish'で明らかに結果がありますが、その条件をフィルターに追加すると結果が返されません。 –
@FrankvanPuffelen:ご確認いただきありがとうございます。 私の驚いたことに、私はちょうどPublishTransactionState.Successでのフィルタリングが正しく動作することに注意してください。 また、これらのフィルタをCMEの公開キューに適用すると、同じ動作が発生します。 –
ニースの質問、[Area 51 Tridion特有の提案](http://area51.stackexchange.com/proposals/38335/tridion?referrer=gPujQMxthNCNn9xqeeO2NA2)にコミットすることができますか?同じSOアカウントでサインアップしてください。 –