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

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

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

You are not logged in.

Announcement

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


#1 2018-12-04 14:25:11

koshilow
Member

経験年数の拾い出しについて

Windows10 FMP16
お世話になっております。

職員マスタに 職歴期間フィールド 職歴フィールド があります。
これは履歴書の職歴欄を入力したものになっており 職歴期間はテキストで H30.10月~H30.11月 というような感じに入力されています。
ここから別フィールドに前職の経験年数をとりたい場合どのようにするのがいいでしょうか。
職歴は1~15ぐらいまであります(繰り返しフィールドではない)

最終的にやりたいことは、前職の経験年数を計算したいのです。

もっと欲を言えば、業種別の経験年数を拾いたいのですがいいアイデアがないのでまた今度にします。
(例えば、医療業で何年何か月、営業で何年何か月というよう感じで)

よろしくお願い致します。

Offline

#2 2018-12-04 15:09:42

チポ
Member

Re: 経験年数の拾い出しについて

> テキストで H30.10月~H30.11月 というような
必ず
  H30.10月~H30.11月
この書式になっていればいいですが、そうではないのでしょうか?

Offline

#3 2018-12-04 15:19:48

Hiro
Member

Re: 経験年数の拾い出しについて

何かデータ処理をしたいのであれば、基礎データ形式を日付形式でデータ保管
(なければ形式変換処理して)するのが吉です。

Offline

#4 2018-12-04 15:57:59

koshilow
Member

Re: 経験年数の拾い出しについて

チポ様
今現在入力されているものは その形になっています。

Hiro 様
おっしゃる通りですね、今入力されているものを何とか変換したいと思います。

Offline

#5 2018-12-04 16:04:24

Shin
Member

Re: 経験年数の拾い出しについて

経験年ではなく、経験月で計算しておき、年へ変換するのが簡単でしょう。
例えば、H30.10月~H30.11月 ならば、2018年10月〜2018年11月 で、年 * 12 + 月 という式で変換して、24226 ~ 24227 になります。これを単に引けば月数ができますので、Div () すれば年になります。
もうすぐ元号が変わりますので、西暦で計算するようにしておかないと面倒ですよ。

Offline

#6 2018-12-04 16:12:18

koshilow
Member

Re: 経験年数の拾い出しについて

Shin様
月で計算しておき年へ変換するのですね、参考にしてやってみたいと思います。
西暦で管理はその通りですね、ありがとうございます。

Offline

#7 2018-12-04 16:21:02

チポ
Member

Re: 経験年数の拾い出しについて

H30.10月~H30.11月
この書式に限れば、
「H」と「月」を消し、
「.」と「〜」を¶に変えれば、

( 3 行目 * 12 + 4 行名 )- ( 1 行目 * 12 + 2 行名 )
が期間の月数です。

後はShinさんの通りで求められますよね。

Offline

#8 2018-12-04 16:23:08

チポ
Member

Re: 経験年数の拾い出しについて

書き落とした、、

> 職歴は1~15ぐらいまであります
全部を1レコードに詰め込まないで、
1職歴ごとに1レコードとすると後の処理が楽ですよ。

Offline

#9 2018-12-04 19:59:24

koshilow
Member

Re: 経験年数の拾い出しについて

チポ様
計算式は理解できたのですが、具体的に「H」「月」を消すという作業は、別の計算式フィールドに書くのでしょうか、
それとも何か抽出の関数があるのでしょうか

>1職歴ごとに1レコードとありますが
テーブル職員マスタ

レコード1職員Aさん 職歴フィールド1 職歴期間フィールド1
           職歴フィールド2 職歴期間フィールド2
           ・
           ・
           ・
          職歴フィールド15 職歴期間フィールド15

現在このようになっています。
データベース filemaker ともに初心者で勉強不足なのですが、このような形からは管理がしづらいでしょうか。

Offline

#10 2018-12-05 09:33:50

チポ
Member

Re: 経験年数の拾い出しについて

DBの形で考えると、
  ひとり かつ 1職歴
ごとに1レコードとするテーブルを作り、
現在の職員マスタとリレーションして関連づける。
これが正しい形でしょう。

現在の形からはインポートを使って移行が可能です。


職歴の年月を求める計算ですが、
計算式で一気に求めることも可能ですが、
理解しやすい様に、中間のフィールドを作って求めましょう。

> 「H」と「月」を消し、
> 「.」と「〜」を¶に変え

これを求める計算フィールド1の計算式
  Substitute ( 職歴期間 ; [ "H" ; "" ] ;
                                   [ "月" ; "" ] ;
                                   [ "." ; ¶ ] ;
                                   [ "〜" ; ¶ ] )
このフィールドの配置はフィールド枠を4行分の大きさにします。

これから、月数を求める計算フィールド2の計算式
  ( GetValue ( 計算フィールド1 ; 3 ) * 12 + GetValue ( 計算フィールド1 ; 4 ) ) -
  ( GetValue ( 計算フィールド1 ; 1 ) * 12 + GetValue ( 計算フィールド1 ; 2 ) )

これを年月にすればいいでしょう。

Offline

#11 2018-12-05 12:13:24

koshilow
Member

Re: 経験年数の拾い出しについて

チポ様
DBの構築の知識をもっと深めていきたいと思います、ありがとうございます。

詳細のやり方までご教授いただきありがとうございます。
さっそくやってみたいと思います。

ご回答いただきました皆様、ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 520.67 KiB (Peak: 525.21 KiB) ]