2013年6月9日日曜日

【.NET VB】Wordから文字を検索して場所を特定

※宣言部分
Imports Microsoft.Office.Interop

※処理部分
'Wordオブジェクトを生成
Dim xlApplication As Word.Application
xlApplication = New Word.Application()
 
'Wordオブジェクトのバージンを取得
txtMian.Text = txtMian.Text& xlApplication.Version & vbNewLine
 
'Word文書を開く
Dim wDoc As Word.Document
Dim wordName As String = "C:\Temp\sample1.docx"
wDoc = xlApplication.Documents.Open(wordName)
 
'Word文書の文数と文字数を取得する
txtMian.Text = txtMian.Text& "Sentences.Count:" & wDoc.Sentences.Count & vbNewLine
txtMian.Text = txtMian.Text& "Characters.Count:" & wDoc.Characters.Count & vbNewLine
 
'検索する文字をセット
Dim lCnt As Long = 0
Dim sText() As String = {"●", " ×", "▲"}
 
With xlApplication.Selection.Find
     For i = 0 To sText.Length - 1
          lCnt = 0
          '検索の処理機をクリア
          .ClearFormatting()
          '検索の文字列を設定
          .Text = sText(i)
          txtMian.Text = txtMian.Text & sText(i) & " で検索します。"& vbNewLine
          '検索を開始するの位置を先頭に設定
          xlApplication.Selection.SetRange(1, 1)
          '検索の実行
          Do Until .Execute = False
          '見つかった場合、検索対象の文字の場所を取得
          lCnt = lCnt + 1
          txtMian.Text = txtMian.Text & Space(3) & lCnt & " 回目みつかりました" & vbNewLine
           txtMian.Text = txtMian.Text & Space(3) & "ページ番号:" &xlApplication.Selection.Information(Word.WdInformation.wdActiveEndPageNumber) & vbNewLine
          txtMian.Text = txtMian.Text & Space(3) & "行番号:" &xlApplication.Selection.Information(Word.WdInformation.wdFirstCharacterLineNumber) & vbNewLine
          txtMian.Text = txtMian.Text & Space(3) & "文字目:" &xlApplication.Selection.Start & vbNewLine
          Loop
     Next i
End With
 
'文書を閉じる
wDoc.Close(False)
'アプリを閉じる
xlApplication.Quit()
 
'オブジェクトをクリアする
wDoc = Nothing
xlApplication = Nothing
 
txtMian.Text = txtMian.Text& "終了しました" & vbNewLine
 
 

2013年5月20日月曜日

トム・デマルコの5つのコアリスク


1.スケジュール見積もりに欠陥がある
 ・予定外の作業が増える
 ・無理な要望により、実現不可能な前倒し日程の調整
 

2.顧客からの要求が増大してくる
 ・機能の変更は、あらかじめ決めた仕様に反する場合、設計フェーズ
  からのやり直し、二度手間になり、作業が増大しやすい
 

3.開発人員のプロジェクトの離脱
 ・終身雇用の前提は避ける。
 ・新規雇用は大きなオーバーヘッドになる。

4.決定した仕様の崩壊
 ・仕様設計時の曖昧さが残っている。
 ・利害関係により仕様が決定していない。
 

5.開発者の生産性が低迷する
 ・開発者個人の能力が期待外れ
 ・少人数によるプロジェクトでは要注意

2013年4月20日土曜日

DIVで角を丸くして影をつける


<div style="background-color: white; border-radius: 10px; border: 1px solid black; box-shadow: 5px 5px 5px #aaa; color: black; padding: 10px 5px 10px 20px; width: 400px;">
●●</div>
と書くと下のようになる。

●●

【.NET VB】OracleのBLOBのデータをファイルに読み書き

1.データベースからの読み込み
Dim strSql As String = "select IMG from TBL where ID=XX"
Dim cmd As New OracleCommand(strSql, cnn)
Dim dr As OracleDataReader = cmd.ExecuteReader

'BLOBデータの読み込み
If dr.Read Then
    Dim blob As OracleBlob = dr.GetOracleBlob(0)
    Dim ms As New System.IO.MemoryStream(blob.Value)
    'MemoryStreamに読み込んだBLOBデータをファイルに書き出し
    System.IO.File.WriteAllBytes(sCImgPath_Temp, ms.ToArray())
Else
    Call WriteLineTime("該当するイメージファイルが見つかりません。")
    Exit Sub
End If

cmd.Dispose()


2.データベースへの書き込み
'ファイルのデータをByte配列に読込
Dim
fs As New System.IO.FileStream(sCImgPath_New, IO.FileMode.Open, IO.FileAccess.Read)
Dim blobData(fs.Length) As Byte
fs.Read(blobData, 0, fs.Length)

'SQLの設定(BLOBのデータはバインド変数「:blobdata」としておく)
Dim
strUpdateSql As String= "update tbl set IMG =:blobdata where id=XX"

cnn.BeginTransaction()
'BLOBのデータを設定
Dim
Updatecmd As New OracleCommand(strUpdateSql, cnn)
Dim pBlob As OracleParameter = Updatecmd.Parameters.Add("blobdata", OracleDbType.Blob)
pBlob.Value = blobData

'SQLの実行(戻り値はUpdateの対象行数)
Dim
retCols As Long = Updatecmd.ExecuteNonQuery()
Updatecmd.Transaction.Commit()
Updatecmd.Dispose()

【.NET VB】ODP.NETを使用してOracleに接続

ODP.NETを使用してOracleに接続する。

'Oracleの名前空間のインポート
Imports Oracle.DataAccess.Client
Imports Oracle.DataAccess.Types

'Connectionオブジェクトの生成
Dim cnn As New OracleConnection

'Oracleへの接続情報の設定
cnn.ConnectionString = "User Id=XX; Password=XX; Data Source=XX"
 'Oracleへの接続を閉じる
cnn.Open()

 'Oracleへの接続を閉じる
conn.Close()

2013年4月18日木曜日

PMBOKの9つの知識エリア


1.プロジェクト総合マネジメント
 プロジェクト立上げ前
 プロジェクト立上げ
 スコープ定義とWBS作成
 プロジェクトマネジメント計画書作成
2.プロジェクト・スコープ・マネジメン
 変更管理
3.プロジェクト・タイム・マネジメント
 進捗管理
4.プロジェクト・コスト・マネジメント
 費用管理
5.プロジェクト・品質・マネジメント
 品質計画
 品質管理
6.プロジェクト・人的資源マネジメント
 要員計画
 要員管理
 組織の制約
7.プロジェクト・コミュニケーション・マネジメント
8.プロジェクト・リスク・マネジメント

 リスク
 リスクマネジメント手順
 定量的リスク分析
9.プロジェクト調達マネジメント
 調達計画
 調達管理

Test !