当前位置: 代码迷 >> PB >> PB中一些字符会引起程序报错,如何解决
  详细解决方案

PB中一些字符会引起程序报错,如何解决

热度:85   发布时间:2016-04-29 08:38:00.0
PB中一些字符会引起程序报错,怎么解决
最近程序中出现一些现象,开始在代码里查找原因,始终未找到原因,后来才发现是由于一些字符的原因引起的,如以下语句:
select codename into :ls_bwmc from c_layerplace where codeid=:ls_bwid and companyid=:gs_companyid;
dw_5.object.t_bwmc.text=ls_gcmc

我在打印格式里,将该编号(codeid)对应的名称(codename)找出来,然后赋值到datawindow中的t_bwmc中;
问题就出现了:如果此时名称(codename)的值为:施工五队B塔1-10~1-14/1-G~1-C十六层墙柱 的时候,程序正常,但是如果值为:施工五队B塔1-10~1-14/1-G~1-C十六层墙柱 的时候,程序就会报错了:
error:error accessing external object property text (Line 1 Colunm 33:incorrect syntax.)at line 35 ;

区别就在于 ~ 与 ~ ,~不会报错,而~ 就会报错了,怎么才能规避掉这样的错误呢,前端用户不可能每次都会输~,肯定会输~ ,到时就杯具啦~

这种状况该如何解决呢?


------解决方案--------------------
~的问题,转义符后面不能紧接着数字
如果是sql的数据库可以这么改:
select replace(codename, '~', '~') into :ls_bwmc from c_layerplace where codeid=:ls_bwid and companyid=:gs_companyid;
dw_5.object.t_bwmc.text=ls_gcmc

也只能这样了


  相关解决方案