将附加数据发送到 Workday

问题描述 投票:0回答:2

我正在努力使用此端点Edit_Worker_Additional_Data发送工作日的一些附加数据。然而,它缺乏他们期望的数据类型的文档,因此,我收到验证错误。我尝试过各种组合,但都是徒劳。

我从这个问题中获得了一些指导,但收到了

cus namespace
错误,因为我不知道他在哪里以及如何初始化该命名空间。我要发送的自定义字段的数据:

自定义列表 T 恤尺寸
自定义字段类型名称 T 恤尺寸
Web 服务别名 t衬衫尺码
列表值名称 Web 服务别名
M - Xs mXs
M - S 女士

下面给出的是我发送的 XML 请求正文

<soapenv:Body>
    <bsvc:Edit_Worker_Additional_Data_Request
      xmlns:bsvc="urn:com.workday/bsvc" bsvc:version="v38.1">
      <!-- Optional: -->
      <bsvc:Business_Process_Parameters>
        <!-- Optional: -->
        <bsvc:Auto_Complete>true</bsvc:Auto_Complete>
        <!-- Optional: -->
        <bsvc:Run_Now>true</bsvc:Run_Now>
      </bsvc:Business_Process_Parameters>
      <bsvc:Worker_Custom_Object_Data>
        <bsvc:Effective_Date>2022-11-18</bsvc:Effective_Date>
        <bsvc:Worker_Reference bsvc:Descriptor="string">
          <!-- Zero or more repetitions: -->
          <bsvc:ID bsvc:type="Employee_ID">3671</bsvc:ID>
        </bsvc:Worker_Reference>
        <bsvc:Business_Object_Additional_Data>
          <!-- You may enter ANY elements at this point -->
          <bsvc:tShirtSizes>
            <bsvc:tShirtSizesField>mXs</bsvc:tShirtSizesField>
          </bsvc:tShirtSizes>
        </bsvc:Business_Object_Additional_Data>
      </bsvc:Worker_Custom_Object_Data>
    </bsvc:Edit_Worker_Additional_Data_Request>
  </soapenv:Body>

以下是我使用不同组合时遇到的验证错误

  • 元素 effective_Dated_Web_Service_Additional_Data 的子元素 tShirtSizes-urn:com.workday/bsvc 无效
  • 元素“Effective_Dated_Web_Service_Additional_Data”的子元素 T-Shirt_Sizes-urn:com.workday/bsvc 无效
ruby api workday-api
2个回答
0
投票

我不确定您是否已经得到答案。看起来您需要 自定义对象名称 Web 服务别名和 T 恤和 T 恤尺寸的自定义字段 Web 服务别名。假设 T 恤是Worker Object Extended 的自定义对象。在您尝试为其创建此操作的 Workday 环境中具有适当安全访问权限的人员可以找到此信息。看起来这只是一个自定义列表,并没有真正提供我们正在寻找的上下文。

  • 在 Workday 中搜索 自定义对象定义
  • 业务流程类型搜索
  • 选择编辑工人附加数据事件
  • 此时,您可能有一个或多个结果(最有可能是一个),但根据上下文,应在其后面附加 (生效日期)
  • 从这里应该可以找到您正在寻找的东西。

这是另一个自定义对象的示例 Workday Custom Object Picture

一旦您获得此信息,它可能是这样的:

<bsvc:Custom Object's Web Service Alias>
        <bsvc:Custom Field's Web Service Alias>Whatever Type of Value</bsvc:Custom Field's Web Service Alias>
</bsvc:Custom Object's Web Service Alias>

请记住,自定义字段可能是布尔类型,因此它也可能如下所示:

<bsvc:tShirtSize>
        <!--If field is required send else don't-->
        <bsvc:mXs>true</bsvc:mXs>
        <!--If field is required send else don't-->
        <bsvc:Ms>false</bsvc:Ms>
</bsvc:tShirtSize>

希望这有帮助!


0
投票

由于这是一个自定义列表,我必须像这样发送请求:

<bsvc:Edit_Worker_Additional_Data_Request>
  <bsvc:Business_Process_Parameters>
    <bsvc:Auto_Complete>true</bsvc:Auto_Complete>
    <bsvc:Run_Now>true</bsvc:Run_Now>
  </bsvc:Business_Process_Parameters>
  <bsvc:Worker_Custom_Object_Data>
    <bsvc:Effective_Date>2022-11-18</bsvc:Effective_Date>
    <bsvc:Worker_Reference>
      <bsvc:ID bsvc:type="Employee_ID">3671</bsvc:ID>
    </bsvc:Worker_Reference>
    <bsvc:Business_Object_Additional_Data>
      <cus:tshirt>
        <cus:size>
          <cus:ID cus:type='ExtendedAlias'>#{get_size}</cus:ID>
        </cus:size>
      </cus:tshirt>
    </bsvc:Business_Object_Additional_Data>
  </bsvc:Worker_Custom_Object_Data>
</bsvc:Edit_Worker_Additional_Data_Request>
© www.soinside.com 2019 - 2024. All rights reserved.