数字字段项的格式掩码:尾随和“前导”零
Posted
技术标签:
【中文标题】数字字段项的格式掩码:尾随和“前导”零【英文标题】:Format mask for number field items: trailing and 'leading' zero 【发布时间】:2011-10-11 10:45:14 【问题描述】:我在顶点中显示数字时遇到了一些问题,但只有当我通过代码填写它们时。当通过自动行提取来获取数字时,它们很好!
领先的零
例如,我有一个报告,用户可以点击一个链接,该链接运行一个 javascript 函数。我通过申请流程获得了该记录的详细值。返回值采用 JSON 格式。有几个字段是数字字段。 我的回复如下(fe):
"AVAILABLE_STOCK": "15818", "WEIGHT": ".001", "VOLUME": ".00009", "BASIC_PRICE": ".06", "COST_PRICE": ".01"
这里的数字已经“不正确”:小于 1 的值在 .
我有点希望项目上的格式掩码能抓住这一点。如果我为物品重量指定FM999G990D000
,我希望它显示'0.001'。
但是好吧,我想它只在通过会话状态时才有效,而不是当您通过 $("#").val() 设置项目值时?
我哪里出错了?我唯一的选择是在应用程序过程中更改我的选择吗? 现在:
SELECT '"AVAILABLE_STOCK": "' || AVAILABLE_STOCK ||'", '||
'"WEIGHT": "' || WEIGHT ||'", '||
'"VOLUME": "' || VOLUME ||'", '||
'"BASIC_PRICE": "' || BASIC_PRICE ||'", '||
我需要在此处为我的 numberfields 提供一个带有格式掩码的 to_char (to_char(available_stock, 'FM999G990D000')
) 吗?
现在我当然需要把我的数字放在引号之间,否则我在解析它时会得到无效的 json。
尾随零
我在自动行提取之后的页面后标题点上有一个应用程序进程。此处计算了几个字段(总计)。使用的变量都指定为 number(10, 2)。所有值均正确并在逗号后四舍五入为 2 个值。我对项目的格式掩码也指定为FM999G999G990D00
。
但是,当其中一个计算值在逗号后只有一个有意义的值时,尾随零会被删除。它显示为“987.5”,而不是“987.50”。
所以,我有一个数字变量,并像这样分配它::P12_NDB_TOTAL_INCL := v_totI;
我也需要在这里转换我的数字,使用格式掩码吗?
我做错了什么,或者我错过了什么?
【问题讨论】:
【参考方案1】:如果您不对其进行数学运算并且更关心格式,我建议尽可能将其视为 varchar/string 而不是数字。
【讨论】:
以上是关于数字字段项的格式掩码:尾随和“前导”零的主要内容,如果未能解决你的问题,请参考以下文章