2013年4月10日水曜日

データバインドって便利だな 画像付き差込印刷を考える

さいきさんはwordの差し込み印刷とか得意ですか?と聞かれて、普通です。と一応答えてみた。

というか、そんなの簡単じゃないの?って感じですが。

じゃ、作ってもらえませんか?実は画像があるんですけど…。と頼まれた。 

チラシの一部分だけ(例えば営業マンの顔写真と名前だけを差し替えて、会社のプリンターで出力するシステムのようなもの)変えたいとか、確かに、そういう需要ってありますよ。

画像入りのデータのwordの差込印刷は確かにできるようです。 ←ここを見ながらやってみました。

これが、めんどくさい。
できないことはない…って感じですよ。何より画像を置く場所をフルパスで延々書かないといけないわけで(例えばCドライブ直下とか)。 たとえ私の机上でできたとしても、パソコンあまり詳しくない人にましてや、wordのバージョンが環境によってバラバラで「簡単に」再現させるというのはなかなか大変である。

とはいえ、これが便利な人もいると思い、こちらで販売してみることにしました。激安の200円です!
ダウンロードマーケットで販売することを前からやってみたかったので…いちいちサーバーをこういうサンプルでいっぱいにすると自分でも整理がつかないなと思っていたので、これからは販売に切り替えて紹介していきたいと思います。私の勉強を応援よろしくお願いします。

 最初いつもの習慣で、utf-8で作っていたので、無料のLibreOfficeでないとデータが編集できなかったのですが、おもいついてSJISで全部作ると普通にExcelでcsv開くことができました。やたら警告が出ますけど…
wordの写真付差込文章のサンプル

で、データバインドってどうなんでしょうねと。あまり詳しくないのでやってみたら、よい感じにできたのでご紹介します。

データバインドというのは、たぶんですがMicrosoftが提供しているエクスプローラーを使ったデータベースの表示機能でして、IEでしか見えないわけです。 でも、会社のイントラネットのようなところで活躍しているものではないかと思われます。

.NETなんかを勉強している人にはお馴染みの技術なんじゃないかなと。 ホームページ作るのにIEだけってあり得ないのであまり興味がなかったのですが、こういう使い方ならありかなと思い、ブラウザはIRON一筋の私ですが、IEマルチタブを入れて今回勉強してみました。 

非常に簡単でして、CSVのデータを準備して、データフィールド名を指定して deatasrc="#ID1" と書いたらあっさり最初のデータが表示されるというもの。
非常に簡単にできる。後はIEでキレイに見えるようにCSSを作っていけばよい。これを印刷してキレイに見えるように工夫すれば、wordがなくても確実に動くデータの表示ができるじゃないか!

後はJavaScriptの簡単な命令
<button onclick="ID1.recordset.MoveFirst()">最初</button>
を使ってボタンをつけたり、

書いたもの↓
<input class="dspOnly" id="dateinput" type="text" size="40" onKeyDown="update_field();">
がそのまま表示するJavaScript
function update_field(elem){
 document.getElementById("target").innerText = document.getElementById("dateinput").value; }

を追加して、簡単に実現できる差込印刷を作りました。

また、ID番号によるフィルターをかけて、IDでも指定して表示させるようにfomを作ってみた。
<form class="dspOnly" name='myFORM'>

 <div>ID:<input type="text" name='iddata' style="width: 139px; height: 20px"></div>
 <input type='button' onclick="dataFilter1(document.myFORM.iddata.value)" value='検索'> 

</form>

これをフィルターする命令部分は…
function dataFilter1(fData) { ID1.Filter = "ID="+fData; ID1.reset(); }

このようにして作ることで…チラシ印刷システムができました!


印刷には操作部分をCSSで印刷するときには見せないように書いておきます。
<style media=print>
 <!-- /*ブラウザのみ表示*/
.dspOnly {display:none;}
 // -->
</style>
データバインドの記事だけを読むと、あまりピンと来ませんでしたが、accessなどの難しいデータベースはいりません、いるのは情報の共有だけなんです。みたいな場合に… このデータバインドの技術は便利だなと思いました。

調べてみましたが、残念ながらcsvそのもののデータの変更はできません。これをやろうと思ったらもう 例えばイントラネット内にMicrosoft® SQL Server® 2008 Expressを入れて、Visual Studio Express かなんかで開発していかないといけないのだと思います。

