您好,请您先 登陆 或者 注册

【官方】A5用函数将数据列一个一个取出来?


问题补充:A5用函数将数据列一个一个取出来,常用于套打发票,凭证,单据类用得比较多一点。

以数据21.56为例,如果是列名,请将21.56替换成列名:
Mid(Reverse(String(21.56,'###0.00')),3 + 1,1)
取整数位第1位,即1
Mid(Reverse(String(21.56,'###0.00')),3 + 2 ,1)
取整数位第2位,即2
Mid(Reverse(String(21.56,'###0.00')),3 + 第几位 ,1)
小数也可以用这个函数,百分位 为 -2, 十分位为 -1 ,个位为1, 十位为2,这样子。。。
依此类推

以75.21为例:
注:sub_amt for page 是本页合计,如是本单合计应改为sub_amt for all
Mid(Reverse(String(sum(sub_amt for page),"###0.00")),3 + 2,1)
这样可以取到本页合计的整数第二位,即7
假如该列的名称为:[compute$$_10143]双击该列窗口上可以看到。
因为这个列是文本型,要取大写要转换一下
left(gf_num_to_rmb(dec(compute$$_10143)),2)

几个常见问题:
1. 如要隐藏小数列,请把小数列(注意不能删,删了大写也就失效了)拖到脚注区以下就行了
2. 拖进脚注区以后,再重新打开就不见了??怎么把它找出来?
答:把脚注区栏目往下拖,再往上拖
3. 当那个数为0的时候,它会变成元字而不是零字?
答:要用到if语句,if(表达式=0,'零',表达式) 如:
left(gf_num_to_rmb(dec(compute$$_10143)),2)
写成if语句:
if(left(gf_num_to_rmb(dec(compute$$_10143)),2)="元","零",left(gf_num_to_rmb(dec(compute$$_10143)),2))

格式已经上传,见下面地址:
文件名:A5批发单_凭证、发票、单据套打.srd
http://www.yt-pos.com/ask/question.php?id=287

提问者: admin
等级:问不倒翁
时间:2011-07-23 10:28
悬赏:0
解决时间:2011-07-26 00:41
最佳答案
哈哈,学到了一招,计算列很厉害,还要不断的学习中。。。
回答者:李祥
等级:问不倒翁
时间:2011-07-23 12:27
您觉得最佳答案好不好?
目前有 1 个人评价
100% (1)
不好 0% (0)
其它回答 共 5 条
Left(Right(String( 『金额小计』 ,'###0.00'),3),1)


那么大写的呢??怎么取??比如五千八百六十五元零角零分。。。取出五、八、六、五、零、零
回答者:收银之家
等级:普通会员
时间:2011-07-23 10:49
使用教程啊
回答者:金帮手软件
等级:金牌会员
时间:2011-07-23 14:44
呵呵。我试试。
回答者:zhaoshuai888
等级:问不倒翁
时间:2011-07-24 17:36
呵呵,学习了,赢通软件博大精深啊
回答者:小燕子
等级:钻石会员
时间:2011-07-24 22:41
第一次遇到 涨见识了
回答者:赢通华中区
等级:钻石会员
时间:2011-07-25 13:47
对最佳答案的评论:

评论字数200字以内
快到期问题
总积分排行
ytkf00720058 4704
kh35927124 3414
赢通技术43554 3069
bonchen13219 2797
赢通技术37615 2590
JCLH11087 1917
浅逝1873 1873
李祥19958 1542
xiaobird3309 1254
daoptt3310 1237