读书人

急在此(yyoinge)关于Format显示格式设

发布时间: 2013-01-01 14:04:18 作者: rapoo

急!在此求救(yyoinge)关于Format显示格式设置问题
我想让数值字段:capital 的值超过10000时,能显示为 X万,这样看能增加阅读效果

我写的Expression为:
if( capital < 10000, '##########', if( capital / 10000 = int( capital / 10000 ), fill('0', len(string( capital / 10000 ))) + '万', capital / 10000 + '万' ) )

现在出现的问题是,中间还是有零的时候出错,测试数据如下:

capital 值 结果
------------------
正确结果:
1000 -----〉1000
10000 -----〉1万
12000 -----〉1.2万

错误结果:
12090 -----〉1.219万
102000 -----〉11.2万
200500 -----〉22.05万


还是出错在,中间有零的时候,10-〉11,20-〉22, 30-〉33的情况,请在指点,谢谢

[解决办法]
亿的, 除以 100000000 , 写成除以 10000000 了, 下面改过来

case(capital when is < 10000 then  
replace( fill( '#', len(string(capital )) ), pos(string(capital ) , '.'), 1, mid('#.', sign(pos(string(capital ) , '.')) + 1, 1) )
when is < 100000000 then
replace( fill( '#', len(string(capital / 10000)) ), pos(string(capital / 10000) , '.'), 1, mid('#.', sign(pos(string(capital / 10000) , '.')) + 1, 1) ) + '万'
else
replace( fill( '#', len(string(capital / 100000000)) ), pos(string(capital / 100000000) , '.'), 1, mid('#.', sign(pos(string(capital / 100000000) , '.')) + 1, 1) ) + '亿' )

读书人网 >PB

热点推荐