shuishixingyu 发表于 2009-1-8 16:02:33

Datatable问题

Dim str,MyArray ,i
'For i =1To DataTable.GetSheet("Global").GetRowCount
'DataTable.GetCurrentRow
Dialog("Login").WinEdit("Agent Name:").Set DataTable("UserName", dtLocalSheet)
Dialog("Login").WinEdit("Password:").SetSecure DataTable("PassWord", dtLocalSheet)
Dialog("Login").WinButton("OK").Click
wait(1)

If(Dialog("Login").Dialog("Flight Reservations").Exist) Then
   str = Dialog("Login").Dialog("Flight Reservations").GetVisibleText
   
   MyArray = Split(str,vbcrlf , -1, 1)

str = MyArray(1)
DataTable.Value("result",dtGlobalSheet)=str
   DataTable.GetSheet("Global").SetNextRow
Dialog("Login").Dialog("Flight Reservations").WinButton("确定").Click
DataTable.GetSheet("Action1").SetNextRow
else
'DataTable.Value("result",dtGlobalSheet)="成功登录!"
Window("Flight Reservation").Close
'Exit For
End If

'Next

为什么脚本在全部走完后又会重新再走一边?

danmy 发表于 2009-1-8 17:15:05

看一下你test的运行设置,

shuishixingyu 发表于 2009-1-8 22:26:56

哦,我设置为run on all rows了。请问下,希望能逐行往下读取datatable,如果设置了run one iteration only的话,就要用for循环再用上SetNextRow ,否则的话就要设为run on all rows吗?

plumlau002 发表于 2009-1-8 23:03:06

当设置为run on all rows的时候,global sheet里有几行,case就会自动重复运行几次。当设成run one iteration only时,case只运行一次,如果需要用到其他行的数据,需要用SetNextRow or setcurrentrow去定位你要的行

shuishixingyu 发表于 2009-1-9 08:37:09

原帖由 shuishixingyu 于 2009-1-8 22:26 发表 http://bbs.51testing.com/images/common/back.gif
哦,我设置为run on all rows了。请问下,希望能逐行往下读取datatable,如果设置了run one iteration only的话,就要用for循环再用上SetNextRow ,否则的话就要设为run on all rows吗?
那我理解的是正确的吧?

asoqa 发表于 2009-1-10 12:07:39

http://www.51testing.com/?233320/action_viewspace_itemid_99986.html
希望对你有用

shuishixingyu 发表于 2009-1-12 09:35:03

谢谢,关于设置我明白了,那请问下,循环又有什么作用,是不是我设置好了,就不需要做循环和用SetNextRow 来定位了?

asoqa 发表于 2009-1-12 16:02:39

不需要了,除非设置仍然不能满足你要求。
页: [1]
查看完整版本: Datatable问题