スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[ --/--/-- --:-- ] スポンサー広告 | TB(-) | CM(-)

いや〜どうも。

前回最後の方で先輩が累計計算がおかしくなるって言ってましたがいったいどんなことでしょう。
ではどうぞ。

わし「前に取り上げた記事「残業申請ファイル8」で累計計算の方法を説明したよな」
かま「はい」
わし「↓図を見てみ」「累計を出すためのリレーションやけどな」

スクリーンショット 2015-05-04 18.41.16

かま「はい」
わし「年月日と日報番号が関連づけされてるやろ」
わし「ところが同日が一行だけの時はこのリレーションで成り立つんだけど複数行あると上手くいかへんねん」
かま「でも行が追加するってことは同日を追加するって事ですもんね」
わし「そうやねん」

わし「で、改良したのが↓図」
スクリーンショット 16


かま「お、年月日からソートNoに変わってますね」
わし「そやねん」

わし「こうしてやると、まあなんとか累計は問題なくなんねんで」
かま「なんか歯切れ悪いですね」
わし「うーん、まあ他にちょっと問題もあんねんけど」
わし「要はルールを守って入力するってこっちゃ」「ま、素人なりにはここまでで一応OKやな」

伊藤「じゃあ、素人さんと楽しんできますか?」
かま「そうだね」
わし「よし、レッツゴー」

最後の方はぐだぐだになりましたがこのシリーズはここまで。
今シリーズでお伝えしたかったのは累計計算と行の追加でした。

次回はHobby UseでFileMakerを使おうを考えています。タイトルは「FileMakerでポケモン」です。

それから、FileMaker好きCEの会でセミナーを企画中です。プロの方をお招きしてFileMakerの基礎を学びましょう。
インフォメーションは ttps://www.facebook.com/ce.filemaker (←先頭h抜いてます)



スポンサーサイト
[ 2015/06/29 00:15 ] 未分類 | TB(0) | CM(0)

残業申請ファイル 19 〜先輩のスクリプト4〜

いや〜どうも。

久しぶりに体動かすと気持ちがいいですね。なんてったてご飯がうまい!

さて、今日も先輩のスクリプトです。
ではどうぞ。

かま「あ〜そういえば先輩、FileMaker 14からはスクリプトに行が表示されるようになったんですね」
わし「ん〜、君の先輩ではないがそうなったんだよね」

スクリーンショット 3

かま「では、先輩解説を」
わし「一行目、これは今のポータル行の日付を変数として取得しているんだ」
わし「二行目、これは今アクティブになっているポータル行のソート番号取得」
わし「三行目、これは今アクティブになっているポータル行が何行目かを取得しているんだ」

かま「ほー」「なぜ今アクティブになっているポータル行が必要なんですか?」
わし「それは、前回にも説明したが、スクリプトが完了した時に今いる行の次の行をアクティブにしたいからなんだ」
かま「ふーん」

わし「基本的には今いる行のソート番号と次の行のソート番号を足して2で割るって話を前回したやろ
かま「ええ」
わし「ところが今いる行がポータルの最終行って話になると今いった計算式が上手く成り立たなくなる」
かま「ああ、今いる行が最終行ってことは、次の行は入力待ちのフィールドってことですもんね」
わし「せやから五行目から九行目までで最終行かどうかで次行値の取得方法をかえているんだ」
かま「次の行の値ってのが$row1ですね」
わし「そうそう、君飲み込みが早いね」

