【问题标题】:MS Project server 2016 update custom fields on tasksMS Project server 2016 更新任务的自定义字段
【发布时间】:2017-08-20 14:57:42
【问题描述】:

对于 Project Server 2013,我们一直使用 SOAP API 的 QueueUpdateProjectRequest 来实现这一点,但在 2016 年,我们甚至无法使用 SOAP 签出项目。

我们尝试 POST 到 /PWA/_vti_bin/psi/Project.asmx:

<?xml version='1.0' encoding='UTF-8' ?><ns2:Envelope xmlns:ns3="http://schemas.microsoft.com/office/project/server/webservices/Project/" xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"><ns2:Header></ns2:Header><ns2:Body><ns3:CheckOutProject><ns3:projectUid>7475f3ef-226e-e611-80d3-0050568a983b</ns3:projectUid><ns3:sessionUid>c430ce2b-057e-4990-b5b6-9c6f28415739</ns3:sessionUid><ns3:sessionDescription></ns3:sessionDescription></ns3:CheckOutProject></ns2:Body></ns2:Envelope>

然后得到:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault><faultcode xmlns:a="http://Microsoft.Office.Project.Server">a:ProjectServerFaultCode</faultcode><faultstring>Unhandled Communication Fault occurred</faultstring><detail><string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">Incorrect inproc routing.  No inproc host is available for Project.</string></detail></s:Fault></s:Body></s:Envelope>

当 Merge Posting 到 /ProjectServer/Projects('{#project}')/Draft/Tasks('{#Id}' 时,我们还尝试使用自定义字段内部名称编写自定义字段值。 服务器似乎在正确更新系统字段值时忽略了自定义字段值。

在 Project 上有更新自定义字段的文档,但在 Task:https://github.com/OfficeDev/Project-REST-Basic-Operations/blob/master/updateprojectcustomfieldvalues.ps1 上没有更新

在 Project Server 2016 中更新任务自定义字段的正确方法是什么?

【问题讨论】:

    标签: rest soap ms-project


    【解决方案1】:

    根据微软的说法,PSI 中不再有 Project 类:
    https://technet.microsoft.com/en-us/library/mt422816(v=office.16).aspx#Anchor_2

    项目服务器接口 (PSI) 项目类已删除
    PSI 中的 Project 类在 Project Server 2016 中不受支持。对于所有新开发,请使用 Project Client Side Object Model (CSOM)。

    我在从 Project 类调用 PSI 函数时遇到同样的错误。
    我不是 100% 确定,但我猜在服务器本身上,REST/SOAP 操作最终仍然使用 PSI,所以你会得到同样的错误。

    不知道您是否仍然可以使用 REST/SOAP 实现您所需要的。 解决方案是使用 CSOM(按照 Microsoft 的建议),但我不知道它是否适合您的应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-22
      • 2019-07-12
      • 2018-06-04
      • 1970-01-01
      • 2017-03-31
      • 2011-07-29
      • 1970-01-01
      • 2023-03-03
      相关资源
      最近更新 更多