在 AMO Server 对象上使用 CaptureXml 时如何将 ProcessAffectedObjects 显式设置为 false?

How to explicitly set ProcessAffectedObjects to false when using CaptureXml on AMO Server object?

我目前正在生成 XMLA 脚本来处理我们数据仓库的各个部分。我发现了一种情况,在进行增量更新时我更希望 ProcessAffectedObjects = false,但我很难找到在文档中设置它的位置。

我使用的基本代码如下:

conn.CurrentServer.CaptureXml = true;
dimensions.ForEach(x => x.Process(ProcessType.ProcessUpdate));
conn.CurrentServer.CaptureXml = false;
conn.CurrentServer.ConcatenateCaptureLog(true,true,true).Dump();
server.ExecuteCaptureLog(true, true, true);

我一直在挖掘 Process, thinking perhaps that 5th parameter of bool analyzeImpactOnly would set it, but it doesn't seem to generate the appropriate XMLA. I would prefer not to edit the XMLA directly, but I will if I have to. For reference, the conn.CurrentServer object is an instance of Microsoft.AnalysisServices.Server.

的各种重载

提前致谢。

Annnnd 我在发布后两秒找到了答案。

执行生成的XMLA时,第三个参数为bool processAffected

server.ExecuteCaptureLog(真, 真, );

编辑: 显然这也不起作用。 docs表示参数是"reserved for future use."

看来我将直接修改 XMLA。