pb判断语句语句(急求 在线等)
U_STORE_I_BATCHNO=(acc1109010001,acc201109010001)我要显示20开头的,没20开头的就加20,显示年份,语句这样写行吗:if...
U_STORE_I_BATCHNO=(acc1109010001,acc201109010001) 我要显示20开头的,没20开头的就加20,显示年份,语句这样写行吗: if mid(U_STORE_I_BATCHNO,4,2) ='20' then mid(U_STORE_I_BATCHNO,4,8) end if else '20'+mid(U_STORE_I_BATCHNO,4,6) end if
格式是 编号这个字段 得到的结果是另一个字段
ACC1101210090001 20110121
ACC20110901009000101 20110901
这就是我要的结果 展开
格式是 编号这个字段 得到的结果是另一个字段
ACC1101210090001 20110121
ACC20110901009000101 20110901
这就是我要的结果 展开
2个回答
展开全部
首先你这个是写在哪里的?你的语法写错了。
如果是写在数据窗口里定义计算列,那么if的写法是if(条件,成立时候的值,不成立的值)
如果是代码中,那么是 if 条件 then
成立的代码
else
不成立代码
end if
看你的意思,应该是数据窗口的计算列吧?加工你的字段,然后显示一个日期的字段。
那么在数据窗口增加一个计算列,上面表达式这么写:
if (mid(U_STORE_I_BATCHNO,4,2) ='20', mid(U_STORE_I_BATCHNO,4,8), '20' + mid(U_STORE_I_BATCHNO,4,6))
以上是数据窗口中计算列if的写法。
如果代码中:
string ls_date
if mid(U_STORE_I_BATCHNO,4,2) = '20' then
ls_date = mid(U_STORE_I_BATCHNO,4,8) //这地方截取之后一定要放到变量中了
else
ls_date = '20' + mid(U_STORE_I_BATCHNO,4,6)
end if
如果是写在数据窗口里定义计算列,那么if的写法是if(条件,成立时候的值,不成立的值)
如果是代码中,那么是 if 条件 then
成立的代码
else
不成立代码
end if
看你的意思,应该是数据窗口的计算列吧?加工你的字段,然后显示一个日期的字段。
那么在数据窗口增加一个计算列,上面表达式这么写:
if (mid(U_STORE_I_BATCHNO,4,2) ='20', mid(U_STORE_I_BATCHNO,4,8), '20' + mid(U_STORE_I_BATCHNO,4,6))
以上是数据窗口中计算列if的写法。
如果代码中:
string ls_date
if mid(U_STORE_I_BATCHNO,4,2) = '20' then
ls_date = mid(U_STORE_I_BATCHNO,4,8) //这地方截取之后一定要放到变量中了
else
ls_date = '20' + mid(U_STORE_I_BATCHNO,4,6)
end if
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询