Kronos Workforce Central期望的日期格式是什么?

时间:2017-10-31 15:32:44

标签: xml date kronos-workforce-central

我有一个XML请求,要求Kronos Workforce Central API在指定的时间段内提供员工的工资期。

我使用PeriodDateSpan = '2017/10/23 - 2017/10/30'指定付款期限,确保按照日期的典型yyyy/mm/dd格式

<Kronos_WFC version='1.0'>
    <Request Action='Load'>
        <Timesheet>
            <Employee>
                <PersonIdentity PersonNumber = '12345'/>
             </Employee>
             <Period>
                 <TimeFramePeriod PeriodDateSpan = '2017/10/23 - 2017/10/30'/>
             </Period>
         </Timesheet>
     </Request>
</Kronos_WFC>

当我将此请求发送到我的WFC访问点wfc/XmlService时,服务器会回复一个错误,指出DatePeriodSpan的值无效。

<Kronos_WFC version="1.0" WFCVersion="6.3.13.362" TimeStamp="10/31/2017 11:08AM GMT-04:00">
   <Response Status="Failure" Action="Load">
      <Error Message="WFP-00950 The value is not valid for the property - Name: PeriodDateSpan, Value: 2017/10/20 - 2017/10/27." ErrorCode="1102" AtIndex="0" PropertyName="PeriodDateSpan" PropertyValue="2017/10/20 - 2017/10/27"/>
   </Response></Kronos_WFC>

Kronos在指定PeriodDateSpan

时期望的日期格式

1 个答案:

答案 0 :(得分:0)

默认情况下,Kronos Workforce Central配置为将长日期格式设置为M/dd/yyyy

  • M:月份编号,无前导零
  • dd:日期编号,前导零
  • yyyy:年号,4位数

例如,2018年6月8日的格式为6/08/2018。问题中指定的时间跨度将格式化为<TimeFramePeriod PeriodDateSpan = '10/23/2017 - 10/30/2017'/>

日期格式可能因服务器管理员(设置 - &gt;系统配置 - &gt;系统设置 - &gt;区域设置)的配置逐个服务器而不同。

假设日期格式未从默认值更改,则以下是员工支付期总计的更正XML请求

<Kronos_WFC version='1.0'>
    <Request Action='Load'>
        <Timesheet>
            <Employee>
                <PersonIdentity PersonNumber = '12345'/>
             </Employee>
             <Period>
                 <TimeFramePeriod PeriodDateSpan = '10/23/2017 - 10/30/2017'/>
             </Period>
         </Timesheet>
     </Request>
</Kronos_WFC>

提示:如果您需要确定服务器的当前日期,可以发送GetServerTime请求以使服务器响应其日期和时间。对于需要ChangeDateEffectiveDate

的请求,可以重复使用此DateTime

请求:

<Kronos_WFC version="1.0">
    <Request Object="ServerTime" Action="GetServerTime" />
</Kronos_WFC>

响应:

<Kronos_WFC version="1.0" WFCVersion="6.3.13.362" TimeStamp="10/31/2017 11:08AM GMT-04:00">
    <Response Status="Success" Object="ServerTime" Action="GetServerTime">
        <ServerTime DateTime="10/31/2017 11:08AM" KronosTimeZone="(GMT -05:00) Eastern Time"/>
    </Response>
</Kronos_WFC>

此外,服务器响应中的根<Kronos_WFC>标记应始终包含TimeStamp属性,其中包含服务器上的当前日期和时间。

TimeStamp="10/31/2017 11:08AM GMT-04:00"