CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  PowerBuilder >  基础类

求教,商品编码自动生成?多谢!

楼主N2076()2004-12-02 22:38:56 在 PowerBuilder / 基础类 提问

编码13位,大类(3)+中类(3)+品牌(3)+商品序号(4),字段为字符型;如何使同大类,同中类,同品牌的商品序号自动增加。 问题点数:0、回复次数:7Top

1 楼braversmmu(笨鸟先飞)回复于 2004-12-03 08:28:50 得分 0

用Left()函数取13位的前9位,当新增商品时,去数据库里匹配,找到后4位最大的编码,然后加1Top

2 楼sdhylj(青锋-SS)(献血有益健康(别人的))回复于 2004-12-03 08:47:45 得分 0

同意楼上,若编码格式固定的话直接取最大值加1即可,数据窗口中连续录入时最好设一实例变量,初始值为最大值加1,随后其值自增1即可。Top

3 楼lzp_lrp(lzp)回复于 2004-12-03 08:56:00 得分 0

根据大类、中类、品牌去数据库查找出最大值,然后取后四位加一即可  
   
  select   max(商品编号)   into   :ls_card_no  
      from   商品  
    where   大类   =   :ls_大类   and   中类   =   :ls_中类   and   品牌   =   :ls_品牌;  
   
  if   len(ls_card_no)   =   13   then  
        ls_card_no   =   left(ls_card_no,   9)   +   string(long(right(ls_card_no,   4))   +   1,   '0000')  
  else  
        ls_card_no   =   ls_大类   +   ls_中类   +   ls_品牌  
  end   if  
   
  ls_card_no   里即是你想要的商品编号Top

4 楼qyqtn(大巫)回复于 2004-12-03 09:17:24 得分 0

select   distinct   max(wp_ckls)   into   :a   from   wpck   where   wp_lrrq=:sjj;//根据录入时间判断  
  select   wp_ckpzh   into   :aa   from   wpck   where   wp_ckls=:a;//根据流水号判断当天最大的凭证号  
  if   isnull(a)   or   isnull(aa)   then//如果没有当天凭证号  
  bb="1000"  
  else  
  bb=right(trim(aa),4)//如果有当天凭证号  
  end   if  
  a=integer(bb)+1  
  cc=string(a)  
  dd=string(today(),'yyyymmdd')  
  ee=dd+cc  
   
  改改,你应该可以用了,呵呵,比较懒惰,你自己去处理吧Top

5 楼jimiok(吉米)回复于 2004-12-03 09:23:46 得分 0

如果没有“大类”、“中类”、“品牌”的字段的话,可以这样取最大值:  
   
  string   ls_card_no=""  
   
  select   max(商品编号)   into   :ls_card_no  
      from   商品   where   substr(商品编号,1,3)   =   :ls_大类   and   substr(商品编号,4,3)   =   :ls_中类   and   substr(商品编号,7,3)   =   :ls_品牌;  
   
  if   len(ls_card_no)   =   13   then  
        ls_card_no   =   left(ls_card_no,   9)   +   string(long(right(ls_card_no,   4))   +   1,   '0000')  
  else  
        ls_card_no   =   left(ls_card_no,   9)   +   "0001"  
  end   if  
  Top

6 楼jeff_107(笑眯眯)回复于 2004-12-03 10:14:04 得分 0

建议你编码采用:大类             001  
                                中类             001001     (大类+中类)  
                                品牌             001001001   (大类+中类+品牌)  
                                商品序号     0010010010001   (大类+中类+品牌+序号)  
  这样以后操作起来会方便很多Top

7 楼dpyrq(华夏08)回复于 2005-04-23 20:43:13 得分 0

请问一下楼主  
  我也在模拟做这个商品编码,请问你是如何根据输入的商品得到它的大类和中类的??  
  谢谢!!Top

相关问题

  • 怎么根据现有编码中的几位生成另一个新编码
  • 用BCB如何生成Unicode编码的程序?
  • C#生成GBK编码的xml文件,救急
  • 请问fso怎么才能生成utf-8编码的文件?
  • 如何用编码自动生成文件夹?
  • 如何动态生成Commandbutton控件,多谢了!
  • 如何用txmldocument生成以下xml文档?多谢大家喽,
  • 《急》关于动态生成html页的问题,多谢指教!!
  • 哪位能提供一份Java的程序编码风格标准?多谢了。
  • 根据首次输入的编码规则自动生成编码的问题!!~~~~~~顶者有分

关键词

  • 编码
  • 品牌
  • 类
  • ls
  • 商品
  • 最大值
  • card
  • wp
  • 凭证号
  • 中

得分解答快速导航

  • 帖主:N2076

相关链接

  • PowerBuilder类图书
  • PowerBuilder类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo