(前のブログから移設中・・・・)
ファイルメーカーはテキスト・フィールドはありますが、数ページに渡る文章の印刷には適していません。しかも公文章ともなると、ワードと違って英数字フォントもズレるし、ピッチがズレたり余白を合わせるのが非常に大変です。(数ページに渡る印刷はリスト印刷なので向かないのです)
ただ、テキストデータとしては、最大10億文字が可能ですので、アクセスとは比較になりません。そういった意味では、数ページに渡る長文でもワードにデータを流せば、成立するのです。
通常であれば、一旦エクセルにエクスポートしたり、XMLで保存したり、ワードの差し込みを使ってカチカチ動かしたりODBCを経由させたりと、やる気も失せてしまうのですが、
あるものを使えば、ファイルメーカー側のボタン操作で、指定のパスを呼んでワードファイルを呼び出し、ワード側のマクロを使わず、指定の各データを自動で更新させることができます。
その繋ぎ役に「なでしこプラグイン」を使います。
ちょっとやってみましょう。
まず、ワードで、なんちゃって公文章を作ります。
次に前回作ったファイルメーカーの住所録データベースに、それっぽいフィールドを追加してみます(弁護士の先生方は内容を気にしないでください)
こんな感じ。(まぁ、テストですから・・・・)
このファイルメーカー側の各フィールドのデータをワードに流したいわけです。
そこでワード側には、マクロではなく、カーソールで範囲指定をしてブックマークに各項目名を登録しておきます。
ワード側のブックマークをセットしたら、ワード側は保存して閉じておいてください。
(実際には指定のフォルダに入れておきますが、今回はデスクトップにそのまま保存)
次は、ファイルメーカー側でスクリプトを組みます。
デフォルトのスクリプト関数では無理なので、先程紹介した「なでしこプラグイン」をインストールしておきます。
(30日間無料)必要なら買ってください。安いです。
ファイルメーカーの変数設定を選びます。
変数は実際には動かさないので [$なんちゃって] でも結構です。ここでは[$ええ] としています。ようは、なでしこの計算式を入れたいだけなのです。
なでしこ関数は日本語プログラムなので覚えると非常に便利です。
(というか、ゲームとかも作れます)
ありえるんです。こういうの・・・。
他の項目も、なでしこプログラムで書きます。
(ファイルメーカープラグインの場合は¶(改行)が必要ですが・・。
/* なでしこプログラム-------- */
NAKO_eval("ワード起動。¶
「{デスクトップ}なんちゃって.doc」をワード開く。¶
「事件番号」に 「住所録::事件番号」のFMデータ取得をワードブックマーク挿入¶
「住所」に 「住所録::住所」のFMデータ取得をワードブックマーク挿入¶
「名前」に 「住所録::名前」のFMデータ取得をワードブックマーク挿入¶
「主文」に 「住所録::主文」のFMデータ取得をワードブックマーク挿入¶
「理由1」に 「住所録::理由1」のFMデータ取得をワードブックマーク挿入¶
「理由2」に 「住所録::理由2」のFMデータ取得をワードブックマーク挿入¶
「理由3」に 「住所録::理由3」のFMデータ取得をワードブックマーク挿入¶
")
/* んな感じ・・。*/
できたら、ファイルメーカー側にボタンを設定して、押せばワードを呼び出し、自動で各項目のデータを更新してくれるようにします。
やってみましょう。
ほら。
できた。(笑)
ちょーーー簡単!
うけるんですけど・・・
ファイルメーカーのボタン一発で指定していたワードが立ちあがり、データを更新してくれます。
ワード側でマクロは組んでいませんし、ODBCを経由させているわけでもありません。
(ODBCはサーバーを含めた場合とかいいかもです)
書いたのは日本語のプログラム言語です。
実際には、もっとパスを細かく指定して、呼び出して、データを書き込み、印刷。
別の指定のフォルダに保存して終了とか、そういうプログラムを組めば、ちゃんとしたソフトウェアっぽくなりますよね。
たぶん、自分で作れるかどうか、
作る気になるかどうかのジャッジは、簡単、便利で将来性があって希望が沸くかどうかだと思います。FileMakerを買うとなると1ライセンス4万はしますが、極端な話POSレジだって自分で作れちゃうし、iPadで依頼人と打ち合わせしながら操作したり、エビデンスを撮影してデータベース化することだって可能なわけです。
僕にはなんの得もありませんが、面白い事と出来そうな事はやる価値ありと思っています。
登録:
コメントの投稿 (Atom)
JT00000001を「JTスぺ-ス1とかで検索したい!」という人のために
「JTスぺ-ス1とかで検索したい!」 とかいう人のために。 -------------------------------------------------------------- 計算フィールの結果(テキスト) J JT JT0 JT00 JT000 JT0000 JT00...
-
その前に。。 シリアルNOの初期値化と欠番 のダウンロードを再開しました。 が、注意が必要です。 SerialIncrement ( "001" ; Max ( シリアル初期化_自己リレ::シリアル )) のように自己リレをして計算...
-
前回の API_OpenWeatherMapをFileMakerに取り込む際、 1、改行テキストに変換 2、配列をグローバル変数に格納 3、GetValue関数を使ってLOOP処理でFMのデータ化させる という流れでした。 OpenWeatherMapは項目とデ...
-
ラベルシールって結構使ってますよね。 FileMakerで開始位置を設定する方法ってのは、デフォルトには無いので自分で作るしかないんです。 方法はいろいろあるかとは思うのですが、あまり難しくする必要はないのかと思います。 対象レコードに対し 必要な数の...
0 件のコメント:
コメントを投稿