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

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

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

You are not logged in.

Announcement

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


#1 2022-11-07 15:05:34

あさい
Guest

タイムカード作成について

タイムカードをFM(iPad)でできるように作成したいと考えています。作成自体はPC(FM19)でします。
ネットで検索した際にあった勤怠管理で行ってみようというのを見ながら作成していました。
うまくいかないところが出てきて行き詰ってしまい、ほかの質問をみてみましたが難しくて内容がわからないところが多々あります。

・アカウント管理用テーブル  IDとアカウント名のフィールドを配置
・打刻テーブル 打刻アカウント名と日付と打刻時間を配置(これは、ただひたすら打刻したデータが記録されていくので出勤や退勤に分かれている必要はないということであってます?)
・タイムカードテーブル IDとアカウント名と日付と出勤時刻と退勤時刻を配置

ボタンを2つ配置(出勤と退勤)するレイアウトで作成しております。

①出勤と退勤にスクリプトを作成しましたが、打刻テーブルの名前だけでません。
②タイムカードテーブルには何も記録が移せていません。

スクリプが間違っているとおもいますが、わからないので最初から今作成しなおしています。

#2 2022-11-07 15:44:55

Shin
Member

Re: タイムカード作成について

そのスクリプトの中身をみないと、コメントは無理ですよ。

Offline

#3 2022-11-07 16:03:47

あさい
Guest

Re: タイムカード作成について

レイアウト切り替え[「打刻」](打刻);アニメーション:なし]
新規レコード/検索条件
変数を設定[$jikoku;値:打刻::打刻時刻]
検索モードに切り替え
レイアウト切り替え[「タイムカード」(タイムカード);アニメーション:なし]
フィールド設定[タイムカード::アカウント名;get(アカウント名)]
フィールド設定[タイムカード::日付;get(日付)]
検索実行[]
if[get(スクリプト引数)=”出勤”]
フィールド設定[タイムカード::出勤時刻;$jikoku]
else
フィールド設定[タイムカード::退勤時刻;$jikoku]
end if
レイアウト切り替え[元のレイアウト]

上記サイトのままを作成していましたが、スクリプトを起動すると毎回「この検索条件に一致するレコードがありません」となりますが、一応、打刻テーブルに日付と時刻が記録されている。
検索が必要な意味もよくわからず・・・
あっているかもわからず、ほかに良い方法はないかなと思っています。
アカウント名はメインメニュー(ボタンを配置したところ)でログイン名を選択するようにしています。
タイムカードはあまり作成すべきではないものなのでしょうか?

#4 2022-11-07 16:05:29

あさい
Guest

Re: タイムカード作成について

Shin様、大変失礼しました。
上記に引用したもので恐縮ですが作成していたスクリプトをのせました。よろしくお願いいたします。

#5 2022-11-07 16:33:03

Shin
Member

Re: タイムカード作成について

アカウントを使っているのですが。打刻のたびにログインが必要になり、けっこう鬱陶しいですが。
お薦めは、職員にそれぞれQRコード(職員IDをエンコード)のついた名札か社員証を渡しておきます。
iPadで出勤か退勤のボタンをおしたら、それぞれの新規レコードを作成し、職員IDのフィールドへ入り、カメラでQRを読みこみます。これで、最初のレイアウトへ戻します。
それですと、スクリプトは、
新規レコード
レイアウト変更(QR入力用)
デバイスから挿入
レイアウト変更(元の)
だけです。フィールドは、モード(出勤、退勤)をボタンに設定したスクリプト引数で設定、時刻は自動入力、それとID入力用のフィールドだけでとりあえずは十分でしょう。
一般の会社でしたら、時刻から出勤退勤を区分できることが多いので、省略できるかもしれません。その場合は、IDを読みこませるだけいいので、常にIDフィールドをアクティブにしておき、トリガーでレコードを作ってもいいでしょう。(カメラが起動しっぱなしになるので、電池の消耗は激しいでしょうが)この運用をするのでしたら、外部のバーコードリーダーをつないで、フィールドに読み込ませるのがいいと思います。中古でもいいので、安いバーコードリーダーを避けるのが吉です。

Last edited by Shin (2022-11-08 08:52:51)

Offline

#6 2022-11-08 10:56:28

あさい
Guest

Re: タイムカード作成について

Shin様ありがとうございます。
QRでのやり方で作成してみたいと思います。QRコードについては考えてはいましたが、作成方法が全くわからないのでよろしければ初心者用にご教示お願いできますでしょうか。

新規作成からやり直してます↓
・QRコードは職員分作成しました。(あとはこちらで社員証としたいと思います)
・テーブル(メニュー画面)を作成し、そこにボタンを2つ配置(出勤と退勤)しました。
・テーブル(タイムカード)を作成し、フィールドはIDと名前と時刻とし、時刻については「作成時刻」に✓しました。

以下がわかりません。
①「モード(出勤、退勤)をボタンに設定したスクリプト引数で設定」は引数に ”出勤” ”退勤” といれればよいですか?

#7 2022-11-08 11:52:07

チポ
Member

Re: タイムカード作成について

横から・・

出勤と退勤
別のスクリプトにすれば考えが簡単になるのでは。

Offline

#8 2022-11-08 12:38:11

あさい
Guest

