SQL文の実行結果をif文の条件判定に利用して[object]が返ってきたときに後続のスクリプトが動作しない


# 動作環境

ブラウザ：IE8  
sqlserver：Microsoft SQL SERVER 2008

# やりたいこと

ASPXファイルから下記のJavascript関数を呼び出して処理しています。  
sqlServerに対するSELECT結果がテーブルに存在しない[object]だったときに、if文のelse処理が動作するはずですが、else以降の処理が動作せず、関数呼び出しが終了してしまいます。

SELECT結果の[object]を条件分岐で正常に判断させる方法を知りたいです。  
もしくはSELECT結果の使用方法が間違っていたり、他の方法で判断する方法があるのであれば正しい使用方法、その手段も知りたいです。

[code]

    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) {}
    
    }
[/code]




おそらく処理に必要な値は`ret("品番")`ではなく`ret("品番").Value`なのではないでしょうか。

`ret("品番")`は`ADODB.Field`型です。この型は文字列に変換すると`[object]`となりますが、文字列`"[object]"`と比較しても一致することはありません。

