2011年01月26日

FileMakerで明細を作成する

ファイルメーカーで請求書や領収書といった、明細表を作る場合。

(正確に明細を作るというのでなく、レイアウト作成の考え方の問題ですので軽い気持ちで)


↓こんな感じで。

me1.jpg


まず普通に考えてみて、ちょっとした計算は自動でやってほしいですよね。

単価と数量を入れたら自動でかけ算くらいはしてほしい。


me2.jpg


上の画像で説明すると、【材料1】は単価5000円で数量10。

〈金額〉フィールドに〈単価×数量〉という計算式を設定すれば、自動で50000と入力されます。


【加工費1】には数量を入れてないので、単価10万でも金額は0。

合計金額に消費税5%を自動でかけて(課税対象額×0.05)、税込み金額が出てくる。


しかし実際にはきっちり単価×数量で物事は計算されるわけでなく、グロスでいくらとか、切りの良い数字に丸めるとか、色々あるわけです。

例えば、「材料費は本来75000円だけど、きりのいい所で7万円にしましょう」となったらどうするか。


金額フィールドに【70000】と入力できればそれで済むが、〈計算タイプ〉にしてあるので入力は弾かれます。

me5.jpg

すると数量か単価をいじらないと、金額フィールドの数字は変えられないことになる。




■単純な方法

me4.jpg


一番単純な解決方法。

数量を1にして、単価70000にしてしまう。

そしてテキストタイプで〈備考〉というフィールドを用意しておき、そこに15個分、と書き込む。


でもこれは、ちょっとエレガントではない。




■ややこしい方法

me3.jpg


次。

単価5000円という計算しやすい数字なので、1つ減らせば合計70000円にはなった。

でも数量15個で70000円、という実態には合いません。


じゃあ70000÷15で、単価を「4666.66666666...」円にしたらいいか、というと、それもおかしすぎる。




問題は、金額フィールドに書き込めないのがその元凶にあるわけです。

じゃあ自動で計算させるけど、書き込みたい時は書き込めるようにすればいいんです。


まず必要なフィールド。


〈数量〉  :数字タイプ

〈単価〉  :数字タイプ

〈金額自動〉:計算タイプ(計算式 =数量×単価)


ここにもうひとつ追加。

〈金額手書〉:数字タイプ


そして〈金額自動〉フィールドを少しいじります。

計算式 =If( IsEmpty( 金額手書 ) ; 数量 * 単価 ; "" )


〈金額手書〉に何も入力されなければ自動で計算、入力があれば空欄になるという式です。




me7.jpg


わかりやすく、両フィールドを比較します。

左から〈数量〉〈単価〉〈金額自動〉〈金額手書〉と並べています。

一番右の〈金額手書〉に何も書いてないので、〈金額自動〉に75000が表示されています。


me6.jpg


しかし〈金額手書〉に数字(70000)を入れると、〈金額自動〉は空欄になります。


そこで、

1,最背面に〈金額自動〉フィールドを置きます(念のためフィールド/コントロールの「動作」で入力を不許可にしておく)。

2,真上に、同じサイズの〈金額手書〉フィールドを置く。

3,〈金額手書〉フィールドの塗りつぶしを「無し」にする。


これで、金額は自動で計算される上に、自分で好きな金額を書き込めるフィールドができあがりました。


me1.jpg


最初の画像に戻りますが、1段目の金額50000は自動で計算されています。

しかし2段目は20000値引きということで、手動で30000と入力しています。


タグ:diary filemaker
posted by tk219 at 17:57 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2011年01月06日

年賀状管理

自作のテンプレート(Complete System)で、今年も年賀状管理はかなり効率化できてきました。
まだまだ改善できるなーとか思いながら。むしろここ改善しちゃうぞ、うふふみたいな。

CA392984.jpg

会社に届いた年賀状の一部。
こういう数を全て今年送った人、今年送ってきてくれた人、今年喪中だったけど来年は送る人、とか一人でやるのはめんどくさいわけです。

Complete Systemでは、住所録ひらいて「連携」のタブを開く。

110106_nenga1.jpg

