NC单据模板公式(6大类)

目录

1.    需求

2.    日期

3.    数学

4.    字符串

5.    数据库

6.    财务

7.    常用



1.    需求


因为用户的不同的需求,所以单据模板提供了许多的模板公式,这样能够让实施人员在不需要修改代码的前提下,只用通过修改单据模板来满足用户的需求。
模板公式的归纳总结
NC单据公式现在主要分为日期,数学,字符串,数据库,财务,常用这6个大分类.


2.    日期


2.1.    compareDate(date1, date2, field)
用于日期比较,返回两个日期指定时间域的差值,可比较的时间域包括"Y"-比较年;"M"-比较月;"D"-比较日;"H"-比较小时;"m"-比较分钟;"S"-比较秒.比如:compareDate("2005-12-27 23:12:10", toDateTime("2005-12-27 23:12:08"), "S")将返回两个日期相差的秒数.
2.2.    date()
返回当前系统日期
2.3.    dateAdd(date1, num, fieldchar)
返回在指定日期的年、月或者日上增加某个值num,可增加的时间域fieldchar包括"Y"-增加年;"M"-增加月;"D"-增加日;"H"-增加小时;"m"-增加分钟;"S"-增加秒.比如dateAdd("23:13:23", 1, "H")表示对前面的时间增加一小时.
2.4.    dateFormat(date, pattern)
用于将时间格式化为期望的字符串,其中date可以是时间字符串,也可以是Date对象,pattern为格式化参数,yyyy表示年,MM表示月,dd表示天数,HH表示小时,mm表示分钟,ss表示秒.比如dateFormat("2006-07-04 12:12:12", "日期:yyyy-MM-dd HH:mm:ss") 将返回"日期:2006-07-04 12:12:12".
2.5.    datetime()
返回当前日期和时间
2.6.    dayOf(date)
返回日期date的天. 比如dayOf ("2006-07-04 12:12:12") 将返回"04 ".
2.7.    formataddress(key)
格式化地址,key:地址簿id,将地址格式化成语言格式中设置的样式.
2.8.    loginbusidate()
得到当前登录业务时间.
2.9.    month()
返回当前月
2.10.    monthOf(date)
得到指定日期内的月份,比如monthOf ("2006-07-04 12:12:12") 将返回"07 ".
2.11.    time()
取得当前时间,格式是HH:mm:SS
2.12.    toDate(str)
将字符串格式的时间str转换成UFDate对象
2.13.    toDateTime(str)
将字符串格式的时间str转换成UFDateTime对象,比如toDateTime("2006-10-15 21:01:01").
2.14.    toTime(str)
将字符串格式的时间str转换成UFTime对象
2.15.    year()
返回当前年
2.16.    yearof(date)
求日期date的年,比如yearOf ("2006-07-04 12:12:12") 将返回"2006 ".


3.    数学


3.1.    abs(num)
返回数num的绝对值
3.2.    add(num1,num2)
用于高精度加法运算
3.3.    div(num1,num2)
用于高精度除法运算
3.4.    mul(num1,num2)
用于高精度乘法运算
3.5.    rand()
生成随机数
3.6.    round(double num, int index)
对num保留index位小数(四舍五入)
3.7.    sgn(num)
当数num大于0时,返回1,等于0时,返回0,小于0时返回-1
3.8.    sub(num1,num2)
用于高精度减法运算
3.9.    zeroifnull(var)
表示如果var为空将返回0


4.    字符串


