みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
簡単な方で良かったのですね。
ならば、今更16個ものフィールドを追加するのも、芸が無く当初コンセプトにもそぐは無いので、1本化してみましょう。
今必要なコマ数は、横16項X縦22行の計352コマです。
なので繰り返し数352回の繰り返し[352]フィールドが1個あれば需要は賄えるわけです。
計算では、連続するコマ番号位置に対応する表割りデータが的確に配置されねばなりません。
その代入式は、
GetValue(ToDo一覧 3[項番号]; 行番号)
と表せます。
さらに、項番号と行番号は、コマ番号の22進数で表すことができ、
項番号 → Div(コマ番号-1;22)+1
行番号 → Mod(コマ番号-1;22)+1
ココで、コマ番号は Get(計算式繰り返し位置番号) のことですから、
詰るところ実質の代入式は、
GetValue(ToDo一覧3[Div(Get(計算式繰り返し位置番号)-1;22)+1]; Mod(Get(計算式繰り返し位置番号)-1;22)+1)
となります。
レイアウト配置は、22コマづつ16短尺に分けて表割り配置して利用します。
なお、以前の「ToDo一覧 3」は重たくなるだけなのでレイアウトから消去します。
また、グローバルフィールドを想定しますが、実装してみて動作が重過ぎるようでしたら、非グローバルへ戻してみて下さい。
以上お試しください。
【追加補足】
最終の一行式は見難いので、後からでも分かるよう説明的な式記述例も付記しときます。
Let(
[
コマ番号=Get(計算式繰り返し位置番号);
項番号=Div(コマ番号-1;22)+1;
行番号=Mod(コマ番号-1;22)+1;
代入式=GetValue(ToDo一覧 3[項番号]; 行番号)
];
代入式
)
Last edited by Hiro (2016-01-21 12:18:01)
Offline
Hiro 様
ご連絡の程、有り難うございます。
また、初心者の我が儘にお付き合いを頂きまして、大変有り難うございます。
(大凡、Hiro 様の想定される様な、高い次元の話では無くて・・・・申し訳ありません^.^)
正に、”今更16個ものフィールドを追加するのも、芸が無く当初コンセプトにもそぐは無いので、1本化してみましょう。” のもと、
GetValue(ToDo一覧 3[項番号]; 行番号)
と表せます。・・・・
さらに、項番号と行番号は、コマ番号の22進数で表すことができ、
項番号 → Div(コマ番号-1;22)+1
行番号 → Mod(コマ番号-1;22)+1 ・・・、この内容が、思いもよらぬ事にて・・・・・勉強させて頂きます。!! そして、
Hiro 様の、
実質の代入式は、
GetValue(ToDo一覧3[Div(Get(計算式繰り返し位置番号)-1;22)+1]; Mod(Get(計算式繰り返し位置番号)-1;22)+1) !!! と、この式を願っておりました。
項番号 及び 行番号の処理方法が・・・全く想像も付きませんでした。凄いです!!
早速、これより試させて頂きます!!(とても楽しみです ^.^,^.^!!)
Hiro 様、しかしながら、この件は、あくまでも本題とは少し外れておりまして、(トレーニング的な意味合いもありましてですので、ご了承をお願い申し上げます。)
Hiro 様の最新バージョンは、日を追う毎に、より一層洗練されて来ておりまして。スタッフ一同唯々、驚嘆しております次第です。
印刷に関しましても
Hiro 様の作品での問題ではありません。あくまでも。他に転用して利用での話です、ので、これは勉強に伴い生じた疑問点としてご了解頂ければと存じます。・・
カスタマイズ、着実に進んでおります!!!!! 大変有り難うございます。
ご多忙のところ大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
Hiro 様
ご連絡の程、有り難うございます。
【追加補足】!! 大変有難うございます。 とても分かり易いです!!^.^ ^.^
本日は、雑用が立て込んでおりまして、勉強がなかなか進んでおりませんです・・・ ^~^ 申し訳ありません。
・・・・・・・・・・・レイアウト配置を、仕込中!!です。
ご多忙のところ大変申し訳ありません。また後程、連絡をと存じます。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Hiro 様
大変お世話になっております。
上記宿題は、ただ今勉強中であります・・・・^.^ (この件は、後ほどご報告をと存じます。)
また、平行してカスタマイズを進行させていて頂いております。
そんな中で、新たに御教授をと存じます。どうぞ宜しくお願いを申し上げます。
Hiro 様、検索の件でございます。
検索キーに、”漢字1文字を入力” ⇒ 検索 でありますが、この漢字1文字を、
新たに作成した”値一覧”(例えば、検索キー一覧)から、選択して、入力 ⇒ 検索と出来れば、より入力の手間が省けるのかな??? と考えまして・・・・!!??。
そこで、”検索キーの値一覧”を作成するために、顧客テーブルの顧客名フィールドから、最初の”1”文字を取り出しまして、
新たに作成しました=”検索キー用”フィールドに表示するように致しました(Left関数)。
(渡辺A ⇒ 渡、渡辺B ⇒ 渡、渡辺C⇒ 渡、 山田A⇒ 山、山田(B ⇒ 山、・・・・、佐山A⇒ 佐、佐山B⇒ 佐・・・)
こうして、このフィールドのを一覧を表示しますと、
渡、渡、渡、山、山、山、・・・・・佐、佐・・・・・となりますので、
別テーブル(検索キー用テーブル)を作りまして、重複を除外して表示し、”渡、山、佐・・・・・・”として
これを、
検索キーの入力用の、値一覧(検索キー一覧)として用いる・・・・というものです。(何とか、出来るには出来ましたが・・・・どうも煩雑にて、Hiro 様でしたら!!! ^.^ と思いまして・・・^.^)
要は、Hiro 様、
顧客テーブルの顧客名フィールドから、先頭の1文字を取り出して、重複を排除し、これを値一覧(検索キー一覧)として、検索キーに使用するには??!!
ということであります。
(別テーブルを作り、・・・重複を排除して・・・検索キー用の値一覧(検索キー一覧)の作成・・・・・のこの工程を、もう少し簡便に出来ますればと思いまして・・・・!!です。)
ご多忙のところを、大変申し訳ありません。何卒ご検討の程をどうぞ宜しくお願い申し上げます。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
アイデアは分かりますが、アイデア倒れかも!^^;
頭文字1文字だとしても、4000人の顧客数だと相当な数になると思います。
ポップアップリストからストレスを感じず選択できるのはせいぜい25~30件位までではないでしょうか。
1文字だけなら手打ちの方が...。
なお、重複を排除するのは、値一覧を介するのが簡便です。
Offline
Hiro 様
早速のご連絡、大変有り難うございます。
Hiro 様の、
おっしゃるとおりであります!!・・・私は、良いのでありますが・・・・・この事に関しましての、背景??!!を、少しお聞き願えればと存じます。(貴重なお時間を、誠に申し訳ありません。)
上記の様になんとか作成しました値一覧を、選択可能にしますと、
”手打ち もリストからの選択も”どちらも可能となりまして、
キーボード操作が苦手なスタッフも、
電話を受けながらの対応が楽です!?・・・・とのことにてであります・・・・誠に申し訳ありません。
(Hiro 様 ご指摘のように、4000名ですと、地域性もあるとは思いまずが、当社では頭文字1文字で、300程からの選択となります。
しかし、例えば、河野の河 で検索をする場合にまず漢字の入力で、こう ですと中々漢字変換が難しい!!(候補が多すぎ!! ^.^)
ですので・・・・かわ ⇒川、河、・・から河、を選択して、もくは、河野と入れて確定・・・してから、検索となりますと・・・・
むしろ、スタッフが言う様に少し手間かな???とも思いまして、
マウススクロールで選択出来ますれば、300位からの選択でも、
漢字変換の手間等を考慮しますと・・あまりストレスも感じないとのことでありまして・?・・これも一つの方法かなとの思いにて・・・
また、このようなスタッフの意見を勘案致しまして・・・であります。申し訳ありません。)
しかしながら、
Hiro 様、上記の件は了解致しました。私と致しましては、現状で全く問題はございません。故に・・アイデア倒れ!!ですね・・誠に申し訳ありません。
そしてですが、Hiro 様、後学のために御教授をお願い申し上げます。
Hiro様の、ご回答のなかの、
”重複を排除するのは、値一覧を介するのが簡便です。” ・・・ですが、具体的には、どのように設定をすれば宜しいでしょうか?
この ”重複の排除方法”、 につきましてお願い出来ればと存じます。
(顧客名フィールドの先頭1文字を抽出(Left関数)しまして、これを、新たに作成した顧客キーフィールド(計算)に入れまして、値一覧の指定としましたが、? 表示となってしまいしました ^.^・)
ご多忙のところを、大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
2つの入力方を確保するのも確かに一理ありますので、修正したアップデート第六段をアップしました。
【アップデートV6版 修正履歴】
・顧客名サーチの頭文字キーの手打ち入力に加え、ドロップダウンリストによる入力法を加えました。
・入力者の好みでどちらでも入力可能としました。
●アップデート第6段「ToDoカレンダ(人別予約管理表)v2.fmp12」ダウンロード → http://yahoo.jp/box/w5-EwG
Offline
Hiro 様
大変有難うございます。
またまた、私の我儘を!!! 誠に有難うございます。^.^
(検索が、非常に楽になりました!!!と、パソコンの苦手なスタッフが、それはもう大喜び!であります。)
未だ、宿題と奮闘中です・・・・・また、ご報告をと存じます。
ご多忙のところを、大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Hiro 様
大変お世話になっております。
GetValue(ToDo一覧3[Div(Get(計算式繰り返し位置番号)-1;22)+1]; Mod(Get(計算式繰り返し位置番号)-1;22)+1)・・の件・・です。
有り難うございます。先ほど、・・・・出来ました!!!^.^
(1つの式で、出来てしまうのですね!!・・凄い!!の一言です。^.^。
また、別の、検討中のものでも、問題なく出来ました!!。
Hiro 様の丁寧な説明を何度も何度も確認をしながら・・・ようやく!!でして、恥ずかしながら、・・・ですが、私にも出来ましたのは、・・!!
そのご説明の中に、
Hiro様の、私の様な素人にも理解できるようにとのご配慮が!!、あればこそと!!思います・・・本当に有り難うございます。)
Hiro 様 、またまた!!です・・・・が、この件で御教授をお願い致したいと存じます。
ご指摘のとおり、重くなりまして、ある程度??・・・かなり・・・・!!時間がかかります。
この。”重く”なりますのは、どうしてでありましょうか?
どうぞ宜しくお願い申し上げます。
現在の私は、・・と申しますと
Hiro 様の作品を、テーブル設定・・フィールド設定・・・レイアウト・・・スクリプト・・・・・と、一つ一つ噛み締めながら・・・・・
独自で出来るようにと、勉強させて頂いております。しかしながら、やはり、・・・Hiro 様の、計算式は・・・奥が深すぎまして・・・!!?^.^・・頑張ります。
(カスタマイズも、順調です! 有り難うございます。)
ご多忙のところ、大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
重くなるのは相応の演算処理が増えたということです。
少なくとも今回の繰り返し数[352回]の計算フィールド分は重くなっていますから。しかも、索引ナシ項目の演算なので。
また、FM内部処理は知る由もありませんが、経験的に繰り返しフィールドの処理スピードは遅いようです。
取分け、グローバル繰り返しは特に重いように感じます。
何れにせよ私見の域の話ですが、...。
Offline
Hiro 様
ご連絡、大変有り難うございます。 今日は、一段と寒いですね(身も心も!!??)。
(またまた、・・^~^)
ご報告と、お願いを申し上げます・・・・^.^、!!??
どうぞ宜しくお願い申し上げます。
1.重くなります件
・・・有り難うございます。 繰り返し(多数)+検索ナシ項目の演算!!が問題なのですね ^.^
実感としましても、Hiro 様のおっしゃるとおりです!! 了解致しました。有り難うございます。
・・結局、Hiro 様の当初の設定で!!と存じます。
(しかしながら、他の検討中のものでは、Hiro 様の計算式を活用させて頂きます!!。数が少ない故・・・・・^.^.)
2.値一覧を利用しました重複排除の件
Hiro 様の、最新バージョンで勉強させて頂きまして、
”?”が表示されまして、出来なかったのは、私の単純ミスと判明致しました。・・・・誠に申し訳ありません。(勉強不足を、痛感致しております。)
”検索機能の両刀使い” !!! 素晴らしいです。
Hiro 様、次は、 ”新たな” お願いでございます。
御教授のほどをどうぞ宜しくお願い申し上げます。(更なる、本格運用に伴いましての、・・・でございます。誠に申し訳ありません。)
3.”予約票の印刷” に関しましてです。
顧客よりましては、電話で済むことも多いのですが、実際にいらっしゃいまして、アドバイス、コンサルト・・・等の後に、
次回(部門がまたがる、もしくは数回分のことも有ります。^.^)の予約を取って帰られることが、少なからずあります。
受付におきまして、
この時に、”次回の予約票”として、印刷して渡せたら!! とのことにて(従来は、”手書き”でございます)、御教授のほどを、お願い申し上げます。
私が、ただ今作成しておりますものは・・・・・Hiro 様の ”予約データ一覧表” をもとに致しまして、
予約票印刷テーブルを作成 ⇒一覧表示 ⇒ ポータルフィールタで、選択 ⇒ 印刷 というものですが、・・・今ひとつ?? ^.^ であります。
Hiro 様、この様な場合の処理(?)方法を、
お時間が許しましたらで有りますが・・・・お願い出来ますればと存じます。
ご多忙のところ、大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Last edited by yuuka (2016-01-23 22:57:52)
Offline
3.指定顧客の予約票発行の件、
単純には、予約マスタテーブルを顧客名と本日以降の予約日を条件に検索し、お好みに帳票デザインしたレイアウトで印刷すれば良いでしょう。
その流れを手動操作で行い確認してみて、全くそのままその操作をスクリプトにトレース自動化するのが標準的作法です。
一度トライして見て下さい。それで、問題があれば、またご相談ください。
Offline
Hiro 様
早速のご連絡、大変有り難うございます。
これより、
御教授のとおりに、トライ!!させて頂きます。
有り難うございます。^.^ ^.^
ご多忙のところ、大変申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
Hiro 様
大変お世話になっております。
連絡が遅くなりまして、誠に申し訳ありません。
ご報告とお願いをと存じます。どうぞ宜しくお願い申し上げます。
1. 予約票印刷の件
御教授の程、大変有り難うございました!! ^.^ 出来ました。!! 有り難うございます。^.^ ^.^!!
ただ、Hiro 様 、
結局私は、Hiro 様に作成して頂いた、予約一覧(ToDo6)を活用致しましての、ポータル検索 ⇒ 印刷 であります。
(もし、Hiro様 でしたら、如何???と思いまして ^.^。可能でしたら、御教授をとお願い申し上げます。^.^)
2.Hiro 様、お願いでございます。
”予約不可設定” のお願いです。 スタッフ毎の日毎の設定は、Hiro 様に作成頂きまして、完璧!!であります。有り難うございます。
しかしながら、また新たに
検討しております中で、日毎のみならす、午前・午後もしくは、朝は??時以降とか、午後は??時までとか!!??・・・それはもう。我が儘放題!!でありまして・・^~^、
そこで、
Hiro 様 この様な場合の、午前又は午後、あるいは、この枠は予約不可等の、より細かい?設定をするにはどうしたら宜しいでしょうか? ・・とのお願いで御座います。~.^
(Hiro 様の、スクリプト(トリガも含めまして)・・いろいろと試して見ましたが・・上手くいきませんでした!!。
・・・・故のお願いであります。 何もトライせず!!にでの、お願いでは決してありません!!)
ご面倒をおかけ致すばかりで御座いますが、ご検討の程を、どうぞ宜しくお願い申し上げます。
ご多忙のところ、誠に申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
ココに公開する「ToDo(予約)カレンダー」サンプルの公共目的から離れた私的追加機能は、
基本的にサンプルから例示手法を学んだ上で、自己力で解決ください。
1. 予約票印刷の件
> 予約一覧(ToDo6)を活用致しましての、ポータル検索 ⇒ 印刷 であります。
この予約一覧ポータル内検索機能は、一過性の表示のみに目的特化した設計です。
検索結果の再利用を意図した処理(印刷)への展開には不向きです。
このため、他の標準的なアプローチを提案しました。
2.”予約不可設定”の件
> 日毎のみならす、午前・午後もしくは、朝は??時以降とか、午後は??時までとか!
> 午前又は午後、あるいは、この枠は予約不可等の、より細かい?設定をするには?
雇用・勤務体系が「日雇いベース」でもなく「フレックス パートタイマーベース」でしょうか?
すると、勤務時間管理ばかりでなく勤務シフト表・時間給管理なども必要だという先行きになるのでしょうから、
その目標を見据えた別途ファイルか別途テーブルかをしっかり新設すべき内容と思います。
基本の作りは、ToDoカレンダーから手法転用が出来ると思います。
それが完成したら、ToDoカレンダーとの連携(時間別予約不可機能)を取ります。
連携のためには、双方レコード単位としてスタッフとタイムスタンプ(日付と時刻)要素を揃えてください。
Offline
Hiro 様
ご連絡の程、大変有り難うございます・
どうぞ宜しくお願い申し上げます。
1. 予約票印刷の件
”検索結果の再利用を意図した処理(印刷)への展開には不向きです。
このため、他の標準的なアプローチを提案しました。” ・・了解致しました。飲み込みが悪くて申し訳ありません。
おっしゃるとおりに、作成し直しまして、只今、何とかできあがりました。!!!
有り難うございます。
2.”予約不可設定”の件 Hiro 様、これは、またまた、誠に申し訳ありません。
Hiro 様がお考えのような、システマティックなものでは御座いませんで、
単に、
例えば、スタッフAが、 ?月?日の ・・時(~・・・・時?)の枠を、入力不可に出来ましたら!!!・?
との事であります。
ToDo一覧に、例えば、 W:予約不可 を追加しまして、条件付書式で、赤に設定して注意喚起!! でも良いとは思いますが、・・・・・・??
Hiro 様の、
トリガスクリプトの中に、これを組み込もうとしてみましたが、・・・・・・
何とも上手くいきませんでした。
故に、御教授をお願い出来ますればとの思いであります。
Hiro 様の言われます、
” 基本の作りは、ToDoカレンダーから手法転用が出来ると思います。
それが完成したら、ToDoカレンダーとの連携(時間別予約不可機能)を取ります。” ・・・の、
”予約不可の手法” が、今ひとつ良く分かっておりません。誠に申し訳有りません。
(フィールドの移動 で制御をと試してみましたが・・・、 トリガのスクリプトが・・・・・??)
ご多忙のところ、誠に申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
こんな個人的なやり取りは2人だけでメールでやってくれ。
2.”予約不可設定”の件
> ToDo一覧に、例えば、 W:予約不可 を追加しまして、条件付書式で、赤に設定して注意喚起!! でも良い
その追加データ "W:予約不可" は、予約テーブルに予約レコードを新規作成して保存するわけで、
言うなれば先取り自家予約を入れてその時間枠を占有する対症策ですね。
この場合、その後、一般客が予約を入れようにも、強引に書換え入力でもしない限り、
間違いようもなく、それならその対症療法策で良いとも思います...が、
ただ、予約テーブルの中に本来無縁のデータが混入するわけで、その後の予約集計など
本来のデータベース処理が厄介になります。
> トリガスクリプトの中に、これを組み込もうとしてみましたが、何とも上手くいきませんでした。
単純に「W:予約不可があれば赤色へ」という条件付書式だけで、上記のような場合事足りるのでは?
Offline
Hiro 様
ご連絡の程、大変有り難うございます。
多大なるご尽力の程、心より感謝申し上げます。
”予約不可設定”の件 でございます。
Hiro 様の、ご指摘のとおりと存じます。大変有り難う存じます。
ただ、Hiro 様、私が御教授をお願い申し上げたかったことは、 Hiro 様が、ご指摘の
”時間別予約不可” についてでありまして、
(何か、ワンクリック!!??で、この時間は、予約不可!!の様なスクリプトが組めたら良いかな!!・・などと、安直に考えておりました ~.~)
”時間別予約不可”機能!!??・・・が、本日までの勉強の中では、理解できておりません・・・故に、のお願いでございました。誠に、申し訳有りませんでした。
この問題に関しましては、しばらく研鑽を積みまして・・後に再度、
Hiro 様に、お願いが可能でしたらば幸いと存じます。
お陰様で、この様な追加の、またまた・・・のような!!??事は、兎も角と致しまして、~.~
ほぼ実際の運用が可能な状況となってまいりました。大変有り難うございました。。^.^
ご多忙のところ、誠に申し訳ありませんでした。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
> ”時間別予約不可”機能!!??・・・が、理解できておりません・
Enter引数のトリガースクリプトに、EnterレコードのToDoフィールド値が「W:予約不可」ならば「フィールドへ移動[]」(フィールドを抜ける)スクリプトステップを設定します。
ただこれだけでは、スタッフ自身もその時間枠レコードに入れなくなるので、その回避対策も含めると結構面倒なことに!!
Last edited by Hiro (2016-01-27 00:57:38)
Offline
Hiro 様
早速のご連絡、大変有り難うございます。
””Enter引数のトリガースクリプトに、EnterレコードのToDoフィールド値が「W:予約不可」ならば「フィールドへ移動[]」(フィールドを抜ける)スクリプトステップを設定します。
ただこれだけでは、スタッフ自身もその時間枠レコードに入れなくなるので、その回避対策も含めると結構面倒なことに!!””
まずは、
Hiro 様の方法を、設定致しまして・・・・・・その後、
再度、
Hiro 様の、御懸念のこと等に関しまして、御教授をお願い出来ればと存じます。
・・・・・・・・・・・・・・・・・大変有り難うございます。^.^ ^.^ ^.^ ^.^!!
ご多忙のところ、誠に申し訳ありません。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Offline
Hiro 様
連絡が遅くなりまして、大変申し訳ありませんでした。
その後、ご指導頂きましたとおりに、設定等・・・・試行錯誤しまして、
( ”Enter引数のトリガースクリプト・・・”は、ご指摘のとおり、止めた方がbetter・・・・best!?と理解致しました。)
”時間別予約不可”も、何とか可能とすることが叶いました。(Hiro 様の様に、スマートには出来ませんが・・・^.^)
Hiro 様の、作品を未だ勉強中ではありますが(中々難しい!!です)、今後、
今回作成して頂いた”計算式”等に関しまして御教授をお願い致します場合には、
改めて焦点を絞りましてご指導をお願い出来ればと存じます。
Hiro 様、
お陰様で、2月からの本格運用に辿り着くことが出来ました。
スタッフ一同、心より感謝申し上げます。
有り難うございました。 ^.^ ^.^ ^.^ ^.^ !!!! つきましては、
本日をもちまして、一旦、解決とさせて頂きたいと存じます。
Hiro 様の投稿を、毎日楽しみに拝見させて頂いております。
今後とも、ご指導の程を何卒宜しくお願い申し上げます。
Last edited by yuuka (2016-01-30 23:24:01)
Offline
[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 626.2 KiB (Peak: 679.11 KiB) ]