みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
Windows10 FMP16
お世話になっております。
職員マスタに 職歴期間フィールド 職歴フィールド があります。
これは履歴書の職歴欄を入力したものになっており 職歴期間はテキストで H30.10月~H30.11月 というような感じに入力されています。
ここから別フィールドに前職の経験年数をとりたい場合どのようにするのがいいでしょうか。
職歴は1~15ぐらいまであります(繰り返しフィールドではない)
最終的にやりたいことは、前職の経験年数を計算したいのです。
もっと欲を言えば、業種別の経験年数を拾いたいのですがいいアイデアがないのでまた今度にします。
(例えば、医療業で何年何か月、営業で何年何か月というよう感じで)
よろしくお願い致します。
Offline
> テキストで H30.10月~H30.11月 というような
必ず
H30.10月~H30.11月
この書式になっていればいいですが、そうではないのでしょうか?
Offline
何かデータ処理をしたいのであれば、基礎データ形式を日付形式でデータ保管
(なければ形式変換処理して)するのが吉です。
Offline
チポ様
今現在入力されているものは その形になっています。
Hiro 様
おっしゃる通りですね、今入力されているものを何とか変換したいと思います。
Offline
経験年ではなく、経験月で計算しておき、年へ変換するのが簡単でしょう。
例えば、H30.10月~H30.11月 ならば、2018年10月〜2018年11月 で、年 * 12 + 月 という式で変換して、24226 ~ 24227 になります。これを単に引けば月数ができますので、Div () すれば年になります。
もうすぐ元号が変わりますので、西暦で計算するようにしておかないと面倒ですよ。
Offline
Shin様
月で計算しておき年へ変換するのですね、参考にしてやってみたいと思います。
西暦で管理はその通りですね、ありがとうございます。
Offline
H30.10月~H30.11月
この書式に限れば、
「H」と「月」を消し、
「.」と「〜」を¶に変えれば、
( 3 行目 * 12 + 4 行名 )- ( 1 行目 * 12 + 2 行名 )
が期間の月数です。
後はShinさんの通りで求められますよね。
Offline
書き落とした、、
> 職歴は1~15ぐらいまであります
全部を1レコードに詰め込まないで、
1職歴ごとに1レコードとすると後の処理が楽ですよ。
Offline
チポ様
計算式は理解できたのですが、具体的に「H」「月」を消すという作業は、別の計算式フィールドに書くのでしょうか、
それとも何か抽出の関数があるのでしょうか
>1職歴ごとに1レコードとありますが
テーブル職員マスタ
レコード1職員Aさん 職歴フィールド1 職歴期間フィールド1
職歴フィールド2 職歴期間フィールド2
・
・
・
職歴フィールド15 職歴期間フィールド15
現在このようになっています。
データベース filemaker ともに初心者で勉強不足なのですが、このような形からは管理がしづらいでしょうか。
Offline
DBの形で考えると、
ひとり かつ 1職歴
ごとに1レコードとするテーブルを作り、
現在の職員マスタとリレーションして関連づける。
これが正しい形でしょう。
現在の形からはインポートを使って移行が可能です。
職歴の年月を求める計算ですが、
計算式で一気に求めることも可能ですが、
理解しやすい様に、中間のフィールドを作って求めましょう。
> 「H」と「月」を消し、
> 「.」と「〜」を¶に変え
これを求める計算フィールド1の計算式
Substitute ( 職歴期間 ; [ "H" ; "" ] ;
[ "月" ; "" ] ;
[ "." ; ¶ ] ;
[ "〜" ; ¶ ] )
このフィールドの配置はフィールド枠を4行分の大きさにします。
これから、月数を求める計算フィールド2の計算式
( GetValue ( 計算フィールド1 ; 3 ) * 12 + GetValue ( 計算フィールド1 ; 4 ) ) -
( GetValue ( 計算フィールド1 ; 1 ) * 12 + GetValue ( 計算フィールド1 ; 2 ) )
これを年月にすればいいでしょう。
Offline
チポ様
DBの構築の知識をもっと深めていきたいと思います、ありがとうございます。
詳細のやり方までご教授いただきありがとうございます。
さっそくやってみたいと思います。
ご回答いただきました皆様、ありがとうございました。
Offline
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 520.67 KiB (Peak: 525.21 KiB) ]