2006年10月01日

How to install GD on Mac OS X 10.4

FileMaker とも PHP ともあまり関係ありませんが…

Mac OS X に GD library (libgd, libjpeg, libpng, etc.) をインストールしなければならなくなり、ちょっと苦労しましたが、ようやく再現性のあるインストール手順を見つけることができましたので、wiki にまとめておきます。

http://wiki.livedoor.jp/kojima_ichiro/d/How%20to%20install%20GD%20on%20Mac%20OS%20X%2010%2e4

ここまでインストールできれば、CPAN の GD.pm のインストールも問題ありません。

ただし、Intel Mac ではうまくいかないかもしれません。気づいた点などありましたら wiki に書き込んでいただき、完成度・信頼性向上にご協力いただければと思います。


posted by Kojima at 02:52| Comment(6) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年06月06日

ファイル参照の最適化でパフォーマンスを改善

FMP6 から FMP7/8 にコンバートしたファイルを開くのに、1分近くかかってしまうことがありました。

「起動スクリプト」が重たくなっているのかと思いましたが、そうでもありません。そういえば Tech Info か何かで、ファイル参照を正しく設定しないと遅くなる、と書いてあったのを思い出しました。

「ファイル」メニューから「定義」→「ファイル参照...」を見てみると、たくさんあります。いままで開発時に使っていたローカルディレクトリや、昔のサーバのホスト名とか、すべて記憶されているようです。FMP6のときには、これらはスクリプト定義やフィールド定義、リレーションの定義などに分散していましたが、FMP7からここでまとめて見られるようになりました。

続きを読む
posted by Kojima at 10:43| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年05月19日

FMP+FMS 8.0v3 で計算フィールドの実行

8.0v3 になってほとんどの非保存計算フィールドの計算はサーバ側で行なわれるようになって、パフォーマンス向上に役立っています。

一方、いくつかの条件で、サーバ側でなく、クライアント側で行なわれる場合があります。

また、別の条件では、サーバ側で実行された結果がクライアント側で実行した場合と異なる結果となる場合があるとのこと。

FileMaker Knowledge Base - How Functions Evaluate Differently on the Host Versus the Client in FileMaker Pro 8.0v3
http://filemaker.custhelp.com/cgi-bin/filemaker.cfg/php/enduser/std_adp.php?p_faqid=5973

続きを読む
posted by Kojima at 23:34| Comment(1) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年05月15日

Webからスクリプトを実行した際のエラーログ

カスタムWebからスクリプトを実行したとき、pe_application_log.txt に以下のようなエラーが記録されていました。
FM Web Publishing: Web Scripting Error: 101, File: "(ファイル名)", Script: "(スクリプト名)"、Script Step: "Go to Record/Request/Page"

直接実行してもエラーになりませんし、スクリプトを何度見直しても、可能性のあるところを直してみても、やはりエラーがログに記録されます。エラーコード101は "Record is missing" ですが、どうしてこんなエラーが出るのかさっぱりわかりません。

しばらく眺めていて気づいたのは、このエラーが出るのは Loop の中で "Go to Record[Next, exit after Last]" を使っているスクリプトであるということ。

どうやら最後のレコードから "Go to Record[Next, exit after Last]" を実行して Loop を出る時にエラーが記録されるのではないか?

どなたかご存知の方はいらっしゃいませんか?
posted by Kojima at 16:16| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年02月22日

FMS8Aで-scriptと-editコマンドの組み合わせで問題

web からデータを書き込んだ後、FileMaker script を実行してデータの処理を行なうため、-edit コマンドに -script パラメータを指定します。

そのスクリプトが -edit コマンドで編集したレコードを書き換える場合、そのレコードの modID は -edit コマンドを実行する前に比べて +2 になりますが、-edit コマンドに対する戻り値 (FMPXMLRESULT) の modID は +1 しか増えておらず、この戻り値を元に再度 -edit を実行すると、modID 不一致のエラー (306) になってしまいます。

[03-10-2006 追記あり]
posted by Kojima at 08:40| Comment(2) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年02月04日

FileMaker Server 7/8 でリレーション先の非インデックス・フィールドを含むAND検索の不具合

検証が足りませんが、とりあえず備忘録として書いておきます。

[03-22-2006 追記あり]
posted by Kojima at 07:44| Comment(3) | TrackBack(1) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2006年01月06日

検索条件の引数演算子neqが正しく実行されない

FMS7A および FMS8A で、検索条件に引数演算子neqを指定した場合、検索が正しく行なわれない場合があります。

