初心者なのですが どうぞ宜しくお願い致します。
accessに挑戦しているのですが判らないことが沢山あるので
お手すきの方 助言お願いいたします。
まず、やりたい事をのべます。
歯科医院での使用目的です。
1.カルテ番号を入力すると患者情報が出てきて
2.各歯科衛生士が毎日の作業(処置内容)を入力していきます。
(内容は衛生士ID、処置ID、処置日)
3.患者は月に2回来る事もあるのでデータの上書きではなく蓄積させ
4.毎月締め日に各衛生士ごとの処置一覧をレポートで出したい。
それにあたり今現在進めている作業は以下です。
[テーブル]
「患者情報」
カルテ番号、患者氏名、フリガナ、生年月日、性別
データはすべてインポート済みです。レコードは5000程です。
「衛生士マスタ」
衛生士ID、衛生士名前
3人いるので 3レコード作ってあります。
「処置内容マスタ」
処置ID、処置内容
3種あるので 3レコード作ってあります。
「処置履歴」
処置履歴ID(オートナンバー)、カルテ番号、衛生士ID、処置ID、処置日
データを蓄積させる為のテーブルと思って作ったのですが
そもそもこれはいらない??
上記4テーブルをリレーションさせ
ウィザードで「処置履歴クエリ」を作成。
カルテ番号の抽出条件に
=[カルテ番号を入力してください]と入力、保存。
「処置履歴クエリ」でカルテ番号を入力するも
データ出てこないので ためしに「処置履歴」テーブルに
カルテ番号100でデータを入れてみました。
すると カルテ番号100を入れると出てきました。
って事は やはり「処置履歴」テーブルにはデータが入っていないといけないと言う事ですよね。
だとすると 私のテーブルの作り方が間違っていると…。
今 この段階で足踏みしています。
どなたか 超初心者の私に 噛み砕いて助言いただけたら幸いです。
どうぞ 宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
#1、#3です。
テーブルをドラッグ・ドロップで子フォームを作成したことはなかったので、試してみました。いくつか気付いた点1.子フォームのレコードソース
「処置履歴」テーブルになっていますが、クエリにして並べ替え順を指定した方がよいでしょう。指定がないとDBがどのような順でデータを返すかは不定です
2.子フォームの表示形式
リストタイプ(データシートや帳票)でも良いでしょうが、単票にしてかつ日付降順にしておけば、最終レコードが表示され使いやすいかもしれません
この問題に関し、さらなる疑問点などが生じた場合は、補足などで質問するより、新しい質問で投稿することをお奨めします。「補足」ではごく少数の人しか読まないし、従って回答も偏ったものになってしまいます。
何度も丁寧に回答頂き ありがとうございました。
子フォームもご指摘の通り修復したお陰で無事作成できました。
今回作ったのをきっかけにさらに勉強していきたいと思います。
本当に ありがとうございました。
No.3
- 回答日時:
#1です。
親子フォームに関し、ちょっとサンプルを作ってみました。技術的には簡単ですが、作る課程を初心者向けに説明するのは、かなり長文になり大変です。親子フォームを解説する入門書沢山あるはずなので、そちらで勉強して、判らない部分を質問していただけないでしょうか?取り敢えず無料の解説では
http://www.btvm.ne.jp/~toyumi/foumu.html
この回答への補足
再度の回答 ありがとうございます。
親子フォーム、たどり着けました。
「処置履歴クエリ」を
SELECT 患者情報.患者番号, 患者情報.患者氏名, 患者情報.フリガナ, 患者情報.生年月日, 患者情報.性別
FROM 患者情報
WHERE (((患者情報.患者番号)=[カルテ番号を入力して下さい]));
と、変更しウィザードを使って
「患者情報フォーム」を作成しました。
ここに「処置履歴」テーブルをドラッグし
「処置履歴のサブフォーム」が出来ました。
こんな感じでいいでしょうか?
サブフォーム部分はリスト状でOKでしょうか?
No.2
- 回答日時:
たぶん、リレーションの張り方の問題でしょう。
クエリデザインビューで、リレーションの線が矢印なしになっていませんか?
この場合は、結びついている両方のテーブルにレコードが無いと表示されません(というか、両方に無いと表示されない、そういう種類のリレーションシップ)。
この線にカーソルをあてて、右クリックしてください。
手元にアクセスがないのでうろ覚えですが、「リレーションシップの種類」というような項目があります。
ここで「テーブル○○のレコード全部と、テーブル××の関連付けられたレコードを表示」というような(正確にはおぼえてません)種類を選びます。
分かりにくい文章なのですが、落ち着いて読めば意味がわかるはずです。
なお、こうして作ったクエリは更新できないクエリになるかもしれません。その場合は、入力のためには、No1方が提案されているように、親子フォームを作るのが便利です。
丁寧な回答ありがとうございます。
また お礼が遅くなってすみません。
リレーションですが 仰る通り矢印無しになっていました。
ご指摘頂きました親子フォームに挑戦したく思います。
初心者の私にも判るように 噛み砕いて説明していただき
ありがとうございました!!
No.1
- 回答日時:
テーブルの設計は、ご呈示のもので、基本的に良いと考えます。
で、フツーは患者氏名をアイウエオ順に一覧し、その一人を選べば、処置履歴が見えるように作ったりします。しかし作成しようとしているシステムでは、カルテ番号が判っているので、一覧など必要ないということでしょうか?
それならば親子フォームを作り、親フォームにカルテ番号を入力すると、子フォームにその患者の履歴一覧が表示され、これに追加もできます。そのようなフォームの作り方を知りたいのでしょうか?
後「処置履歴クエリ」の実体をSQL文でご呈示下さい。SQL文の表示方法が判らなければ、添付画像をご参考に。
この回答への補足
早速の丁寧な回答ありがとうございます。
また、お返事遅くなって 申し訳ありません。
ご指摘の通り カルテ番号は判っているので一覧は必要ありません。
親子フォーム! 初耳です!!
そして ご提示していただいた方法、すごく魅力的です!!!
是非 知りたいです。お願いいたします。
「処置履歴クエリ」のSQLです。宜しくお願い致します。
SELECT 処置履歴.処置履歴ID, 処置履歴.患者番号, 患者情報.患者氏名, 患者情報.フリガナ, 患者情報.生年月日, 患者情報.性別, 衛生士マスタ.衛生士ID, 衛生士マスタ.衛生士名前, 処置内容マスタ.処置ID, 処置内容マスタ.処置内容, 処置履歴.処置日
FROM 処置内容マスタ INNER JOIN (患者情報 INNER JOIN (衛生士マスタ INNER JOIN 処置履歴 ON 衛生士マスタ.衛生士ID = 処置履歴.衛生士ID) ON 患者情報.患者番号 = 処置履歴.患者番号) ON 処置内容マスタ.処置ID = 処置履歴.処置ID
WHERE (((処置履歴.患者番号)=[カルテ番号を入力してください]));
お探しの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ランキング
-
データの二重表示の原因
-
3つ以上のテーブルをUNIONする...
-
2つの項目が重複するレコード...
-
Access VBA Me.Requery レコー...
-
access入所退所日のデータから...
-
ACCESSにて全項目(レポート)...
-
PostgreSqlのテーブルをVBから更新
-
Accessにインポートしたら並び...
-
Access 1レコードずつcsvで出力...
-
(ACCESS)並び替えをしないで...
-
SQLiteで最も古いレコードのみ...
-
SQLServerで同一条件レコードの...
-
Accessでレコードが更新された...
-
Accessで重複したデータを一件...
-
ACCESSデーターベースの差分バ...
-
Accessでの排他制御
-
ACCESSのBookmarkプロパティの...
-
数百万件レコードのdelete
-
PostgreSQLへのODBC接続について
-
access ADODB でテーブルを更新...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
Access 1レコードずつcsvで出力...
-
Access VBA Me.Requery レコー...
-
2つの項目が重複するレコード...
-
数百万件レコードのdelete
-
非連結サブフォームのレコード...
-
Access 削除クエリが重い
-
ACCESSのBookmarkプロパティの...
-
ManagementStudioからのデータ削除
-
SQLServerで同一条件レコードの...
-
Access カレントレコードがあり...
-
Accessでの禁止文字チェック
-
Accessでの排他制御
-
Accessの重複クエリで最小以外...
-
テーブルのレコード削除ができ...
-
(ACCESS)並び替えをしないで...
-
Accessで重複したデータを一件...
-
Accessでレコードが更新された...
おすすめ情報