物料表(Goods)字段名 字段類型
編碼 Decimal
物料類別 Char
物料名稱 Char
物料規格 Char
單價 Float    供應商信息字段名 字段類型
供應商名 Char
聯系人 Char
聯系電話 Char
備注 Char   采購信息表 
              
字段名 字段類型
采購日期 Date
申購部門 Char
采購數量 Integer
用途 Char  注明﹕  以上三表設計到多對多關系﹐一種物料可能有多個供應商﹐一個供應商也可以供應多種物料﹐現在需求是﹕1.可以方便查詢物料的供應商﹐供應商提供的單價信息﹔2.可以方便查詢到某一物料上一次在某一供應商處采購物料的數量(具體到物料類別)﹔
   按照以上需求﹕采用什么樣的處理方式會科學一些﹐希望大家指點迷徑...

解决方案 »

  1.   

    采購信息表 
                  
    字段名 字段類型
    采購日期 Date
    申購部門 Char
    采購數量 Integer
    用途 Char
    供货商ID
    采购单价另外:
    一般情况下,价格是在不停变化的,不宜放在物料表(Goods)中。
      

  2.   

    很简单的一个问题,但有一定的代表性,留个E-Mail,晚上给我发信吧。我帮你分析一下,现在静不下心来。如能通UC或QQ就好了。懒的打字。
      

  3.   

    to: VeryOldMan(老者) :
      首先謝謝你的建議。
         其實供應商和價格都是在不停變化著的﹔就你這樣或許就一個價格不同就會在表中存在多個相同的供應商。 總感覺到數據的冗余量太大﹔
      

  4.   

    謝謝各位﹕ 我的QQ 17953298  
             msn: [email protected]
      

  5.   

    或者:物料表(Goods)
    字段名 字段類型
    物料ID   Integer 
    編碼 Decimal
    物料類別 Char
    物料名稱 Char
    物料規格 Char    供應商信息字段名 字段類型
    供應商ID Integer
    供應商名 Char
    聯系人 Char
    聯系電話 Char
    備注 Char   采購信息表 
                  
    字段名 字段類型采購日期 Date
    申購部門 Char
    采購數量 Integer
    物料ID
    供應商ID
    采購单价
      

  6.   

    to : WGYKING(【修罗】我爱北极熊!) 
    不好意思我用的是繁体;
      

  7.   

    觉得VeryOldMan(老者) 分析得比较合理,
    用‘ 采購信息表 ’把另外两个表关联。
      

  8.   

    用采购信息表关联另两个表,在采购信息表中包含供应商ID,物料ID。因为物料的价格是在变,所以不宜放到物料表中,还是放到采购表中比较合适。这样通过采购信息表就可以查到物料的供应商有哪里?同样也可以查到一个供应商所提供的物料有那些,价格如何。物料表(Goods)字段名 字段類型
    編碼 Decimal
    物料類別 Char
    物料名稱 Char
    物料規格 Char
        供應商信息字段名 字段類型
    供應商名 Char
    聯系人 Char
    聯系電話 Char
    備注 Char   采購信息表(CG) 
                  
    字段名 字段類型
    采购单编号
    采購日期 Date
    申購部門 Char
    物料編碼 Decimal  (与GOODS表对应)
    采購數量 Integer
    單價 Float
    供應商名 Char
    用途 Char
    通过
    Select * from CG where 物料编码 = :物料编码
    来查找物料的供应商以及价格情况。通过
    Select * from CG where 供应商= : 供应商
    来查找供应商提供的物料及价格情况。这样是没有什么冗余的。
      

  9.   

    物料表(Goods)字段名 字段類型
    物料編碼 Decimal
    物料類別 Char
    物料名稱 Char
    物料規格 Char
        供應商信息字段名 字段類型
    供应商编号 Decimal
    供應商名 Char
    聯系人 Char
    聯系電話 Char
    備注 Char
      物料价格表
    字段名 字段類型
    物料編碼 Decimal
    供应商编号 Decimal
    單價 Float   采購信息表(CG) 
    字段名 字段類型
    采购单编号
    供應商编号 Decimal
    物料編碼 Decimal  (与GOODS表对应)
    采購日期 Date
    申購部門 Char
    采購數量 Integer
    用途 Char
    表结构信息给你出来了. 我觉得这种方式不错.  具体的东西有兴趣的话可以联系 msn  [email protected]
      

  10.   

    CgGoods 物料表
    0 GoodsNo decimal 9 0
    0 GoodsNameNo bigint 8
    0 GoodsType char 30 0
    0 GoodsName char 30 0
    0 GoodsSpec char 20 1
    0 GoodsUnit char 10 1
    0 GoodsRuk char 6 0
    1 GoodsPrice float 8
    MerChant 供应商表
    0 MerchantNo decimal 9
    0 SaleGoodsNo bigint 8  //与CgGoods 物料表中GoodsNameNo关联0 MerchantName char 24
    0 SaleMen char 14 1
    0 SalePhone char 14 0
    to : : gardenyang(天高云淡) 1 Re char 30 1
    根据你的思路:
    物料表,编码主键
    渠道表,供应商编码主键,存储物料信息编码
    采购信息,采购编码主键,存储物料信息编码,渠道编码这样的表结构让我在数据处理的时候遇到麻烦;我想用dbgrid录入数据在实现的时候遇到我无法在dbgrid中通过物料中其他字段的值来获取物料编号(GoodsNameNo)的问题我硬是找不到好方法,只有在MerChant 供应商表中包含CgGoods 物料表中所有字段才能实现我的要求这样一来数据实在是冗余太大了请问有没有好的方法?  
        望各位帮忙!!!
      

  11.   

    在绿盟论坛上http://www.0mai.com/bbs/down_default.asp  有这问题的说明
    http://www.0mai.com/bbs上有说明
    我的OICQ:9199333
      

  12.   

    你用过用友u8没有?录入相关信息的时候采用一个原则,当一个信息是另一个信息的补充的时候那么采用主从表的型时,当一个信息和另外一个信息相关,但是不存在主从的关系的时候,那么进行关联输入,但是有一点,好像没见过勇dbgrid录入的,你可以考虑采用stringgrid来录入,然后调用一个字典显示界面,来专门为你的相关信息录入
      

  13.   

    用友我没有用过! 不过你说的意思我明白因为我曾经见个你这种方法的程序.不过设计起来有点麻烦.
       我原计划用dbgrid来录入数据的,因为数据涉及到批量录入,所以我就选择了dbgrid,那请问一下有没有能其他能用来做批量数据录入的控件呢?(dbgrid 除外);
      

  14.   

    stringgrid可以避免一些数据库的约束,例如说一些数据关联可以自行解决,这样程序的可控性会好一些,不过如果你修改dbgrid的原生类,也可以达到同样的效果,一般情况下,代替dbgrid的就是stringgrid或者listview,还有就是网上的一些第三方控件可以使用。不过我很少使用dbgrid来路入修改数据,我一般都采用动态生成的edit或者stringgird