FileMaker Knowledge Base の当該エントリ
http://filemaker.custhelp.com/cgi-bin/filemaker.cfg/php/enduser/std_adp.php?p_faqid=5604

当方の環境(FMS7A)では、検索条件に単一フィールドを指定した場合はうまく動作するようですが、複数フィールドを組み合わせて検索した場合に全レコードが返ってしまいました。

FileMaker, Inc. では問題を認識しているが、当面はneqを使わないように、とのこと。
posted by Kojima at 15:11| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年12月20日

FMP7/8 カスタムWebで範囲検索をする

ようやく FMP7/8 にてカスタムWeb開発作業に入っています。実際にやってみると、いろいろ細かいところでの FMP6 との違いに戸惑っています。

FMP6 では、例えば日付のフィールドで 2005.12.1 〜 2005.12.31 というような範囲での検索は、
FMPro?-op=gte&date=2005.12.1&-op=lte&date=2005.12.31&-find
(関係ない引数は省略しています)

といったかたちで実行できましたが、FMP7では引数に同じフィールドを2回使用することができないようです。

続きを読む
posted by Kojima at 16:44| Comment(6) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年12月09日

FMP6のデータベースファイルをFMP8に変換する手順 (3)

前の記事「FMP6のデータベースファイルをFMP8に変換する手順 (2)」のつづきです。

さて、ファイル統合の前に、個別ファイルの段階でFMP8への最適化作業を行なう検討をしました。この段階でできるのは、例えば、

○ソート順だけが異なるために複数定義していたリレーションの整理(ソート順をリレーション定義から外し、ポータルにソート順を定義。リレーションを統合して、フィールド定義やスクリプトを修正。)
○複数条件によるリレーション(結合計算フィールドを廃止)

などがあります。

続きを読む
posted by Kojima at 12:44| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年12月08日

FMP6のデータベースファイルをFMP8に変換する手順 (2)

FMP6のデータベースファイルをFMP8に変換する手順のまとめ」では FileMaker Pro 8 のマニュアルなどから、おおまかな変換手順をまとめました。

これをもとに、40ファイル以上ある私の現行システムの変換手順を試行錯誤しながら考えています。

私の場合のゴールは、
(1) 言うまでもなく、従来通りちゃんと動作すること。
(2) 移行によりシステムが停止する期間を最小(2〜3日)にすること。
(3) メンテナンス性や運用面を考慮しながら、いくつかのファイルにまとめてアクセス権管理の手間を減らすこと。
(4) FMP6時代の不要なフィールド、リレーション、レイアウト、スクリプトなどを整理して、今後のメンテナンスや機能追加しやすいようにすること。
(5) カスタムWebについては、従来のCDMLからFX.phpにより全面書き換えする。
です。

続きを読む
posted by Kojima at 12:40| Comment(0) | TrackBack(1) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年12月05日

FMP6のデータベースファイルをFMP8に変換する手順のまとめ

FMP6のデータベースファイルをFMP8に変換する手順のまとめ
(FMP8_ユーザーズガイド.pdf 109ページ〜)

○複数の関連ファイルで構成されるデータベースを変換する場合、一括変換する。
○Conversion.logファイルを確認。
○変換に際しての要注意ポイント
  パスワード
  スクリプトによるウィンドウ切り替え
  論理関数、論理値に対する検索条件
  ファイル参照パス
○場合によってはFMP6の段階で修正をして、変換をやり直した方が早いケースもある。
○それぞれのファイルをFMP8に変換してから、テーブル・スクリプトのインポート機能を使って、一つのファイルにまとめることができる。
○その際、リレーション定義は保持されない。


※さらに詳しい情報は、
http://www.filemaker.co.jp/downloads/index.html#migration
より、「FileMaker 8 旧バージョンの FileMaker データベースの変換」(pdf) を確認のこと。
posted by Kojima at 17:48| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年08月19日

FMP7 + FX.php でのポータルレコードの指定方法

先日FX.php メーリングリストでのやりとりで初めて知りましたが、ポータルレコードの指定方法が FMP6 と FMP7 とで違うのですね。


続きを読む
posted by Kojima at 15:30| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年07月15日

FMP6 から FMP7 への移行にあたって

ずっと延び延びになっていた FMP7 ベースのシステムへの移行がようやく動き始めました。これまでの各種要素技術の基礎調査をひとまず終了し、今はこれまで FMP6 で作って来た30個以上のファイル群からなるデータベースシステムを、FMP7 で一から組み直すための検討を行なっています。

