如题:
我的query.cachedupdate=true,与一个dbgrid1控件相连.query中除了一个item_code字段类型为date外,其他的字段类型都为lookup类型,当我在dbgrid1中输入item_code数据时,其他字段的值会从另一个表中带出来.我用applyupdates更新数据,结果只有item_code字段的值写到了表中
我不知道该怎么做了,请指教

解决方案 »

  1.   

    lookup类型,你设置了dataset,Keyfield,lookupfield,resultfield没??
      

  2.   

    不知道这样说得明白不...
    假设A,B两表,A表是DATA,B表LOOKUP..
    dataset连接B表,key field指于A表相关连字段,lookupfield是A,B表的关连字段,Resultfield就是所需要从B表得到的返回字段值..
      

  3.   

    我有a表(字段为 单据号,项目编号(item_code), 项目名称(item_name),项目规格,数量,单位,科室)
        b表(字段为 项目编号(item_code),  项目名称(item_name),项目规格,单位,科室)a表中除了"单据号","项目编号"为data类型外,其他都为lookup类型
    我把a表的譬如"项目名称"设置为lookup类型,当在a表中输入项目编号的时候系统自动带出"项目名称", "项目名称""字段属性设置如下:fieldkind=fklookup , lookupcache=false, lookupdataset=tablepricelist, 
    lookupkeyfields=item_code , 
    lookupresultfield=item_name , 
    lookupdataset.cachedupdates=true
    但是我用applyupdates更新数据时,只有字段类型为data的字段值写入了数据库,类型为lookup的字段值都写的是空的.
      

  4.   

    还有个Lookupfield呢??
    dataset,Keyfield,lookupfield,resultfield
      

  5.   

    首先你2个表设计得就不行..这么多重复字段.
    有了B表的话,A表的项目名称完全是没必要的垃圾字段...
    同样有了A表.B表中的项目规格,单位,科室也是重复....
    你静态这样先设置一下..
    DataSet-b表..
    Keyfield-a表item_code
    Lookupfield-b表item_code
    Resultfield-b表item_name