| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2320 人关注过本帖
标题:pb菜鸟 求助
只看楼主 加入收藏
li671207
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-12-2
结帖率:0
收藏
已结贴  问题点数:20 回复次数:5 
pb菜鸟 求助
/*------------------------------------------------
*函数名称:string gf_getbh(string as_bh)
*函数作用:生成一个编号
*返回值:string类型的编号
*调用举例:ls_new=gf_getbh(ls_old)
*                其中,ls_old为数据窗口中已经存在的当天的最大编号
*编写日期:2012.12.2
*编写人:xxx
*-------------------------------------------------*/

string ls_part1        //用来保存编码的前6位
string ls_part2        //用来保存编码的后4位
string ls_dbsn            //数据库中当天最大流水号
string ls_agrsn        //参数中的流水号
string ls_sn            //新生成的编号

ls_part1=right(string(today(),'yyyymmdd'),6)
ls_agrsn=right(as_bh,4)

//从数据库中选择当天最大的编号
select max(bh) into:ls_dbsn
        from mpgl
        where substring(bh,1,6)=:ls_part1;
        
if sqlca.sqlcode=0 then            //如果正确取出了数据
    if isnull(ls_dbsn) or ls_dbsn='' then
        ls_dbsn='0000'
    else
        ls_dbsn=right(ls_dbsn,4)
    end if
    if isnull(ls_agrsn) or ls_agrsn='' then
        ls_agrsn='0000'
    if integer(ls_dbsn)<integer(ls_agrsn) then
        ls_part2=string(integer(ls_agrsn)+1)
    else
        ls_part2=string(integer(ls_dbsn)+1)
    end if
   
    ls_sn=ls_part1+right('0000'+ls_part2,4)
else
    ls_sn=''
end if

return ls_sn

为啥要报error  coo31:syntax error
         error  coo31:syntax error        这个错

        
        
        
        
搜索更多相关主题的帖子: 数据库 流水号 
2012-12-02 20:37
ldl2012
Rank: 1
等 级:新手上路
帖 子:1
专家分:7
注 册:2012-12-6
收藏
得分:7 
123
2012-12-06 11:31
qq602333425
Rank: 1
等 级:新手上路
帖 子:3
专家分:7
注 册:2011-2-11
收藏
得分:7 
冷门的PB
2012-12-07 15:37
看花飘落
Rank: 1
等 级:新手上路
帖 子:4
专家分:7
注 册:2012-12-8
收藏
得分:7 
我想问下你的第31行是哪一句呀

2012-12-08 11:43
看花飘落
Rank: 1
等 级:新手上路
帖 子:4
专家分:7
注 册:2012-12-8
收藏
得分:0 
if sqlca.sqlcode=0 then            //如果正确取出了数据
    if isnull(ls_dbsn) or ls_dbsn='' then
        ls_dbsn='0000'
    else
        ls_dbsn=right(ls_dbsn,4)
    end if
    if isnull(ls_agrsn) or ls_agrsn='' then
        ls_agrsn='0000'
   end if
    if integer(ls_dbsn)<integer(ls_agrsn) then
        ls_part2=string(integer(ls_agrsn)+1)
    else
        ls_part2=string(integer(ls_dbsn)+1)
    end if
   
    ls_sn=ls_part1+right('0000'+ls_part2,4)
else
    ls_sn=''
end if

你这段程序中的if ...else....end 使用格式不正确,你仔细检查一下,是不是少了end if,
2012-12-08 11:55
看花飘落
Rank: 1
等 级:新手上路
帖 子:4
专家分:7
注 册:2012-12-8
收藏
得分:0 
我试了下,写上end if就正确了
2012-12-08 11:57
快速回复:pb菜鸟 求助
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038385 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved