商易用户论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5752|回复: 1

[经验交流] 商易票据软件系统函数的使用说明

[复制链接]
  • TA的每日心情
    开心
    前天 14:58
  • 签到天数: 3615 天

    [LV.Master]伴坛终老

    发表于 2011-4-28 13:57:58 | 显示全部楼层 |阅读模式
    本帖最后由 SaneSoft 于 2014-1-28 23:32 编辑

       
    Day()
    功能:
        得到日期值中的号数,有效值在1~31之间。
    语法:
        Day(d)
        参数d:日期时间(DateTime)类型的值。
        返回数值(Integer)类型的值。函数执行成功时得到d参数中的号数(1~31之间)。如果d参数的值为NULL,则返回NULL。

    If()
    功能:
        根据条件表达式的取值,返回特定的值。
    语法:
        If(b,t,f)
        参数b:是否(Boolean)类型的值。
        参数t:当b参数取值为True时,函数if返回t参数的取值,可以是任意数据类型。
        参数f:当b参数取值为False时,函数if返回t参数的取值,可以是任意数据类型。
        返回任意数据类型的值。

    Left()
    功能:
        得到字符串左部指定个数的字符。
    语法:
        Left(s,n)
        参数s:字符串(string)类型,指定要从中提取子串的字符串。
        参数n:数值(long)类型,指定子串长度。
        返回字符串(string)类型的值。函数执行成功时返回s参数中左边长度为n的子串。如果n的值大于s参数的长度,则返回整个s参数,但并不增加其它字符。如果任何参数的值为NULL,则返回NULL。

    Mid()
    功能:
        取字符串的子串。
    语法:
        Mid(s,start,len)
        参数s:字符串(string)类型,指定要从中提取子串的字符串。
        参数start:数值(long)类型,指定子串第一个字符在s参数中的位置,第一个位置为1。
        参数len:数值(long)类型,可选项,指定子串的长度。
        返回字符串(string)类型的值。函数执行成功时返回s参数中从start位置开始、长度为len的子串。如果start参数的值大于s参数中字符个数,则返回空字符串。如果省略了len参数或len参数的值大于从start开始、s参数中余下字符的长度,则返回所有余下的字符。如果任何参数的值为NULL,则返回NULL。

    Month()
    功能:
        得到日期值中的月份,有效值在1~12之间。
    语法:
        Month(d)
        参数d:日期时间(DateTime)类型的值。
        返回数值(Integer)类型的值。函数执行成功时得到d参数中的月份(1~12之间)。如果d参数的值为NULL,则返回NULL。

    Page()
    功能:
        得到当前页号。
    语法:
        Page()
        返回数值(Integer)类型的值。函数执行成功时得到当前页号。

    PageCount()
    功能:
        得到总页数。
    语法:
        PageCount()
        返回数值(Integer)类型的值。函数执行成功时得到总页数。

    Right()
    功能:
        得到字符串右部指定个数的字符。
    语法:
        Right(s,n)
        参数s:字符串(string)类型,指定要从中提取子串的字符串。
        参数n:数值(long)类型,指定子串长度。
        返回字符串(string)类型的值。函数执行成功时返回s参数中右边长度为n的子串。如果n的值大于s参数的长度,则返回整个s参数,但并不增加其它字符。如果任何参数的值为NULL,则返回NULL。

    String()
    功能:
        把数值(Decimal,Integer,Long)类型、字符串(String)类型、日期时间(DateTime)类型的数据转换成指定格式的字符串。
    语法:
        String(x,s)
        参数x:指定要转换格式的数据,其数据类型可以是数值(Decimal,Integer,Long)类型、字符串(String)类型、日期时间(DateTime)类型,也可以是包含上述类型数据的Any类型变量。
        参数s:可选项,string类型,其值指定数据格式。
        如果x参数的类型为string,则必须指定s参数。
        返回值String类型。函数执行成功时返回以字符串方式表示的指定数据。如果x参数的数据类型与s参数指定的格式不匹配、s参数指定的格式无效、或x参数不是前面提到的适宜数据类型时,则返回空字符串("")。
    用法:
        s参数是个用掩码表示的字符串。
        对x参数为数值(Decimal,Integer,Long)类型的情况来说,s参数的语法格式为:正数格式、负数格式、零的显示格式、空的显示格式。数值型显示格式中使用两个掩码字符:#和0,其中,使用#代表0~9之间的任意数字,0代表每个零都要显示。另外,货币符号($或¥)、百分号(%)、小数点(.)、逗号(,)等字符也可以出现在格式字符串中,但是,除小数点(.)、逗号(,)能够出现在格式字符#和0之间外,其它字符只能放置在格式串的前面或后面,例如,###,###$###是个错误的格式串,¥###,###,###是个正确的格式串。省略s参数时,String()函数使用缺省格式。注意,如果显示格式有多个部分,各部分之间的分号(;)不能省略。其它字符也可以出现在显示格式字符串中(只能放在格式串的开头和末尾),但它们没有特殊意义,系统只是照原样显示。例如,用显示格式字符串“收入##”格式化数值12时,显示结果为“收入12”。
        对x参数为字符串(String)类型的情况来说,s参数的语法格式为:正常字符串格式。@代表字符串中的任意字符,除此之外的任何字符照原样显示,例如,如果定义了下面的格式:(@@)@@@@-@@@@则字符串0166767593显示为:(01)6676-7593。
        对x参数为日期时间(DateTime)类型的情况来说,s参数的语法格式为:正常日期时间格式。日期时间格式中格式字符意义如下:d代表开头不带0的日数(如8)、dd代表开头带0的日数(如08)、ddd代表星期的英文缩写(如Mon、Tue)、dddd代表星期的英文全称(如Monday、Tuesday)、m代表开头不带0的月份(如8)、mm代表开头带0的月份(如08)、mmm代表月份的英文缩写(如Jan、Feb)、mmmm代表月份的英文全称(如January、February)、yy代表两位数字表示的年份(如97)、yyyy代表四位数字表示的年份(如1997)。

    Year()
    功能:
        得到日期值中的年度,有效值在1000~3000之间。
    语法:
        Year(d)
        参数d:日期时间(DateTime)类型的值。
        返回数值(Integer)类型的值。函数执行成功时得到d参数中的年份(1000~3000之间),发生错误时返回1900,如果d参数的值为NULL,则返回NULL。

    常用套打函数举例

        日期年度:year(srq)
        日期月份:month(srq)
        日期号数:day(srq)

        金额(分):if(abs(sje) >= 0.01,mid(right(string(sje,"0.00"),1),1,1),"")
        金额(角):if(abs(sje) < 0.1 and abs(sje) > 0.01,"¥",if(abs(sje) >= 0.1,mid(right(string(sje,"0.00"),2),1,1),""))
        金额(元):if(abs(sje) < 1 and abs(sje) > 0.1,"¥",if(abs(sje) >= 1,mid(right(string(sje,"0.00"),4),1,1),""))
        金额(十):if(abs(sje) < 10 and abs(sje) > 1,"¥",if(abs(sje) >= 10,mid(right(string(sje,"0.00"),5),1,1),""))
        金额(百):if(abs(sje) < 100 and abs(sje) > 10,"¥",if(abs(sje) >= 100,mid(right(string(sje,"0.00"),6),1,1),""))
        金额(千):if(abs(sje) < 1000 and abs(sje) > 100,"¥",if(abs(sje) >= 1000,mid(right(string(sje,"0.00"),7),1,1),""))
        金额(万):if(abs(sje) < 10000 and abs(sje) > 1000,"¥",if(abs(sje) >= 10000,mid(right(string(sje,"0.00"),8),1,1),""))
        金额(十万):if(abs(sje) < 100000 and abs(sje) > 10000,"¥",if(abs(sje) >= 100000,mid(right(string(sje,"0.00"),9),1,1),""))
        金额(百万):if(abs(sje) < 1000000 and abs(sje) > 100000,"¥",if(abs(sje) >= 1000000,mid(right(string(sje,"0.00"),10),1,1),""))
        金额(千万):if(abs(sje) < 10000000 and abs(sje) > 1000000,"¥",if(abs(sje) >= 10000000,mid(right(string(sje,"0.00"),11),1,1),""))
        金额(亿):if(abs(sje) < 100000000 and abs(sje) > 10000000,"¥",if(abs(sje) >= 100000000,mid(right(string(sje,"0.00"),12),1,1),""))

    该用户从未签到

    发表于 2011-6-24 13:29:52 | 显示全部楼层
    赶快掌握 提高效率
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|申请友链|小黑屋|手机版|Archiver|鲁ICP备14001487号|商易用户论坛 ( 鲁ICP备14001487号 )

    GMT+8, 2024-4-28 01:58 , Processed in 0.058668 second(s), 18 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表