記録を記入する際の動作

###・前提条件 ・発生している問題・エラーメッセージ ・実装したい機能
患者情報に、氏名等の登録

活動記録に、日ごとの問診状況を記載する形でアプリを作成しました。

スクリーンショット 2024-05-22 060419

新患の場合、氏名を確認し、患者情報を登録し、

患者ごとの記録一覧から、日ごとに記録を登録するようにしています。

①患者名を登録したのち、そのまま記録登録のページに飛ぶようにしたい。
※患者登録のフォームから、氏名を取り出した上で、活動記録の新しいフォームに飛び、氏名が記載された状態で、問診内容を記録できるようにしたい。

②患者名などを登録したのち、問診をしている最中に日々の記録ではなく、患者情報として記録したい備考などが聞き出せることがあり、活動記録のフォーム上で、患者情報を修正・追加できるようにしたい。

試したこと

①患者情報登録時に、アクションで氏名をコピーした後に、活動記録に飛ぶように設定しようと試みましたが、アクションがひとつのデータベースに紐づいている為、うまく作動させることができませんでした。

②活動記録のフォーム上にデータグリッドを入れて、直接編集できるようにするばいいのではと考え、設置してみましたが、本人のみフィルターをかけることができませんでした。
(氏名を自動記載するようにしていますが、submitしていない状態では新しい行にまだ記載されていないから?なのか、Screenデータと一致するものをフィルターにかけると何もでてこない状態になりました。)


↑の写真はデータの表示行数を1行のみにしただけです。

補足情報 (調べたURL/参考になりそうな事例)

データの構成があまり見えてませんが、つまり活動記録 ⇔ 患者 のページの遷移をしたいということですか?

基本的には、
Pageの遷移は、
プロフィール一覧 → プロフィールの詳細 ⇔ 活動記録
で行きするようになると思います。

データの構成は、患者に対して、複数の活動記録が紐づけられてます。

なので、どちらかというと、アクションの問題と言うよりもRelationの作り方の問題なのかと思いました。

返信ありがとうございました。

問診をしながらアプリへ直接打ち込みをしていくことを想定しています。
活動記録を記載する際に、当日の記録としてではなく、大元の患者情報に追加・修正を行うべき情報が聞き取れることがありました。

その際に、一旦活動記録を提出し、再度患者情報を開き直す必要があった為、「活動記録」の記入フォーム内で、「患者情報」を編集できる状態を作りたかったのです。
DateGridを設置して、編集できる環境はできたのですが、うまくFilterをかけることができず、全員分のDate Gridが表示されていたことが問題でした。

試行錯誤した結果、当初は

VALUE FROM SCREENの氏名を自動記入させる状態だったのを、EDIT COMPONENTSで記入するようにしたところ、ScreenValueが思ったように機能してくれて作りたい環境を実現できました。

せっかくアドバイス頂いたRelationを使いこなせていませんが、、、

またご質問させて頂くかと思います。
宜しくお願い致します!!!

おおなるほど、結構な力業の実装ですね。とはいえ、使えるようになるのが一番だと思うので、
ただ、実装できて何よりです。

ここまで実装されているとRelationは、必要ないですが、
例えば、担当者が結婚して名前が変わる・・など、長期運用の課題も出てくるとは思いますので、段階に応じて検討してみてくださいませー。

ありがとうございます!

ちなみにRelationを用いたスマートな方法としてはどのような構造になるのでしょうか?

私の認識だと、

「患者情報」↔「活動履歴」のrelationを組んだ場合、

「患者情報」内の 生年月日、家族構成、住所、などの患者固有の情報を、lookupで引っ張り出して、「活動履歴」を編集する際に参照したり、自動記入ができるようになる。

程度の認識なのですが、Relationを組んだ際に使えるメリットはどのようなものがあるんでしょうか?

少ないデータベースだとどっちも同じようになると思いますが、
Relationをするしないでは保存するデータの構造が全く違ってきます。

>「活動履歴」を編集する際に参照したり、自動記入ができるようになる。

挙動の認識はあっているのですが、これのデータが多い場合には、自動記入がかなり大きく影響してきます。

例えば、既存のシステムでは、担当者はテキストで入っているため、システム上、100件のレコードに対して100人の担当者がテキストで存在してます。

その点Relaitonであれば、担当者が社内で10名であれば、Relaitonを組めば、100件のレコードに対して、10名の担当者がいるとシステムが理解します。

現在は、YusukeさんがFileter実装しているので、ユーザーは同じように使えてますが、例えば、Relationを組んだ場合、エンドユーザーが、新規で担当者をつくり11人目を作れば、自動で「活動履歴」を作る際に11名の担当者リストから、選ぶようにできている。。 みたいにすることも可能です。
その時に、担当者を選ぶ際に、男性は自動で表示させない。。とかも自動で構築できます。(一般論です、もしかしたらGlideはできないかも、、Adaloや他のツールは可能。でも多分できる。)

他も、データべースの数を少なくするという意味でも、↑の例でも100件と10件の省略ができます。*Glideだと、ROWが減っても、あんまり恩恵ないんですけど。

なので、Yusukeさんの動作の認識はあってますし、テスト的に運用する程度のデータ数なら、LookUpでも問題無いと思いますよー。
Relationが面倒なのも事実なのでw

「いいね!」 1

ありがとうございました!

今関わらせてもらっている事業所で、「こんなのがあれば・・・」というお話をお聞きするので、テスト的にいろいろと作ってみて、とりあえず数を作ってみて、使い勝手など経験積んでみます。

「いいね!」 2