您的位置:首页 > 编程语言 > C语言/C++

loadrunner Lr_类函数之 lr_param_increment()

2018-01-01 23:54 417 查看

lr_param_increment()

递增数值参数的值。

int lr_param_increment(const char * destination_param,const char *source_param);

参数说明:
destination_param:存储递增参数的参数的名称

source_param:其值递增的参数的名称

lr_param_increment函数检索source_param的值,将其值递增1,并将递增后的值作为null终止字符串存储在destination_param中。
此功能仅在具有数字参数类型的协议中有用。对于仅具有字符串参数的协议,使用C函数递增。例如:

i = atoi(lr_eval_string(“{modification_num}”));

sprintf(buf,“%d”,i + 1);

lr_save_string(buf,“next_modnum”);

对于具有数值参数的协议,可以使用lr_param_increment:

lr_param_increment(“next_modnum”,“{modify_num}”);

  

source_param必须在调用lr_param_increment之前使用整数值初始化。 source_param的值应该只包含带有可选符号或前导零的单字节数字字符。

当destination_param存在时,其值将被覆盖。如果不存在,则动态创建参数。

source_param的值被限制为长整数的最大值减1。

 

示例:lr_param_increment
以下代码片段说明了lr_param_increment用于增加参数modify_num的值,并将增加的值存储为新参数next_modnum。
使用lrd_assign()将此新参数分配给Oracle语句中的“:1”占位符。然后使用lrd_ora8_exec函数执行语句。

/ *从Oracle数据库获取modify_num的值* /

lrd_ora8_save_col(OraStm142,9,1,0,“modification_num”);

/ * modification_num =“194128”* /

lrd_ora8_fetch(OraStm142,-1,408,&uliFetchedRows,PrintRow52,2,0,1);

/ *增加modify_num并将其存储为“next_modnum”* /

lr_param_increment(“next_modnum”,“{modify_num}”);

/ * next_modnum在录制过程中为“194129”。 * /

lrd_ora8_stmt(OraStm143,“\ nUPDATE S_SSA_ID SET \ n”

       “NEXT_SUFFIX ='ABCDE',\ n MODIFICATION_NUM =:1
\ n”

       “WHERE \ n MODIFICATION_NUM =:2 \ n”,1,0,0);

/ *将next_modnum的新增加的值分配给语句* /

lrd_assign(&P1D1062,“{next_modnum}”,0,0,0);

lrd_ora8_bind_placeholder(OraStm143,&OraBnd496,“1”,&P1D1062,

LRD_BIND_BY_POS,0,0);

lrd_assign(&P2D1063,“{modification_num}”,0,0,0);

lrd_ora8_bind_placeholder(OraStm143,&OraBnd497,“2”,&P2D1063,

LRD_BIND_BY_POS,0,0);

lrd_ora8_exec(OraSvc6,OraStm143,1,0,&OlRowsProcessed,0,0,0,0,0);

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息