I am having values in result[15452,33616] when using for loop ,the async function taking only last array value (e.g-33616) and fetching the data for that pushing to another array and final push into grid.for array[0] (e.g -15452)values data is not fetching . & it is repeating the same row three times for 33616.Please reply as soon as earlier.Need of urgent.
for (var i = 0; i < result.length; i++)
{
var isFirst = 1;
var context = new SP.ClientContext.get_current();
var lists = context.get_web().get_lists();
var associatedProjectsList = lists.getByTitle('Master Project Data');
var camlQueryAssociatedProjects = new SP.CamlQuery();
camlQueryAssociatedProjects.set_viewXml('<View><Query><Where><Eq><FieldRef Name="ID"/><Value Type="Number">'
+ result[i]["ESI_ProjectSeqNoLookupId"] + '</Value></Eq></Where></Query></View>');
associatedProjectsItems = associatedProjectsList.getItems(camlQueryAssociatedProjects);
context.load(associatedProjectsItems);
context.executeQueryAsync(function () {
MPDS = MasterProjectDataSuccess();
if (isFirst == 1) {
rfaarr = MPDS;
isFirst = 0;
}
else {
rfaarr = $.extend(rfaarr, MPDS);
inputoJGrid.push(rfaarr);
self.PushToGrid(inputoJGrid);
}
}, MasterProjectDataFailure);
var lists1 = context.get_web().get_lists();
var associatedProjectsList1 = lists1.getByTitle('Project Users');
var camlQueryAssociatedProjects1 = new SP.CamlQuery();
camlQueryAssociatedProjects1.set_viewXml('<View><Query><Where><Eq><FieldRef Name="ID"/><Value Type="Number">'
+ result[i]["ESI_ProjectSeqNoLookupId"] + '</Value></Eq></Where></Query></View>');
associatedProjectsItems1 = associatedProjectsList1.getItems(camlQueryAssociatedProjects1);
context.load(associatedProjectsItems1);
context.executeQueryAsync(function () {
PUS = ProjectUsersSuccess();
if (isFirst == 1) {
rfaarr = PUS;
isFirst = 0;
}
else {
rfaarr = $.extend(rfaarr, PUS);
inputoJGrid.push(rfaarr);
self.PushToGrid(inputoJGrid);
}
}, ProjectUsersFailure);
}
});
};
function MasterProjectDataSuccess() {
var listItemEnumerator = associatedProjectsItems.getEnumerator();
while (listItemEnumerator.moveNext()) {
var cur = listItemEnumerator.get_current();
rfalistfetch["ProjectTitle"] = cur.get_item("ESI_ProjectName");
rfalistfetch["SequenceNo"] = cur.get_item("ESI_ProjectSequenceNo");
rfalistfetch["Division"] = cur.get_item("ESI_Division").get_lookupValue();
rfalistfetch["SubDivision"] = cur.get_item("ESI_SubDivision").get_lookupValue();
rfalistfetch["Status"] = cur.get_item("ESI_Status").get_lookupValue();
rfalistfetch["ProjectType"] = cur.get_item("ESI_ProjectCategory").get_lookupValue();
var Budget = cur.get_item("ESI_BudgetYear");
var dutyDateObj = new Date(Budget);
var day = "" + dutyDateObj.getDate();
if (day.length == 1) {
day = "0" + day;
}
var month = "" + (dutyDateObj.getMonth() + 1);
if (month.length == 1) {
month = "0" + month;
}
var year = "" + (dutyDateObj.getYear() + 1);
if (year.length == 1) {
year = "0" + year;
}
rfalistfetch["BudgetYear"] = dutyDateObj.getFullYear();
rfalistfetch["BMP"] = cur.get_item("ESI_BeginningMP");
rfalistfetch["EMP"] = cur.get_item("ESI_EndingMP");
rfalistfetch["State"] = cur.get_item("ESI_State").get_lookupValue();
rfalistfetch["Station"] = cur.get_item("ESI_Station");
rfalistfetch["SubCategory"] = cur.get_item("ESI_SubCategory").get_lookupValue();
rfalistfetch["LineSegment"] = cur.get_item("ESI_LineSegment");
rfalistfetch["DOT"] = cur.get_item("ESI_DOTNumber");
rfalistfetch["BriefScope"] = cur.get_item("ESI_BriefScope");
rfalistfetch["CPAR"] = cur.get_item("ESI_CPAR");
rfalistfetch["ProjectID"] = cur.get_item("ID").toString();
return rfalistfetch;
}
};
function ProjectUsersSuccess() {
var listItemEnumerator1 = associatedProjectsItems1.getEnumerator();
while (listItemEnumerator1.moveNext()) {
var curr = listItemEnumerator1.get_current();
rfalistfetch["ESDirector"] = curr.get_item("ESI_Director").get_lookupValue();
return rfalistfetch;
}
};