4.1.    charat(st,index)
得到字符串st中第index个字符
4.2.    endswith(st, end)
判断字符串st是否以字符串end结尾
4.3.    equalsIgnoreCase(st1, st2)
判断忽略大小写字符串st1是否与字符串st2相等
4.4.    indexOf(st1, st2)
判断字符串st1中第一个字符串st2所在的位置,比如IndexOf("HI,UAP2006,UAP","UAP")返回3.
4.5.    isEmpty(id)
用于判断变量是否为空,包括空串("")及空值(null)
4.6.    lastIndexOf(st1, st2)
判断字符串st1中最后一个字符串st2所在的位置,比如lastIndexOf("HI,UAP2006,UAP","UAP")返回11.
4.7.    left(st, index)
返回字符串st左边前index个字符组成的字符串
4.8.    leftStr(st,len,defaultStr)
求字符串st左边前len个字符组成的字符串,如果字符串长度小于len,则用defaultStr补齐,比如leftStr("abc",6,"@")将返回abc@@@.
4.9.    length(st)
求字符串st的长度
4.10.    mid(String st, int start, int end)
求字符串st左边前第start个字符至第end个字符之间的字符串
4.11.    right(String st, int index) 
求字符串st右边前index个字符组成的字符串
4.12.    rightStr(st,len,defaultStr) 
求字符串st右边后len个字符组成的字符串,如果字符串长度小于len,则用defaultStr补齐,比如rightStr("abc",6,"@")将返回abc@@@.
4.13.    startsWith(String st, String start)
判断字符串st是否以字符串start开头
4.14.    toLowerCase(String st) 
求字符串st的小写形式,比如toLowerCase("Abc")返回"abc".
4.15.    toString(obj) 
将对象obj转换为本解析器可识别的字符串形式
4.16.    toUpperCase(String st) 
求字符串st的大写形式
4.17.    trimzero()
剪除字符串或数字str的末尾0值


5.    数据库


5.1.    ass(freevalueID,checktype)
是关于会计平台中辅助核算的函数,从gl_freevalue表中根据freevalueID及checktype返回checkvalue ,目前不可用,因为没有checktype这个字段了。
5.2.    cvn(tablename,fieldname,pkfield,pkvalue)
根据主键(pkfield:主键字段名,pkvalue:主键值)从数据库查询特定字段(fieldname)的值,其返回的值将直接作为数字使用
5.3.    cvs(tablename,fieldname,pkfield,pkvalue)
根据主键从数据库查询特定字段的值,其返回的值将直接作为字符串使用
5.4.    getColNmv(tablename,fieldname,pkfield,pkvalue)
根据字段从数据库查询特定字段的值,其返回的值将直接作为数字使用,其功能类似SQL语句:select fieldname from tablename where pkfield = pkvalue 从这条SQL语句可以看出各个参数的含义.
5.5.    getColNmv2(tablename,fieldname,pkfield1,pkvalue1,pkfield2,pkvalue2)
根据字段从数据库查询特定字段的值,其返回的值将直接作为数字使用,其功能类似SQL语句:select fieldname from tablename where pkfield1 = pkvalue1 and pkfield2 = pkvalue2. 从这条SQL语句可以看出各个参数的含义.
5.6.    getColsValue("tablename","fieldname1","fieldname2","pkfield",pkvalue)
根据主键从数据库查询多个字段的值,左边待赋值的字段要用逗号分割,注意里面的字段,表名要用双引号扩起来。比如:fieldname1,fieldname2->getColsValue("tablename","fieldname1","fieldname2","pkfield",pkvalue)
5.7.    getColValue(tablename,fieldname,pkfield,pkvalue)
根据主键从数据库查询特定字段的值,其功能类似SQL语句:select fieldname from tablename where pkfield = pkvalue 从这条SQL语句可以看出各个参数的含义.
5.8.    getColValue2(tablename,fieldname,pkfield1,pkvalue1,pkfield2,pkvalue2)
根据主键从数据库查询特定字段的值,其功能类似SQL语句:select fieldname from tablename where pkfield1 = pkvalue1 and pkfield2 = pkvalue2. 从这条SQL语句可以看出各个参数的含义.
5.9.    getMLCValue("tablename","fieldname","pkfield",pkvalue)
根据主键从数据库查询特定当前登录语种对应名称字段的值


6.    财务


6.1.    getChineseCurrency(Object)
将传入的字符串或数字转换为大写金额
6.2.    getEnglishCurrency(mark,number)
将数字金额转为英文文本描述
6.3.    setThMark(String)
将传入的字符串或数字转为金额后加入千分位标志,如果希望保留数字后面的0,则需要先将数字转为字符串,然后再用setThMark()函数,比如setThMark(toString(56510.000)).
6.4.    toChinese(Object number,int flag1,int flag2)
将传入的字符串或数字转换为中文


7.    常用


7.1.    iif(condition, result1, result2)
根据condition是否成立,返回值不同。当condition=true,返回result1,否则返回result2。
 

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT施sir

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值