未分類 のブログ記事

世界で唯一のPHPのRAD開発環境である、エンカバデロテクノロジーズ社の
RadPHP XE2」を業務に導入しました。


もともと、RadPHPは、Delphi for PHPという製品名で販売が開始された商品で、
その名の通り、Delphiの開発手法をPHPに使える開発ツールです。

RadPHPの操作画面

写真の通り、かつて、Window用アプリケーションのRAD開発環境において、
VisualBasicと双璧をなしていた、 Delphiの見た目そのままに近いです。
というか、おおよそ、WEBアプリケーションの開発画面には見えません。
この画面の通り、右側のツールから部品を選んで、真ん中のフォームに配置すると、
それでもうPHPアプリケーションの出来上がり!おそろしい。。。

Delphiで使われていた「VCL」というツールキットをPHP用に置き換えたことで実現できたそうで。。。
すげぇ。


5年ほど前までクライアントの業務管理アプリケーション開発などにDelphiを使っていたのですが、
開発の柔軟性が非常に高いFileMaker7系統に移行しました。
しかし、サーバーとクライアントの間でのシームレスなやり取りが必要になってきた昨今では、
FileMakerの利用では、スピード面や堅牢性に問題があったり、
これをクリアするためには高額な上位版が必要だったりと、
どちらかというと小さな個人商店を相手にしている、
私の業務では悩みが増えてきて、FileMakerを置き換えるプロダクトをここ1年ほど探していました。

幾つかの候補があり、

などがそれです。

