最新消息:本站持续更新中,请注意添加收藏夹。搜索关键词时,多换一个同义词。比如要搜索界面,可以尝试页面,画面,PER档等词汇。善于搜索,将大大提高你的查找效率。

T100——凭证报表小数位有多少则显示多少位

后端代码 bron1984 2226浏览

目的:把小数位后面的0截取掉,有多少钱位就显示多少位,最后的0去掉

PRIVATE FUNCTION cxmt630_g01__delfloat(p_num)
DEFINE p_num       LIKE bmfb_t.bmfb011
DEFINE p_str       STRING
DEFINE l_float     STRING
DEFINE l_int       STRING
DEFINE l_count     INTEGER
DEFINE l_length    INTEGER
DEFINE l_float_length    INTEGER
DEFINE l_i         INTEGER
#組合bmfb011/bmfb012
   LET p_str = p_num
   LET l_count = p_str.getIndexOf(".",1)
   LET l_length = p_str.getLength()
   LET l_int = p_str.subString(1,l_count-1)
   LET l_float = p_str.subString(l_count+1,l_length)
   LET l_float_length = l_float.getLength()
   FOR l_i = 1 TO l_float_length
      IF l_float.subString(l_float_length+1-l_i,l_float_length+1-l_i) <> '0' THEN
         EXIT FOR
      END IF
   END FOR
   IF l_i < l_float_length+1 THEN
      LET l_float = l_float.subString(1,l_float_length+1-l_i)
      LET p_str = l_int || "." || l_float
   ELSE
      LET p_str = l_int
   END IF
   RETURN p_str
END FUNCTION

 

转载请注明:赫非域 » T100——凭证报表小数位有多少则显示多少位