<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
   <channel>
      <title>sanryuブログ</title>
      <link>http://www.sanryu.net/mt/</link>
      <description></description>
      <language>ja</language>
      <copyright>Copyright 2011</copyright>
      <lastBuildDate>Mon, 14 Nov 2011 12:08:44 +0900</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>[VB.NET]WMIでプリンタジョブを取得する</title>
         <description><![CDATA[<pre class="brush:vb">
    ''' <summary>
    ''' プリンタジョブを取得する
    ''' </summary>
    ''' <param name="printerName">プリンタ名</param>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Shared Function GetPrintJobsCollection(ByVal printerName As String) As List(Of String)
　
        Dim printJobCollection As New List(Of String)
        Dim searchQuery As String = "SELECT * FROM Win32_PrintJob"
        Dim searchPrintJobs As ManagementObjectSearcher = New ManagementObjectSearcher(searchQuery)
　
        Dim prntJobCollection As ManagementObjectCollection = searchPrintJobs.Get()
　
        For Each prntJob As ManagementObject In prntJobCollection
            Dim jobName As String = prntJob.Properties("Name").Value.ToString()
　
            Dim prnterName As String = jobName.Split(",")(0)
            Dim documentName As String = prntJob.Properties("Document").Value.ToString()
      　    If String.Compare(prnterName, printerName) = 0 Then
                printJobCollection.Add(documentName)
            End If
        Next
        Return printJobCollection
    End Function

</pre>]]></description>
         <link>http://www.sanryu.net/mt/2011/11/vbnetwmi.html</link>
         <guid>http://www.sanryu.net/mt/2011/11/vbnetwmi.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">VB.NET</category>
        
        
         <pubDate>Mon, 14 Nov 2011 12:08:44 +0900</pubDate>
      </item>
            <item>
         <title>[SPREAD][テキストセル]複数行表示と改行コードの動作</title>
         <description><![CDATA[環境：VB.NET 2005、SPREAD for Windows Forms 5.0J

[確認]
MultilineをTrueに設定したテキストセルに、CRLF、CR、LFを含んだ値を設定する。

<pre class="brush:vb">
Dim txtMultiLineCellType As New FarPoint.Win.Spread.CellType.TextCellType
txtMultiLineCellType.Multiline = True
</pre>

<table>
<tr>
<td>設定する値</td>
<td>表示結果</td>
</tr>
<tr>
<td>"あ"+CR+LF+"い"</td>
<td>改行される</td>
</tr>
<tr>
<td>"あ"+CR+"い"</td>
<td> 改行されない</td>
</tr>
<tr>
<td>"あ"+LF+"い"</td>
<td> 改行される</td>
</tr>
</table>

[結果]
CRLF、LFは改行されて表示される。
]]></description>
         <link>http://www.sanryu.net/mt/2011/10/spread_3.html</link>
         <guid>http://www.sanryu.net/mt/2011/10/spread_3.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">SPREAD for Windows Forms 5.0J</category>
        
        
         <pubDate>Thu, 13 Oct 2011 11:08:20 +0900</pubDate>
      </item>
            <item>
         <title>[VB.NET]WEBメソッドの改行コードが変換される</title>
         <description><![CDATA[環境：VB.NET 2005 、スマートクライアント

<現象>
改行コードCRがLFに変換されている。

<参考サイト>

<a href="http://social.msdn.microsoft.com/Forums/ja-JP/netfxgeneralja/thread/247cbb61-be68-48c9-a436-53f373de17f8">Webメソッドのstring型の戻り値に含まれる改行コードが変換されてしまう</a>

<a href="http://tomcatch.blog38.fc2.com/blog-entry-12.html">WebMethod中の改行コード（CRLFがLFになっちゃう）</a>

<戻り値の型>
今回、確認できたは、戻り値の型は下記
（１）戻り値がDataTableの場合は、改行コードが変換される。
（２）戻り値がDataSetの場合は、改行コードが変換されない。

]]></description>
         <link>http://www.sanryu.net/mt/2011/10/vbnetweb.html</link>
         <guid>http://www.sanryu.net/mt/2011/10/vbnetweb.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">VB.NET</category>
        
        
         <pubDate>Thu, 13 Oct 2011 10:51:44 +0900</pubDate>
      </item>
            <item>
         <title>テーブルの制約について</title>
         <description>テーブルに制約を指定していない為に、想定(意図)していない値が設定されて、
アプリケーションが正しく動作しないことがあります。
個人的には、（１）～(３)は、必ず指定して欲しいです。
（４）（５）は、設計はして欲しい。

