【返回】 数据 【参数】
序号 名称 类型 说明
1 XmDate 日期 被用来转换的日期 【使用范例】
表达式:GetCwY([2004-2-17]) 返回:2004 表达式:GetCwY(日期测试.日期) 返回:2004
注:单据“日期测试”的“日期”项目输入值为“2004-2-17” 表达式:GetCwY(StrToDate(‘2004-2-17’)) 返回:2004 注:表达式:StrToDate(‘2004-2-17’),返回:2004-2-17
? GetD
【函数名称】 取日期天数 【函数格式】 GetD(XmDate) 【返回】 数据 【参数】
序号 名称 类型 说明
1 XmDate 日期 被用来转换的日期 【使用范例】
表达式:GetD([2004-2-17]) 返回:17 表达式:GetD(日期测试.日期) 返回:17
注:单据“日期测试”的“日期”项目输入值为“2004-2-17” 表达式:GetD(StrToDate(‘2004-2-17’)) 返回:17 注:表达式:StrToDate(‘2004-2-17’),返回:2004-2-17
? GetEBalanceVaule
【函数名称】 获得电子秤值 【函数格式】 GetEBalanceVaule 【返回】 字符 【参数】 <无> 【使用范例】
获得电子秤上的数据,不同品牌的电子秤有不同的DLL
? GetM
【函数名称】 取日期月份 【函数格式】 GetD(XmDate) 【返回】 数据 【参数】
序号 名称 类型 说明
1 XmDate 日期 被用来转换的日期 【使用范例】
表达式:GetM([2004-2-17]) 返回:2 表达式:GetM(日期测试.日期) 返回:2
注:单据“日期测试”的“日期”项目输入值为“2004-2-17”
表达式:GetM(StrToDate(‘2004-2-17’)) 返回:2
? GetTime
【函数名称】 从日时型变量获得时间 【函数格式】 GetTime(Time) 【返回】 日期 【参数】
序号 名称 类型 说明
1 Time 日期 被处理的日时变量 【使用范例】
若当前时间为2004-2-16 13:20:05, 表达式:GetTime 返回:13:20:05
? GetStrinc用于从右向左扫描数字字符,将数字部分加1例
【函数名称】 字符串数字自增 【函数格式】 GetTime 【返回】 字符 【参数】
序号 名称 类型 说明
1 Str 字符 被处理的字符串 2 Int 数据 【使用范例】
表达式:getstrinc('A009B001',0) 返回:A009B002
? GetXm
【函数名称】 取单据项目值
【函数格式】 GetXm(TableFieldName,XmCondition) 【返回】 字符 【参数】
序号 名称 类型 说明
1 TableFieldName 字符 待取的单据项目 2 XmCondition 字符 取单据的条件 【备注】
3) 函数中待取单据的多个项目必须来自该单据的同一个位置。
4) 待取单据的项目必须放在引号内,表示条件时必须放在比较符(如=)的左边。 5) 若有当前单据的项目,项目必须放在引号外,并且放在比较符(如=)的右边。 6) 条件参数为字符串,字符串计算的结果,即去掉引号后的值才是真正的条件。 7) 引号内连续两个引号表示一个引号字符,比如,要想条件的结果为:’abc’,
应写成:’’’abc’’’;字符串可以用+相加,比如,要想条件的结果为:’abc’,可以写成:’’’a’+’bc’’’,而’a’+’bc’的结果为:abc,a+’bc’或a+bc都是错误的。
【使用范例】
若存在单据“单据1”,数据如下所示:
编号 A01 名称 ABC A02 EDF 表达式:GetXm(’单据1.名称’,’单据1.编号=’’A01’’’) 返回:ABC
若当前单据为“单据2”,且项目“单据2.编号”的值为“A02”。 表达式:GetXm(’单据1.名称’,’单据1.编号=’’’+单据2.编号+’’’’) 返回:EDF 解释:
1) 分解表达式,得项目参数为:’单据1.名称’;条件参数为:’单据1.编号=’’’+
单据2.编号+’’’’。
2) 取得“单据2.编号”的值为’A02’,替换条件为:’单据1.编号=’’’+’A02’+’’’’。 3) 计算条件,结果为:单据1.编号=’A02’ 4) 计算表达式,结果为:EDF 【使用技巧】
由于GetXm最终委托SQL语句的Select命令执行,所以,用户可以在合法的语法前提下,拼出特定的Select语句,达到特定的结果。
如表达式:GetXm(’单据1.编号+单据1.名称’,’单据1.编号=’’A01’’’) 返回:A01ABC
? GetXmInc
【函数名称】 取单据数据项目值,并在原值上加1
【函数格式】 GetXmInc(TableFieldName,XmCondition) 【返回】 数据 【参数】
序号 名称 类型 说明
1 TableFieldName 字符 待取的数据表及项目,该项目必须为数据类型 2 XmCondition 字符 取数据表的条件 【备注】
参照“GetXm”。 【使用范例】
若存在单据“测试单据”,数据如下所示:
单据号 前缀 最大号 DJH TD 2 表达式:GetXm(’测试单据.前缀’,’测试单据.单据号=’’DJH’’’)+DataToStr (GetXmInc(’测试单据.最大号’,’测试单据.单据号=’’DJH’’’)) 返回:TD2
计算后,单据“测试单据”数据更新如下所示: 单据号 前缀 最大号
? GetXmValueArray
【函数名称】 【函数格式】
DJH TD 3 取单据项目值的集合
GetXmValueArray(TableFieldName,XmCondition)
【返回】 字符 【参数】
序号 名称 类型 1 TableFieldName 字符 2 XmCondition 字符 【使用范例】
数据表“测试集合”如下所示: 项目值 项目代号 D D D A 说明
待取的数据表及项目 取数据表的条件
Data1 Data2 Data3 Data4 Data5 B 表达式:GetXmValueArray(‘测试集合.项目值’, ‘测试集合.项目代号=‘‘D’’’) 返回:Data1,Data2,Data3
? GetLinkPic
【函数名称】 在查询中显示关联的图像
【函数格式】 GetLinkPic(TableFieldName,XmCondition) 【返回】 字符 【参数】
序号 名称 类型 说明
1 TableFieldName 字符 待取的单据图像项目 2 XmCondition 字符 取单据的条件 【使用技巧】
只能在查询中使用,目的是加快查询中包含图像字段时的查询速度,使用时,需要一个查询字段作为显示的位置,并在他的查询后处理公式中填入此函数,这样在查询时可以看到你想看得图片。
? GetY
【函数名称】 取日期年份 【函数格式】 GetD(XmDate) 【返回】 数据 【参数】
序号 名称 类型 说明
1 XmDate 日期 被用来转换的日期 【使用范例】
表达式:GetY([2004-2-17]) 返回:2004 表达式:GetY(日期测试.日期) 返回:2004
注:单据“日期测试”的“日期”项目输入值为“2004-2-17” 表达式:GetY(StrToDate(‘2004-2-17’)) 返回:2004 注:表达式:StrToDate(‘2004-2-17’),返回:2004-2-17
? GroupNames
【函数名称】 拥有(多个)角色 【函数格式】 GroupNames 【返回】 字符 【参数】 <无>
【使用范例】
若当前用户“User1”的角色是“仓库管理员”, 表达式:GroupNames 返回:仓库管理员
若当前用户“User2”拥有多个角色:仓库管理员、销售管理员, 表达式:GroupNames 返回:仓库管理员销售管理员
? HasGroup
【函数名称】 是否拥有这个角色
【函数格式】 HasGroup(GroupName) 【返回】 逻辑 【参数】
序号 名称 类型 说明 1 S 字符 角色名称 【使用范例】
若当前用户“User1”的角色是“仓库管理员”,
表达式:HasGroup(“仓库管理员”) 返回:True 表达式:HasGroup(“销售管理员”) 返回:False ? Iif
【函数名称】 选择返回结果
【函数格式】 Iif(TjStr,TrueResult,FalseResult) 【返回】 字符 【参数】
序号 名称 类型 说明
1 TjStr 逻辑 用来判断返回结果的逻辑表达式 2 TrueResult 字符 判断公式为True时返回的结果 3 FalseResult 字符 判断公式为False时返回的结果 【使用范例】
表达式:Iif(1=1,‘a’,‘b’) 返回:a 表达式:Iif(1=0,‘a’,‘b’) 返回:b ? IifD
【函数名称】 选择返回结果
【函数格式】 IifD(TjData,TrueResult,FalseResult) 【返回】 数据 【参数】
序号 名称 类型 说明
1 TjData 逻辑 用来判断返回结果的逻辑表达式 2 TrueResult 数据 判断公式为True时返回的结果 3 FalseResult 数据 判断公式为False时返回的结果 【使用范例】
表达式:Iif(1=1,1,2) 返回:1 表达式:Iif(1=0,1,2) 返回:2