Delphi for PHP(RadPHP)が比較的安価(3万円程だったので、購入はしたものの、
いかんせん、情報が少なく、多忙なのものあって勉強せずに放置となりました。
だめですね。。。orz


しかし、色々な業務に追われるようになり、
さすがにFileMakerじゃ苦しいよということも増えて来まして、
重い腰をあげて、何かに乗り換えるつもりで、調べていたところ出会ったのがこの動画。

RadPHP and Database Development

めちゃ簡単にDBのジェネレーター開発できるやん!!
そりゃもう衝撃だったので、眠らせておいたDelphi for PHPを使ってみたところ、
なるほど、こりゃええわ!ということで、後継バージョンのRadPHP XE2を導入しました。


PHPの書き方としては、MVCフレームワークなどとは大きく異なり、
各種クラスの命名規則や、メソッドのコール方法は、Delphiを触っている感覚に近いです。
幸い私はもともとDelphiを使っていたのものあって、それほど苦ではないですが、
普段通常のPHP開発を行なっている人にとっては、
戸惑う点の多い開発ツールかもしれません。

また、日本においては、使っている方が非常に少ないようで、
情報も少なく、書籍も1冊しか出ていません。
見た目に騙されて開発初級レベルの人が手を出すと痛い目にあうツールとも言えるでしょう。
(まぁ。私のレベルも低いですけどね)


現行のRadPHP XE2では、iOSアプリケーション開発などもできるようですし、
Facebookアプリケーションも作れるようです。
(まだ触ってません)

なんかワクワクですねー。

とりあえず、私の業務において、FileMakerを置き換えるに十分すぎるツールが、
3万円そこそこで導入できたので良かったです。


なお、本家のDelphiは、Professional版を買えば、
Windows用アプリケーションだけでなく、
MacOSX用やiOS用のアプリケーションまで開発できるようになってましたΣ( ̄□ ̄;
すげぇ。

ただ、かつてOSSが盛り上がったときに、
Linux版のDelphiである「Kylix」という商品が出たのですが、
中途半端に終わらせた過去もあるので、
現時点では手放しでは喜べないですが…。

本家DelphiのPro版ではRadPHPも同梱されているようです。
えぇっ。。。そっちにすればよかった。。。
大体10万円そこそこで買えます。


まぁ兎にも角にも良いツールが見つかりました。
しばらくはこのツールを勉強していきます。

私のことをご存知ならば、私がよく沖縄にいくこともご存知だとおもうので、わざわざそれを日記にはしませんが、今回はじめてスカイマークエアラインズを使って旅をしたので、そのレポです。
すみません写真とかはないです。


まず、スカイマークエアラインズについて。
最近よく聞くLCC(ローコストキャリア)というタイプの航空会社です。名前の通り「格安路線」ですね。
 
2011年はJAL・ANAといった従来の航空会社も別会社でLCC参入をしたりして、日本におけるLCC元年と言える年です。
従来路線も、JALの子会社で沖縄の離島間路線を担当するJTAがLCCに匹敵する格安プランを発表したり、ANAでは待ちに待ったB-787の就航でLCCとの差別化を図るなど、航空業界としても激動の一年だったのではと思います。
 


さて、そのスカイマークの航空券の値段ですが、今回使った名古屋(中部)-沖縄那覇便は、定価が15,800円。もうこの時点で、激安ですが、平日の場合最安が5,800円で、先着順に全部で7段階の価格設定です。
今回僕は片道9,800円で利用しました。
これでもJALの早割の半分以下です。


使用機材についてですが、スカイマークはすべての路線を保有機材であるB737-800で運行しています。
意外にも、B737の機体としては最新鋭のハイテク機で運行しています。
 
同じ路線である、JALの名古屋(中部)ー那覇路線は、かつては、B777-200/B777-300/B747-400Dなどの大型機で運行していて、B777では、全席液晶モニタ付きなどで運行していた時期もありましたが、現在は、すべてB737-400で運行していて、使用機材としては、LCCであるスカイマークのが上という状況です。
 
しかしながら、スカイマークでは、内装などは簡素化されていて、テレビモニタでのニュース放映や、音楽番組提供などはありません。
iPodを持ち込んだり、新聞雑誌を買って行ったりというのは、必須かもしれませんね。
 
また、席は若干狭めです。
 


機内サービスも、新聞の貸出などもありませんし、飲み物は販売のみです。ブランケットは貸してもらえます。
FAさんのスタイルも、JALやANAのような綺麗できちっと感じではなく、ちょっと小綺麗な作業着といったイメージです。とは言え、対応は極めて丁寧です。日本のLCCだからかもしれませんが。
 


地上の受付やGHさんの対応はどうか。
対応としては、ごく一般的な丁寧さです。
 
チェックインと航空券発行が簡略化されていて、
ネットでの予約の場合、
支払いはクレジットカードかコンビニ支払い限定なのですが、
この支払手段を確認方法として、
カウンターに設置の受付機を使って航空券を発行します。

カード払いの場合は、支払いに使ったカードを受付機にいれることで、確認がとられて、航空券が発行されます。
コンビニ払いの場合は、申込時の電話番号と、コンビニでの支払番号が確認手段になります。
 
JAL・ANAとは違い、受付窓口が非常に少なくなっており、かなり早めに行って搭乗手続きを済まさないと乗り遅れの可能性があります。今回は出発時刻の45分くらい早めに行ったのですが、それでもギリギリでした。最低でも1時間は早く行っておく必要がありそうです。
(ちなみに航空機における出発時刻は、機体のドアが閉められて、航空機が動き出す時刻のことを言いますので、実際はもう少し早めに搭乗最終手続きが終わると思ってください。)
 
また、那覇空港では、通常受付カウンターは、3階にあるのですが、名古屋便の受付だけ1階の隅っこという扱いで、泣きそうになりますw


予約なのですが、基本的に2ヶ月前の午前9:30に予約受付開始です。
JALなどと違い、復路も2ヶ月前の午前9:30に予約することになるので、ちょっと面倒です。
 


で、なかなか困ったのが、運行時刻です。
スカイマーク全路線がというわけではなく、名古屋(中部)ー那覇路線に限った話ですが。
 
午前に中部を出る便は、7:40出発時刻になっています。
とにかく早い時間です。名古屋市内からのアクセスがギリギリで、
愛知県内でも、三河地方から来る人などは間に合わない可能性もあります。
 
また、帰りの那覇を午後に出る便は20:30発という時刻になっています。通常通り、運行しても、中部着が22:30頃で、預けた荷物など受け取りの時間を考えると、順当に行っても到着ロビーに出られるのが23時頃。
空港アクセスの唯一の手段である名鉄の最終電車が23:31発なので、40分遅延が発生すると、もう帰る手段がタクシーしかなくなります。
 
旅行の中身で見れば、JAL・ANAの便を使うより、行き帰りあわせて1日くらい余計に遊べるというおまけ感覚はありますが、空港までの行き帰りについては一考が必要です。
 


ざっとこんな感じです。個人的には、到着時刻以外は特に不満に思うようなこともありませんでした。国内で2・3時間の便だったらこれでいいと思います。
逆にJALなどを使う場合は、Jクラスなど申し込んで、違いを楽しむといいかなと思います。


 
【追記のレンタカー情報】
沖縄のレンタカーについてのお得情報。
 
沖縄のレンタカーはもともと安いです。
ヴィッツクラスが保険と免責補償料を含めると、
大体24時間で4,500円程度です。
 
スカイレンタカーという、
レンタカー会社をいつも使っているのですが、
会員になるだけで、数百円の割引がつきます。
で、ナンバー登録から4年以上経過した車を指定するプランだと、
保険と免責補償料を含めてもヴィッツクラスが
24時間で3,150円で借りることができます。
 


ついでに書いておくと、個人的には、沖縄では、日産やトヨタなどの、ディーラー系では借りないほうがいいと思っています。
 
というのは、安いという理由だけでなく、スカイレンタカーなどのほうが保証を広くすることができるからです。
 
通常レンタカーでは、事故(当て逃げや傷をつけてしまった場合など含めて)があった場合、免責として3万円、休業補償として3万円程度のお金を請求されます。
沖縄は道が滑りやすく、事故を起こしやすいのと、当て逃げも結構多いです。自分で事故ったならいいですけど、当て逃げでこのお金を払うのは非常にむかつく話です。
 
スカイレンタカーなどは、こういった免責などを免除する保険が1日315円で入れます。何があるかわからないので、315円で入れる保険ならつけておいたほうがいいというわけです。
 
ちなみに、私の働いてるオフィスの社長は、昔沖縄の道路でタイヤをすべらせて、VOLVOを横転させたことがあるそうですw


沖縄に行く際にご参考になれば^^

この投稿はパスワードで保護されています。表示するにはパスワードを入力してください:


この投稿はパスワードで保護されています。表示するにはパスワードを入力してください:


この投稿はパスワードで保護されています。表示するにはパスワードを入力してください:


この投稿はパスワードで保護されています。表示するにはパスワードを入力してください:



 
現在Filemakerのランタイムアプリケーションと、
なでしこプラグインのランタイム版を使ったアプリケーションを開発中だ。
そのアプリケーションをインストーラーとして固めて配布するときの注意Win7版覚書です。
 
ランタイムアプリケーションは、
Filemaker本体なしで、FMのDBアプリケーションが利用できる有用な機能だ。
(DB構造が変更できないなど制限はある)
ノンプログラマでも、スタンドアロンアプリケーションが作れる。
 
 
ランタイムアプリを作成すると、
フォルダの中に非常に多くのファイルが詰め込まれた状態で、
アプリケーションがアウトプットされる。
普通に使うには、
そのフォルダをデスクトップやマイドキュメントあたりに格納して使えば
特に問題はおきません。
 
しかし、それらをインストーラーとして固めて配布する場合に注意すべき点が多々あります。


  
1)インストール先
ファイルメーカーはデータベースソフトウェアで、
ランタイム版も同様にデータベースソフトウェアです。
データベースならば、当然、アプリケーション自体または付属のファイルに
利用する都度ファイル保存や書き換えが行われます。

通常アプリケーションの格納場所は
C:¥program files¥
だと思うのですが、
このディレクトリの下にあるファイルは、
通常ユーザーではファイルの保存や変更はアプリケーションから行うことができません。
つまり、Filemakerのランタイムアプリでは、
レコードの追加やフィールドの変更など、
データベースとして重要な機能を使えず、
ReadOnlyなデータベースアプリケーションになってしまうというわけです。
 
これでは話になりません。
 
ということで、Filemakerランタイムアプリの場合は、
ドキュメントフォルダや、ユーザーデータフォルダなどにインストールするように、
インストーラーを設計した方が吉です。
私の実験では、C:¥直下でも大丈夫だったようですが、
世間的にはあまり推奨されていないようです。
 


 
2)ファイルのコピー
多分、通常のランタイムアプリをインストーラーにする場合は、
1の対応だけで問題ないはずですが、
 

 
今回は、エクセルのテンプレートファイルを用意しておき、
エクセル表示時に表示用のファイルをコピーで新たに作成して、
表示用ファイルへ表示する内容を流し込む。
という動きを自動的に行うよう、
なでしこプラグインによって制御しているのですが、
このコピーという動作は、
たとえ、ユーザーデータフォルダや、ユーザードキュメントフォルダであっても、
UACの制限をうけ、アプリケーションから実行することができませんでした。
 