これまでの制限だらけだった FMP6 に比べて、FMP7 では「こんなこともできるのか〜、これまで苦労して実現していたのに…」ということがいくつもあって、今更ながらこのメジャー・アップデートのありがたみを実感しています。

FMP6 から FMP7 への仕様上の変更点については、ファイルメーカー社のサイトや、さまざまな書籍にまとめられていますので、ここでは私自身が「変わったな〜」と感じた点をまとめます。

(本記事は随時更新しますのでご了承ください。タイムスタンプは更新時のものに直します)

続きを読む
posted by Kojima at 19:02| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年07月04日

PHPの開発環境 2

前の記事「PHPの開発環境」で簡単に触れた Eclipse + TruStudio ですが、先日 Eclipse の新しいバージョン 3.1 がリリースされ、Mac OS X 上での動作速度も改善されたようですので、もう少し調べてみたいと思います。

TruStudio は以前、WebStudio と呼ばれていたようです。無料のユーザー登録だけで利用できる TruStudio Foundation (ライセンスはCPL)のほか、年会費 $99 で TruStudio Professional が利用できます。(他にコーポレート・サブスクリプションとエディケーション・プログラムがあります)

続きを読む
posted by Kojima at 11:33| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年06月09日

PHPの開発環境

いままでCDMLベースのカスタムWeb開発には、Macromedia DreamWeaver MX を使ってきました。

今後、PHPベースの開発にあたり、CVS (Concurrent Versions System) を使う必要性に迫られ、他の開発環境を検討しています。

PHPには本家Zend社 のZend Studioが有名ですが、有償です。

JavaのIDEとして有名な Eclipse で、PHPを扱うことができるようにするプラグイン TruStudio があります。

私の作業環境はMac OS Xですので、Appleの標準的な開発環境である Xcode でPHP開発を行なう方法をまとめます。

続きを読む
posted by Kojima at 17:29| Comment(0) | TrackBack(2) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年06月08日

CSSをもっと活用できるようになる

CSS (Cascading Style Sheet) については、基本は一通り学んだつもりでした。自分の開発しているサイトでも使い始めています。

CSSについて、もっと本格的に取り組んだ方が良いかな、と思い「CSSクックブック―Webデザインのための活用テクニック集」という本を読んでいます。まだパラパラとめくってみただけなのですが、もう目から鱗が落ちる感じです。

続きを読む
posted by Kojima at 12:48| Comment(0) | TrackBack(1) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年05月19日

FileMaker Server 7 & Advanced も Tiger 互換

いつもお世話になっている FAMLog の記事「FileMaker Knowledge Baseがリニューアル」によると、FileMaker, Inc. の Q&A に、FileMaker Server 7, FileMaker Server 7 Advanced も Mac OS X 10.4 Tiger 互換であることが掲載されているとのこと。

当方のテストでもインストールして起動するまでは問題なくできていましたが、これで安心して使えますね。

続きを読む
posted by Kojima at 14:26| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年03月29日

SmartyによるCDMLからPHPへの移行

Smarty入門 PHP+テンプレート・エンジンでつくるMVCアプリケーション」を読ませていただき、 Smarty を使えば、 CDML から FX.php + PHP への移行がかなり容易になると思いました。

Smarty のテンプレートは、CDML 経験者なら簡単に理解できます。 CDML & Web Companion も一つのテンプレートエンジンですから、CDML を Smarty のテンプレートに書き換えることは、手作業にはなりますが、 XSLT への変換作業に比べてはるかにわかりやすく、簡単にできるはずです。

続きを読む
posted by Kojima at 18:01| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年03月10日

(FMP6) 文字列でのリレーションで気をつけるべきこと

また FileMaker Pro 6 のことですみません。文字列を照合フィールドとした際のリレーションの動作がおかしく、半日つぶしてしまいました。

FMP6では、FMP7のように照合フィールドを複数ペア定義することができませんので、計算フィールドで複数フィールドを連結し、照合フィールドとして使用することがあります。

FMP6では通常、文字列フィールドによるリレーションでは、「半角英数60文字までの完全一致」となっているはずでした。

しかし、上記の計算フィールドの定義で、二つの文字列フィールドを "-"(ハイフン)で連結していたところ、30文字程度の短い文字列であるにもかかわらず、完全一致しないレコードがリレーションされてしまうことが起こりました。

続きを読む
posted by Kojima at 17:59| Comment(0) | TrackBack(0) | 覚え書き | このブログの読者になる | 更新情報をチェックする

2005年01月14日