コンピュータ環境 (2016/07)

最初の書き込みへ

基本の環境はこちら

2016年06月の環境
2016年08月の環境
戻る


時系列・環境の変遷


 

2016/07/31 (Sunday)
最新レート取得のソースを excel に流用

 今は EXCEL シートで管理している売り上げ、請求発行の都度、最新の交換レートを www で参照し、手作業で更新していました。

 昨日、access の試験環境でこれを自動的に取得できるようにしたので、本日はこの成果を EXCEL にも反映させ、すぐに楽になれるようシートの改造をしました。

 新しく、「最新レート取得」というコマンド・ボタンを追加、access のコードを丸ごとコピペして、細部を手直しし、データベースを更新する代わりに、シートの特定のセルに値を代入するよう変更して完了です。

 やってみましたら、気味の悪いほどスムースに通貨レートが最新のものに更新されました。これでひと手間省けたというもの。本当にうれしい。

 次は、請求画面にはりつける画像ファイル・ラベルの取得とアップロード用の一時ディレクトリに複写です。これも、試験用プログラムで動作確認したら、現在使用している、請求ファイル作成用フォームに組み込むことで手間が省けます。よぉし、本日はこれいっちょやったるか。

 目標ができれば、やる気も出る、と。

 問題は猫の「遊んで」コールなんですね。

 あの後、ちょちょっとコードを書きまして、画像ファイルの問題も片を付け、動作確認して、現在使用中の単独の請求処理プログラムに組み込みました。

 これまで、エクスプローラーから手で選んで、コピーしてリネームしてという手順でしたから、それが画像ファイル・ラベルを入力するテキスト・ボックスの GotFocus イベントで全自動ですから、もう雲泥の差。そうか、ついでに交換レートも今は [currency] テーブルにはいっているんだった、これも計算させてしまおう♪

2016/07/30 (Saturday)
出庫処理、その5

 通貨テーブルの交換レートですが。これ、毎回手で入力するのかったるいなあと思ったのです。

 せっかく www に表示されているのだから直接取れないかなあ、とイソップの狐がブドウを見上げる心境。

 そこで考えた方法が、まず perl でそのページを丸ごとダウンロードしていったんディスク・ファイルに書き出す。それを VBA で解析して A/S レートを抽出して [currency] テーブルの該当通貨レコードを更新する。

 perl は activeperl の最新版がはいっているので、そういうソースが落ちていないか www を探したらそのものがありました。ディスク・ファイルへの書き出しは、やり方こそ知りませんでしたが初歩の初歩。これを合体させて、途中 BASE64 のリンクにかなり苦労しましたがなんとかこれも解決して、一発でページをダウンロードできるようになり、これを batch に記述して VBA から shell で呼び出して実行し、最新版になったファイルを VBA で解析して対象通貨のレートを最新のものに更新できるようにしました。なんか、とんでもないことを半日でやってしまった。とてもうれしい。

 これで、あとは画像ファイルの番号を自動的に取ってきて処理すれば、既存の請求書作成フォームにあるコードを流用して請求処理ができます。

 いよいよ請求処理の終点が見えてきましたよ。明日かなそれとも来週かな。

2016/07/31へ

2016/07/17 (Sunday)
続々・出庫処理

 画面デザインが終わり、計算もそこそこ正確になったところで、現実の EXCEL の表と比べると、いくつか問題があることが判明しました。

 発送料金と追跡番号のテキストボックスが一つずつしかありませんが、実際には分割発送することがあります。それと、deposit、carry over、price adjustment という項目が必要です。

 これらはすでに請求トランザクション・テーブルにレイアウトしてありますが、このプログラムで一時的に格納して、最後に「出荷実行」ボタン押下で一気に請求トランザクションを更新するつもりでしたので、一時データの格納場所が必要になりました。

 それには、今、このプログラムのために作った一時ファイルが適任と、キー・フィールドを一つ増やして、対処。必要なデータ・フィールドをテーブルの後ろにずらずらと記述して、全部入力できるようにして、このためのフォームもデザインしたところです。

 これからメイン・フォームのヘッダーにサブ・フォームとして埋め込んで連携させ、データを取って計算させるようプログラムを変更する予定。

 先は長いわ。でも、着実に進んでいるのがちょっとうれしい。

