2つのフォームで情報を交換するには、1つのフォームがオーナー・フォームでなくてはならず、もう1つのフォームはオーナー・フォームに含まれる他のフォームのインスタンス、つまりメンバー・フォームでなくてはなりません。したがって、以下のようになります。

  • FRMDETAILは独立して実行できますが、この場合、WRKEMPとは通信できません。情報を交換できるフォームでは、オーナー・フォームを実行してからそのメンバー・フォームを呼び出す必要があります。

  • WRKEMPに別のフォームが含まれている場合、FRMDETAILSフォームがこのフォームと直接通信することはできません。もちろん、WRKEMPから通信できます。

  • アプリケーションのオーナー・フォームに含まれるフォームは、他のフォームのオーナーになることができます。例えば、FRMDETAILは、Print Detailsフォームのオーナーになることができます。FRMDETAILは、Print Detailsフォームと通信できますが、WRKEMPはできません。

  • メンバー・フォームを表示する前に、実行時のFORMOWNERプロパティを使用してオーナー・フォームを常に明示で設定することをお勧めします。

SET COM(#frmdetail) formowner(#com_owner) 

  • No labels