このあたりまったくわからないのですが。いつかやってみたいけど…Microsoftって追求するとお金が掛かりそうで怖いの。

今ある私の技術だと、CSVかmysqlにphpでアクセスしてどうのこうのという話になり、ネットでデータの共有とかが一番簡単かなと思う。

しかし、このデータバインドは…ネット上にデータを置いたりしたくない、大した内容じゃないのに開発費用なんてほとんどない。という場合に…、Excelでいいじゃん。という話になり、ネットワーク上のExcelのデータをみんなが検索して自由に見れるだけでもありがたいと思え的な使い方になるじゃなかろうかと。

管理者がExcelだけを管理してユーザーがデータだけ見るというのなら、イントラネットでこれでできるな。とか、思いましたが…。ん~でも、それだったら無料のLibreOfficeで何か作って、ちゃんとしたのを作った方がいいかもしれませんな。

会社の日報システムのようなものをLibreOfficeでdbaseで作って共有してみましたがなかなかよかったです。それもそのうち公開したいと思います。

データバインドによる印刷も公開します。削除というのもつけてみましたが、これはキャシュを更新しているだけです。 

まぁ。データバインドは…イントラネットの検索・印刷システムには…わりとサクサクで便利かもしれません。

データバインドによるチラシ印刷システム よろしくね!(^^ゞ


実は椅子を買いました。

こちらのコクヨの東大阪にある倉庫の店に連れて行ってもらって…。このAmazonのやつよりヘッドレストのないやつを…44,000円と安かったです。

ゴージャスな生活をしている私ですが…イスがそこまで高いのは…。これがパソコン関係ならすぐ買うのですが、今まで使っていた楽天で買った1万円くらいの椅子がボロボロになってきましたので買わなければと言うとりまして…。なかなか買わなかったのです。勿体無くて。で、連れて行ってもらったのでした。ありがとうございました。(^O^)/


しかし、この椅子ですとお尻が痛くなりません。何時間でも仕事できる!気がします。あくまで気がしますですが。姿勢がよくなったからか、肩こりも楽なような。腰痛にも確かにいいなと。贅沢でしたが、マッサージ屋さんとかに行きたくなることを思うと、そんな贅沢でもない気がしてきました。
この仕事、やはり体が資本です。とにかく長時間手を動かしますので。この前、手首が痛くて限界になり、思わず指マウスも買いました。これも悪くはないのですが…。 やはり私の場合、神の手を持っているので超早くマウスが動くため…指マウスは本当に疲れてきたときしか使わないですなぁ。


でも、まぁ。本当に体さえ楽だったら、長時間仕事できるので、少々の投資はあってもいいかなと。
腰痛になりそうだなと思ったら椅子を変えてみる…オススメです。私が買った椅子は12年保障なんだそうで…。60歳で私は…もっとすごい人になっていたと(今がスゴイというわけじゃないけど、ドライバーそれ何?って思っていた35歳の私よりはすごいと思います)この椅子に座りながら思っております。

でね…次は机が欲しいのよね。この椅子、唯一失敗だったのが、あまり低くならないのね。私、椅子の上に正座する習慣があるのね。それができにくい。うう~ん。
と、物欲が限りなく広がり、その物欲を実現するための…お仕事の引き寄せの法則が働くはずなのであった…。

でもねぇ。シークレットだか何か知りませんが、ネガティブなことは考えない。前向き思考でいこう。 世の中を変えることがあなたの役割ではないって…間違っていると思うよ。

やっぱり社会問題は考えないかんと思うよ!原発は反対せないかんと思うわ。電気自動車とかも買いたいとは思うけども!思い込みの法則で世の中よくなるんだったら苦労はせんと思うけどな!


http://anatoo.jp/bif/todoapp.html knockout.js で 15分で作れるウエブアプリ!データバインディングってそういうもんなのね。 
最近のデータバインディングというのはアプリ作るためのもので、なかなか便利そうです!

お問合せフォーム

お名前 :
Email: (必須)
メッセージ: (必須)

 約束しないと、送信できません。再度の場合はリロードが必要です。


0 コメント :

コメントを投稿

コメントありがとうございます。


サイト内検索


View My Stats