管理者権限でアプリケーションを実行している場合のみ、
コピーの制御ができるようです。
 
Vistaのときは、いつでも管理者権限でアプリを起動する手段があったようですが、
Win7はどうなんだろう…どっちにしても回り道なのであまり考えたくありません。
 
コピーがだめなら、エクセルを制御しているわけだから、
一度テンプレートのエクセルファイルを開いてしまって、
自動で別名保存するようにすればいいじゃないかと思って、
これも行ってみましたが、拒否されるようです。
(なぜかOpenOffice.orgを制御する場合はそれでいけた)
 
どうしようか…と思って試行錯誤したところ、
なでしこでテンプレートファイルの内容をバイナリとして、
なでしこの変数に保存し、
なでしこでファイルを作成して、そこへ変数に保存されたバイナリを流しこんで保存。
という回りくどい手段を使えば、擬似的にコピーを
UACの影響なしに行えることがわかりました。
 
多分ですが、Win32APIのCopyFile関数がUACの監視下にあるのだと思います。
開いて内容取得→ファイル作る→取得した内容保存
ですと、CopyFileを使うことはないのでUACの影響を受けなかったのではと思います。
 
これはおそらく他の言語とかでも役に立つはず。
 


Win7でFilemaker+なでしこのランタイムアプリをインストーラーで配布する場合は、
とりあえず、以上で今のところ問題点は見つかっていません。
 