Re: タイムカード作成について

チポ様、別のスクリプトとは?↓を二つ作ればよいのでしょうか?

新規レコード
レイアウト変更(QR入力用)
デバイスから挿入
レイアウト変更(元の)

#9 2022-11-08 13:17:18

チポ
Member

Re: タイムカード作成について

出勤を入力するスクリプト
退勤を入力するスクリプト

この二つにしたほうが簡単に考えられるのでは。
と言ったのです。

Offline

#10 2022-11-08 13:27:47

あさい
Guest

Re: タイムカード作成について

チポ様、ありがとうございます。
2つにしてみます。

#11 2022-11-08 13:46:50

Shin
Member

Re: タイムカード作成について

まず、出社、退社関係なく、バーコードを読んでレコードを作る実験をしてみれば。
バーコードは、どのように読むつもりですか。

Offline

#12 2022-11-08 14:00:03

あさい
Guest

Re: タイムカード作成について

バーコードはiPadのカメラで読み込もうと考えています。
バーコードリーダーは購入できるかわからないので、今は考えていません。
職員の人数が10人も満たない小さな会社のため、本当は名前を選択して、ただ出勤と退勤の記録ができたらというぐらいでしたので・・・

一応、出勤と退勤は関係なく、出勤を押しても退勤を押しても同じテーブルにレコードが作成できているような状態にはなりました。出勤して1レコード、退勤して1レコードといった感じです。
日付フィールドを入れるのを忘れていたので追加しております。
IDと名前が入らないみたいですが、どのようにすればよいでしょうか?

#13 2022-11-08 14:21:49

あさい
Guest

Re: タイムカード作成について

Shin様、全然嘘でした!
カメラを起動して場コードを読み込むとぴっと音がして記録はされるのですが、記録される際に日付フィールドにバーコードの情報が入るみたく
「このフィールドの形式は2013/12/25の形式で、・・・」と出てきて、フィールド復帰をすると今日の日付と時間だけ記録されているような状態です。

#14 2022-11-08 14:25:14

Shin
Member

Re: タイムカード作成について

新しいレコードができたら、ID を入れるフィールドを配置したレイアウトを作り、デバイスから挿入 とします。その中の設定で、内蔵カメラから入力する拗に設定しておくと、カメラが起動しますので、バーコードを読ませます。読み込みに成功すればフィールドに入力されます。その後は、必要ならば処理を行い、元のレイアウトに戻ります。

Offline

#15 2022-11-08 14:26:13

Shin
Member

Re: タイムカード作成について

デバイスから挿入で、ターゲットのフィールドを間違えていませんか。

Offline

#16 2022-11-08 14:32:39

あさい
Guest

Re: タイムカード作成について

何度もすみません、確認したらできました。
とりあえず、出勤と退勤のボタンを押すとカメラ起動してバーコードを読むと、テーブル(タイムカード)のフィールド(ID、日付、時刻)に記録できるようになりました。
この後は出勤と退勤を1つのレコードとすると思うのですが、どのようになりますでしょうか?
何か簡単な方法があればよろしくお願いします。

#17 2022-11-08 14:34:14

あさい
Guest

Re: タイムカード作成について

おっしゃる通り、間違えていました。

#18 2022-11-08 14:59:50

Shin
Member

Re: タイムカード作成について

そこまでできれば、タイムカードそのものはできていますね。
その後は、社内の運用に合わせてデータを集計するのですが。必ずしも1日1レコードにしません。いきなり1ヶ月分のレコードへ取り入れてしまう運用もありますよ。

Offline

#19 2022-11-08 15:12:24

あさい
Guest

Re: タイムカード作成について

そうなんですね。1か月分として出せるようにはしたいです。
ただ、現時点で出勤、退勤を押し忘れる方がいまして、後から手で修正しております。(今は、タイムレコーダー?というのかな?カードを入れると印字されるタイプを使用してます)
ちなみに、うちの会社は24時間体制のため勤務が日付をまたぐ場合があります。その際はどのようになりますでしょうか?

#20 2022-11-08 15:43:58

Shin
Member

Re: タイムカード作成について

日付、時刻 ではなく、タイムスタンプで記録して行った方がいいですね。

Offline

#21 2022-11-08 16:12:56

あさい
Guest

Re: タイムカード作成について

タイムスタンプのほうがいいのですね。
変更しました!!

#22 2022-11-09 09:26:59

あさい
Guest

Re: タイムカード作成について

出勤と退勤のボタンのどちらを押したか記録できるようにするにはどのようにすればよいでしょうか?
出勤を押してバーコードを読むとタイムカードの記録に「出勤」とするようにしたいです。

#23 2022-11-09 10:09:42

あさい
Guest

Re: タイムカード作成について

調べたところ自己解決できました。

#24 2022-11-09 10:27:25

Shin
Member

Re: タイムカード作成について

新規レコードを作る時に、押したボタンによってその区分を設定するように作ればいいですよ。フィールド設定を使えばいいでしょう。
1ステップ上達すれば、スクリプト引数を使って、同じスクリプトで区分できるように作れます。

Offline

#25 2022-11-09 10:31:10

あさい
Guest

Re: タイムカード作成について

Shin様、ありがとうございます!

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: 615.59 KiB (Peak: 632.13 KiB) ]