1 返信 最新の回答 日時: Nov 3, 2016 1:12 AM ユーザー:shin

    続編 顧客カードに関連する家族を表示したい

    glass

      前回教えていただいたのですが、複雑なスクリブト関係がわからなく
      自分でできる範囲でやっているのでずか上手くいかずです。

      よろしくお願いします。

       

      データ
      顧客コード 家族コード 家族コード_主番 家族コード_枝番 名前
      1001 001-1  001  1 田中太郎
      1012 001-2  001  2 田中花子
      1035 001-3  001  3 田中健太郎

       

       

      顧客テーブル
      顧客コード 氏名 住所 家族コード 家族コード_主番 家族コード_枝番
      家族テーブル 顧客コード 名前 家族コード 家族コード_主番 家族コード_枝番

      家族コードでリレーション

       

       

      顧客レイアウト画面に「家族レイアウトへ」ボタンを作成
      スクリブトは
      コピー[選択:顧客テーブル::顧客コード
      レイアウト切り替え[「顧客レイアウト」(顧客テーブル)]
      新規コード/検索条件
      貼り付け[選択;顧客テーブル::家族コード_主番]
      フィールドへ移動[顧客テーブル::氏名]

       

      家族レイアウトにも「顧客レイアウト」ボタン作成
      家族レイアウト
      レコード/検索条件削除
      レイアウト切り替え[「顧客レイアウト」(顧客テーブル)]

       

      結果

      どうにか これで、検索できました。

      ポータルで表示
      1001 001 田中太郎
      1012 001 田中花子
      1035 001 田中健太郎

      顧客レイアウトへ と家族レイアウトへと切り替わるのですが

      ポータルで顧客コードにスクリブト
      if[家族テーブル::家族コード=""]
      コピー[選択;家族テーブル::家族コード]
      レイアウト切り替え[「顧客レイアウト」(顧客テーブル)]
      else
      関連レコードへ移動[関連レコードのみ表示;テーブル:「顧客テーブル」;使用するレイアウト:「顧客レイアウト」(顧客)
      end if
      をつくり、顧客コードをクリックすると、顧客テーブルへ切り替わり表示されます。
      次に、家族テーブルへのボタンを押すとエラー
      「このレイアウトでは結果を表示できないため、この処理は完了でまません。」と表示されます。

       

      全体的に、どんくさいスクリブトだと思うのですが、
      どのようにすれば、解決されますか、ご教示よろしくお願いします。

        • 1. Re: 続編 顧客カードに関連する家族を表示したい
          shin

          書いてあるスクリプトが不完全(検索しているようだけど、検索モードに変更や検索実行が無い)で、何をやっているのかわからないけど。

          そのエラーは、検索条件を設定する時のフィールドが、そのレイアウトに存在していないか、検索結果と異なるテーブルのレイアウトを表示している、という事でしょうね。

           

          ファイルの構造が理論に違反していないで、きちんとしたリレーションが張ってあれば、どちらも、関連レコードへ移動、だけで済ます事が可能ですよ。(レコードが存在していれば)