下に年賀状を管理するチェックボックスがある。
もらったら「拝受」、送ったら「謹上」。個人でやりとりする分は「個人」、会社などでやりとりするのは「所属」。

110106_nenga2.jpg

右上の虫メガネアイコンをクリックすると、検索ウインドウが開く。

110106_nenga3.jpg

検索結果はエクセルでも書き出せる。
とりあえずの改善点として、これらをまとめて入力できる仕組みを考えたいところです。
タグ:diary CPS filemaker
posted by tk219 at 17:43 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年11月16日

FileMakerGoでテンプレート作る

たぶんこんなものは私にしか需要がないが、FileMakerGoでカレンダーなどを作ってみてます。


というのも私は古い人間でありまして、住所録(連絡先)やカレンダー(日記)といったプライベートなものを、クラウドとかいって、よく分からないサーバーに預けるというのに抵抗感がある。


自分のセキュリティ意識がさほど高いとも思ってないし、すると「いつでもどこでもどの端末からでも情報が見える!」なんて言われると、いつでもどこでも誰にでもそれを見られてしまうような気がしてしまう。

FacebookとGoogleが連絡先のインポートだエクスポートだともめてるのを見ても、そういうのはきっと貴重な資産であるわけですよ。


なので連絡先やカレンダーは絶対にオフラインに置いておきたい。

でも普通はiPhoneもiPod Touchも、優秀な連絡先アプリ、カレンダーアプリが最初から入ってますんで、そっち使う。

でも私は、あえて、ムダであると判っていながら、それをFileMakerGoでやってみたいんだよ!


そういうわけで。


fmg_101116_6.jpg

今のところ、この3つで構成。


fmg_101116_7.jpg

住所録のリスト。

「よく見る」を押すと、閲覧回数の高いものが上に来る。


fmg_101116_8.jpg

連絡先データ。


fmg_101116_9.jpg

カレンダーと連携して、その人が登録されたものを一覧表示。

また連絡先(住所とか電話番号とかアドレスとか)をまとめてメール送信可能。


fmg_101116_10.jpg

カレンダー。


fmg_101116_1.jpg

個別の予定を表示。

「Contact」のところに相手の名前を入れる。名前が思い出せない時は右の虫メガネアイコンで住所録から検索。

名前を入れておくと、左の黄緑ボタンでその連絡先にジャンプ。

右上の星アイコンでその他機能へ(↓)。


fmg_101116_2.jpg

その他機能。

1,ToDo:期限日の設定されたToDoを一覧表示。

2,収支:お小遣い帳。

3,くりかえし:予定をリピートして自動入力。


fmg_101116_3.jpg

ToDo。見たままです。

下の「Active」を押すと未完了の項目を並べる(↓)。


fmg_101116_4.jpg

項目を属性ごとにソートするが、緊急に設定されているものは一番上に来る。


fmg_101116_5.jpg

ToDoの詳細。

期限日を設定するとカレンダーと連携。




現状こんな感じですが、実際に使ってみてもうちょっといじりたい。
タグ:diary filemaker ipod
posted by tk219 at 15:12 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年07月27日

繰り返しフィールドの活用

繰り返しフィールドについて。


集計は複数のレコード間の数字フィールドの計算を対象にしている。だから、1行=1レコードで構成しないと集計が出来ないのである。
繰り返しフィールドで請求書などを作ってしまうと1ヶ月にりんごがいくら売れたか、という集計ができないのでデータベースとしては不都合なものになってしまう。

http://filemaker9.seesaa.net/article/124482670.html


という、一見便利で実は厄介なのがこのフィールド。しかし利点もあります。
私がちまちま作ってるテンプレート「Complete System」に蔵書というカテゴリーがあります。
そこの中に、本の表紙を縦横にタイル状のリストとして表示する機能があります。

まずはリレーションを使って13列の横並びにし、さらにリスト表示にして縦にならべてみます。
6行表示されているので、13×6で1画面に78冊表示されました。

lib1.jpg

レイアウト表示。

lib2.jpg

しかしこのレイアウトの欠点は、ウインドウサイズを変更した時です。
リスト表示は、「自動サイズ変更オプション」に反応しません。
↓のように、ウインドウを大きくしても縦横ともに空白ができます。

