二开案例.python脚本.最佳实践之小数格式化

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

二开案例.python脚本.最佳实践之小数格式化

【场景】最佳实践之小数格式化 【原理】系统界面录入的时候,小数数值是多少位就是多少位;但是在保存到数据库之后,统一为10位,仅仅是在界面上做格式化显示处理调整 ![动画4.webp](/download/01000c782fb589ff45d4a0e6905a3c57ecc4.webp) 【常见问题】经常使用字符串拼接,拼接字符串与预期不符合 使用数据库值计算的都会出现这个场景,如历史单据重新打开数据库值走值更新、单据转换、套打等 ```python field = '总计 '+ str(f_bhr_decima;)+'元' ``` ![image.webp](/download/01000d6c16885b3749e5929b9973ac4d2392.webp) 【方案1】按照精度格式化 ```python ##具体是舍入逻辑还是去尾逻辑由python决定 '总计 '+("{:."+str(F_BHR_Integer) + "f}").format(float(F_BHR_Decimal))+' 元' ``` F_BHR_Integer——精度值,该值为整数 F_BHR_Decimal——小数字段 ![动画5.webp](/download/0100d1584f363920496c899f477c738cf824.webp) 如果需要按照2位四设五入,再按照精度格式化,则可使用 ```python ##具体是舍入逻辑还是去尾逻辑由python决定 '总计 '+("{:."+str(F_BHR_Integer) + "f}").format(round(F_BHR_Decimal,2))+' 元' ``` 【方案2】按照数值格式化,去尾零 ```python '总计 '+ (str(int(F_BHR_Decimal)) if F_BHR_Decimal == int(F_BHR_Decimal) else str(float(F_BHR_Decimal)))+' 元' ``` ![动画6.webp](/download/010064e4aa3ce7654a289bd9ee35d3036af9.webp)

二开案例.python脚本.最佳实践之小数格式化

【场景】最佳实践之小数格式化【原理】系统界面录入的时候,小数数值是多少位就是多少位;但是在保存到数据库之后,统一为10位,仅仅是在界...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息