FileMaker8.5Advancedを使っています。
仮テーブルとマスタテーブルがあり、それぞれ同じフィールド構成です。
フィールドは
プライマリキー(シリアル値)
項目1
項目2
項目3
となっています。
入力者の入力間違いや、空のレコードがマスタテーブルに出来てしまうのを防ぐために、入力者に最初仮テーブルに入力させてその後マスタテーブルにルックアップでコピーしたいと思っています。
仮テーブルのレイアウトに各項目への入力フォームと[登録][キャンセル]というボタンを作成してあります。
ここで、仮テーブルからマスタテーブルへ、スクリプトでデータをコピーする方法が分かりません・・・。
ボタンに定義すべきスクリプト、各テーブル・フィールドに設定しなければならない項目を教えてください。
FMは使い始めてまだ日が浅く、用語も良く分かっていません。
どなたかお分かりになる方がいらっしゃいましたら是非よろしくおねがいいたします。
No.2ベストアンサー
- 回答日時:
自分もあまり使いこなしていないので、自信がないのですが・・・。
まず、仮テーブルですが、フィールドをすべてグローバルにしておきます。こうしないとリレーションを設定しないと<非関連テーブル>と表示されて入力できないはずです。
フィールドのオプションから[データの格納]タブ、「グローバル格納(すべてのレコードに1つの値)を使用する」にチェックを入れておきます。
これで、すべてのレイアウトに共通して使えるフィールドになります。
また、スクリプトでのフィールドからフィールドへのデータのコピーですが、
計算結果を挿入(選択;コピー先フィールド;コピー元フィールド)
・・・です。
でも、コピー先フィールドがレイアウト上にないと機能しません。
表示させたくない場合は、枠を消して小さくするなり、フォントの色を調整するなり、入力不可にする(レイアウトモードで、フィールドを右クリックし、[フィールド/コントロール]→[動作]、「フィールドへの入力を許可する」のチェックをはずす)なり、工夫が必要です。
再度ご回答いただきありがとうございます。
スクリプトがまだよく分からず、どんな時にどれを使えばいいのか迷っていました。
計算結果を挿入はこのように使うのですね!
今回は時間がなくて以下のようにしました。うまく動いているように思います。
仮テーブルのフィールドを全部グローバルにする。
マスタテーブルのフィールドを全部ルックアップ(仮テーブルを見るようにする)。
仮テーブルのレイアウトとマスタテーブルのレイアウト2つを作っておく。マスタテーブルのレイアウトはhiddenにして最終的に見えないようにする。
仮テーブルとマスタテーブルのプライマリキーにリレーションを貼る(マスタテーブルにその他の情報のテーブルとリレーション貼っています)
スクリプトで「登録ボタン」に
レイアウト切り替え[マスタテーブル_hidden]
新規レコード/検索条件
レイアウト切り替え[仮テーブル]
消去[項目1]
消去[項目2]
消去[項目3]
新規レコード/検索条件
スクリプトデバッガで見てみるとずいぶんややこしい動きになっているような気がします。
まだ良い案をお持ちの方がいらっしゃいましたらどんな方法を使うのか知りたいのでしばらく締め切るのを待ちます。
よろしくお願いします。
No.3
- 回答日時:
1,考え方
登録ボタンを押すと新規カードが作成されます。必須項目に入力がなければ
入力のないカードを表示させます。
難点は、現在入力しているデータは登録ボタンを押さなくともデータになりま
す。回避策は、入力画面では、絶えず新規カードだけが検索されているので、
登録を押さないで、他のメニューに移動する時に削除するかカスタムダイアロ
グを出します。
2,必須項目を決めます。例えば項目1と2とします。
必須チェックという計算フィールドを設け
count(項目1:項目2)
この意味は、もし、必須に入力がなければ必須チェックの値は、0もしくは1に
なります。
登録ボタンもしくは新規カードボタンのスクリプトでは、必須チェックが2以下の
場合このカードを表示させます。でなければ、新規カードを出します。
3,仮登録は、大変な作業がいるかと思います。仮登録でも必須を同処理するか
必須を入力しないで登録を押すと無駄なデータができます。重複したデータの
処理をどうするか。ファイルメーカーは、空データができやすいです。一時は、
ゼロデータを検索し削除するスクリプトを実行させました。
全く新しく入力を始める場合は、必須項目を検索させる方法で、空データを
防ぐことはできると思います。
ファイルメーカーは今回初めて使用しているのですが、なんだか無駄なレコードが出来やすいという感想です。
スクリプトや関数などがまだ良く分かっていないので、ここに質問を投稿する前はoolongpaさんが書いてくださった3を考えていたのですが実現するスキルがありませんでした(ーー;
必須項目のチェックですね、count関数を調べてみようと思います。
ご回答ありがとうございました!
No.1
- 回答日時:
当方、FileMaker 9 Advancedですが、
レイアウトモードで
[レイアウト]
→[レイアウト設定]
→[一般]タブ
で、「レコードの変更を自動的に保存する」のチェックをはずす。
これで、レコードを変更した後、確認ダイヤログが出ます。
これではダメですか?
回答ありがとうございます。
今作っているDBを主に使うことになる人はファイルメーカーを操作したことがない為、直感的に「登録した」と分かる必要があるので登録ボタン的なものが欲しいのですが難しいのでしょうか・・・。
カーソルをフォームからはずすとすぐにダイアログが出てきてしまいますよね・・・?押すことの出来るボタンが3つ出てきてしまい、初めて使う人は迷ってしまうと思うので登録ボタンが欲しいのです。
他に何か良い手段をご存知でしたらお手数ですが再度お教えいただけますか?
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのフィールド数が255しか...
-
Accessでテーブルの値をテキス...
-
INSERT INTO ステートメントに...
-
accessで重複を防ぎたい
-
Accessで、固定アルファベット+...
-
アクセス メモ型 255文字...
-
ACCESSでオートナンバーを任意...
-
アクセス エラーを数値「0」に...
-
ACCESSで400以上のフィールドが...
-
主キーはオートナンバー型のID...
-
アクセス VBAで列の入れ替...
-
ファイルメーカーでCountifの様...
-
アクセスでオートナンバーをリ...
-
SQLServer2005のSQL文での別名...
-
view作成時にデータ型を変更し...
-
Access:リンクテーブルマネー...
-
Access の同一テーブルで更新デ...
-
ExcelのデータをコピーでACCESS...
-
アクセスのテーブルデータをCSV...
-
ACCESSのフォームでアルファベ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
INSERT INTO ステートメントに...
-
Accessでテーブルの値をテキス...
-
Accessのフィールド数が255しか...
-
ACCESSでの改行コード
-
アクセス エラーを数値「0」に...
-
SQLServer2005のSQL文での別名...
-
accessのレポートで元になるテ...
-
ACCESSで400以上のフィールドが...
-
accessで重複を防ぎたい
-
Access 昇順・降順で並び替え...
-
Accessで、固定アルファベット+...
-
【Access】フォームで自動計算...
-
ExcelのデータをコピーでACCESS...
-
ACCESSでテーブルのチェックを...
-
ACCESS2000「定義されているフ...
-
ACCESS検索★ある文字を複数のフ...
-
ACCESS VBAにてCSV...
-
ACCESSで和暦を西暦に・・・
-
フィールド数の多すぎる・フィ...
-
アクセス メモ型 255文字...
おすすめ情報