<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal>Hi all,<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>I’m stuck with a weird problem. Basically I’m
trying to do a data driven test. I am reading data from access db. The problem I’m
having is I’m reading a recordset, then I would like to read each row
from the recordset and perform some actions and then read the next row from
recordset and perform the actions again. It’s like doing the same
operation without different data sets. The code I’ve end up till now is
as follows.<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>$dbcounter = 1<o:p></o:p></p>
<p class=MsoNormal>$tempcounter = 1 <o:p></o:p></p>
<p class=MsoNormal>require 'odbc'<o:p></o:p></p>
<p class=MsoNormal>include ODBC<o:p></o:p></p>
<p class=MsoNormal>drv = Driver.new<o:p></o:p></p>
<p class=MsoNormal>drv.name = 'Driver1'<o:p></o:p></p>
<p class=MsoNormal>drv.attrs['driver'] = 'Microsoft Access Driver (*.mdb)'<o:p></o:p></p>
<p class=MsoNormal>drv.attrs['dbq'] = 'C:\dl_alpha.mdb'<o:p></o:p></p>
<p class=MsoNormal>dbh = Database.new.drvconnect(drv)<o:p></o:p></p>
<p class=MsoNormal>sth = dbh.run("Select * from tbl_dl")<o:p></o:p></p>
<p class=MsoNormal>#sth.each do |row|<o:p></o:p></p>
<p class=MsoNormal>while row = sth.fetch do<o:p></o:p></p>
<p class=MsoNormal> $var_TNOrder = row[0] <o:p></o:p></p>
<p class=MsoNormal> $var_LEC = row[1]<o:p></o:p></p>
<p class=MsoNormal> $var_TN = row[2]<o:p></o:p></p>
<p class=MsoNormal> $tempcounter = $tempcounter + 1<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>printf "Entered while loop, TNORder:
%s",$var_TNOrder<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>end<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>the problem I’m having here that I’m not able to
assign the data value from recordset to my local variables. The while loop
executes only after End command. Until end command is reached it does not set
any variables. Please can you guide me on this. I am sure there should be a
way out.. I am new to ruby. <o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Thanks <o:p></o:p></p>
<p class=MsoNormal>Balu<o:p></o:p></p>
</div>
</body>
</html>