lib3.jpg



ではリスト表示を使わず、ポータルを並べてタイル状にします。

lib4.jpg

これは6行のポータルを横に13列並べて表示しています。
レイアウト表示にすると、こうなります。

lib5.jpg

今のところ、79冊めからはどうしているるかというと、タブレイアウトを使って2枚目のタブに79冊め〜を表示します。
当然、3枚めのタブは157冊〜、4枚めは235冊〜となります。
しかしこれでは、必要な分だけタブを増殖させねばならず、しかも必ず足りるとは限りません。

この場合、ウインドウサイズを変更するとどうなるでしょうか。
ポータルに「自動サイズ変更オプション」で上下左右に伸縮するよう設定した場合、それぞれがウインドウサイズに対する割合で伸縮しようとしてしまい、まともに表示されません。

lib11.jpg

縦方向のみであれば、ポータルは別のそれと干渉しあいませんので、まともに伸ばせます。
(わかりにくいが、↓は縦方向にだけ画像サイズが伸びたので、右に空白ができた状態)

lib6.jpg



とりあえず「ポータルは単体で伸ばす分には安全」と判りました。
では横方向をどうするか。複数のフィールドを並べるから、「自動サイズ変更オプション」がおかしくなる。
では1つのフィールドで複数のオブジェクトを横に並べればいい。

というわけで、繰り返しフィールドの登場!です。

lib7.jpg

13回水平に繰り返すよう設定したフィールドを横に引き延ばすと、全て均一に伸びていきます。

これを1つのポータルで縦に6行並べれば……

lib8.jpg

縦横ともに伸縮自在!
ウインドウの端をドラッグして動かすと、それに合わせてオブジェクトもぐいぐい拡大/縮小します。

lib9.jpg

小さくしたり、大きくしたり。フリーダム。

lib10.jpg
タグ:diary filemaker
posted by tk219 at 13:40 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年07月26日

キーボードショートカットを作成する(1)

※ただのメモ状態です。そのうち読める代物にします。

スクリプトトリガを使って、既存のショートカット以外のものを作成する。

Get ( トリガ修飾キー )
Code ( Get ( トリガキー入力 ) )

右(→):29
左(←):28
上(↑):29
下(↓):31
Return:13
Shift:1
Caps Lock:2
Ctrl:4
Alt:8
Shift + Alt:9

D:100
G:103
I:105
L:108
M:109
N:110
R:114
S:115
W:119
Y:121

■ポイント
フィールドに値を入力しないレイアウトにしておく。
タグ:filemaker diary
posted by tk219 at 13:13 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年07月21日

FileMakerGo for PCください

FileMaker Go for iPhone/iPadが出たみたいです。




お気に入りの FileMaker Pro の機能が FileMaker Go でも期待通りに動作します

FileMaker Go があれば、iPhone でも iPad でも、FileMaker Proのレコードを表示、編集、検索することができます。倉庫の在庫チェックも、オンサイトでのイベント登録管理も、出張中のプロジェクトステータスの更新も、すべて外出先で完了します。




データを操作できるけど、レイアウトには手が出せない。その分安い(iPhone版2300円、iPad版4600円)。

要するにクライアント版ということですね。




FileMaker Go では、ローカルのワイヤレスネットワークを利用して、または Wi-Fi や 3G でインターネットを介して、FileMaker Server および FileMaker Pro でホストされているデータベースに簡単に接続することができます。加えた変更はすべて、ホストされているファイルに即座に反映されます。* そのため、オフィスにいる人とも現場に出ている人とでも、データの共有が簡単です。


FileMaker Server を使っていない場合や、外出中にインターネット接続を行わない場合は、iTunes のファイル共有を用いてデータベースのソリューションファイルを FileMaker Go for iPhone に直接コピーしておきます。そうすれば、iPhone から会議のスケジュールを確認したり、写真を整理したり、連絡先を管理したりと、さまざまな操作ができます。ファイルに更新を反映するには、iTunes を用いてデータベースをデスクトップやラップトップのコンピュータにコピーし直してください。シングルユーザのデータベースでは、この方法が最適です。




