1
在窗体生成器中,我有一个数据类型的控制:十进制。必填项设置为否。如果输入的值不正确,我想要验证错误。但是如果字段为空,我不想验证错误。我已经尝试了很多公式,如这些:如何才能验证公式为十进制字段,只有测试如果该字段非空白
xxf:is-blank(xs:string($control-2)) or $control-2 > 0
string-length(xs:string($control-2)) = 0 or $control-2 > 0
xxf:is-blank($control-2) or $control-2 > 0
string-length($control-2) = 0 or $control-2 > 0
如果字段非空,我可以将其转换为字符串的xs:字符串()没有任何问题,但如果它是空白,则这个转换失败。是否有任何公式来测试空白十进制值?
显然XXF的行为:是空白()是从XXF的不同:是 - 空白(。)和xxf:空白($ control-2)。我不明白为什么会这样。但这似乎工作。谢谢。 – awilkinson
作为一个方面说明,我认为我们应该能够通过从下拉列表中选择“Positive”而不是编写公式来解决此问题。不幸的是,即使当Required设置为No时,如果该字段为空,这将生成一条错误消息。我不认为它应该以这种方式工作。 – awilkinson
在XML Schema中,有一个'xs:positiveInteger',但没有'xs:positiveDecimal',但我同意,在下拉列表中添加这个可能性会是一个很好的补充。我们将在内部讨论这个问题,并且看看为此提供RFE是否有意义。 – avernet