以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]索引和长度必须引用该字符串内的位置  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71470)

--  作者:WUZHAN
--  发布时间:2015/7/11 20:07:00
--  [求助]索引和长度必须引用该字符串内的位置

我在专业报表中有如下代码: 

    rt = New prt.RenderText
     rt.Text = "清洗  " & iif(r("清洗人")<> "",(r("清洗人")).SubString(0,1),"")
     rt.X = 115
     rt.Y = 8
     rt.Style.Font = New Font("宋体", 10, FontStyle.Bold) \'设置字体,字号
     ra.Children.Add(rt)  \'添加到容器中
如果 清洗人 为空 报表中也未空,如果有内容,则取第一个字。清洗人为空时 为何老出现以下提示::

.NET Framework 版本:2.0.50727.3655
Foxtable 版本:2014.11.11.1
错误所在事件:窗口,打包录入,Button5,Click
详细错误信息:
索引和长度必须引用该字符串内的位置。
参数名: length

[此贴子已经被作者于2015/7/12 9:11:06编辑过]

--  作者:WUZHAN
--  发布时间:2015/7/12 9:12:00
--  
请老师们帮忙.
--  作者:大红袍
--  发布时间:2015/7/12 9:29:00
--  
rt = New prt.RenderText
rt.Text = "清洗  " & iif(r("清洗人").length > 0,r("清洗人").SubString(0,1),"")
rt.X = 115
rt.Y = 8
rt.Style.Font = New Font("宋体", 10, FontStyle.Bold) \'设置字体,字号
ra.Children.Add(rt)  \'添加到容器中

--  作者:WUZHAN
--  发布时间:2015/7/12 9:43:00
--  
多谢红袍老师!还是不行,错误提示和之前是一样的。
--  作者:WUZHAN
--  发布时间:2015/7/12 10:09:00
--  
红袍老师!还是不行,错误提示和之前是一样的。
--  作者:大红袍
--  发布时间:2015/7/12 10:19:00
--  

 那就不是这段代码的错。

 

 http://www.foxtable.com/help/topics/1485.htm

 


--  作者:WUZHAN
--  发布时间:2015/7/12 12:15:00
--  
多谢红袍老师,问题解决了,
--  作者:大红袍
--  发布时间:2015/7/12 12:16:00
--  
 哦,对了,iif是两条语句都执行的,要改成if判断。