一瞬ネットワーク接続必須なのか、と思ってしまいますが、どうやらローカルストレージでもOKのようです。

つまりスタンドアローンで動かせると。


なんでこういうのを、普通にPC/Macで出さないのでしょうか。

タグ:diary filemaker
posted by tk219 at 11:53 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年07月01日

ファイルメーカー上にエクスプローラを表示

ファイルメーカーのレイアウト上にWindowsのエクスプローラを表示させる方法。

こんな風に。
desktop1071_1.jpg

ドラッグ&ドロップでオブジェクト登録する時などに使えます。



まず適当に「explorer」と「ex_path」というフィールドを作ります(名前は何でもいいです)。
で、レイアウトにWebビューアを広げます。
オブジェクト名も「explorer」にしておきましょうか。

そこの設定→Webアドレスを「explorer」フィールドにする。

「exploer」フィールドは計算にして、

"file://" &
Case (
ex_path = "MyDocument";
Get ( ドキュメントパス );

ex_path = "Desktop";
Get ( デスクトップパス );

ex_path = "MyPicture";
Get ( ドキュメントパス ) & "My Pictures/";

ex_path = "NetHood";
Left ( Get ( ドキュメントパス ) ;
Position ( Get ( ドキュメントパス ) ; "/"; Length ( Get ( ドキュメントパス ) ) ; -2 ) ) & "NetHood/"
 )

さらに「ex_path」フィールドはグローバルで、ドロップダウンリストに設定。
上記の設定の場合、値一覧は↓のようにします。
desktop1071_2.jpg

とりあえずこれで終わり。
さらにつけくわえて「戻る」「上の階層へ」「エクスプローラで展開」ボタンもつける。



■戻る

スクリプト「Webビューアの設定」ボタンを作る。
内容は↓。

desktop1071_3.jpg



■上の階層へ

同じく。URLの設定は↓。

Left(explorer;Position ( explorer ; "/" ;Length ( explorer ); -2 ))

desktop1071_4.jpg



■エクスプローラで展開

スクリプトを作成してボタンに貼り付ける。内容は↓。

URLを開く [Get ( スクリプト引数 )]

で、スクリプト引数はフィールド「explorer」にする(ただし値一覧で作った場所にしか開きません)。

desktop1071_5.jpg
タグ:diary filemaker
posted by tk219 at 07:22 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年06月25日

テーマ機能

テーマ機能ってのを考えてたら、どんどん楽しくなってきてしまった。
ファイルメーカーはVer.9から条件付き書式が使えるようになったので、こういうのがさほど面倒くさくなくなった。

昔は色を変えたテキストを重ね合わせて、If(IsEmpty)で分岐させたりして、色々しなきゃいけなかった。


cps_theme1.jpg

cps_theme2.jpg

cps_theme3.jpg

cps_theme4.jpg

cps_theme5.jpg


でも普通のテキスト(フィールドじゃない。単に貼り付けただけのテキスト)に条件付き書式を設定しても、きちんと動くやつと動かないやつがある。
これの原因が皆目わからない。

元々のテキストが ↓ だったとして、
「 Day / Week / Month / Year 」

たとえばどこかのフィールドに数値が入ると、文字色を変えるように指定する。
Day / Week / Month / Year



ところが4つのテキストに全く同じ書式を設定しても、

Day / Week / Month / Year



みたいなことになることがある。

対処としては、ちゃんと条件付けされてるテキストをコピーして書き直せばいいだけなんだけど、なぜそうなってしまうのだろう????
タグ:filemaker CPS
posted by tk219 at 08:39 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年05月14日

Gridの角丸問題解決

Complete SystemカレンダーのGrid表示で、やっと私の中の「角丸問題」が解決しました。
長かった。
詳しい人に聞けばすぐに済むことなんだろうけど、ずっと独学で考え続けてたもんで。

以前は、こういう感じでした。
100514_fmp3.jpg

分かりますかね。8日から15日までの赤いバーは、実は1つの予定なんです。
1週間を超えると、このようにお団子状態になってしまう。
つまり予定の初日と終日の曜日に合致すると角を丸める、という単純な式で行けるかと思ったんですが、そうなると初日と終日が同じ曜日になるとこうなってしまう。

