2019年7月31日水曜日

API_OpenWeatherMapをFileMakerに取り込んじゃう作戦


ピンクのとこ押すと今の天気を取得できちゃう。


POSレジ進めなきゃいけないのですが、ちと本業の納期が数件あったり、追加依頼だったり、修正だったりして遅れてすみません。ちゃんとやるからねー。

でも小売業にとても影響する天気情報をネットから取得しちゃう作戦を載せてみます。レジのジャーナルとか日報とかお天気の情報って、その日の朝の天気1回じゃないですか?今作ってるPOSに上の天気情報を移植すると何ができますか!?
そう、時間ごとに天気が取得できちゃいます。

特に、外食業界!天気がもろに影響しますでしょ、
行楽施設、百貨店、スーパー、ショッピングモール、路面店、その他小売店、ぜーーーんぶ天気に影響しますでしょ!?

なのに、日報では朝一回きり。大事ですよー
後にデータ分析の役に立ちます。


OpenWeatherMapさんのAPI
基本は無料なのですが、ビジネスとして使うなら、ちゃんと登録してお金払いましょう。APIを使用する場合はその辺のところをよく注意して使用しましょう。


API Keyを取得するにはアカウントを作る必要があります。Sign Upページで必要な項目を入力して「Create Account」します。設定すると次の画面でAPI Keyが表示されるはずです。






それをスクリプトの中のOpenWeatherMapのURLを生成 箇所がありますので、
ご自身のAPIKeyを取得して設定してください。



次に、自分の場所の緯度と経度を調べておいてください。API側のデータはJSON, XML, or HTMLにしなくても、ダイレクトにURLから取得できます。
ネット上から一旦、ズドン!とマスタ(情報ソース)にパラメータデータを取得して、それをデータテーブルの項目別の複数のテーブルに分けFileMaker用のデータとして生成します。配列変数からの取り出し詳細は、難しい話になるので後日またの機会ということでw



id:802でCloudsってなってるね、でも晴だよ・・・実際は803が曇り、ちと微妙だね



Temp_min:303.71 
最低気温303度?っておかしいべ!?死ぬべ!?
って、いろいろ調べると華氏から摂氏に変えないといけないので、各tempにマイナス273.15で計算すると33.6℃とか出たから安心(笑)



ダウンロード(FilemakerPro17 win)





2019年7月16日火曜日

今から間に合う!一緒に、軽減税率対応のPOSレジを作りますかぁ? その9

前回のダウンロードしたファイルがうるさい!とクレームがきたのですが(笑)、
FileMakerはPCのタッチパネルディスプレイを使用するときなどボタンに音を入れる事が出来ない(昔はハイパーカードみたいに出来た)ので、ウィンドウズのコントロールパネルの警告音を利用して音を入れています。必要がなければ、全てスクリプトから外すのも大変なので音量を下げて使用してください。使用する人は音源ファイルを入れてますのでコントロールパネルで設定してみてください。


按分

按分機能は、レストランやパティスリー、カフェ、居酒屋など外食産業に多く必要とされる機能ですが、最近はカルディなど小売店でも別会計に対応できるようなサービスを取り入れています。



少しレイアウトを変えました。
今回は、前回の会計に引き続き、会計の補助、個別会計ができる「按分機能」を作りました。

まずは動きを見てみます。


①最初は商品を選択する画面です。

商品ボタンを押すと、税区分「E」(イートイン)が選択されていれば、デフォルト値「E」で選択されてしまいます。数量は該当する商品数に追加されます。
「苺のショートケーキ3個」のうち1つをテイクアウェイにしたい場合は、商品名がボタンになっていますので、押すと「苺のショートケーキ」が最後の行にばらされて表示されます。税区分を「T」に変更します。


②ばらされた明細


「苺のショートケーキ」自体の数量は変わりませんが、税率が変わりますので、当然合計の金額が変わります。
このボタンは、商品の数量が2個以上あった場合のみばらされます。


③会計画面

また、少しレイアウトを変えました。黒背景の意味のない項目を削除しました。
下の税率別の計算数値が必要なければ消してもいいですが、軽減税率の仕組みや今後の税改正までは、こういうのがあった方がエビデンスのためにも分かり易くていいかもです。
(ちなみにうちの商品は、これが無いので、今回作っていて採用する事にしましたw)


④按分

商品名の背景がグレーに変わり、該当商品名を押すと、別会計のポータルに商品を1個移動します。「今までの明細がボタンに代わり、別会計用の新しい明細に打込む」という仕組みです。商品マスタから選ぶのでなく、受注された明細から数量のかたまりをばらしていきます。


⑤按分 その2

それぞれに会計を行います。会計後は「次の会計」ボタンを押します。

それぞれ、個別会計時にカードや割引、金券などの使用があった場合でも、累積されるようにしています。

最後の方まで会計をすませば、

⑥元の会計画面

商品の数量が全てばらされた会計画面に戻されます。(モンブラン2個というのは同じ方がお会計した場合、数量も合算されます)

