我们的数据库中有一个值,它是一个表示时间值的字符串,其值为类似于8.7698的示例值,必须将其转换为实际时间。我已经开始这方面的工作,在这里就是我想出了这么远:需要帮助修复水晶报表公式中的错误
stringvar x; //original value, string datatype ex data 9.8765, get value before decimal point
numbervar x2; //convert value before decimal into a double
stringvar xH; //Convert value before decimal back to string for concatenation
stringvar x3; //value after decimal
numbervar x4; //convert value after decimal to double and multiply by .60 for conversion
stringvar xM; //Convert value after decimal back to string for concatenation
x := left({PO_PurchaseOrderHeader.TimeUpdated}, InStr ({PO_PurchaseOrderHeader.TimeUpdated},"."));
x2 := cdbl(x);
x3 := mid({PO_PurchaseOrderHeader.TimeUpdated}, InStr ({PO_PurchaseOrderHeader.TimeUpdated},"."), length({PO_PurchaseOrderHeader.TimeUpdated}) - InStr ({PO_PurchaseOrderHeader.TimeUpdated},"."));
x4 := CDbl (x3) * .60;
xH := cstr(x2);
xM := cstr(x4);
xH + ":" + xM;
它说没有错误,当我检查,但该报告未能从我们的软件中(鼠尾草100)和我运行相信这个公式存在一个问题。任何人都可以看到我可能搞砸了吗?谢谢!
使用什么值9.8765应该显示为答案吗?我得到9.52。不知道它是否正确。 – aMazing
谢谢大家的帮助。我知道我可能正在艰难地前进,感谢瑞恩为你的优雅解决方案和其他愿意帮助的人。 –