みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
ファイルメーカーの使い方がよく分からないのでお聞きします。
FMpro12、win7です。
今、あるレイアウトが2つあります。
レイアウトAとレイアウトBとします。
レイアウトAのフィールドに入ってるデータ(レコード)をレイアウトBにスクリプトを使ってデータをコピーすることはできますか?
スクリプトの中には、「テキストを挿入する」というスクリプトステップはありますが、これだと自分でテキストを打ち込まないといけません。
そうではなくて、レイアウトAのレコードをそのままレイアウトBにコピーすることがしたいです。
ちなみにこのレイアウトAとレイアウトBは、まったく同じレイアウトでフィールドも繰り返しフィールドが宛てられているだけです。
レイアウトAは繰り返し[1]、レイアウトBは繰り返し[2]です。
データのコピーはできますでしょうか?
Offline
状況がうまく理解できていないのですが
同じテーブルなのか?違うテーブルなのか?
>レイアウトAは繰り返し[1]、レイアウトBは繰り返し[2]です。
では、どの繰り返し位置を使うのか?
といったことで、状況は変わるかと思いますが。。
Offline
状況がうまく理解できていないのですが
同じテーブルなのか?違うテーブルなのか?
>レイアウトAは繰り返し[1]、レイアウトBは繰り返し[2]です。
では、どの繰り返し位置を使うのか?といったことで、状況は変わるかと思いますが。。
テーブルは同じテーブルです。
レイアウトAとレイアウトBに配置されているフィールドは全て同じフィールドが配置されています。
そのフィールドは、すべて繰り替えしフィールドが使われています。
レイアウトAに配置されているフィールドは繰り返し1が定義
レイアウトBに配置されているフィールドは繰り返し2が定義されています。
分かりにくくてすいません。
Offline
[
レイアウトAに配置されているフィールドは繰り返し1が定義
レイアウトBに配置されているフィールドは繰り返し2が定義されています。
この状況はわかったんですが
一体コピーしたい場所と
それからどうするのか?
貼り付け(ペースと)したい?
それがどこへ?
こうしたことがわからない
それにしても
なんで同じレコートで レイアウトが複数ある?
これもわからないことの一つ
Last edited by シーラカンス (2017-05-01 10:59:56)
Offline
繰返しフィールド1回の値を同じ繰返しフィールド2回へコピー。
ならば、
フィールド設定[繰り返し[2]; 繰り返し[1]]
でいいのですが。。
詳しいことは分かりませんが、
> レイアウトAとレイアウトBに配置されているフィールドは全て同じフィールドが配置されています。
>
> そのフィールドは、すべて繰り替えしフィールドが使われています
ファイル構造が間違っている様に思えますよ。
Offline
繰り返しフィールドは、データの保存としては絶対に使わないようにしないと、後で運用が破綻しますよ。
もっと具体的にどのようなデータをどのように動かしたいかを書かれると、具体的にアドバイスが得られます
Offline
皆さま、アドバイスを頂きありがとうございます。
繰り返しフィールドは、データの保存としては絶対に使わないようにしないと、後で運用が破綻しますよ。
もっと具体的にどのようなデータをどのように動かしたいかを書かれると、具体的にアドバイスが得られます
当院での患者の検査結果を1ヵ月ごとに記録しています。
なので同じ検査の結果は検査する時期によって、繰り返しフィールドを使って、1ヵ月おきに記録をしています。
繰り返しフィールドをデータの保存として使っているのですが、これは辞めた方がいいのですかね?
このデータは、研究用に引っ張ってきたりというようなデータ運用もしようと考えているのですが。
Offline
やめた方がいい
というより、
やってはいけないことでしょう。
繰り返しの分を全て非繰り返しとして、
検査結果ごとにレコードを増やすのです。
Offline
やめた方がいい
というより、
やってはいけないことでしょう。繰り返しの分を全て非繰り返しとして、
検査結果ごとにレコードを増やすのです。
そうなんですか。。。
勉強不足でした。
というよりも、前任のFMのシステムを作成したスタッフの誤りですね。
どうしよう・・という感じですね。
ということは、今すぐにでも、繰り返しフィールドを使った運用は辞めてポータルを使って運用していった方がいいということでしょうか?
Offline
> このデータは、研究用に引っ張ってきたりというようなデータ運用もしようと考えているのですが。
すでに運用として破綻していましたね。
今は、どのように保存されているのですか。繰り返し位置毎に決まったデータが入っているのですか。それならば、その項目名を設定したグローバル繰り返しフィールドを作り、繰り返しを複数のレコードに分解するインポートを行えば簡単に移行できます。
Offline
> このデータは、研究用に引っ張ってきたりというようなデータ運用もしようと考えているのですが。
すでに運用として破綻していましたね。今は、どのように保存されているのですか。繰り返し位置毎に決まったデータが入っているのですか。それならば、その項目名を設定したグローバル繰り返しフィールドを作り、繰り返しを複数のレコードに分解するインポートを行えば簡単に移行できます。
心が折れそうですが、頑張って良い運用ができるように、修正していきたいと思います。
今、この検査結果の繰り返しフィールドは6回に定義されていて、患者の入院期間によって違いますが、繰り返し位置毎に検査データが格納されています。
繰り返しのデータをレコードに分解できるのですね。
かなり膨大な数の患者のデータがあるのですが。
では、まずやるべきことは繰り返しに格納されているデータをまず分解して、ポータル表示するべきだということですね。
Offline
ファイルのデータなしのコピーを取って、
それをいじることをお勧めしますよ。
そのファイルの繰り返しを全て非繰り返しに変更して、
元のファイルのデータをインポートします。
その際に繰り返しをレコードに分けてインポート出来ます。
Offline
ファイルのデータなしのコピーを取って、
それをいじることをお勧めしますよ。そのファイルの繰り返しを全て非繰り返しに変更して、
元のファイルのデータをインポートします。
その際に繰り返しをレコードに分けてインポート出来ます。
チポ様、ありがとうございます。
まだよくわかっていないのですが、今ある繰り返しフィールドを非繰り返しにして、フィールドを繰り返しの数だけ作らないといけないということではないですよね?
ポータルを使えば、フィールドの数は1つでいいのでフィールドの数を増やさないでもいいのでしょうが。
例えば、[検査データフィールド]を今まで6回繰り返しに定義していました。
これを[検査データフィールド1]、[検査データフィールド2]・・・[検査データフィールド6]という風にフィールドを増やすのではなく、1つの[検査データフィールド]でポータルを使ってフィールドではなくレコードを増やすという認識でいいのですよね?
これがチポ様が言われる
「検査結果ごとにレコードを増やすのです。」
ということですよね。
本当に初歩的な質問で申し訳ありません。
Offline
1患者1検査1項目で1レコードとなるテーブルを作ります。そこに必要なフィールドは,患者ID、検査日(日時)、項目名,検査結果でしょう。
その繰り返しのそれぞれは,何が入っているのですか。
繰り返し位置毎にデータの種類が決まっているのでしたら簡単ですが,レコード毎に項目が違うのでしたら,少し工夫が必要でしょう。
Offline
1患者1検査1項目で1レコードとなるテーブルを作ります。そこに必要なフィールドは,患者ID、検査日(日時)、項目名,検査結果でしょう。
その繰り返しのそれぞれは,何が入っているのですか。
繰り返し位置毎にデータの種類が決まっているのでしたら簡単ですが,レコード毎に項目が違うのでしたら,少し工夫が必要でしょう。
ご丁寧にありがとうございます。
勉強になります。
繰り返し位置毎にデータの種類は決まっています。
例えば、肘の屈曲角度だったら1~6までの繰り返しで、肘の角度が入るようになっています。
Offline
患者によって,入力内容が異なっていませんか。
ある人は肘の屈曲角度で,別のある人は膝の屈曲角度とか。
また、その測定の日付データが必要だと思いますが,それはどこに入っていますか。別の繰り返しフィールドですか。
Last edited by Shin (2017-05-06 09:01:16)
Offline
患者によって,入力内容が異なっていませんか。
ある人は肘の屈曲角度で,別のある人は膝の屈曲角度とか。
また、その測定の日付データが必要だと思いますが,それはどこに入っていますか。別の繰り返しフィールドですか。
Shin様、解答をいただき本当にありがとうございます。
右肘の屈曲、左肘の屈曲、右肩の屈曲、左肘の屈曲というようにその検査項目のフィールドをその都度作っています。
測定の日付データは、別の繰り返しフィールドで1つしかありません。
なので、肘の屈曲角度を測った日は「○○日」、肩の屈曲角度を測った日は「○○日」、という部位別での日付データは残していません。
患者ごとに定期的に(1ヵ月おき)の繰り返しフィールドで日付けが入っています。
これもよくないんです...かね?
Offline
> 右肘の屈曲、左肘の屈曲、右肩の屈曲、左肘の屈曲というようにその検査項目のフィールドをその都度作っています。
患者毎にレイアウトを用意している、という意味でしょうか。それとも、共通の繰り返しフィールドに、タイトルを付けているだけですか。
> 測定の日付データは、別の繰り返しフィールドで1つしかありません。
上の各測定値に対応した日付でしょうか。例えば,繰り返し位置1の日付の各測定器は,繰り返し位置1に保存されている,という事ですか。
Offline
Shin様、ご回答が遅くなり申し訳ありません。
これを機会にデータの運用方法を変えていきたいと思っています。
文章では分かりにくいので、今、使っている評価表のレイアウトを図で貼付します。
https://box.yahoo.co.jp/guest/viewer?si … ype=detail
これは初期の評価レイアウトで、当院では1ヵ月に1回、医師に報告書を提出するために同じようなレイアウトが複数毎あります。
その複数枚のレイアウトに、繰り返しフィールドを置いて、データの保存をしています。
> 右肘の屈曲、左肘の屈曲、右肩の屈曲、左肘の屈曲というようにその検査項目のフィールドをその都度作っています。
患者毎にレイアウトを用意している、という意味でしょうか。それとも、共通の繰り返しフィールドに、タイトルを付けているだけですか。
共通の繰り返しフィールドにタイトルを付けているだけです。
> 測定の日付データは、別の繰り返しフィールドで1つしかありません。
上の各測定値に対応した日付でしょうか。例えば,繰り返し位置1の日付の各測定器は,繰り返し位置1に保存されている,という事ですか。
測定日に対応した日付ではありません。
医師に提出するのが定期であるので、その日に合わせて検査測定をして結果を入力していく形です。
Offline
> 例えば、肘の屈曲角度だったら1~6までの繰り返しで、肘の角度が入るようになっています。
と、提示されたイメージが合わない様に思いますが。
角度などの情報は、1回の測定毎に別フィールドに保存されており、ADL評価結果は、1回目の評価は繰り返し位置1に、2回目の評価は繰り返し位置2に保存されている、という事ですか。
それを入力するために、提示されたイメージが複数個有る、というでしょうか。
Offline
> 例えば、肘の屈曲角度だったら1~6までの繰り返しで、肘の角度が入るようになっています。
と、提示されたイメージが合わない様に思いますが。角度などの情報は、1回の測定毎に別フィールドに保存されており、ADL評価結果は、1回目の評価は繰り返し位置1に、2回目の評価は繰り返し位置2に保存されている、という事ですか。
それを入力するために、提示されたイメージが複数個有る、というでしょうか。
説明が分かりにくくなって申し訳ありません。
添付した図レイアウトの左側に「フィールドが1つ1つあります」、右側に「繰り返しフィールドです」と書いてしまったので分かりにくかったですね。
角度の情報もADLの評価結果も全て1回目の評価は繰り返し位置1に、2回目の評価は繰り返し位置2に保存されています。
全てのフィールドが1つ1つあるのですが、それら全て繰り返しフィールドとなっているという意味です。
https://box.yahoo.co.jp/guest/viewer?si … ype=detail
このレイアウトには、評価結果は全て1つのフィールドで独立しており繰り返しが充てられています。
このレイアウトは【初期運動器】となっていますが、このようなレイアウトが、
・初期
・1ヶ月
・2ヵ月
・3カ月
・4ヶ月
・最終
というレイアウトがあります。
・初期のレイアウトには、繰り返しフィールドの[1]
・1ヶ月のレイアウトには、繰り返しフィールドの[2]
・2ヶ月のレイアウトには、繰り返しフィールドの[3]
・3ヶ月のレイアウトには、繰り返しフィールドの[4]
・4ヶ月のレイアウトには、繰り返しフィールドの[5]
・最終のレイアウトには繰り返しフィールドの[6]
が割り当てられています。
先ほど乗せたレイアウトの図は初期評価のものなので、フィールドは繰り返しの[1]が割り当てています。
乱文で申し訳ありません。
Offline
> [検査データフィールド1]、[検査データフィールド2]・・・[検査データフィールド6]という風にフィールドを増やすのではなく、
> 1つの[検査データフィールド]でポータルを使ってフィールドではなくレコードを増やす
その通りです。
フィールドは検査項目ごとに一つで、1回の検査に1レコードです。
Shinさんの
> 1患者1検査1項目で1レコードとなるテーブルを作ります
では無く、
1患者 & 1検査月で1レコード( 全検査項目のフィールドが有る )
これが私のお勧めです。
Offline
> 右肘の屈曲、左肘の屈曲、右肩の屈曲、左肘の屈曲というようにその検査項目のフィールドをその都度作っています。
ということで、一人毎に検査項目が異なる想定でしたので、このような構成を考えましたが、フィールド毎に内容が固定されているので、1患者1測定日で1レコードのテーブル構成で良いと思います。
患者毎(1治療シリーズ毎)に1レコードを作り、そこから患者IDと測定日で、測定結果テーブルとリレーションを張れば良いです。
今のテーブルからは、繰り返しフィールドを分解するインポートを行うだけでデータの移行はできますので、容易に移行できるでしょう。
その上ですが、最初の質問の
> データのコピーはできますでしょうか?
は、その一部の項目で、前月のデータを当月に持ち込みたい、という事でしょうか。
患者ID と、日付(Xヶ月後)で直前のデータをルックアップで取ってくれば良いです。
ただ、患者IDで管理していると,同じ患者が治療終了後に、別疾患で再度リハビリに入ると、前回の最終データを引き継いでしまいますので、それの処理は必要かもしれません。
1治療毎に新たなレコードを作成していく様な運用(色々な意味でこの運用がお勧め)にすると,その処理は要らないでしょう。
簡単なサンプルです。(記録用のフィールドはごく一部しか実装していませんが)左上の評価区分(開始時,1ヵ月...)を変更する事で,参照する評価レコードが連動します。
https://www.dropbox.com/s/d2x1zggicy7vt … 7.zip?dl=0
Last edited by Shin (2017-05-11 10:51:22)
Offline
Shin様
ご丁寧にサンプルまで頂きありがとうございます。
イメージが付きました。
まだまだ分からないことが多いので勉強できると思うと嬉しいです。
サンプルを参考に勉強させていただきます。
ありがとうございました。
Offline
[ Generated in 0.008 seconds, 9 queries executed - Memory usage: 642.09 KiB (Peak: 674.99 KiB) ]