2011年7月28日木曜日

VisualStudioで使用できるSubverion Addin ankhsvn

http://ankhsvn.open.collab.net/

VisualStudioから操作出来るのが便利

SQLの1項目の文字列に改行を入れたい

MS-SQL
NCHAR(13) + NCHAR(10)

UPDATE hoge
SET notes = 'test strings' + NCHAR(13) + NCHAR(10)
+ ' second rows.'


Oracleなら
NCHAR(13) || NCHAR(10)

UPDATE hoge
SET notes = 'test strings' || CHR(13) || CHR(10)
|| ' second rows.'

2011年7月27日水曜日

小数点があるかの判定

// 小数を含むかどうかをチェックする
if (Validation.IsDecimal(12.001)) {
MessageBox.Show("小数を含みます");
}

public static bool IsDecimal(double dValue) {
if (dValue - System.Math.Floor(dValue) != 0) {
return true;
}

return false;
}

元ネタ http://jeanne.wankuma.com/tips/csharp/validation/isdecimal.html

2011年7月25日月曜日

int?をintに変換できない

ストアドプロシジャの受け渡しパラメータがint?になっている。

コール元のC#では、以下の定義を行う。
private Int32 getCardNumber(string iEntityCode)
{
System.Nullable<int> vCardNumber = 0;
using (var db = new ExpenseDataClassesDataContext(ConfigurationManager.ConnectionStrings["ExpenseConnStr"].ToString()))
{
var c1 = db.usp_getNewCardNumber(Session["EntityCode"].ToString(), ref vCardNumber);
return (int)vCardNumber;
}
}

2011年7月23日土曜日

Linqでstored procedureを実行 戻り値あり(一つ)

Linqでstored procedureを実行
Linqでstored procedureを実行 ※戻り値あり

using (var db1 = new aDataClassesDataContext(ConfigurationManager.ConnectionStrings["ExpenseConnStr"].ToString()))
{
var c1 = db1.usp_getNewClaimNumber(Session["Code"].ToString(), ref po_Number);
}

1.LINQ To SQLクラスにストアドプロシージャを含める。
2.LINQで、通常通りに、上記オブジェクトを指定する
3.これで、ストアドが実行される。
4.戻り値は、ストアドを記述する時、受け渡しパラメータで、outputを記述
5.C#(Linq)からは、refで受け取る。

LINQの良い所、受け渡しパラメータを自動生成してくれるから、パラメータの設定コードを
記述する必要が無い。

stored procedure
CREATE PROCEDURE usp_getNewClaimNumber
@pi_EntityCode [char](2),
@po_ClaimNumber NVARCHAR(9) OUTPUT

2011年7月21日木曜日

asp.netでJavascriptからpostする方法(.NET3.5)

<script type="text/javascript">
aspnetForm.method = "post";
aspnetForm.action = "DetailEditCard.aspx?q=" + Args;
aspnetForm.submit();
</script type="text/javascript">

RAMDISK

Windows7 64bitにも対応した、RAMDISK

http://memory.dataram.com/products-and-services/software/ramdisk#download-ramdisk

注意:VisualStudio2010をインストールする時、Tempフォルダが無いとインストール出来ない。
RAMDISKの初期フォルダをTEMPにしておく。

2011年7月20日水曜日

Telerik RadGrid上の項目上のヘッダ行を取得する方法

GridHeaderItem headerItem = GridHeaderItem)RadGrid1.MasterTableView.GetItems(GridItemType.Header)[0];

Boolean vfound = ((CheckBox)headerItem.FindControl("chkHeadConfirm")).Checked;

RadGridのヘッダ部分にcheckboxを追加、checkboxのon/offで明細を変更したい時に使用

2011年7月11日月曜日

Magic uniPaaSのウィンドウやパレットが見えなくなってしまった

Magic uniPaaSのウィンドウやパレットが見えなくなってしまった

Magic uniPaaSは、直前に表示していたウインドウ(例えば、式エディタ)やパレット(例えば、ナビゲータ)の位置情報を以下の場所に保存しています。

1. レジストリ

HKEY_CURRENT_USER\Software\MSJ\uniPaaS

たとえば、Magic uniPaaS Ver1.9のチェッカーのパレット位置は、以下で保存されています。

HKEY_CURRENT_USER\Software\MSJ\uniPaaS\1.9\Checker

フローモニターは以下に保存されています。

HKEY_CURRENT_USER\Software\MSJ\uniPaaS\1.9\FlowMonitor

2. 追加情報が保存されているXMLファイル

C:\Documents and Settings\user name\Application Data\MSJ\uniPaaS\FormsUserState_jpn.xml



これらのレジストリ情報やXMLファイルを削除すると、すべてのウインドウとパレットはデフォルトの位置にリセットされます。

Magic uniPaaSの終了後に(すべての値は、終了時に書き込まれます)ときに、情報を削除してください。Magic uniPaaSが再起動されると、デフォルトの位置にウインドウが表示されます。

2011年7月7日木曜日

Telerik ComboxBoxでAllを追加

Telerik ComboBoxを使用する時、データソースに無い情報をALLにして
すべて選択させたい場合がある。
AppendDataBoundItems=”true”にして
アイテムレコードを追加する。







選択するデータセットの条件式に
SelectCommand="if (@Type <> '0') begin
.... WHERE 条件式 = 上記ComboBoxの値 end else begin SELECT * FROM ... end

ComboBoxの値が0以外なら、条件式を適用、0ならSQLの条件WHERE句無しとする。
※MS-SQLなら記述出来るけど、OracleはNGかも

Telerikのコントロール値をJavaScriptで取得

var combo = $find("<%= cbxComboBox.ClientID %>");
var item = combo.get_value();

2011年7月4日月曜日

html(web)で絶対値で表示させたい

html(web)で、WinFormみたいに、絶対値表示させたい場合がある。

style="left: 700px;position: absolute;"

上記スタイルを使用して、絶対値表示を行った。
(あまりやりたくないけど)

IIS7.5 Windows認証 その2

IIS7.5 Windows認証をIIS側で設定終了後
端末のIEのセキュリティ設定が必要
接続するIISのアドレをイントラネットとして認識させる必要がある。

ADを使用しているなら、グループポリシーで設定するのが簡単
ただし、グループポリシーで設定する場合、個人で設定されていた
イントラネットの設定は無効になるので注意が必要です。
(ADの設定が上書きされます。)