初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-08-03 14:16:07

taka
Member

インポートにおけるレコードの重複の解消方法について

いつもお世話になっています。 FM15Ad Win7

OPE予定を作成しています。
電子カルテから予定をエクセルで抜き出し、インポートしようと思っています。
ファイルメーカーはOPE1件に対して1レコードで作成しようと思っているのですが、落としたエクセルファイルだと1術式1件になっていて1件のOPEに対して術式が増えるほどレコードが増えてしまいます。

1週間分のOPE予定を入力するので手打ちにするのは時間と手間がかかるので出来ればインポートを使用したいです。
一つのレコードにまとめることはできますでしょうか?

宜しくお願いします。

Offline

#2 2017-08-03 15:37:45

チポ
Member

Re: インポートにおけるレコードの重複の解消方法について

単にOPEをユニークに保ってインポートしたいのなら、
入力値の制限で
  常時・ユニーク
とすればいいのですが、、

そういうことなのかな?

Offline

#3 2017-08-04 08:54:54

Shin
Member

Re: インポートにおけるレコードの重複の解消方法について

データのアップデートがある可能性があります。患者名と日付で称号したインポートでもいいのでは。ただし、1患者1日に1手術、というのが前提ですが。

Offline

#4 2017-08-04 15:56:01

taka
Member

Re: インポートにおけるレコードの重複の解消方法について

チポ様 Shin様
回答ありがとうございます。

書き方が悪くて申し訳ないです。
エクセルで落としてくるファイルは

患者ID 患者氏名 日付 所要時間  術式
0000   A   8/1   2    aaa
0000   A   8/1   2    bbb
0001   B   8/1   1    ccc
0002   C   8/1   5    ddd

のように落ちてきます。

ファールメーカー側では

患者ID 患者氏名 日付 所要時間  術式
0000   A   8/1   2    aaa、bbb
0001   B   8/1   1    ccc
0002   C   8/1   5    ddd

のようにしたいのです。
中止や延期などの際はインポートではなく手動でそのレコードをはずす(別テーブルに移す)ということを実装したいと思っています。

インポートする情報は基本的に1患者1日1手術にはなっています。
緊急の場合(出戻り含む)は手動で入力としたいと考えています。

Offline

#5 2017-08-04 16:40:13

チポ
Member

Re: インポートにおけるレコードの重複の解消方法について

> 0000   A   8/1   2    aaa、bbb
危惧していた構造です。

術式をこのようにインポートするのは無理だと思いますよ。

エクセルのファイルはそのままFMのテーブルとして、
1術式を1レコードとします。

もう一つ、OPE1件ごとを1レコードとするテーブルを作り、
上記のテーブルとリレーションして、ポータルで術式を表示。

これがお勧めですね。

Offline

#6 2017-08-07 13:22:10

taka
Member

Re: インポートにおけるレコードの重複の解消方法について

チポ様
ありがとうございます。

インポート後にスクリプトを使ってとかでも出来ないのでしょうか?
出来れば術式は一つにまとめたいと考えています。
が、他にやり方がないのならポータルしかないのですね・・・

Offline

#7 2017-08-07 14:17:54

Hiro
Member

Re: インポートにおけるレコードの重複の解消方法について

別途クロス集計テーブルで実現すれば良いのでは、

Offline

#8 2017-08-07 14:54:35

tomato
Member

Re: インポートにおけるレコードの重複の解消方法について

よく理解できてませんが、インポート後、スクリプトでガリっと(未検証)
全然違ったらスルーで。。

・自己リレ設定
患者*自己リレ::患者
日付*自己リレ::日付

・スクリプト
ウインドウの固定
検索実行:患者 [!] and 日付[!]
レコードのソート:患者昇順・日付昇順
Loop
関連レコード 取得元:自己リレ レイアウト:現在のレイアウト 関連レコードのみを表示 新規ウィンドウ
フィールド設定:術式  値: Substitute ( List ( aaa 2::術式 );¶;"," )
レコード対象外に
対象レコード削除
ウインドウを閉じる「現在のウインドウ」
レコードへ移動「次の;最後まできたら終了」
End Loop
全レコードを表示

Offline

#9 2017-08-07 16:17:28

Hiro
Member

Re: インポートにおけるレコードの重複の解消方法について

別途テーブルにクロス集計して取り込む、2段構えインポートによる作例サンプルをアップしました。

●「手術クロス集計表.fmp12」 → https://yahoo.jp/box/QGs8SJ

Offline

#10 2017-08-08 06:45:40

taka
Member

Re: インポートにおけるレコードの重複の解消方法について

Hiro様
サンプルまでありがとうございます。
まさしくやりたかった形です。
参考にしてやってみます。

tomato様
具体的なスクリプトを書いていただいてありがとうございます。
最初は私も似たようなスクリプトを書きましたが挫折しました。。。
その方法でも試させていただきます。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 10 queries executed - Memory usage: 522.44 KiB (Peak: 527.34 KiB) ]