SQL文の実行結果をif文の条件判定に利用して[object]が返ってきたときに後続のスクリプトが動作しない
動作環境
ブラウザ:IE8
sqlserver:Microsoft SQL SERVER 2008
やりたいこと
ASPXファイルから下記のJavascript関数を呼び出して処理しています。
sqlServerに対するSELECT結果がテーブルに存在しない[object]だったときに、if文のelse処理が動作するはずですが、else以降の処理が動作せず、関数呼び出しが終了してしまいます。
SELECT結果の[object]を条件分岐で正常に判断させる方法を知りたいです。
もしくはSELECT結果の使用方法が間違っていたり、他の方法で判断する方法があるのであれば正しい使用方法、その手段も知りたいです。
function checkSMT_Z120(regClass, obj, z120, ovday, odlvprice) {
//エラー回避 ※try{~
try {
var objADO = new ActiveXObject("ADODB.Connection"); //ADODBモジュールを使用してDBへ接続
var inputchk = obj.value //入力された品番を引数として取得
var companyGrp = z120.value //入力されたz120グループを引数として取得
var formVday = frmFormData.elements[ovday]; //旧有効開始日をフォームに返す
var formoDlvPrice = frmFormData.elements[odlvprice]; //旧納品価格をフォームに返す
var formregClass = frmFormData.elements[regClass]; //登録区分をフォームに返す
//1.ADOを使いSQL ServerのDBを開きます
objADO.Open("Driver={SQL Server};" +
"server=[ip]; database=[db名]; uid=[****]; pwd=[****];");
//2.SQLを実行して対象テーブルの登録状況を参照
if (inputchk != "") {
var ret = objADO.Execute("select 品番,金額,数量,開始日付 from Z120 where 得意先G5 = '" + companyGrp
+ "' and 品番 = '" + inputchk
+ "' and 終了日付 = '99991231'");
if (ret("品番") != "[object]") {
window.alert("true")
} else {
window.alert("false")
}
}
//ADOをクローズします
objADO.Close();
objADO = null;
}
catch (e) {}
}