套打.脚本案例.数值按照万分位输出
【场景】数值按照万分位输出
如 123456.12 输出 12,3456.12
【步骤】通过脚本实现自定义格式化
(0)实现一个python函数,输入一个数值,返回万分位字符串
借助市面上的gpt工具即可实现
![image.webp](/download/01002a380e95b9b34457bc7ff667a1435a03.webp)
该函数只是实现了整数的处理,而没有负数和小数的处理,因此针对小数部分我们自行处理
![image.webp](/download/01009f8cc6faaa2643909a079ba26d9356b2.webp)
(1)调试验证,借助在线的python测试工具
![image.webp](/download/010049bcd787538640ac9bcfae5722b063ad.webp)
(2)套打配置脚本
![image.webp](/download/01005bfe1728383a4b0abd84b31f0642bd6a.webp)
```python
import clr
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.Core")
clr.AddReference("DevExpress.Data.v13.1")
from Kingdee.BOS.Util import *
from Kingdee.BOS.Core import *
from DevExpress.Utils import *
def OutputElement(e):
ctrlId = ['cell60']
if(e.ControlInfo.ControlID in ctrlId):
val = ObjectUtils.ToDecimal(e.ControlInfo.Text);
e.ControlInfo.Text = to_wandecimal(val);
def to_wan(num):
# 将数值转换为整数
num = int(num)
# 如果数值小于1万,则直接返回原始数值的字符串表示
if num < 10000:
return str(num)
# 计算数值的万分位表示
else:
wan = num // 10000
remainder = num % 10000
# 递归处理整数部分,并将余数拼接在后面
return to_wan(wan) + "," + str(remainder)
def to_wandecimal(num):
ans = '';
intNum = int(num);
if intNum <0:
ans ='-';
print(ans);
ans += to_wan(-intNum);
else:
ans += to_wan(intNum);
if num - intNum != 0:
strNum = str(num);
dotIdx = strNum.index('.');
ans += strNum[dotIdx:];
return ans;
```
【效果】
![image.webp](/download/0100fe7fee205eed4841a57e2ba09a5e86d3.webp)
套打.脚本案例.数值按照万分位输出
【场景】数值按照万分位输出如 123456.12 输出 12,3456.12【步骤】通过脚本实现自定义格式化(0)实现一个python函数,输入一个数值,返回...
点击下载文档
本文2024-09-16 18:16:48发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-21111.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章