このことに数ヶ月も悩んでました。バカみたいですが。
頭の中でリレーションと関連フィールドの計算式をこねくりまわして、あっこれで行けるかも!と勇んでFM開いて試すと、うまく行かない。

で、うーんうーんと考えてる時に、嫁に話しかけられたりすると思考が崩壊するんですよ。
もう元に戻れない。
数学者が難しい証明やるのに、山にこもっちゃったりするのが少し分かった数ヶ月でした。
こちらは全くレベルの低すぎる悩みでしたが。

現在はこうなってます。リレーションで解決しました。
100514_fmp4.jpg

Complete Systemの一部内部。完全にスパゲッティです。
いかにも素人な感じがします。
しかしもう、どうしようもないです!

100514_fmp1.jpg

タグ:CPS filemaker
posted by tk219 at 17:52 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2010年01月18日

Complete Systemの感じ

今はこんな感じです。

100118_cps102.jpg

100118_cps102_2.jpg

土曜日、NHK大阪放送局で浜村淳さんに会いました。
大学時代に一度お世話になったことがあったもんで、嬉しかったです。
タグ:filemaker CPS
posted by tk219 at 22:15 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年12月14日

FileMaker10入手

今さらですが FileMaker Pro Advanced 10 を入手しまして、スクリプトトリガと条件付き書式にはまりこんでます。

タグ:diary filemaker
posted by tk219 at 11:14 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年12月09日

自動で日時の判るファイル名をつけてバックアップする

これはファイルのバックアップを取る際、自動でファイル名にタイムスタンプをくっつけて保存しようというものです。

例えば「CPS.fp7」のバックアップを2009年12月09日の18時30分40秒にとるとしたら、勝手にファイル名を「CPS_2009129183040.fp7」にして保存しましょうという代物。

まずファイル名を計算します。
フィールド名を「backup_filename」にしたとして、
計算式を、

"(任意のフォルダ)/CPS_" & Filter(GetAsText(Get(タイムスタンプ));"0123456789") & ".fp7"

とします。

で、スクリプト。



