有两个数据源A(query1)、B(query2)数据结构完全一致,要把A的几条数据复制到B
  A           B
 存货_hint   存货_hint
 存货名称    存货名称
 存货规格    存货规格 
 数量        数量
 单价        单价
 金额        金额其中[存货_hint]构成
query1.fieldbyname('存货_hint').asstring:=query1['存货名称']+query1['存货规格'];
query2.fieldbyname('存货_hint').asstring:=query2['存货名称']+query2['存货规格'];
在软件当中DBRGID界面上选择(存货_hint)字段,录入拼音码或存货的任意包含的字的时候弹出对话框选择存货名称和存货规格然后在(存货_hint)字段显示[货名称+存货规格]比如:百十可乐[500ml]
通过了query1['存货_hint'].onchang()完成.软件代码:假定A(query1)有数据要复制到B(query2).
        query2['存货_hint'].asstring:=query1['存货_hint'];
        query2['存货名称'].asstring:=query1['存货名称'];
        query2['存货规格'].asstring:=query1['存货规格'];
        query2['数量'].asstring:=query1['数量'];
        query2['单价'].asstring:=query1['单价'];
        query2['金额'].asstring:=query1['金额'];               
其中[存货名称]和[存货规格]在软件录入过程中不可见合成为[存货_hint].
(如果取消query2[存货_hint]的onchang里面的代码可以复制!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)
现在我想把A的数据全部复制到B,数量、单价、金额都能正常复制,但是[存货_hint]他是由两个组合显示的!可能是执行了onchang()就显示为空!!!咋办???????请高手指点

解决方案 »

  1.   

    query2['存货_hint'].asstring:=query1['存货名称'].AsString+query1['存货规格'].AsString;
    这样也不行吗?
    有没有设置断点跟踪一下看看?
      

  2.   

    不行啊!如果取消query2.onchang()就可以query2['存货_hint'].asstring:=query1['存货名称'].AsString+query1['存货规格'].AsString;
      

  3.   

    query2的onChange的代码是什么?
      

  4.   

    我的贴子, 看看http://community.csdn.net/Expert/topic/3858/3858677.xml?temp=.2710077
      

  5.   

    query2的onChange
    双击query2查询弹出query2所有的字段点其中的[存货_hint]字段选择onchang属性里面有代码就是输入拼音码或存货名称然后在DBRGRID的[存货_hint]字段显示['存货名称']+['存货规格'];