（１）主キー制約（PRIMARY KEY制約）
　主キーのないテーブルは、原則だめ。※一時テーブルのみ可。

（２）一意キー制約（UNIQUE制約）
　代替キーを使用し、かつ、一意となる自然キーがある場合は指定する。

（３）NOT NULL制約
　NULLがだめな項目には必ず指定すること。

（４）CHECK制約
　意図している値があるなら指定すること。個人的にはあまり使用しない。
　アプリケーション側でチェックしている。

（５）参照整合性制約（REFERENCES制約）
　いろいろご意見あると思いますが、個人的には、設計時（ＥＲ図など）には指定しているが、
　実際のテーブル(物理構造)には適用していない。
　※レスポンス、メンテナンス、仕様変更などを考えると・・・・。

</description>
         <link>http://www.sanryu.net/mt/2011/10/post_32.html</link>
         <guid>http://www.sanryu.net/mt/2011/10/post_32.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Fri, 07 Oct 2011 13:07:44 +0900</pubDate>
      </item>
            <item>
         <title>[PowerShell]%(パーセント)はForEach-Objectの別名</title>
         <description><![CDATA[別名定義を確認するためには,

<pre class="brush: sql;">
Get-Alias
</pre>

を使用する。]]></description>
         <link>http://www.sanryu.net/mt/2011/10/powershellforeachobject.html</link>
         <guid>http://www.sanryu.net/mt/2011/10/powershellforeachobject.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">PowerShell</category>
        
        
         <pubDate>Fri, 07 Oct 2011 08:50:23 +0900</pubDate>
      </item>
            <item>
         <title>開発でやってほしくないこと</title>
         <description>自分の周りの話です。世間ではどうなのでしょうか？

データ件数を考慮していないで設計・開発する為、
まともに動かないものが多いです。

（１）実行計画を取得しない。
ＳＱＬが自分の思ったとおりに実行されているか確認しない。

（２）実際のデータ件数を想定しない。
データ件数を考慮しない、データ件数がどのくらいか知らないでＳＱＬを作る。
※ＳＥがテーブル設計時にデータ件数を考慮しない。

（３）セオリー(チューニング含む)をやらない。
ＷＥＢでも、書籍でも、雑誌でもやらないでねと書いてあることを平気でやる。
かつ、やろうねと書いてあることをしない。

（４）システム標準ルールを無視する。
・・・・。

（５）実行時間の計測をしない。
・・・・。当然性能要件を守れない。
</description>
         <link>http://www.sanryu.net/mt/2011/09/post_31.html</link>
         <guid>http://www.sanryu.net/mt/2011/09/post_31.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 10 Sep 2011 16:00:35 +0900</pubDate>
      </item>
            <item>
         <title>[S2Dao]ODP.NETの接続PoolingはディフォルトでTRUE</title>
         <description><![CDATA[環境：S2Dao.net + ODP.net(ORACLE)

<現象>
DBに接続できないとエラーがでた。

<原因>
(1)ODP.NETのPoolingがディフォルトでTRUEとなっている。
(2)ＤＢ接続時にプロファイルでリソース制限(IDLE_TIME)されていた。
上記(1)(2)の為、しばらくＤＢに接続しないでいると、プーリングされている接続が切断されてしまい
ＤＢに接続できなくなってしまった。

<対応>
(1)ODP.NETのPoolingをFALSEに設定。

※前提でリソース制限の解除はできない。
]]></description>
         <link>http://www.sanryu.net/mt/2011/09/s2daoodpnetpoolingtrue.html</link>
         <guid>http://www.sanryu.net/mt/2011/09/s2daoodpnetpoolingtrue.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">S2Dao.net</category>
        
        
         <pubDate>Sat, 10 Sep 2011 15:27:29 +0900</pubDate>
      </item>
            <item>
         <title>トリガーの使用について</title>
         <description>トリガは使いたいが、こんな事があった。

　・仕様変更をしたとき、トリガだけ修正漏れ。
　（仕様書のどこにもトリガを使用していること書いてない。）
　・トリガに限って仕様書ない。
　（別にトリガの問題ではない。）
　・運用を実施する人がトリガを知らない。
　・当該テーブルのデータをメンテナンスする時に、トリガが動くのを忘れてしまう。

なので、下記程度にとどめたい。
　・監査ログや、テーブルの履歴の作成みたいなの。

結論は、システム開発から運用まで考えて、
保守できる程度に使用すればいいかと思う。
</description>
         <link>http://www.sanryu.net/mt/2011/08/post_30.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_30.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 27 Aug 2011 15:28:52 +0900</pubDate>
      </item>
            <item>
         <title>テーブルに必要なカラムについて</title>
         <description>（１）どのテーブルにも必要なカラム
