モバイルオフィスの作り方

[モバイルオフィスの作り方 Vol.0623] Excelは最強!なんだけど・・・・

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

◇ 新春ももう後半・・・・                 第623
 ☆モバイルオフィスの作り方 ★
                                 Vol.0623

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

□   Excelは最強!なんだけど・・・・
□   春節

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
☆ Excelは最強!なんだけど・・・・
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
前回、Excelでクラウドサーバーにアクセスする方法を見つけてとても喜び、早
速実用化試験を始めて当たって砕けたという話題です。


◇ まずはプリントサーバーを試す
 Excelから直接クラウドサーバーのデータにアクセスできるので、プリントサ
 ーバーに使えないかを試しました。
 
 で・・・・だめでした。
 
 というのもUNIXのサーバーのとあるフォルダーにプリント依頼のテキストが到
 着するのですが、UNIXサーバーからWinPCにそのことを伝える方法がない(全く
 ないわけでもないのですが、どうしてもWinPCがサーバーのように応答しない
 といけなくて危険なので・・・)のでWinPC側からUNIXサーバーに問い合わせに
 いきます。
 
 今まではFTPを使って数秒に一度、ファイルの存在確認を行っていたのですが
 、同じことをExcelにやらせてみました。
 
 Excelの方法はXmlHttpRequestを使ってUNIX上の”ホニャララ.php”を実行し
 ます。
 このこと自体は成功しますが、数秒に一度、UNIXでプログラム(PHPの)が稼働
 し続け、安価なレンタルサーバーに結構な負担をかけるようなのです。
 
 リソースメータを見たら1日に40分もCPUを使っていることがわかりました。
 
 1台丸々借りているサーバーならよいのですが共有サーバーですからやはりこ
 の方法はよくないとわかりました。
 
 よく考えたらFTPでファイルチェックをする場合のパワーはクライアントのFTP
 が行うのでサーバーにはあまり負担をかけません。
 しかしXmlHttpRequestの場合はサーバーのプログラムを頻繁に稼働するので負
 担をかけるのです。
 
 ということでこの方法は断念しました。
 
◇ 他の方法を模索する
 要はプリント依頼のテキストがUNIXサーバーに到着するとWinPCに転送されれ
 ばよいわけですから次にWebDAVを試すことにしました。
 
 https://ja.wikipedia.org/wiki/WebDAV
 
 これは結構歴史のあるテクノロジーで、イメージとしてはドロップボックスに
 似ています。
 
 UNIXサーバー上の任意のフォルダーをWinPCに同期するので、データの転送に
 プログラムは必要なく、テストしたところほぼ到着と同時にWinPCに到着しま
 す。
 
 プリントサーバーは自身の指定フォルダーに依頼データが到着するなりプリン
 トを始めたらよいのでこれで一件落着かと思われました。
 
 しかし・・・・・
 我がサクラサーバーでもこのサービスはあるのですが最上級の1台サーバーを
 まるごと借りるタイプでしかありません。
 
 月額1万円以上なのです。
 仕事で使うことでもあり、たくさんのお客様がこの仕組みで印刷していますか
 ら払えないわけではないのですが、たった1台のサーバーに全顧客の印刷の運
 命を委ねるのはいかがなものか・・・・ということで断念しました。
 (現在は複数台の安価なサーバーにプリント依頼をそれぞれしますから万一1台
 が機能不全になっても代替えできる)
 
 もっと安価なサービスではWebDABを数百円で提供されていましたが(これでテ
 ストした)そもそもそのクラウドサーバーがちょっと信用できなくてやはり使
 えませんでした。

◇ ではFTPで・・・・
 ということでPowerShellで作ったFTPクライアントで定期的にUNIXサーバーの
 指定フォルダーを監視し、プリント依頼があればそのテキストを取得する方法
 に落ち着きました。
 
 今まではその後PowerShellがExcelを起動してプリントを実行し、Excelは終了
 するという作業でしたが、今度はExcelは常時起動していて、PowerShellがダ
 ウンロードしたファイルを監視して印刷をすることに変えました。
 
 Excelは印刷だけではなく、PDF化したり、Excelファイル化したりもするよう
 にしましたからかなり便利です。
 (PDFやExcelファイルはメールでリクエスト元に返信する)
 
 また、印刷指示ごとにExcelを起動しないのでやや速度が上がりました。
 
 PowerShellはFTP(厳密にはSSL/TLSを使ったFTPS)で通信しますから安全です。