2016/07/24へ

2016/07/11 (Monday)
続・出庫処理

 ACCESS で、現在入力を続けているトランザクションを選択して、出庫処理をするプログラムを途中まで書きました。

 ここで、これまで EXCEL でやっていた売り上げ計算に結構深刻なエラーを見つけてしまいどうしようかと思いましたが、今まで一度もクレームが来たことがないのでこれからも放置と決定。

 丸め誤差なのです。消費税抜きで掲載してある商品の価格を int(定価 * 1.08 + 0.5) で計算して表示させると、そのセルの値は売値に一致します。しかし、これを何行も表示させて合計すると、手作業でセルの値を足した値と一致しません。

 これまで何年も続けてきたのに、今回 ACCESS で同様の計算をさせたところ1パーセント前後違うことが分かり、原因を調べたら、EXCEL 側でした。

 こういうの、どうやって回避するのだろうか。

 調べて、現在の int 関数を round 関数に変更してみることにしました。

2016/07/17へ

2016/07/10 (Sunday)
通販ページのリニューアル

 顧客から提案があって、今のページは読みにくいから改善したらどうかと言われました。

 具体的にどうなのよと聞いたところ、まず字が小さいこと、字が多すぎて、それもほとんど全部1ページにはいっているので、読むだけで疲れるということだそうで。

 気分転換にイラストでもはいっていればまた別なのかもしれないが、前にどこかであまり頻繁にページ変えするのはよろしくないとか読んだ気がするので今回はほとんど全部1ページに押し込んだのですが、それはそれでまた弊害があるらしいです。

 と、いうわけで、紹介されたサイトのテンプレを落として内容を書き換えているところ。使える部分はそのまま使って、なるべく手を抜いて、と思っています。

 とりあえず、現行のページはフォント・サイズだけ大きくしておきました。確かに読みやすくなった気がする。

 片方では出庫処理のプログラムが本番実行待ち状態だし、夏のイベントまでに整理しておかないとまたデータが増えて厭なことになるし。

 とはいえ、月曜日から木曜日までは実質的に何もできない状態で、もし作業したらインターネットの巡回はあきらめるかなと。それも仕方ないか。

 という週末でした。まだ終わってないですが。

2016/07/11へ

2016/07/03 (Sunday)
出庫処理

 先週は、簿記に詳しい息子から指導を受けて、商売のキャッシュフローをはじめとする諸表を作成していました。

 その過程で、在庫の情報が必要になりました。これは、確かに EXCEL で取ることはできるのですが、手作業になります。

 そして、ACCESS では、この部分は開発途上でデータを入れていません。

 しかし、今後この表を作るために毎回手作業で集計するのは余りに辛いと、木曜日と金曜日のの二日間、ほとんどぶっ通しで作業して出荷処理をできるようにしました。

 問題は過去のデータで、これを全部出荷したことにしなければなりません。

 そこで、金曜日の最後の作業として、EXCEL から現在在庫がある顧客のデータを手作業で抽出しました。顧客番号と、最古の受領日付です。

 そして、プログラムを書いて、この顧客番号リストにない顧客の全レコードを出庫済み、この顧客リストにあるレコードのうち、最古の受領日付よりさらに古いデータを出庫済みとしました。

 これで、ほとんど現在の在庫と一致するはずなので、本来でしたらこれをチェックしなければいけないのですが、土曜日は疲れてしまって作業ができず、午後から買い出しの作業で出かけてしまい、これが予想外に長引いて結局帰宅が午後6時半で作業にならず。本日もイベントの買い付けで先ほど帰宅したところで、これからその後始末や、店買い、オークションの受領品の処理などが目白押しで、とても手が回りそうにありません。参ったなあ、いつできるのだろう。

 明日からパートに出ることになっているので、ますます作業時間が限られるというのに。

 パートは月〜木の9時〜15時なので、夕方ちょこっとできそうだし、金曜日午後から日曜日まではフルに作業できますが。
 出荷は金曜日にまとめてやることになるので、それまでにチェックをすませられれば、本番に反映できます。

2016/07/10へ


最初に戻る
戻る