変数を設定 [$bck; 値:backup_filename]
名前をつけて保存 [「$bck」;最適化]
If [Get(最終エラー)]
全スクリプト終了
Else
カスタムダイアログを表示 [ (任意のフォルダ)に [ " & backup_filename & " ] を保存しました。"]
End If



で完了。
(任意のフォルダ)というのは、そのまま入れるんじゃなくて、
そちらの環境に合わせて書き換えてくださいという意味です。

こんな感じ。

091209_cpsbck.jpg

タグ:diary filemaker
posted by tk219 at 19:17 | Comment(1) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年11月24日

ファイルメーカー選手権に入選

今日、お知らせをいただきました。
入選ということで、

ニンテンドーDSi

がいただけるそうです。ありがたいことでございます。

ファイルメーカー選手権結果ページ
http://contest.journal.mycom.co.jp/?page_id=19783
タグ:filemaker
posted by tk219 at 12:40 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年11月15日

蔵書管理

ファイルメーカーで蔵書管理するいい方法ないかなーと考えていたら、頭がウニみたいになってきました。

091115_book.jpg


タグ:diary filemaker
posted by tk219 at 22:17 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年11月12日

Webビューアからデータを取得する

Webビューアの処理について。

たとえばファイルメーカーで、こんな風にウェブページを表示させます。

091112_object3.jpg

↑このページは、http://www.royalroad.jp/live/column/column11.aspです。特に意味はありません。

----------------------------------------------------------------
091112_object6.jpg
----------------------------------------------------------------

もしこのようにタイトルを自動で取得したい場合は、
TextExtraction ( URL_source ; "<title>" ; 1 ; "</title>" ; 1 )で解析できます。
「URL_source」は、HTMLソースを取得したフィールド。

091112_object5.jpg
HTMLソースは、「GetLayoutObjectAttribute」関数で取得できます。
具体的には、この辺りをご参照ください。

ただしWebビューアがHTMLを読み終わらないと取得できないので、
私は、スクリプトでWebビューアを開いたところでスクリプトを3秒停止。
そこからタイトルフィールドに移動させてからレコード確定させてます。

取得しおえるまでLoopでまわしてもいいんですが、タイトルくらい別に取得できないならできないでいいや、というのが私の考え方です。

またWebビューアが、「URL」フィールドの値を読み込むようにしている場合、

1,「URL」フィールドにURLを入力。
2,フィールド外をクリックするなどしてレコードを確定。

にしないと、Webビューアはそれを読み込んでくれません。
しかし感覚的にはアドレス打ったらリターンキーで決定したいわけですよね。

その場合は、
「URL」フィールドのフィールド/コントロールの「動作」を開きます。
そこの「次のオブジェクトへの移動に使用するキー」をTabじゃなくてReturnにしてしまえばいいのでは。

091112_object4.jpg

アドレス入力 → リターンキーをターン!と叩く → タブ移動
これでフィールドが確定し、Webビューアがアドレス
を読み込む。

このHTMLソースの解析というのは、いろいろできます。
例えばYahoo!ファイナンスを開いて、為替情報を見るとする。

----------------------------------------------------------------
091112_object1.jpg
----------------------------------------------------------------

そのHTMLソースを取得。Webビューアのオブジェクト名を「site1」にしたとして、

----------------------------------------------------------------
Let([
web = GetLayoutObjectAttribute ( "site1" ; "content");
start = Position(web;"日本円</th>";1;1);
end = Position(web;"米ドル</th>";1;1)
];
Middle(web;start; end - start)
)//Let
----------------------------------------------------------------

とすると、レート表の日本円の部分、
上の画面で言うと、「米ドル89.780000円」〜「ユーロ134.122342円」の1列分のソースが取得できます。

これをPosition関数、Middle関数、Substitute関数などで加工すると、それぞれの数値を抜き出して自動入力ができるというわけです。

----------------------------------------------------------------
091112_object2.jpg
----------------------------------------------------------------

こんな風に。
タグ:diary filemaker
posted by tk219 at 21:26 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年11月11日

インポートキャンセルでDBぶっこわし

家を出る前、ふとファイルメーカーに画像をフォルダでインポートしようとして、
しかしまだその肝心の画像データのフォルダがなかったことに気づき、キャンセル。
そのままエラーに続行を返したら、見事にデータベースがとんでもないことになってしまいました。

自分で作ったインポートスクリプトがキャンセルのことを考えてなくて、そのまま次の全置換ステップに入ってしまい、全レコードのアルバムIDを同じにしてしまった。
つまりどういうスクリプトだったかというと、

1,アルバムテーブルでレコードを作成
2,変数にアルバム名のIDを格納
3,画像テーブルでインポート(レコード作成)
(この段階で、レコードはインポートしたものだけが対象となっている)
4,取りこんだ画像レコードのIDに、変数(アルバム名)を全置換

というもの。
ところが3の段階でキャンセルして間違って「続行」を押しちゃったものだから、3000以上あった画像レコードがすべて同じアルバムIDに。そして残りのアルバムからは登録画像が消え去り、ゼロになってしまった。

憔悴したまま外出して、帰宅してから修正。
画像レコードに残されたファイルパスを見て、パスのフォルダ部分をコピーして検索。
すると選択画像と同じフォルダの画像だけが抽出される。
その画像が元々入っていたアルバムレコードを捜し、そのIDと名称をコピー。
画像レコードに戻って、IDをアルバムのIDに書き換えて全置換。
アルバムの名称もコピーして全置換。
無駄な労力って、しんどいですね。
すぐにスクリプトを修正しました。
タグ:diary filemaker
posted by tk219 at 20:50 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年11月01日

参照保存したデータをエクスプローラで表示する/もしくはエクスポート

データ(画像とかテキストとかOfficeドキュメントとかPDFとか)をおさめたオブジェクトフィールドを、仮に「filedata」としたとします。
これには参照のみ保存している場合と、データそのものをファイルメーカーに取りこむ「参照のみでない」保存があると思います。

そこで、

参照のみ保存の場合:実体データのある場所をエクスプローラで表示
データがFM内にある場合:データをエクスポートする

というスクリプトの書き方です。

filedata:データを保存するフィールド(オブジェクトフィールド)。
filepath:参照の場合、データのパスを保存するフィールド(計算フィールド、計算値を自動入力で計算値を上記filedataにしてもいいし、GetAsTextにしてもいいです)。

■スクリプト:

If [Exact ( Left ( fairu : 5 ) ; "file:" ) ="1" ]
 変数を設定 [ $path ; 値:MiddleValues ( Substitute ( filepath ; "filewin" ; "file" ) ; 2 ; 1 ]
 変数を設定 [ $Command ; 値 : "explorer.exe /e, /select, \"" & $Path & "\"" ]
 Eventを送信 [「aevt」;「odoc」; $Command ]
Else
 フィールド内容のエクスポート [ filedata ]
End If

となります。
タグ:filemaker
posted by tk219 at 00:28 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年10月26日

ファイルメーカーに動画を取りこむ

今、ファイルメーカーで動画を管理できないもんかと模索中。

091026_fmp2.jpg

一応、「ガワ」はできたが、UI的にまだ使い物にならない。
わざわざデータベースで管理するんだから、何をするにも目的に対して数クリックで完了できなければいけないんだが……。
タグ:filemaker
posted by tk219 at 20:29 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年10月21日

一括インポートして、絶対パスを取得する

使用環境は FileMaker Advanced 8.5 win です。

091021_fmp1.jpg

まずオブジェクトフィールドに画像を参照保存し、そのファイルパスなどの情報を別のフィールドに保存します。

・画像:オブジェクトフィールド
・情報:計算フィールド =GerAsText(画像)という状態です。

それで右クリックから「ピクチャを挿入」→「参照のみ保存」とすると「情報」フィールドには、

画像のサイズ(size:)
相対パス(image:)
絶対パス(imagewin:)

が保存されます。
しかしフォルダの一括インポートで同じように「参照のみ保存」としても、相対パス(image:)しか保存されない。
これはそういうものなのか、それともどこか間違っていて、フォルダのインポートでも絶対パスやサイズを取得できるはずなのか?

いろいろ試してみましたが、結局分からないのでmixiのコミュで質問してみました。
すると、

>それが仕様の様ですよ。
> どうしてもでしたら、フォルダのインポート後に得られたパスでピクチャの挿入して上書きすればいいのでは。

そうか!と膝をパシコーンと打ちました。
最初のインポートで取れなくても、情報はあるんだから取り直せばいい。
なんで思いつかないんだろ。ほんと俺って頭が固いなあ。
タグ:filemaker
posted by tk219 at 09:44 | Comment(3) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

2009年03月27日

リターンキーでスクリプト実行

例えば、↓こういう検索フィールドを作った場合、検索を実行するにはフィールド左のボタン(虫眼鏡アイコン)をクリックする必要があります。

090326_fmp_search1.jpg

するとキーボードで語句を打ってマウスでボタンをクリックして、という面倒さがあります。
そこで、レイアウトモードで検索フィールドを右クリックして、フィールド動作の設定ダイアログを出します。

090326_fmp_search2.jpg

↑のように、「次のオブジェクトへの移動に使用するキー」をリターンキーでセットします。
次に、タブ順設定。

↓では、わかりやすく、検索フィールドをボタンをレイアウト外に移動させました。
また検索ボタンと虫眼鏡アイコンを上下に分離しています。

で、タブ順設定としては、「検索フィールド」→「検索ボタン」の順番にします。

090326_fmp_search3.jpg

これで、設定修了。

090326_fmp_search4.jpg

検索フィールドに語句を入力してリターンキーを押すと、↑のように、ボタンに移動します。
そこでもう一度リターンキーを押すと検索スクリプトが実行されます。

つまり、「語句入力 → リターンキー連打」 で検索実行となったというわけです。
タグ:filemaker
posted by tk219 at 01:00 | Comment(0) | TrackBack(0) | ファイルメーカー | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は180日以上新しい記事の投稿がないブログに表示されております。