初心者のFileMaker pro Q&A

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

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

ログインしていません。

アナウンス

Claris FileMaker Pro 19 ヘルプ
新しい質問は、新規トピック から投稿して下さい。


返信

メッセージを書いて送信してください。
オプション
登録の確認

実在の人物による登録であることを確認します。

戻る

トピックレビュー(最新表示)

ふー
2022-01-12 17:58:05

himadanee様
返信ありがとうございます
固定長という意味を勘違いしていました

チポ様
返信ありがとうございます
おっしゃる通りの規則性でございます。
チポ様が”?”にしているところは検査機関のコードだったり基準値より高いか低いかを表しているそうなので大丈夫です


Shin様
サンプルを作成していただきありがとうございます。
現在、正確なフォーマット状態を問い合わせしています。

Shin
2022-01-12 09:36:59

こんな形で、中間テーブルを作っておけばいいのかも。(かなり想像で)
https://www.dropbox.com/s/0ly0weivk03y0 … 2.zip?dl=0

送信元に問い合わせて、テキストのフォーマット情報をお聞きになればいかがでしょう。

チポ
2022-01-12 09:36:07

このようなテキスト処理の場合、その規則性がとても重要です。

> H202201040000001234      1   SMS 37D2002  96.3        2               D2007  913         0               D2008  99          0               D2010  959         2               D2011  9197        0               D2012  915         0               D2020  953         0               D2025  984.5       1               D2026  911.64      1               D2028  95.1        0               D2029  9138        0             *

この例からは
H =?
20220104 = 日付?
0000001234  = 10桁のID?
半角スぺース = 6個
1  =コメント
半角スぺース =3個
SMS 37 = ?
---以下繰り返し
D = 以下検査コード
2002 = 検査コード
半角スぺース =2個
9 = 以下検査値
6.3 = 検査値
半角スぺース =8個
2 = ?
半角スぺース =15個
---以上繰り返し

これが不変の規則
としていいのでしょうか?

繰り返しは1回を1レコードに分ける?

himadanee
2022-01-12 08:50:50

カンマやタブの区切り文字がない(長さが足りない分はスペースで埋めている)固定長のテキストにしか見えませんが。。。
出力しているソフトの仕様書があるのでは。
勝手に推測して計算式を作っても、想定外のデータがあった場合に危険なことになります。
「1234が患者さんのID」と言ってますが実際は「0000001234」ではないかと思います。(4桁ではすぐにあふれるし、その前までが年月日なので)

ふー
2022-01-12 07:55:31

himadanee様返信ありがとうございます

H202201040000001234      1   SMS 37D2002  96.3        2               D2007  913         0               D2008  99          0               D2010  959         2               D2011  9197        0               D2012  915         0               D2020  953         0               D2025  984.5       1               D2026  911.64      1               D2028  95.1        0               D2029  9138        0             *
H202201040000005678      1   SMS 37D2045  95.4        2               D2075  919         0               D2022  916         0               D2058  928         2               D2011  9213        0               D2012  911         0               D2020  9117        1               D2025  964.1       1               D2088  98.14       1               D2028  95.3        0               D2029  9138        0             *
このような固定式ではないtxtファイルです。

Shin
2022-01-12 02:17:34

2バイト文字が入る可能性があるのでしたら、ちょっと面倒ですよ。

himadanee
2022-01-11 21:00:09

固定長ですか?
1つのフィールドにインポートしてから、Middle()関数などで取り出す。

ふー
2022-01-11 20:33:54

Windows
ファイルメーカー18

患者さんのIDでリレーションを組んであるデータベースに下記のような検査値のtxtファイルのインポートをしたいのですがどのような方法でインポートしているのでしょうか?

H202112290000001234      4   SMS 01D3853  989.1       1            *
このようなtxtファイルです。

1234が患者さんのID
その後の4がコメント
Dの後が検査コード
9の後が検査値
✳︎で終了


なにかヒントを頂けたら幸いです。

Board footer

Powered by FluxBB