わし「それを踏まえて」
わし「五行目のif(not IsEmpty(超過勤務::年月日)だけど」
わし「これは次の行へ移動した先が空欄じゃなかった場合、ということで」
かま「ということで」
わし「スクリプトの六行目で単純に次行のソート番号を取得しているんだ」

わし「つぎに八行目なんだけど、これは次行が空欄の場合」
かま「つまり下図の様な時ですね」
わし「そうそう、↓図で言うところの6/1の下、つまり最終行ってこと」

▼図1
スクリーンショット 15

わし「この場合は最終行にはデータがないので $row+1 で単純にアクティブになっている行のソート番号に1を足しているんだ」
わし「ここまでいったら、あとは最終行へ飛んで(スクリプト11行目)」
わし「年月日と($row+$row1)/2で得られたソート番号を入力してやるってことになるわけや」

わし「で、最終的に追加した行へ移動(スクリプト16行目)すればええわけや」

かま「うーん、なんとなくわかりました」

わし「ここまできて問題があんねん」
かま「えっ、そうなんですか」

わし「行を増やすことで累計計算がおかしくなるんだ」

今日はここまで

[ 2015/06/28 15:15 ] ファイルメーカー | TB(0) | CM(0)

残業申請ファイル 18 〜先輩のスクリプト3〜

いや〜どうも。

昨日は1人カラオケしてました。みなさん1人カラオケには抵抗がありますか?

さて、今日は先輩の作ったスクリプトの解説です。
と思いましたがその前におさらいです。
臨床工学技士の性質上一度業務が終了してから再び業務に就くことがあります。
ここでは残業申請を題材にしていますが、通常一日につき時間外は一度なので、一日一行あれば良いと言うことになります。
ところが残業のたびに行を増やしたいというのがこのスクリプトの始まりです。

そこで伊藤君が考えたのが↓のスクリプト
スクリーンショット 2

ところがこれだと違和感があるってんで先輩が新たにスクリプトを作ったわけです。
違和感を解消する方法として「ソートNo」フィールをを作りここを起点にしてソートしたらどうかってのが今までの経緯です。
では、つづきです。どうぞ。

かま「じゃ、先輩おねがいします」
わし「誰が先輩じゃ、わしゃお前の先輩になった覚えはないわ」
かま「何いってんですか、伊藤の先輩なら僕の先輩でもあるわけですよ」
わし「まあ、ええわ」
伊藤「そうそう、まあ気にしないで下さい」「それはそうと先輩のスクリプトですよね」

スクリーンショット 3

わし「基本的な考え方はソートNoに昇順で数字を放り込みこれを起点にする分けよ」
伊藤「ほー」
わし「↓図を見てみい」
スクリーンショット 9

わし「5/4が二行あるやろ」
かま「ありますね」

わし「注目して欲しいのはソートNoのところなんだ」
かま「はい」

わし「1、2、3、4、5...とあって基本的にはこれがソート順になっとんや」
わし「で、5/4の二行目のソートNoみると4.5になっとるやろ」
伊藤「そうですね」

わし「これは+ボタンをクリックした時点で一行目のソートNoの“4”を覚えてから次の行へ移動すんねん」
伊藤「ほー」

わし「で、次の行(この時点では5/4の二行目がまだできていない)の5/5のソートNoはいくつや」
伊藤「5ですね」
わし「正解」「で、最初にクリックした行のソートNoの“4”と次の行の“5”を足して、それを2で割ってやんねん」

かま「わかった、そうすると求められた値は必ず二つの行の中間値になるわけですね」
わし「つまり?」
かま「つまり(4+5)/2=4.5となるわけで、この4.5をソートNoに放りこうんでやるというわけですね」
わし「そんでもって、これをソートしてやると必ず+ボタンをクリックした次の行に追加した行がくるってわけ」

伊藤「なるほど、なんとなく考え方はわかりました」
わし「それがスクリプト文8行目以降に書かれているわけや」

かま「長くなったのでここまでですね」
わし「せやな」

今日はここまでッス。

[ 2015/06/16 21:11 ] ファイルメーカー | TB(0) | CM(0)

残業申請ファイル 17 〜先輩のスクリプト2〜

いや〜どうも。

梅雨の真っ最中ですが、今日はすがすがしい朝ですね。
皆さんいかがお過ごしでしょう?

さて、前回は先輩がスクリプトを作りましたね。また、ソートNoというフィールドを作りましたがこれを利用してユーザーに違和感の無い動作にさせたいとのことでした。
では今回はその続きになります。どうぞ。

わし「こんな感じでどやろ」
伊藤「うーん、よくわからないんでとりあえずスクリプト起動させてみましょう」
かま「そうですね、そうしましょう」

スクリーンショット 3

わし「え、誰やねん」
伊藤「ああ、こいつ同級生なんです」「鹿児島で働いているんですが今日こっちに来たんで、見学してもらってんですよ」
わし「そういうことは先に言うとけや」
かま「鹿児島で働いています鎌本です」「かまと呼んで下さい」
わし「ああ、よろしく」「おかまちゃんやね」
伊藤「先輩、“お”は、いりませんよ」

かま「じゃ、早速スクリプト起動させてみましょう」
わし「ぐいぐいくるね、かまちゃん」

▼先輩のスクリプト起動直後
スクリーンショット 7

かま「あーなるほど、伊藤のと違って22:00の行の下に行が追加されいますね」
伊藤「そうだね、さらに追加された行がグレーになっていてわかりやすくなってるよ」
かま「ちなみに、5/4の17:00と22:00の間に入れることもできるんですか?」
わし「その場合は5/4の17:00行の+ボタンをクリックしてみな」

伊藤「じゃあ、クリックしますね」
かま「ポチッとな」
伊藤「あ、おまえ」「俺の仕事とるなよ」
かま「いやー、一回やってみたかったんだよ」

▼5/4の間に挿入
スクリーンショット 8

伊藤「おー、入ってますね」
かま「じゃあ、5/4の16:00から16:30を追加することもできますか?」
わし「うーん、基本的には+ボタンをクリックした次に新しい行が挿入されるようになっているんで」
わし「そのようなケースでは5/3をクリックして日付を5/4に変更してもらうしかないんや」
かま「ふーん」

わし「その辺のことを踏まえてスクリプトの中身を見ていこうか」
伊藤「そうっすね」
わし「わかりやすいように前回追加したソートNoフィールド入りのレイアウトをみてみよう」

▼ソートNo入りのレイアウト
スクリーンショット 9

かま「今日は長くなったのでここまでですね」
わし「そ、そやな」「ぐいぐいくるね」

次回はスクリプト解説です。
[ 2015/06/15 09:09 ] ファイルメーカー | TB(0) | CM(0)

残業申請ファイル 16 〜先輩のスクリプト〜

いや〜どうも。

さて、前回は伊藤君のスクリプトに違和感があるという話でした。
そこでスクリプトに修正を加えようと言うことになりました。はたしてどうなることやら。
では、どうぞ。

伊藤「違和感があるって言うけどどうなんですかね」「そんなに気になりますか」
わし「気がつかないからいいってものでも無いんだ」「小さな面倒だという積み重ねが、使いづらいにつながっていくんだ」
伊藤「そんなものですかね」「僕なんか先輩とのつきあいも面倒だの積み重ねですがね」

ボコ、バキッ

わし「ではいってみようか」「ちなみに君のスクリプトはどんな感じやったかな」
伊藤「はひ、こひらになりまひゅ」

スクリーンショット 2

わし「おや、どうしたんだい伊藤君」「なにか滑舌が良くないね、血が出ているようだけど」
伊藤「ひえ、べつに」

わし「そうか、じゃあ続けるぞ」「この前、君が言うとったポータルのソート順なんやけど」
伊藤「ああ、この記事のことですね」
わし「基本的にはその考え方でいいのんやけど、ちょっと工夫したらなあかんねん」
伊藤「工夫?」
わし「そう、工夫」「ソート用のフィールドを設けたんねん」

どうやら先輩はソート用にフィールソを設けるらしいですね。

わし「ほれ、でけたで」
伊藤「あ、本当だ、ソートNoってやつができてますね」

スクリーンショット 2

わし「考え方としては、このソート用のフィールドに並べたい数字を放り込んでおき」
伊藤「放り込んでおき」
わし「あとはポータルのソート順を設定してあげりゃええちゅうもんや」
伊藤「じゃあ、その考えをスクリプトにしてみて下さいよ」
わし「うっしゃ」

ちゃちゃちゃ....っと

わし「こんなもんかな」

スクリーンショット 3

伊藤「はい、長くなったので今日はここまでですよね」
わし「そやな」

[ 2015/06/12 20:12 ] ファイルメーカー | TB(0) | CM(0)

残業申請ファイル 15 〜違和感のあるスクリプト〜

いや〜どうも。

だれか私に休みを下さい。
さて、前回はポータルのソート順について書きましたが今回は再び伊藤君のスクリプトについてです。
では、先輩お願いします。

わし「ところで君のスクリプトなんだが」
伊藤「ああ、これですね」

スクリーンショット 2

わし「こんどは5/4の部分で実行してみてや」


▼行挿入前
スクリーンショット 4

伊藤「いいですよ」「あれ、でも5/4って2行あるんでどっちにします?」
わし「せやなぁ、23:30の後にまたコールがあって15分だけ働いたんだ」
伊藤「なるほど、相変わらず忙しいッスね」
わし「だから23:45から24:00までを追加したいんじゃ」
伊藤「わかりました、じゃあ2行目の方をポチッとなっと」


▼行挿入後
スクリーンショット 10

伊藤「えーっと、23:45から24:00までですね」「入力します」
伊藤「はい、データを入れるとちゃんと順番に並ぶでしょ」

スクリーンショット 11

わし「それで、ええんか」
伊藤「え?」
わし「それで、ええんか?」
伊藤「何か問題でも?」
わし「入力する側は時系列順に入力することが一般的だろ」
伊藤「そうですね」
わし「だからポチッとしたあとはその直下に行ができると違和感が無いんだよ」
わし「更にいえば増えた行が認識しやすいともっと良いわけで、これがユーザーに配慮した形になるんだよ」
伊藤「つまり、いまのままでは違和感があると」
わし「そう」

伊藤「直しますか」
わし「そやな」

今日はここまで。

[ 2015/06/09 00:08 ] 未分類 | TB(0) | CM(0)

残業申請ファイル 14 〜ポータルのソート順〜

いや〜どうも。

いろいろコメントもらうんですが機器台帳をExcelで管理している施設って多いようですね。
せっかくだからExcelからFileMakerへ移行しませんか?
ってな感じで今FileMakerを触ったことの無い方やさわりはじめの方でExcelから移行したいって方向けのセミナーを企画しているところです。プロの方も協力してくれそうで心強いです。数ヶ月の内にやりたいですね。

さて、前回は「行を増やした時にちゃんと日付でソートされているだろ」と、どや顔の伊藤君でした。
そのやりかたですが伊藤君どうぞ。

伊藤「どうですか先輩」
わし「なにがや」
伊藤「ソートの方法ですが」
わし「うん」
伊藤「ポータル設定からポータルレコードのソートを選んで」

スクリーンショット 5

伊藤「ソート順位を指定してやるだけなんです」
わし「そうか」
伊藤「なんだ、いまいちな反応ですね」
わし「いや、まあ、便利だよな」

スクリーンショット 6

伊藤「ところで先輩ポータルのソート順ってここ以外にもありますよね」
わし「せやな、リレーションの編集のところな」
伊藤「これってどう違うんですか?」

スクリーンショット 9

たしかにポータルのところで設定することもできますしリレーションのところでも設定できますね。
ここでの違いを簡単に説明するとポータルでのソート設定はあくまでも見え方の違いになります。これに対してリレーションでの設定はデータの扱い方になります。ですから表示のこと(つまり見え方)に限定すればリレーションでの設定にかかわらずポータルでの設定が優先されます。

伊藤「あー、そういうことだったんですね」

今回はここまで。
次回は違和感のあるスクリプトについてです。
[ 2015/06/07 16:08 ] ファイルメーカー | TB(0) | CM(0)







上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。