今天学习研究用表达式列提取身份证的信息,发现表达式列公式如果字符串中间有空字符,那么会出错。如果先输入数据,再输入表达式列公式,则不会出错,反之,输入数据不能计算且出错提示,公式如下:
SubString('北京天津河北山西 辽宁吉林 上海江苏浙江安徽福建江西山东 河南湖北湖南广东广西海南 重庆四川贵州贵州云南西藏 陕西甘肃青海宁夏新疆',(Convert(SubString([ID],1,2),'System.Byte')-10)*2-1,2)
——其中,ID是身份证号码。
另外还有个毛病,程序不给我改过的机会,例如,身份证列设置了18位字符,在输入身份证号时,不小心输入了全角字符,结果多位了,想改,没办法改,程序出错提示:要么只能保持出错不变,输入下一条数据,要么退出程序。重启程序后双击可更改。
[此贴子已经被作者于2010-3-17 1:03:13编辑过]
更新9号的版本OK了
不过,后面的,双击改出错的数据还是不行。
[此贴子已经被作者于2010-3-17 1:04:54编辑过]