◇ で・・バイリンガル
 さて、これらの機能をプログラムするには4つの言語を使う必要があります。
 
 ・ ExcelのVBA   これは母国語です(のはずです)
 ・ PowerShell    Winに標準で搭載されているスクリプト言語で、C言語風
           だが極めて難解。ただし参考文献が豊富
 ・ PHP        UNIXサーバー上で稼働するスクリプト言語で、C言語風。
           文献も多く、C言語が使えたらすぐに使える。
 ・ JavaScript    HTML側のプログラミング言語で今では第二の母国語。
 
 どれもかなり気合いを入れて修行しましたからプログラミングに問題はないの
 ですが、行ったり来たりしていると今は何語でプログラムしているのかわから
 なくなり、つまらないところで躓きました。
 
 意外なことに母国語で40年近く使っているVBAにとっても違和感を感じます。
 結構難しいですね・・・
 JavaScriptがシンプルに感じます。
 
 特に外部の機能を操作するのはVBAはかなりやっかいです。
 Winで難しい操作を考えるとどうしても”.Netフレームワーク”に行き当たり
 、ExcelのVBAは意外なことに”.Netフレームワーク”とあまり仲がよくないか
 らです。
 
 従って”.Netフレームワーク”を操作するためのPowerShellを外すわけにはい
 かないのです。
 (もしかしたらExcelVBAが”.Netフレームワーク”と仲良くなる日が来るかも
 しれません。それまでの辛抱です。)

とはいえ、現在プリントを簡単に実現する方法としてExcel以上のものは見当た
りませんから錆びつきかけているVBAの腕を鍛えることにします。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
☆ 春節
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 
今日は春節で私どもの中国出身の若者はお休みです。


◇ 春節
 旧暦(太陽太陰暦)では今日が元旦だそうで中国やアジアの国では春節と言って
 元旦です。
 私どもの会社では中国出身の若者が二人働いてくれており、そのうちの一人の
 N君は私の後を継いで会社を率いてくれる大切な人材です。
 
 この二人は昨日からお正月休みです。(といっても2日だけですが・・・)
 
 神戸の中華街でも竜の舞があり、その近所のベトナム料理店でも正月特別料理
 が提供されます。
 
 また東南アジアに輸出を主にしている貿易会社の顧客は”春節前の出荷でとて
 も忙しい”と言っておられます。
 ”とはいえ今年はラマダンが夏なのでまだましなのですが・・・”とのことです。
 
 でも残念ながら私に取ったら単なる平日です。

◇ 旧暦??
 私たちは西暦(グレゴリオ暦)を主に使っていますが、アジアの国々では(中国
 文化圏)今でもお祭りなど伝統行事は旧暦を使います。
 
 この旧暦というのは太陰暦(月の運行を基準にする)と1年の季節を平準にする
 ために閏月を挿入することで太陽暦に近い季節感を実現する昔の暦法です。
 
 月の運行を基準にするのは実はとても理にかなっており、”卵の四角と女郎の
 誠、あれば晦日に月が出る”というぐらい月末の月夜はあり得ないもので、晦
 日(みそか=月末)は闇夜であり十五夜は満月とわかるのです。
 
 
 夜道を歩くなら月の中頃、月末は夜歩きしてはならないというのは昔の人の常
 識です。
 また月末月初は大潮であることも昔の漁師には常識でした。
 
 なぜかというと、太陽や他の惑星に比べて月は極めて近い場所にあり、地球と
 引力で強く結びついているからです。
 (月は朝夕ロックと言って地球の強い引力でいつも同じ面を向けている)
 
 https://ja.wikipedia.org/wiki/%E8%87%AA%E8%BB%A2%E3%81%A8%E5%85%AC%E8%BB%A2%E3%81%AE%E5%90%8C%E6%9C%9F
 
 つまり遠い太陽より近い月との関係を暦にする方が理にかなっているのです。
 
◇ でも困ることも
 じゃあ太陰暦ですべて解決かというとそうはいかないのです。
 地球は太陽の周りを365日あまりで1周し、また地軸がやや傾いているので季節
 が生まれます。
 
 そして古くはナイル川の氾濫(これで肥料をやらなくても持続的農業が可能)や
 作物の種をいつ植えるかは季節によるのです。
 
 ところで太陰暦では月の公転周期が27日ちょっとですので例えば12ヶ月を1年
 とした場合、324日で1年になり太陽を1周しません。
 季節がどんどんずれてしまいます。
 
 そこでそのずれが27日以上になったら同じ月をもう一度作って季節と合わせる
 るのです。
 例えば3月の最後の日の次にもう一度3月1日がやってきます。
 これを”閏3月”と呼びます。このように太陰暦を使いながら季節と合わせる
 方法を太陽太陰暦と呼び私たちは旧暦と呼ぶのです。
 
◇ 季節ってそれほど大事??
 昔は神権または王権の象徴で、明治時代になるまで日本では暦を一般が作るこ
 とも販売することも重罪でした。
 
 エジプトのファラオにしても中国の皇帝にしても、また日本の宮廷にしても暦
 を作る権利は独占したようです。
 
 それは農業しか主な産業のない時代に情報の中枢を握ることになるからだと思
 われます。農業にとっては季節は超重要で、冬に少し暖かくなったからと言っ
 て貴重な種を蒔いたら実は真冬の小春日和だった・・・という惨事を招くから
 です。
 
 日本の農民はそれとは別に”サ=神聖な音”の”鞍”に神が降臨すると春の到
 来を確信したという意見もあり、日本人が”サクラ”を愛する理由だと主張す
 る学者もおられます。
 