　　「作成日」、「作成者」、「更新日」、「更新者」
（２）論理削除の場合に必要なカラム
　　「削除フラグ」、「削除日」、「削除者」
（３）世代（履歴）管理に必要なカラム
　　「使用（有効）開始日」「使用（有効）終了日」
</description>
         <link>http://www.sanryu.net/mt/2011/08/post_29.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_29.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 27 Aug 2011 14:59:12 +0900</pubDate>
      </item>
            <item>
         <title>テーブル設計で考慮すること</title>
         <description>（１）サロゲートキーの使用。
　・自然キーには、ユニーク制約をつける。
（２）正規化くずし。
（３）トランザクションへの値の埋め込み。
　・マスタデータが変更される場合、計算結果を格納する場合など考慮。
（４）削除の方針。
　・論理削除か物理削除するか。
（５）マテリアライズドビュー（Oracle）の使用。
（６）固有の値の作成にシーケンスの使用。
</description>
         <link>http://www.sanryu.net/mt/2011/08/post_28.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_28.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 27 Aug 2011 14:12:20 +0900</pubDate>
      </item>
            <item>
         <title>カラム命名のルールについて</title>
         <description>（１）同一の内容を示すカラム名は同一とする。
　　・当たり前と思うかもしれませんが、規模が大きいシステムだと複数人でテーブル設計をしていると、同じ物を指しているのに、違うカラム名だったりします。はっきり言って頭痛いです。
　　これを回避するには、システム開発用の辞書を作ったり、データベースモデリングツールを使ったりして対応します。
（２）○○フラグというカラム名の値は、0(false)または1(true)とする。NULLもNG。
　　・フラグと名前でいろんな値が入っていると訳が分からない。
（３）上記とかぶるが、○○フラグ、○○区分、○○分類、○○状態などのカラム名をよく見るが、適切な名前をつけること。</description>
         <link>http://www.sanryu.net/mt/2011/08/post_27.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_27.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 27 Aug 2011 13:54:17 +0900</pubDate>
      </item>
            <item>
         <title>オブジェクトの命名について</title>
         <description>（１）マルチバイトの使用は禁止。
　※理由はググッてください。
（２）開発前に命名基準書を作成する。
（３）全て英語またはローマ字で表記する。
　※できる限り英語。
（４）ローマ字で表記する場合、ヘボン式で表記する。
</description>
         <link>http://www.sanryu.net/mt/2011/08/post_26.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_26.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">データベースの設計について（私見）</category>
        
        
         <pubDate>Sat, 27 Aug 2011 13:39:50 +0900</pubDate>
      </item>
            <item>
         <title>罹災証明でた</title>
         <description>家一部損壊でした。発行に約４カ月かかりました。
一部損壊で受けられる控除、補助は何もないです。

市役所自体が被災し、今だプレハブ営業中のため
仕方ないかと思います。

ただ、固定資産だけは減額していただきたく。
明らかに、もう価値ない。</description>
         <link>http://www.sanryu.net/mt/2011/08/post_25.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_25.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">東北地方太平洋沖地震</category>
        
        
         <pubDate>Sun, 14 Aug 2011 20:55:25 +0900</pubDate>
      </item>
            <item>
         <title>タランドゥスツヤクワガタ</title>
         <description>子供がくじをした。

タランドゥスツヤクワガタが当たった。

名前が『ロドリゲス』になった。

なんでですか？
</description>
         <link>http://www.sanryu.net/mt/2011/08/post_24.html</link>
         <guid>http://www.sanryu.net/mt/2011/08/post_24.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">sanryu</category>
        
        
         <pubDate>Sun, 14 Aug 2011 20:53:02 +0900</pubDate>
      </item>
            <item>
         <title>[VB.NET]既存の接続はリモート ホストに強制的に切断されました</title>
         <description>[現象]
VS2005、IIS7.0 スマートクライアント構成で、
Webサービス接続時に
「既存の接続はリモート ホストに強制的に切断されました」が発生。

[原因]
IIS7.0がHTTP1.1 で接続時にKeep-Aliveがディフォルトで有効になっていた為に発生。

[対応]
Keep-Aliveを有効にする必要性がない為に、無効とした。
</description>
         <link>http://www.sanryu.net/mt/2011/07/vbnet.html</link>
         <guid>http://www.sanryu.net/mt/2011/07/vbnet.html</guid>
                  <category domain="http://www.sixapart.com/ns/types#category">VB.NET</category>
        
        
         <pubDate>Tue, 12 Jul 2011 10:14:42 +0900</pubDate>
      </item>
      
   </channel>
</rss>

