18 January 2026:


This forum is now archived and is in read-only mode. Please continue discussions on our improved new Sahi Pro Community forum.



Sahi Pro is an enterprise grade test automation platform which can automate web, mobile, API, windows and java based applications and SAP.

Unable to retrieve the values from excel sheet

Srinath_SahiSrinath_Sahi Members
edited November -1 in Sahi - Open Source
var db = _getDB("sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ=D:\\Automation\\sahi_setup\\userdata\\scripts\\Sahi_test.xls;readOnly=false","","");

if(db!=null)
{
$Tc=db.select("select Distinct(case) from [Sheet1$]");
_alert($Tc.length)

for ($j=0; $j<$Tc.length; $j++)
{
$Tstep=$Tc[$j]["case"]
// _set($Tstep,$Tc[$j]["case"]);

//$Tstep=parseInt($Tstep)
//$Tstep=$Tstep+""
_alert($Tstep)

$rs = db.select("select * from [Sheet1$] where case='$Tstep'");
_alert($rs.length)

for($i=0; $i<$rs.length; $i++)
{
test($rs[$i]["keyword"],$rs[$i]["Object"],$rs[$i]["data"],$rs[$i]["verify"])
}
}
}

first query executed successfully and getting "$Tstep" value as "1.0"
but when second query executed i am getting Following error :

ERROR
exception: java.sql.SQLException: [Microsoft][ODBC Excel Driver] Data type mismatch in criteria expression.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(Unknown Source)
at net.sf.sahi.plugin.DBClient.getResult(DBClient.java:101)
at net.sf.sahi.plugin.DBClient.select(DBClient.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:161)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:247)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3330)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2487)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:164)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:398)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3065)
at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:175)
at org.mozilla.javascript.Context.evaluateString(Context.java:1104)
at net.sf.sahi.rhino.RhinoScriptRunner.run(RhinoScriptRunner.java:114)
at java.lang.Thread.run(Unknown Source) at Sep 25, 2012 7:25:32 PM

Thanks,
Srinth

Comments

  • below code is resolved my problem

    $rs = db.select("select * from [Sheet1$] where case='" + $Tstep+ "' ");

    Srinath
  • Thanks for your sharing.
    var db = _getDB("sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ=D:\\Automation\\sahi_setup\\userdata\\scripts\\Sahi_test.xls;readOnly=false","","");

    if(db!=null)
    {
    $Tc=db.select("select Distinct(case) from [Sheet1$]");
    _alert($Tc.length)

    for ($j=0; $j<$Tc.length; $j++)
    {
    $Tstep=$Tc[$j]["case"]
    // _set($Tstep,$Tc[$j]["case"]);

    //$Tstep=parseInt($Tstep)
    //$Tstep=$Tstep+""
    _alert($Tstep)

    $rs = db.select("select * from [Sheet1$] where case='$Tstep'");
    _alert($rs.length)

    for($i=0; $i<$rs.length; $i++)
    {
    test($rs[$i]["keyword"],$rs[$i]["Object"],$rs[$i]["data"],$rs[$i]["verify"])
    }
    }
    }

    first query executed successfully and getting "$Tstep" value as "1.0"
    but when second query executed i am getting Following error :

    ERROR
    exception: java.sql.SQLException: [Microsoft][ODBC Excel Driver] Data type mismatch in criteria expression.
    at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
    at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(Unknown Source)
    at net.sf.sahi.plugin.DBClient.getResult(DBClient.java:101)
    at net.sf.sahi.plugin.DBClient.select(DBClient.java:79)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:161)
    at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:247)
    at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3330)
    at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2487)
    at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:164)
    at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:398)
    at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3065)
    at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:175)
    at org.mozilla.javascript.Context.evaluateString(Context.java:1104)
    at net.sf.sahi.rhino.RhinoScriptRunner.run(RhinoScriptRunner.java:114)
    at java.lang.Thread.run(Unknown Source) at Sep 25, 2012 7:25:32 PM

    Thanks,
    Srinth
Sign In or Register to comment.