While loop is updating only one record

Madhu5
Tera Contributor

Hi All,

I have to update multiple records in CMDB table.But whenever I execute the fix script,Only one record is getting updated.Below is my code

var gr = new GlideRecord("cmdb_ci");
gr.addEncodedQuery("sys_class_name=table^operational_status=7^install_status!=7");

gr.query();
gs.info("count="+gr.getRowCount());
while (gr.next()) {
gr.install_status = '7'; //retired
gr.hardware_status = 'retired';
gr.hardware_substatus = "missing";
gr.update();
//count++;
}
gs.info("Count of records updated="+count);

 

First info statement is giving me the count of 115,the last info stetement is giving a count of 1.Not sure what is wrong.Please help

15 REPLIES 15

Sourabh26
Giga Guru

Hi,

 

Have you define the count variable? 

 

Regards,

Sourabh

Madhu5
Tera Contributor

yes I defined

 

Raghu Ram Y
Kilo Sage

@Madhu 

This line should not work...

gs.info("Count of records updated="+count);

 

Replace it with this and check... gs.info("Count of records updated="+gr.getRowCount());

@Madhu , have you consider my suggestion and check?