◇ グレゴリオ暦とは
 いま、私たちが使っている西暦はローマ教皇様であるグレゴリオ13世が制定さ
 れたそうで1500年代の最後の方です。
 
 https://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AC%E3%82%B4%E3%83%AA%E3%82%AA%E6%9A%A6
 
 日本では戦国時代の末期で、織田信長はこの動きを知っていたかもしれないそ
 うです。
 織田信長の暗殺の直接の動機が三島歴の強要=王権の簒奪だったという説もあ
 ります。
 
 ローマ教皇様はご自身の治世の成果としてそれまで使っていた間違った?暦の
 改訂を命じられたそうですが、すでに天動説を唱えていた聖職者のコペルニク
 スの説なども検討したそうで、かなり科学的に暦を作り直したようです。
 
 だから未だに使われている??
 
◇ コンピュータ的に見た暦
 少しプログラムをしたことがあれば日付の計算がどの言語を使っても結構やっ
 かいなことはご存じの通りです。
 特にUNIX系では超難解です
 
 ましてや太陽太陰暦などが採用されていたらとっても大変だったでしょう。
 グレゴリを歴で大正解です。
 
 本来なら大の月や小の月が不本意ですし、なんで2月だけ28日とか29日とかに
 なるのかも不可解です。
 
 月末締めの請求書を作るごとに、指定の年月の月末日を算出するのがいかにや
 っかいなことか・・・ため息が出ます。
 
 人事管理では現時点でその方が何歳であるかとか、面倒な計算がたくさん出て
 きます。
 方程式だけでは計算しにくいのです。
 
 何で地球は太陽の周りをぴったり365日で公転しないのだ??
 (366日でも許す)
 
 グレゴリオを教皇様は何ですべて30日か31日(できたら交互に)して2月も30日
 にしてくれなかったのだろうか??と思う次第です。
 (当時はコンピュータのソフトウェアーがなかったので仕方がないか・・・・)
 
 と今更愚痴っても仕方がないのですが・・・・
 それより太陽太陰暦を採用しなかった方を喜ぶべきかもしれません。
 
◇ 太陰暦はもっとやっかい
 イスラム暦は純粋な太陰暦で、”今年のラマダンは夏頃”という言葉でもわか
 るとおり、元旦は真夏になったり真冬になったりします。
 
 実は15世紀頃までの科学ではイスラム圏はヨーロッパ圏より遙かに先進的で、
 天体観測でもヨーロッパより遙かに進んでいました。
 ヨーロッパが文明の先端に躍り出るのはルネッサンス以後で、それまでは例え
 ば数学ではマイナスを認めないとか極めて迷信的な時代です。
 
 今でも数字はアラビア数字(非ヨーロッパ数字)を使いますし、マイナスを認め
 ないのですから”0”の概念もありません。
 
 そんなイスラム圏の合理性故に、完成してしまって1年と合致しないことを知
 りながら太陰暦を使っているそうです。
 
 そういえばイスラム圏の国々の国旗には月がシンボルのところが多いですね。
 太陰暦であればかなり数学的ですからコンピュータで計算しやすかったことで
 しょう。
 でもお正月は真夏になるかもしれませんが・・・・
 

若者の春節を聞いて、暦のことで学んだことをあれこれと思い出しました。
でもN君も気づいていない日本が東洋の国の中で変わっているどころではない、
世界で唯一元号を使っている国だという話は次回にします。
東洋的に変わっているのではなく、実は世界的に変な国なのです。
━━━━━━━━━━━━━━━━━━━━━━━━━━━
[モバイルオフィスの作り方] はサボのマナベが日々気づいたこ
とや思ったことをお天気の良い日の縁側に座ってポツリポツリと
お話しするようなマガ ジンです。
ご意見などもあることと思います。
もしご意見等がありましたらお寄せいただければ随時話題にして
いきたいと思います。


新規登録・解除はこちら
      ↓
http://sabot.jp/MailMagazine/Merumaga.html
==========================================
★発行責任者:
 (有)ファクトリー・サボ
  真鍋隆彦
 兵庫県神戸市垂水区東舞子町9-9
           マリタイム舞子501号
 Tel:078-787-3602 Fax:078-787-3619
 Mail:manabe@sabot.co.jp
 http://www.sabot.co.jp/
 ☆ソフトウェアーギャラリーに遊びに来てください
  https://secure3552.sakura.ne.jp/sabot.jp/Mitumori/
==========================================

ついでに読みたい

モバイルオフィスの作り方

発行周期:  週刊 最新号:  2019/03/19 部数:  148部

他のメルマガを読む