Win7は比較的セキュリティは高いのに、仕組みはシンプルなので、
要点を押さえれば、アプリ開発はすんなりいきます。 
問題はVistaです。こっちはハマりまくったので、
また次回レポします。

Windows64bitに移行したので、
Filemaker(Adv.11)からMySQLへESS接続しようとした。
 
いつものようにMySQL公式からODBCをDL。
今回は64bitOSなので、64bit版のODBCをDLして、インストール。
コンパネから接続設定して、
さぁ、FMから接続だ!と思って外部ソースを見てもDSNに設定した内容がない。( ̄△ ̄;)エッ・・・。
 
きっと64bit版のODBCがだめなんだ!と思って32bit版にすると
コンパネのデータソース管理にMySQLODBCがない…。
 
むぅ・・・。どういうことだ???
 
と思っていたら、64bitのデータソース設定と、32bitのデータソース設定は別に存在することが判明。
コンパネからは64bitへしか進むことができあに。うはぁ・・・。
 
32bit用設定はWin7(64bit)の場合、
C:\Windows\SysWOW64\odbcad32.exe
↑これ。多分Vista(64bit)も同じ。XP(64bit)はどうかな・・・。
 
こちらの設定パネルでDSN設定したら無事Filemaker11でも見ることができましたー。

この投稿はパスワードで保護されています。表示するにはパスワードを入力してください:


Filemaker社が主催する「Filemaker Roadshow2010」へいってきました。

FM社の営業の方がFMの概要を説明。
正直FMってマイナーなDBだと思ってたんですが、
導入事例がたくさんあってびっくりでした。
 
次に株式会社スプラッシュの方による、
実際の導入事例の説明が行われました。
これが予想のはるか上をいくソリューションでして、かなりびっくり。
FMの奥深さを改めて知った感じです。
 
普段FMをDISりながら、あんまり普通では行われない使い方をして、
ひんしゅくを買ったりしてますが、、、、
なんというか、、、
すみません、、、
出なおします、、、
という感じでした。
 
FMは、ノンプログラマーでも扱えるDBなので、
草の根的な開発者が非常に多く、
コミュニティーも非常に小さなものから大きなものまであったりするのが特徴だと思うんです。
そして、必ずしも万全であるDBシステムではないのですが、
その代わりに開発に正解がないDBだと思うのです。
 
なので、個人的には来年以降またRoadshowがあるようなら、
5分くらいの短い発表の時間があるといいなぁとおもうのですよ。。。
どうでしょうFM社の方!
(そうすれば、私も話せるかも。うしししし。という魂胆ですが)
 
とりあえず、Filemaer TechNetには参加しました。
初めてFMServer使います。楽しいことあるかな。
 
そういえば、最近なでしこのおかしな使い方が広がってません。
忙しいのもあるんですが。
夏以降、問題解決しないメールライブラリとかちゃんとやります!