如何通过Workday Web Services获取员工目标的进度与里程碑详情?
问题解决思路与方案
关于Contextually_Secured错误的解决
- 添加Worker ID到请求中:可以尝试在
Talent/Get_Development_Items请求里同时传入Worker Reference,该接口需要上下文关联到具体员工才能正确返回数据。修改后的请求示例如下:
<soapenv:Body> <bsvc:Get_Development_Items_Request bsvc:version="v43.0"> <bsvc:Request_References> <bsvc:Development_Item_Reference> <bsvc:ID bsvc:type="Goal_Reference_ID">GOAL-2-O-51312</bsvc:ID> </bsvc:Development_Item_Reference> <bsvc:Worker_Reference bsvc:Descriptor="Steve"> <bsvc:ID bsvc:type="WID">afabf6fbbbbbbbbbbbb233d08</bsvc:ID> </bsvc:Worker_Reference> </bsvc:Request_References> <bsvc:Response_Group> <bsvc:Include_Reference>1</bsvc:Include_Reference> <!-- 添加Include_Progress和Include_Milestones参数,确保返回进度与里程碑数据 --> <bsvc:Include_Progress>1</bsvc:Include_Progress> <bsvc:Include_Milestones>1</bsvc:Include_Milestones> </bsvc:Response_Group> </bsvc:Get_Development_Items_Request> </soapenv:Body>
其他可用接口
Talent/Get_Goals接口:如果你的Workday版本支持,这个接口专门用于获取员工目标详情,直接传入Worker ID和目标ID就能获取进度、里程碑等完整数据,比Get_Development_Items更贴合需求。Human_Resources/Get_Worker_Goal_Details:部分环境下存在这个扩展接口,可直接关联员工ID获取目标的深度信息,包括进度跟踪记录和里程碑节点。Performance_Management/Get_Performance_Goals:若目标属于绩效类范畴,可通过该接口获取对应进度与里程碑数据。
可能遗漏的配置检查
- 权限配置:确认调用接口的账号拥有
Talent: View Development Items和Talent: View Goals权限,缺少权限会触发上下文安全校验错误。 - 接口版本兼容性:v43.0版本部分接口的参数结构可能存在限制,尝试升级到较新版本(如v48.0+),新版本可能修复了上下文关联的bug。
- 目标类型匹配:确认你查询的目标属于
Development Item类型,不同类型的目标需要对应不同的接口获取数据。
请求与响应示例
1. Human_Resources/Get_Workers/Include_Goals请求
<soapenv:Body> <bsvc:Get_Workers_Request bsvc:version="v43.0"> <bsvc:Request_References> <bsvc:Worker_Reference bsvc:Descriptor="Steve"> <bsvc:ID bsvc:type="WID">afabf6fbbbbbbbbbbbb233d08</bsvc:ID> </bsvc:Worker_Reference> </bsvc:Request_References> <bsvc:Response_Group> <bsvc:Include_Goals>1</bsvc:Include_Goals> </bsvc:Response_Group> </bsvc:Get_Workers_Request> </soapenv:Body>
2. Human_Resources/Get_Workers/Include_Goals响应
<wd:Goal_Data> <wd:Goal_Reference_ID>GOAL-2-O-51312</wd:Goal_Reference_ID> <wd:Goal>A libero quis aspernatur</wd:Goal> <wd:Description>Created with care</wd:Description> <wd:Due_Date>2019-06-30</wd:Due_Date> <wd:Completion_Status_Reference> <wd:ID wd:type="WID">ca3af9dsssssssssssssbb79</wd:ID> <wd:ID wd:type="Component_Completion_ID">INCOMPLETE</wd:ID> </wd:Completion_Status_Reference> </wd:Goal_Data>
3. Talent/Get_Development_Items请求(原错误请求)
<soapenv:Body> <bsvc:Get_Development_Items_Request bsvc:version="v43.0"> <bsvc:Request_References> <bsvc:Development_Item_Reference> <bsvc:ID bsvc:type="Goal_Reference_ID">GOAL-2-O-51312</bsvc:ID> </bsvc:Development_Item_Reference> </bsvc:Request_References> <bsvc:Response_Group> <bsvc:Include_Reference>1</bsvc:Include_Reference> </bsvc:Response_Group> </bsvc:Get_Development_Items_Request> </soapenv:Body>
内容的提问来源于stack exchange,提问作者JTW
相关产品推荐
相关产品推荐

