2011年10月16日日曜日

JAVA認定資格取得への挑戦 No.1

この度、自分自身の時間が出来、だらだら過ごすのにはあまりにもったいないと考え、OJC-Pの勉強を始めました。
まずはこちらの本を購入しました。

2697B

いままでちゃんとオブジェクト指向のことを勉強したことがなかったので、最初の「オブジェクト指向の基礎」を読み終えたとき、漠然としか分かっていなかったことがきちんと整理整頓された感じになりました。

【雑感】ThinkPadX40にWindows7を入れてみて

Aeroは動かないにしても、やはりPentiumM1.00GHzのThinkPad X40にはWindows7は荷が重いです。
すこしでも体感速度を向上させるため、ビジュアル効果は最低限にし、UIもXP風にして利用しています。

ThinkPad X40 デスクトップ

スタートメニューは「Classic Shell」というソフトを使ってカスタマイズ。
http://www.forest.impress.co.jp/docs/review/20100219_350140.html

タスクバーはこちらを参考にクイック起動を復活
http://pasofaq.jp/windows/taskbar/7quicklaunch.htm

タスクバーのアイコンの大きさを小さくすることにより、XPとほとんど一緒になりました。

何とか実用に耐えられなくも無いのですが、一つ一つの動作にパワー不足を感じます。
ですので、結局今はXPに戻して使っています。

ThinkPad X40にWindows7(無線LAN編)

Access Connectionsも使えますが、問題は無線LANのドライバがMS標準なので、Fn+F5での制御出来ません。
外へ持ち歩くとき、無線LANをオフにしたい時って結構あるかと思います。
その都度、デバイスマネージャを開いて、オフにするのは面倒です。
そこで思いついたのは、Devconによる制御です。

参考にしたのは、こちら
http://blogs.technet.com/junichia/archive/2009/04/30/3233230.aspx

Windows Driver Kit7.0.0をインストールする必要があります。
ToolのみでOKです。
http://www.microsoft.com/japan/whdc/DevTools/WDK/WDKpkg.mspx

それで、以下のバッチファイルを作成。

 Devcon disable "PCI\VEN_168C&DEV_1014&SUBSYS_833117AB&REV_01"

ダブルコーテーションで囲ってある部分は各マシン毎に違います。

これのバッチファイルで無線LANをオフに出来ます。
オンにするときは、Access Connectionsから接続すれば、自動でオンになります。

ThinkPad X40にWindows7(グラフィックドライバ編)

ビデオドライバは残念ながら自動ではインストールされません。
こちらを参考にインストールしました。

http://www.thinkpad-club.net/modules/xhnewbb/viewtopic.php?topic_id=3243&start=0

若干パフォーマンスが良くなった気がします。(あくまでも主観ですのあしからず)

ThinkPad X40 デバイスマネージャー

ThinkPad X40にWindows7

物は試しでインストールしてみました。
強引にSSD(MTRON MSD-PATA3018-ZIF2)へ交換していることもあり意外と使えそうです。
起動はXPの時より速い感じです。XPの時はAccess Connectionsの起動が異常に遅かったのですが、とても速くなりました。

ThinkPad X40 パフォーマンス

ビデオドライバ以外は、標準ドライバが用意されています。
無線LAN等、一部のドライバはWindows Updateで入手出来ます。

2011年10月15日土曜日

NotesSQLに関するドキュメントとサンプルコード

NotesDB に格納されている文書を集計したいときなど、SQL文が使えると便利なんだろうなって思うときが時々あります。
いろいろと調べていたら、NotesSQLというソフトの存在を知りました。
しかし、いざ使ってみようと思うと日本語の情報が全然ない・・・。
あるとき、Microsoft Office SharePoint Server 2007のサイトを見ていましたら
Microsoft Office SharePoint Server 2007 自習書 Notes/Domino アプリケーション資産の活性化
というのを発見。早速PDFをダウンロードしてみたら、日本語でNotesSQLの使い方が懇切丁寧に書いてありました。
しかも使い方だけでなくダウンロード方法も解説してあります。
ConnectionStringの書き方に少々苦戦しましたが、無事VB.NETからアクセス出来ました!!
ちょっと凝ったSQL文を書くと、すぐにこけるのでNotes側のViewで工夫することがポイント。(特にINNER JOIN等での結合は出来なかった。)

まさか、ライバルから情報を入手出来るとは夢にも思っていませんでした。

サンプルコードは非接続型で、GridViewにバインドするコードです。
WindowsForm、WebFormどちらでも可。もちろん、接続型でももちろん接続可能。

サンプルコード(VB.NET)

Dim strConn As String = "DRIVER={Lotus NotesSQL Driver (*.nsf)}; " & _
                                                                          "Server=ServerName; " & _
                                                                          "Database=DbName.nsf; " & _
                                                                          "Uid=UserID; " & _
                                                                          "Pwd=password; "

Dim strSQL As String
Dim dtAdapter As Odbc.OdbcDataAdapter
Dim dtSet As DataSet

strSQL = "SELECT * FROM ViewName" ' 単純なWHERE句なら指定可能

dtAdapter = New Odbc.OdbcDataAdapter(strSQL, strConn)
dtSet = New DataSet
dtAdapter.Fill(dtSet, "board")

GV_Board.DataSource = dtSet.Tables("board")
GV_Board.DataBind()

ブログ再起動

JUSTBlogから始めたブログ。突然の停止後、Windows Liveの方へ引っ越ししたが、こちらも停止。

Windows Liveの移行先のWordPressにはなじめず、bloggerへやってきました。

4つ目のブログなので、4.0

MicrosoftのOSも4.0から使い物になるという俗説があるが、自分のブログははたしてどうなることやら。

.NETとDomino/Notes以外にJAVAも始めたので、その辺の備考録もアップ予定。

頓挫しないよう、頑張らねば。