QB 时间跟踪 Web 服务

QB Time Tracking WebService

所以这是我为 Quickbooks 创建的 xml 节点。发送超过持续时间(它的时间有点问题)

XmlElement duration2 = inputXmlDoc.CreateElement("Duration");
timeTrackingAdd2.AppendChild(duration2);
duration2.InnerText = "PT0H14M0S"

根据格式,我假设它应该将其转换为 0.14 在 Quickbooks 中。但是转换与我的假设不同

您可以在下图中看到更改后的值: 这是传输到 QB 的数据的图像。它将持续时间转换为 0.23。这里的公式是什么?

多次尝试不同的值:

PT0H1M0S 1 converts to 0.02
PT0H10M0S 10 converts to 0.17
PT0H14M0S 14 converts to 0.23
PT0H30M0S 30 converts to 0.50

哪种方法可以帮助我将持续时间从我的 Web 应用程序传输到 Quickbooks,将其转换为准确的持续时间?

根据您编辑的示例和 the standard,它将这些输入转换为十进制。

1 hour converts to 1, thus:
1 minute = 1/60 = 0.0166667 which rounds up to 0.02.
10 minutes = 10/60 = 0.166667 which rounds up to 0.17.
14 minutes = 14/60 = 0.23333 which rounds up to 0.23.
30 minutes = 30/60 = 0.50.