[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
GoogleEarthでDash村が見つかっちゃったようですね。
住所ではなく緯度経度が出回ってます。
あの企画もそろそろ終わりになるんでしょうかね。
さて、
FlashGridの続きです。
生成されたFlashの中で、追加したり削除したり編集したりはできるようになりました。
ユーザーインターフェースとしては出来たようなもんです。
ただし、そのユーザーのブラウザの中にあるFlashだけの世界です。別の言い方をすれば、エクセルに記入しただけで保存してない状態です。
ですから、保存しなければ意味がありません。この場合は、当然データーベースに保存することになります。
保存といっても相手はデーターベースなわけですから、ファイルを保存するようにはいかず、各行についてそれぞれ、INSERT / DELETE / UPDATE の何れかのSQLを発行する必要があります。
それを一発でやってくれる、 <CFGRIDUPDATE>(→LiveDocs) というタグがあります。
<cfgridupdate grid = "グリッド名" dataSource = "データソース名" tableName = "テーブル名">
とするだけで、INSERT / UPDATE / DELETE を全部一気にやってくれます。
「おぉ、こりゃええ!」と思ったのですが・・・・・イマイチ使えません。
どの辺がイマイチかというと、グリッドに表示されていないフィールドを扱えないという点が致命的。
<cfgridcolumn display="no"> となっているとSQLに含まれない模様。
それから、<input type="hidden" value="デフォルト値だよ"> みたいな事ができない。
あと、DBに主キーが必要。これはデーターベースがOracleの時に困ります。Oracleには主キーを自動採番してくれるようなカウンタアップ型のフィールド型がありません。(9iには。10gにはあるのかな?)Oracleの場合ならシーケンスを定義して、それを使うのが普通ですがcfgridupdate で指定することはできません。
最後の手段はOracleのトリガーを使って採番・・・・・( ̄~ ̄;)ウーン・・・
ということで、<cfgridupdate>を使って更新するのはあきらめた次第です。
<cfform format="flash" action="news_summary.cfm" style="border-style:solid; font-size:14px" timeout="60" height="650">
<cfformitem type="text" style="color:##CC3300; font-weight:bold ">#form.selectday#</cfformitem>
<cfgrid format="flash" name="newsgrid" query="portalnews" selectmode="edit" rowheaders="no" insert="yes" height="500" delete="yes">
<cfgridcolumn name="lno" width="30" type="numeric" header="No" >
<cfgridcolumn name="sinbun" width="50" header="新聞名">
<cfgridcolumn name="keyword" width="100" header="見出し">
<cfgridcolumn name="title" header="サマリー">
<cfgridcolumn name="SEQ" display="no">
</cfgrid>
<cfinput name="selectday" type="hidden" value="#form.selectday#">
<cfinput type="submit" name="gridupdate" value="登録・更新">
</cfform>
前回から増えたのは、太字の部分。最後が登録・更新ボタンになります。
ボタンを押すと、<cfform action= >に指定されている、 news_summary.cfm に対してポストします。
このnews_summary.cfm ですが、実はこれ、自分自身です。
更新や追加を行った後、結果を再度表示するような場合に、自分自身にポストする方法をよく使います。
次はこいつのデーターベース処理についてですね。
情報通信を生業としない企業の、システム系でもない普通の社員なので、 ColdFusionは独学。参考書が少ないのがツライです・・・・なんだかんだ、ColdFusion4.xのシリウス時代から7年くらいのおつきあい?リンコムNextのソースが教科書かも。
外注するときはよく「できればColdFusionで・・・・」とお願いするのですが、ほとんどの場合「えっ!?」と驚かれてしまい、「SEのアサインが・・・」などと営業さんが困ってしまうことが多くて悲しいです。
ちょっとしたものなら自分でシステム構築しちゃいますが、一人でやるには時間が足りませんね・・・
FlashRemotingとかもやりますが、Flexには手を出してません。
と、最初の頃書きましたが、ついにFlexに手を出しました。Flex1.5はイマイチわかりませんでしたが、Flex2は別物ですね。これで6万円でイインデスカ?
そしてFlex2とColdFusionの組み合わせなら無敵な気がしますよ。ほんとに。
01 | 2025/02 | 03 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |