这是一个关于主从表操作的问题. form1上有主表 customers相关字段.点击一按钮后弹出form2.
form2上有子表orders相关字段.现在问题是在form2上输入相关订单商品信息后要将这些商品的金额合计值算出来,并返回到form1上的合计金额字段,然后保存.我想了解的问题就是:
  1. 这样在两窗体之间传值的问题是否都要通过 vbscript,javascript来做.
  2. form1如何能得到form2传过来的合计值,并且要知道子表到底有哪些商品信息.放在什么事件里处理.(是否要定义全局变量保存)
  3. 我觉得在操作form2时候不应该对子表先做保存处理,因为主表记录不一定保存(输入到一半放弃输入,关闭窗体),我认为应该在form1上的主表保存时同时保存form2的子表信息.不知道有没有好的办法来解决这种问题.
  请高手帮忙参考参考 ,不胜感激!

解决方案 »

  1.   

    1、不一定,个人习惯而已,同一结果往往会产生不同的方法。
    2、使用javascript较简单,如果form2是一个非模式窗口,直接使用self.opener.form1.fmtxt.value=form2.result.value;就可以将form2的值传递给form1了。
    3、是啊,保存结果不过是响应一个事件而已,你只要合理安排响应的事件就可以达到同步效果了,如:关闭子窗体时,同时调用主窗体的方法。
      

  2.   

    再次寻求答疑
      2. self.opener.form1.fmtxt.value=form2.result.value;就可以将form2的值传递给form1了。
         这个方法我知道.确实可以传递合计值,但是如何能知道到底有多少条需要保存的子表记录,并且这些子表记录的详细信息呢.
      3. 关闭子窗体时,调用主窗体的方法.请问如何调用.(因为self.opener 这个方法是写在脚本语言里的.那么如何调用主窗体方法呢) 
      我是菜鸟,可能提出的问题让大家笑话了,不过真的希望可以得到帮助.最好能说的详细点,不要一句话就完了.谢谢大家!
      

  3.   

    http://www.uml.org.cn/net/200441435.htm中的case可能会对你有点用吧!讲得很好呢!