<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ZERO-CODE &#187; FileMaker Pro</title>
	<atom:link href="http://zero-code.com/tag/filemaker-pro/feed" rel="self" type="application/rss+xml" />
	<link>http://zero-code.com</link>
	<description>Mac, iPhone関連記事を中心とした、デザイナーを目指していたプログラマーのブログ。</description>
	<lastBuildDate>Mon, 08 Jun 2009 20:58:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>FileMakerにターミナルコマンドの結果を渡す</title>
		<link>http://zero-code.com/2008/10/28/filemaker-terminal-applescript.html</link>
		<comments>http://zero-code.com/2008/10/28/filemaker-terminal-applescript.html#comments</comments>
		<pubDate>Tue, 28 Oct 2008 08:13:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FileMakerPro]]></category>
		<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[FileMaker Pro]]></category>
		<category><![CDATA[Terminal]]></category>

		<guid isPermaLink="false">http://zero-code.com/?p=117</guid>
		<description><![CDATA[				
				AppleScriptを使って、FileMakerにターミナルコマンドの結果を渡す方法です。
				ファイル名等を取得し、それをFileMakerに読み込ませる必要があったので、調べました。
				 [...]]]></description>
			<content:encoded><![CDATA[				<div>
				<p>AppleScriptを使って、FileMakerにターミナルコマンドの結果を渡す方法です。<br />
				ファイル名等を取得し、それをFileMakerに読み込ませる必要があったので、調べました。</p>
				<p>どうやら、FileMakerに変数を作って値を受け渡すことは出来ないようなので、グローバルフィールド等に値を渡すことになります。</p>
				<p>FileMakerの「Appleスクリプトを実行」スクリプトステップに下記のように書き込みます。</p>
				<pre>set _ls to do shell script "ls -1" --変数 _ls に Terminalコマンド "ls -1"の返値をセット

tell application "FileMaker Pro Advanced"
	set cell "f1" of current record to _ls as string --変数 _ls を フィールド f1 へ変数の値を書き込み
end tell</pre>
				<p>1行目でターミナルコマンドコマンドを実行し、結果を _ls 変数にセットします。<br />
				4行目でファイルメーカーで現在開いているファイルのフィールド名 f1 に1行目の変数 _ls をセット</p>
				<p>今回の場合ファイルの指定などを行う必要はありません。</p>
				<p>FileMaker のスクリプトと同じように、実行をしているファイルがデフォルトで指定される為です。<br />
				他のファイルに値を書き込む必要がある場合は、そのファイルからスクリプトを実行するなどを行えばできます。</p></div>
]]></content:encoded>
			<wfw:commentRss>http://zero-code.com/2008/10/28/filemaker-terminal-applescript.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MacOSX Leopard に Ruby インストール</title>
		<link>http://zero-code.com/2008/09/05/memo-macosx-leopard-ruby-install-macports.html</link>
		<comments>http://zero-code.com/2008/09/05/memo-macosx-leopard-ruby-install-macports.html#comments</comments>
		<pubDate>Fri, 05 Sep 2008 06:15:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[FileMaker Pro]]></category>
		<category><![CDATA[MacPorts]]></category>
		<category><![CDATA[Rfm]]></category>
		<category><![CDATA[メモ]]></category>

		<guid isPermaLink="false">http://zero-code.com/?p=66</guid>
		<description><![CDATA[				仕事でFileMakerを使って色々な情報を管理してる。
				今はPerlを使ってFileMakerでは時間がかかりすぎる処理や、プラグインを使わないと出来ないような事をやっているのだが、つい最近「FileM [...]]]></description>
			<content:encoded><![CDATA[				<p>仕事でFileMakerを使って色々な情報を管理してる。<br />
				今はPerlを使ってFileMakerでは時間がかかりすぎる処理や、プラグインを使わないと出来ないような事をやっているのだが、つい最近「<a href="http://www.famlog.jp/rfm/">FileMaker API for Ruby</a>」という物を見つけてしまった。</p>
				<p>Perlに値を受け渡す時、FileMakerからtab形式等で書き出した物を処理させていたが、<br />
				Rfmを使えば直接情報を読み込み、書き込みが出来るようになるということで、Rubyを始めてみることにした。</p>
				<p>Rubyをインストールする上で苦戦した事等をメモしていく。</p>
				<h2>MacPortsでRuby関連のインストール</h2>
				<p>MacPortsのインストール等は以前「<a href="http://d.hatena.ne.jp/hakobe932/20061208/1165646618">MacPortsでステキなUNIXツールをインストール</a>」を参考にさせてもらった。<br />
				すでにインストール済みである。</p>
				<p>だが、インストールしたのは結構前なのでアップデートをしよう。</p>
				<p><strong>MacPortをアップデート</strong></p>
				<pre>$ sudo port -d selfupdate
$ sudo port upgrade installed</pre>
				<p><strong>RubyGemsをインストール(PerlのCPANみたいなヤツ？)</strong></p>
				<pre>$ sudo port install rb-rubygems</pre>
<p>参考：<a href="http://japan.cnet.com/blog/kenn/2007/12/19/entry_25003169/">MacにRailsをゼロからインストールする一番簡単な方法</a></p>
<h2>Rubyを実行してみる</h2>
<p>あとは適当なプログラムを書いて実行してみる。ぐぐれば適当な短いプログラムはたくさん出てくる。</p>
<pre>$ ruby hogehoge.rb</pre>
				<p>その時下記の様なエラーが出た場合ライブラリーが足りない or 古いのでインストールしよう</p>
				<p><strong>エラー</strong></p>
				<pre>$ ruby hogehoge.rb
.../rubygems.rb:251:in `report_activate_error': Could not find RubyGem activerecord (&gt;= 0.0.0) (Gem::LoadError)</pre>
				<p>上記の例の場合はactiverecordをインストール</p>
				<pre>$ gem install activerecord</pre>
<p>参考：<a href="http://nijino.homelinux.net/diary/200610.shtml">ari&#8217;s diary RubyCLR</a></p>
<p><strong>追記：</strong><br />
MacPortsで一度インストールに失敗した場合アップデートをかけても、失敗し続けることがある。そういう時はインストール途中で止まっているファイルを一度クリアしてから、もう一度インストールしよう</p>
<p><strong>再インストール(rb-rubygemsの例)</strong></p>
<pre>$ sudo port clean rb-rubygems
$ sudo port install rb-rubygems</pre>
				<p>他にも、RubyGemsに登録されている物自体が古い場合があるので、RubyGemsの更新も忘れずに行おう！</p>
				<pre>$ sudo gem update --system
$ sudo gem update </pre>
]]></content:encoded>
			<wfw:commentRss>http://zero-code.com/2008/09/05/memo-macosx-leopard-ruby-install-macports.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FileMaker Pro + AppleScript で Perl</title>
		<link>http://zero-code.com/2008/05/17/filemaker-pro-applescript-%e3%81%a7-perl.html</link>
		<comments>http://zero-code.com/2008/05/17/filemaker-pro-applescript-%e3%81%a7-perl.html#comments</comments>
		<pubDate>Fri, 16 May 2008 16:58:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[FileMakerPro]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[FileMaker Pro]]></category>

		<guid isPermaLink="false">http://zero-code.com/?p=8</guid>
		<description><![CDATA[				FileMaker Pro + AppleScirpt + Perl
				FileMaker ProのWebビューアーを使ったスパイダリング(HTMLの収集)に限界が来たので、Perlでの開発を現在行っている [...]]]></description>
			<content:encoded><![CDATA[				<h3>FileMaker Pro + AppleScirpt + Perl</h3>
				<p>FileMaker ProのWebビューアーを使ったスパイダリング(HTMLの収集)に限界が来たので、Perlでの開発を現在行っている。<br />
				HTMLのダウンロードという意味では、Perl等をかましてレンダリング・目的のHTML以外(画像等)のダウンロードを行わせないようにすれば、さほど変わらないのだが、スクレーピング(HTMLを分解し、必要な情報のみを抽出)は桁外れにPerlの方が早い。</p>
				<p>ということで、<em>FileMaker Pro</em> → <em>AppleScript</em> → <em>Perl</em>という流れで情報収集を行っている。</p>
				<p>FileMakerからAppleScriptを実行する方法はスクリプトステップの「<em>AppleScriptを実行</em>」というのは説明するまでもないか？ｗ</p>
				<p>AppleScriptからPerlを実行する時は<em>do shell script</em>を使う</p>
				<pre class="prettyprint">do shell script "perl 〜.pl"</pre>
<p>&#8220;&#8221;の間はターミナルで実行している命令と一緒。</p>
<p>perlを実行する手前で<em>cdコマンド</em>を実行したい時等は、</p>
<pre class="prettyprint">do shell script "cd ./Document/; perl 〜.pl"</pre>
				<p>というに、セミコロン(;)で区切って複数の命令を書く。</p>
				<p>Perlを<em>Terminal</em>から実行する時、色々とメッセージを返すようにしていたとしても、コマンドの実行が終わるまで基本的に何も出来ない。<br />
				なので、基本的にlogとしてデーターを残すようにしている。</p>
				<pre class="prettyprint">do shell script "cd ./Document/; perl 〜.pl &gt; 〜.log"</pre>
<p> </p>
<h3>もうちょっと、AppleScript</h3>
<p>作ったperlのスクリプトでは<em>LWP::UserAgent</em>を使っているのだが、１ページダウンロードに通常1秒〜1.5秒かかっている。<br />
ただし、何故か分からないのだが、同じスクリプトを２コ同時に実行すると、実行して少し経ってから１ページのダウンロードが0.3秒〜0.7秒にまでスピードアップする。</p>
<p>スクリプトを２つ実行することで、結果的に２倍のスピード！<br />
──というのならばまだ分かるのだが、スクリプトを２つ実行することで、４倍以上のスピードが出るのは何故だ？<br />
ちなみに、２つ実行してスピードが速くなった後に、片方のスクリプトを停止しても、１ページのダウンロードが0.3秒〜0.7秒というスピードは変わらない。<br />
<span style="font-weight:bold;">※通常１秒間に数ページみに行くのは相手側のサーバーに負担になります。マナー違反になるので注意！</span></p>
<p>１つのドメインに対してのみ現在は行っているので、もしかすると相手側のサーバー側の問題なのかもしれないが謎だ…。<br />
お分かりになる方いらしたら、是非教えて頂きたい。</p>
<p>とりあえず原因は不明だが「なら、２つ以上のPerlを同時に動かせばいいのか！」という結論に至り、バックグラウンドで<em>do shell scirpt</em>を実行出来ないかと調べてみると、アップルのテクニカルノートにあった。<a href="http://developer.apple.com/jp/technotes/tn2065.html">do shell script in AppleScript</a></p>
<pre class="prettyprint">do shell script "perl 〜.pl &gt; 〜.log 2&gt;&amp;1 &amp;"</pre>
				<p>とすれば良いらしい。<br />
				これを上手く使えば、分割処理が出来るので更なるスピードアップも望める！</p>
				<p>さらに色々調べていると面白そうな記事を発見！<br />
				<a href="http://hwat.sakura.ne.jp/hpod/200609/29-200000/">AppleScript で Perl に GUI をつける</a></p>
				<p>これは、かなり勉強になりそう。後日挑戦してみたい。</p>
]]></content:encoded>
			<wfw:commentRss>http://zero-code.com/2008/05/17/filemaker-pro-applescript-%e3%81%a7-perl.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perlは手軽で、強力なツール</title>
		<link>http://zero-code.com/2008/04/30/perl%e3%81%af%e6%89%8b%e8%bb%bd%e3%81%a7%e3%80%81%e5%bc%b7%e5%8a%9b%e3%81%aa%e3%83%84%e3%83%bc%e3%83%ab.html</link>
		<comments>http://zero-code.com/2008/04/30/perl%e3%81%af%e6%89%8b%e8%bb%bd%e3%81%a7%e3%80%81%e5%bc%b7%e5%8a%9b%e3%81%aa%e3%83%84%e3%83%bc%e3%83%ab.html#comments</comments>
		<pubDate>Wed, 30 Apr 2008 14:47:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[FileMaker Pro]]></category>
		<category><![CDATA[MacOS/Mac]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[メモ]]></category>

		<guid isPermaLink="false">http://zero-code.com/?p=7</guid>
		<description><![CDATA[				皆さんはプログラミングを始めた切っ掛けってなんですか？
				今から始めようと思ってる貴方は何の為に始めようとしてますか？
				小学校時代の私にとってのパソコンとは、Macとは、テレビゲームの無い家での唯一 [...]]]></description>
			<content:encoded><![CDATA[				<p>皆さんはプログラミングを始めた切っ掛けってなんですか？<br />
				今から始めようと思ってる貴方は何の為に始めようとしてますか？</p>
				<p>小学校時代の私にとってのパソコンとは、Macとは、テレビゲームの無い家での唯一のブラウン管を使った遊び道具でした。<br />
				とはいっても、当時はTVゲームのようなゲームは持っていなく、同世代の人には多いと思うけどドローソフトで絵を描いて遊んでいた。年賀状なんかもそれで作ったこともあった。</p>
				<p>その後特にデザイナーという訳でもないが、親の影響でPhotoshopをバージョン5.5から使い始め、高校卒業の頃にはオペレーターとしてデザインの仕事もしていた。</p>
				<p>ある日、今のバイト先でもある会社で使っていた<em>FileMaker 8.5</em>の新機能である<em>Webビューアー</em>でHTMLをダウンロード出来るという情報を聞き入れ、小学校時代からたまっていた<em>自動処理</em>に対するフラストレーションが爆発し、それまでプログラミングのかけらも知らなかったのですが、徹夜して６日でmixiをハックするツール「<em>mixi Reader</em>」を作り上げた。</p>
				<p>そのmixiをハックツールのことは、後日お話するとして、そんなことが切っ掛けでプログラミング&#8221;<em>らしい</em>&#8220;ことを始め、複雑な計算式も書けるようになり、先日「<em>aipo4</em>」をインストールする為に存在も知らなかった<em>Shell Script</em>を読む為に軽く勉強を始め、<em>Perl</em>が Shell Script と同じように手軽に使えるツールであることに気付いた。</p>
				<p>今思うと、小さい頃当たり前のように始めたパソコンの用に、Perlにももっと早く触れる機会があればと想う。</p>
				<p>Perlが手軽というのも、ある程度前置きがあって始める切っ掛けがフェイドインのような自然な流れだったから思うのだが、改めで思ったのは、プログラムは「print &#8220;Hello World!&#8221;」以上でも以下でも無い。ということ。</p>
				<p>printという命令（関数）を使ったら、その後に続く文字が出る。<br />
				別の命令を使えば、別の答えが出る。<br />
				じゃあ、やりたい事にはどの命令を使えばいいのか。それを考えるだけ。</p>
				<p>もちろんスピード等を求めたり、とても複雑な事をやろうとしたら、大変だけどでも、これの積み重ねでしかない。<br />
				ただ最初に本を読むと自分の目的には必要の無いことが大量に出てくる。訳側からなくなりがち。</p>
				<p>それでも、分からないことを調べたり、とりあえず進めて読んで目的の情報までたどり着くまで頑張れば「ある程度のレベル」のやりたい事なら、誰でも出来る。</p>
				<p>プログラムなんて「1+1=2」という式が誰でも読める。英語も勉強をすれば書けるようになる。それと一緒なのだ。</p>
				<p>とりあえず、MacOSXがUNIXベースで、Perlは元々入っていて「print &#8220;Hello World!&#8221;」まで行き着くには数クリックのマウス操作だけでいいという今の環境に感謝。</p>
]]></content:encoded>
			<wfw:commentRss>http://zero-code.com/2008/04/30/perl%e3%81%af%e6%89%8b%e8%bb%bd%e3%81%a7%e3%80%81%e5%bc%b7%e5%8a%9b%e3%81%aa%e3%83%84%e3%83%bc%e3%83%ab.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
