みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
現在、後学のために分離モデルでの簡易な伝票入力を作成しています。
2つ質問があります。
1、関連レコードに移動ステップで外部レイアウトを設定しようとしてもデータベースを持ったファイルのレイアウトしか設定できないのですが
これは仕様でしょうか?
2、分離モデルで関連レコードに移動したい場合はデータ側にアプリ側と同じレイアウトを作成して関連レコードに移動するか
アプリ側のレイアウトで検索をかけるしかないのでしょうか?
よろしくお願いします。
Offline
1、関連レコードに移動ステップで外部レイアウトを設定しようとしてもデータベースを持ったファイルのレイアウトしか設定できないのですが
これは仕様でしょうか?
外部テーブルのレイアウトを使用にチェックを入れるべし。
2、分離モデルで関連レコードに移動したい場合はデータ側にアプリ側と同じレイアウトを作成して関連レコードに移動するか
アプリ側のレイアウトで検索をかけるしかないのでしょうか?
なんのための分離なのかよくわかりませんし、何がしたいかよくわかりませんが、上記のように外部の( データ側の )レイアウトに移動できますよ。
分離モデルかどうかに関係なく、何らかの意図が無ければ、運用しているファイルにTO を持たせ、レイアウトを持たせるのがいいです。そのファイル内で関連レコードへ移動 を行えます。
分離モデルの現実的な作りとしては、データファイル側には、管理用のレイアウト(表型式の一覧程度)は作るでしょうが、それ以上は、意図が無い限りは作らないでしょう。
Offline
申し訳ございません。説明が足りませんでした。
行いたいのはアプリ側のレイアウトから別ファイルのアプリ側のレイアウトへの関連レコードに移動です。
Offline
外部テーブルのレイアウトを使用にチェックは入れてます。
1、関連レコードに移動ステップで外部レイアウトを設定しようとしてもデータベースを持ったファイルのレイアウトしか設定できないのですが
これは仕様でしょうか?外部テーブルのレイアウトを使用にチェックを入れるべし。
2、分離モデルで関連レコードに移動したい場合はデータ側にアプリ側と同じレイアウトを作成して関連レコードに移動するか
アプリ側のレイアウトで検索をかけるしかないのでしょうか?なんのための分離なのかよくわかりませんし、何がしたいかよくわかりませんが、上記のように外部の( データ側の )レイアウトに移動できますよ。
Offline
どのファイルのどのテーブルも、
リレーションシップグラフに表示できます。
リレーションシップグラフにあるTOのレイアウトを作ることができます。
Offline
それは承知していますが関連レコードに移動するのはデータベースを持ったファイルのみにアクセスするのでしょうか?
私がアクセスしたいのは別ファイルのアプリ側のレイアウトです。
どのファイルのどのテーブルも、
リレーションシップグラフに表示できます。リレーションシップグラフにあるTOのレイアウトを作ることができます。
Offline
分離モデルをとっている場合、別のソリューション側のレイアウトは参照できません。
関連レコードへ移動で、別ファイルのレイアウト... は、その関連レコードを実体として保存している別のファイルのレイアウトを利用して、そのファイルを開く動作を行い、外部データベースとしてのTOを持つファイルへのアクセスはできないでしょう。
最も単純な例として、データファイル側から、ソリューションファイル側への移動ができるかどうか、お試しください。
Offline
やっと理解できました。ありがとうございます。
それでは分離モデルを取っている場合、関連レコードに移動するには
別アプリのファイルを開いて検索するのが一般的なのでしょうか?
分離モデルをとっている場合、別のソリューション側のレイアウトは参照できません。
関連レコードへ移動で、別ファイルのレイアウト... は、その関連レコードを実体として保存している別のファイルのレイアウトを利用して、そのファイルを開く動作を行い、外部データベースとしてのTOを持つファイルへのアクセスはできないでしょう。
最も単純な例として、データファイル側から、ソリューションファイル側への移動ができるかどうか、お試しください。
普通の設計でしたら、ソリューションファイルを渡るような設計はせずに、1部署での使用は1個にまとめるでしょうね。
どうして必要でしたら、データファイルを介して移動すればいいのでは。
Offline
分離モデルをとっている場合、別のソリューション側のレイアウトは参照できません。
これは誤りです。分離モデルの場合でもデータファイル側に素のレイアウトは作られるので参照まではできます。
例えばファイルA、ファイルBが別れていて、
ファイルAにテーブルA、ファイルBにテーブルBある場合に
ファイルAのリレーションシップでテーブルAとテーブルBにリレーションが設定されていれば
[関連レコードへ移動]でテーブルAのレイアウトからファイルBのテーブルBのレイアウトを指定してレコードを表示することはできます。
※この場合にファイルBの中でテーブルBにリレーションが設定されているか否かは関係ありません。
ただしその先はファイルBでの作業となりますので関連レコードに対して何か処理がしたければ
ファイルBのスクリプトで処理する必要があります。また、この手法は分離モデルではありません。
分離モデルは他の皆さんが書かれていますが、インタフェースファイル側にレイアウト・スクリプトをまとめる形ですので
双方のファイルにレイアウトもスクリプトもある場合は単なる複数ファイルの カスタムApp です。
Last edited by Moz (2019-05-19 10:02:35)
Offline
分離モデルの場合、データファイルから、インターフェースファイルへリレーションを張る事は通常はしませんね。
その場合、複数のインターフェースファイル間でレイアウトの共有はできないはずですが。何か裏技があるのですか。
Offline
おそらく何か勘違いされてるだけだと思うのですが
札幌太郎さんも書かれていますが、インタフェースファイルにリレーションが設定されていれば
インタフェースファイル側のスクリプトで関連レコード移動を用いてデータファイルのレイアウトを表示することは可能です。
※上にも書きましたがデータファイルのレイアウトで開きますのでその後の処理はデータファイルのスクリプトを使わなくてはいけません。
それをやってしまうと分離モデルではなくなりますネ。
Last edited by Moz (2019-05-19 12:27:14)
Offline
前提が違う話になっていますので、私の前提を説明しておきます。
データファイルAにテーブルB, C がある。インターフェースファイルD, Eに、それぞれTO B, C があり、それぞれのファイルの中でリレーションされている。ファイル間のリレーションは無い、という環境です。
この場合、データファイルAでデータを開いたとしても、インターフェースファイルDへの関連レコードへ移動、そのものが成り立たないですし、仮に、分離モデルの前提を崩してAとDにリレーションを張ったとしても、Dのレイアウトは利用できない、という事です。スレ主さんはこれをやりたいのでは。
簡単な検証はしていますが、誤っていますか。
Last edited by Shin (2019-05-20 09:12:33)
Offline
申し訳ない。 #4 でインタフェースファイル間での関連レコード移動と書かれていますね。
言葉がインタフェース、アプリ、ソリューションと様々だったので読み違えていました。言い訳ですが(汗)
1、関連レコードに移動ステップで外部レイアウトを設定しようとしてもデータベースを持ったファイルのレイアウトしか設定できないのですが
これは仕様でしょうか?
2、分離モデルで関連レコードに移動したい場合はデータ側にアプリ側と同じレイアウトを作成して関連レコードに移動するか
アプリ側のレイアウトで検索をかけるしかないのでしょうか?
1)について 書かれているとおり(仕様というには語弊がありますが)
・関連レコードで移動できるのは
リレーション設定されているテーブルオカレンスのレコード(リレーションは必須)
同じ実体テーブルに基づくテーブルオカレンスのレコード(リレーションがなくても可)*2
リレーション設定されているテーブルオカレンスの実体テーブルの存在するファイルで実体テーブルに基づくテーブルオカレンスのレコード(相手ファイルにリレーションがなくても可)
・他のファイルのレイアウトが開けるのは
リレーション設定されているテーブルオカレンスの実体テーブルの存在するファイルの場合
→外部ファイルのレイアウトで指定できるの実体テーブルを持つファイルのレイアウトのみです。
インタフェースファイルは実体テーブルが存在しないので、
インタフェースファイルを外部データソースに指定してもインタフェースファイルに基づくテーブルオカレンスは作成できません。
(テーブルオカレンスに対してテーブルオカレンスを作ることはできません)
*2 の動きがあるので全てのテーブルオカレンスを繋げずとも目的別にテーブルオカレンスグループを作る「アンカーブイモデル」が実現できます。
※同じ実体テーブルに基づくテーブルオカレンス間で関連レコード移動をすれば対象レコードが共有できます。
2)インタフェースファイル→データファイルはリレーションがなくてもできます。
インタフェースファイル→インタフェースファイルはリレーションが作れませんからできません。
インタフェースファイル間で対象レコードを共有したいならば主キーのリストなどで渡せば良いでしょう。
集計フィールドの一覧が役に立つでしょう。
レイアウトの共有という言葉が出てきますが、他のファイルのレイアウトを自分のファイル内で開くことはできません。
関連レコード移動で他のファイルが開いて該当するレイアウトが表示されるだけです。
そのため後に続く処理をスクリプトで書いてしまうと元のウインドウ(ファイル)で実行されて事故が起きます。
Last edited by Moz (2019-05-20 09:52:19)
Offline
Pages: 1
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 557.55 KiB (Peak: 578.09 KiB) ]