累積される会計種別は、割引類、カード類、金券や商品券です。あとは釣銭なしの商品券・金券の預かりデータです。別会計に売掛は持たせていません。
釣銭が幾ら、ですとか、現金預かりが幾らとかは売上集計上あまり必要が無いので省きました。


この機能で重要なのは、リレーションです。
全て同じ受注明細テーブルのテーブルオカレンスを使用していることです。





実際に按分に必要な追加TOは③と④です。
按分の画面上は①のテーブルに通常の明細②のデータを④を使って③に移動すると考えればいいのですが、これはここで説明するより、分解して構造を見てください。
(壊れたら、またダウンロードすればいいです)



コメントが多いと気持ち悪いのですが、我慢してください。
デバッグで動きをみながら壊していくと中身が分かるかと思います。



ダウンロード(FileMakerPro17 Win)



次は、レシートとカスタマーディスプレイ
その次は、更新処理、売上ファイルにデータ移行、集計








2019年7月13日土曜日

今から間に合う!一緒に、軽減税率対応のPOSレジを作りますかぁ? その8

少し忙しくてPOSレジ方が遅れてます


今回は会計の画面ですね~
入力画面も少し変更しています。自由にカスタマイズしてくださいね。

今回作ってて思ったのですが、

●軽減税率と標準税率を分ける
●端数処理(ポータル明細内の各行と、受注側(3カ所の消費税計算)
●繰返しFと混在の計算(税を分けるところ)
●内税、外税

この4つの条件で一旦は作ったのですが、想像していた通り、重くなりまして、今後按分会計の開発を考えると、一番重い外税は一旦やめておくことにしました(笑)
(自社マスタで設定できていた内税と外税を外しデフォルト内税にしました)
外税が必要な方は、計算式内の /* 消し*/で残していますので自由に使ってください。

端数処理の重いのはしょうがないです。(遷移で止まるのはこれです)






この会計ですが、作っている過程を掲載するのは難しいですよね。


あるところまでは、一気に作り上げないと、逆に説明のしようがないです。

写真の赤まるの消費税の誤差ですが、左の消費税は
明細ごとに消費税を計算(当然明細ごとに端数処理をします)したもので
右の消費税は割引後の合計値を元に計算(合計に対しての端数処理)したものです。
当然、税率が変わります。

しかし、これは国税局が指導した端数処理(切り捨て)の範囲内であり、なんの
問題もありません。(請求する額が減っては困りますが)
今回のPOSシステムでは、この差をまるめるのではなく、あえて表示させ、今後も続くであろう軽減税率の対策に生かそうと考えています。
(例えば、明細上では小数点2位表示させ、その合計で端数処理とか)




今回の軽減税率で一番困る話


●今回8%と10%の対象品合計をレシート上で分けて表示すること。対象品は *マーク
(画像は国税局)

すごく、中途半端ですよね。
このシステムに補助金をかけて次回のインボイスに再び補助金がおりるのでしょうか・・。






●次回(2023年)は、インボイス方式で消費税も分けて表示すること。
(画像は国税局)

2段階目があるということです。




どんどん内容が変わる国税局。

上の絵は見た目は簡単ですが、
分けるということは、合計と消費税だけではなく、割引(クーポン割引)、クレジット(クレジット、やデビット、電子マネー、スマホ決済など、全て8%と10%に分けないと、消費税の計算が合わなくなります。 請求書を2つに分けるって、一体誰がそんなめんどくさい管理しずらいシステムを作るというのでしょう・・・・か!

あえて、段階的に税率を表示させましたが、この赤まるの消費税の計算の違いは


このように構成比を基に値を計算して分けないと、算出されません。
でも、ここでちゃんと分ければ、レシートや伝票を税率ごとに発行しないで済みますし管理もしやすいですよね・・・。




今回、時間が無くて十分なデバッグをしていません。
ちゃんと動かなかったらすみません。(あとでじっくりデバッグしますw)

ダウンロード(FileMakerPro17 win)

※タッチパネル用に、ボタンに警告音を入れています。使用する場合は
音源も入れてますのでWinのコントロールパネルで設定してください。



追記・・・

計算式だらけで、レコードが貯まる分、どんどんパフォーマンスが悪くなります。
どうするかというと、別ファイル(売上)の数字フィールド(計算フィールドは止める)に受注や明細データを売上にインポート(集計や分析資料に使用します)して、受注テーブル側のデータは消します(更新処理)。
なので、日々のパフォーマンスは悪くなりません。
更新後の修正は出来ないので、赤黒処理をします。
日次更新として日の終わりか、サーバーがあればチェック(承認)だけしておいて、深夜自動更新という手もあります。






JT00000001を「JTスぺ-ス1とかで検索したい!」という人のために

「JTスぺ-ス1とかで検索したい!」 とかいう人のために。 -------------------------------------------------------------- 計算フィールの結果(テキスト) J JT JT0 JT00 JT000 JT0000 JT00...