做一个聪明的勤劳人,悠悠的。。。 温馨提醒:少喝奶茶;不吃刚烤的面包;远离充电电源;白天多喝水晚上少喝; 一天不喝多于两杯咖啡,少吃油多的食物;最佳睡眠为晚上十点至早上六点; 晚上五点后少吃大餐’ 每天喝酒不多过一杯; 不用冷水服胶囊; 睡前半小时服药忌立刻躺下; 睡眠不足八小时人会变笨; 有午睡的习惯人不易老; 手机电池剩一格时不要打电话,剩一格时辐射是平时的一千倍, 还要记得用左耳接电话,用右耳会直接伤害到大脑。

DataTable的操作可以很灵活……【转】

上一篇 / 下一篇  2008-02-29 17:31:16 / 个人分类:QTP

QTP自动生成的语句是这样的:
DataTable("Col", dtLocalSheet)
DataTable("Col", dtGlobalSheet)
其中,dtLocalSheet就是当前Action的DataTable,dtGlobalSheet就是Global的DataTable,Col是列名

还有很多写法,比如
DataTable("Col", "Action2")
就是读取Action2的Col列。
你完全可以读取另一个Action的DataTable,而不需要跨Action传递变量,使用DataTable比变量更方便,因为结束后能在Result里看到运行时的值
你可以在一个Action里读取另外一个Action的列,但是要注意另外一个Action的当前行
比如你在Action1里读取Action2的某列,如果Action1运行到第二行,你读取的Action2还是第一行的数据,解决办法就是写上这句:
DataTable.GetSheet("Action2").SetCurrentRow(2)
你也可以用GetCurrentRow来获取Action1的行,然后再用SetCurrentRow来保持两个Action的当前行一致:
CurrRow = DataTable.GetSheet("Action1").GetCurrentRow
DataTable.GetSheet("Action2").SetCurrentRow(CurrRow)

还有一种写法:
DataTable(1, "Action2")
这样就是读取Action2的第一列,不管第一列叫什么名字,都能读
这样就很方便,比如:
For i = 1 To 10
MsgBox DataTable(i, "Action2")
Next
这样就能循环读取Action2的1~10列了

同样,表也可以用数字代替:
DataTable(1, 2)
这样就是读取第二个Action表的第一列

TAG: QTP

引用 删除 danping   /   2008-03-05 17:07:25
呵呵,是‘错误隐藏在角落里,问题聚集在边界上’
引用 删除 danping   /   2008-03-05 17:06:59
呵呵,是‘错误隐藏在角落里,问题聚集在边界上’
 

评分:0

我来说两句

Open Toolbar