Am using iMacros with JS in Firefox. To retrieve column data, I am using
SET !EXTRACT {{!COL1}}
How can I dynamically change the value 1 so that I shall retrieve data from other columns as well?
Try1: I have set the value of n using:
iimSet("n",i);
and used like this:
SET !EXTRACT {{!COL{{n}}}}
This prints as _undefined_
Try2 I have set value like this:
iimSet("columnName","!COL"+i);
where i is iterated in for loop. and used like this:
SET !EXTRACT {{columnName}}
This prints only the !COL1, !COL2, !COL3 as text.
PFB my complete code:
var PickPackFilePath = "D:\\";
var PickPackData = "PickPackData.csv";
var initCSV;
initCSV = "CODE:";
initCSV += "SET !DATASOURCE " + PickPackFilePath + PickPackData + "\n";
initCSV += "SET !DATASOURCE_LINE 1" + "\n";
initCSV += "SET !EXTRACT {{!COL{{n}}}}" + "\n";
var i;
for(i=1;i<=6;i++)
{
iimSet("n",i);
iimPlay(initCSV);
alert(iimGetLastExtract(1));
}
Please help.
You were very close to the right solution. Here it is:
var PickPackFilePath = "D:\\";
var PickPackData = "PickPackData.csv";
var i;
for(i=1;i<=6;i++)
{
var initCSV;
initCSV = "CODE:";
initCSV += "SET !DATASOURCE " + PickPackFilePath + PickPackData + "\n";
initCSV += "SET !DATASOURCE_LINE 1" + "\n";
initCSV += "SET !EXTRACT {{!COL" + i + "}}" + "\n";
iimPlay(initCSV);
alert(iimGetLastExtract(1));
}