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

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

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

You are not logged in.

Announcement

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


#1 2014-12-15 11:15:11

もぐら
Guest

異なる部署の記録を合体して経歴をつくる

よろしくお願いします。
FileMaker13です。


異なる部署で管理されていた社員の人事記録があります。

Aテーブル人事
日付 出来事

Bテーブル人事
日付 出来事

Cテーブル人事
日付 出来事


実際にはもう少し複雑なのですが、
上記のような異なるテーブルの記録を社員ナンバーでメインテーブルにつないで、
改行で区切って経歴を概ね把握できる文字列を作成したいのです。
どのような計算をすればよいでしょうか。


◯◯さん経歴

日付 入社

日付 □配属

日付 □配属

日付 □配属

日付 □配属

日付 □配属

現在

#2 2014-12-15 11:50:52

Shin
Member

Re: 異なる部署の記録を合体して経歴をつくる

異なる部署で管理されていても、DB内では1テーブルで管理する、という事が可能ですね。アクセス権で切り分けします。
特定の部署では、その制限を解除し、全てのレコードを閲覧できるようにしておくと簡単でしょうね。
ファイルの構造の見直しをされれば良いです。

とりあえずは、それらのレコードを1テーブルにまとめておくと処理が簡単になります。一度インポートしておかれたらいかがでしょう。その上で、ポータルで表示していると一覧になります。さらにその中のフィールドを List() で取得すると、そのような文字列が得られます。

Offline

#3 2014-12-15 14:21:45

もぐら
Guest

Re: 異なる部署の記録を合体して経歴をつくる

部署という表現をしましたが全く別の管理体制で、
この計算式が必要になるのは一度きりなのです。
インポートでひとつのテーブルにまとめる方法はわかるのですが、
もしリレーションと計算フィールドで実現する方法がありましたら
後学のために教えていただけないでしょうか。

#4 2014-12-15 14:23:57

もぐら
Guest

Re: 異なる部署の記録を合体して経歴をつくる

これを実現する計算式があれば
いろいろなところに応用を考えているのですが、
自分ではわからず断念したのです。

#5 2014-12-15 16:09:20

チポ
Member

Re: 異なる部署の記録を合体して経歴をつくる

A・B・C各テーブルで
  日付 出来事
と連結する計算フィールドを作ります。

このとき各テーブルで日付書式が異なるとソートがうまくいきませんので、
その場合は同じにします。


メインテーブルと各テーブルでリレーションし、
メインテーブルで、計算フィールド
  List ( List (テーブルA::連結 ) ;  List (テーブルB::連結 ) ;  List (テーブルC::連結 ) )
を作ります。

これでリストにはなりますが、日付順になりませんね。

日付順にするには、
このフィールドの動的値一覧を作り、
そのリストを得れば日付順に並び替えてくれます。

Offline

#6 2014-12-15 16:37:43

旅人
Member

Re: 異なる部署の記録を合体して経歴をつくる

計算フィールド内に該当する全履歴が入るし非保存になるので
値一覧は作られないかも?

>この計算式が必要になるのは一度きりなのです。
そういう事でも、後々他の不便な事が必ず起こりそうですから
1テーブルにするべきかと。

Offline

#7 2014-12-15 16:51:07

チポ
Member

Re: 異なる部署の記録を合体して経歴をつくる

値一覧としては使えないけれど、
リストは得られるでしょう。

定義の途中でおこられちゃいますがね ^^

Offline

#8 2014-12-15 16:56:41

旅人
Member

Re: 異なる部署の記録を合体して経歴をつくる

そうだったかも知れないです・・
計算式で別フィールドを全置換するといいのかな?
でも、スクリプトを使っちゃいけないのか・・・

Offline

#9 2014-12-15 17:32:28

Shin
Member

Re: 異なる部署の記録を合体して経歴をつくる

一時的な事なら、ローカルのファイルのテーブルに全部インポートしてきて、処理が済んだら削除してしまえば良いのでは。
人事項目だけ、そのテーブルで管理するという運用が良いと思いますがね。

Offline

#10 2014-12-16 15:42:15

もぐら
Guest

Re: 異なる部署の記録を合体して経歴をつくる

みなさん、ありがとうございます。
同じテーブルで管理するのが良いということはよくわかりました。

後学のために教えてください。

>日付順にするには、
>このフィールドの動的値一覧を作り、
>そのリストを得れば日付順に並び替えてくれます。

チポさんの上記の方法がわかりませんでした。
Listの入れ子で1フィールドに合体させるところまではできたのですが、
上はどのようにするのでしょうか。
動的値一覧については理解しています。

#11 2014-12-16 16:04:55

チポ
Member

Re: 異なる部署の記録を合体して経歴をつくる

自レコードのみ照合するリレーションで、
Listのフィールドの動的値一覧を作ります。


計算フィールドの計算式
  ValueListItems ( Get ( ファイル名 ) ; "動的値一覧名" )
これで日付順のリストが得られます。

Offline

#12 2014-12-16 17:16:56

もぐら
Guest

Re: 異なる部署の記録を合体して経歴をつくる

全く使ったことのない関数と手法で、大変勉強になりました。
皆様、ありがとうございましたm(__)m

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 524.39 KiB (Peak: 528.93 KiB) ]