Вы заявили, что ваша функция была вызвана только один раз.Тем не менее, в вашем коде вы только явно вызываете его один раз.У меня проблемы с видением вашей проблемы.В ActionScript вы можете создать массив объектов, в котором значения атрибутов могут быть получены из возвращаемых значений функций.
РЕДАКТИРОВАТЬ Измените свой код, чтобы сделать это:
public function gridBuilder(myArray:Array):void {
var i:uint;
var dGArray:Array = [];
for (i=0; i<myArray.length; i++) {
dgArray.push({Name: myArray[i].name,
Type: 'A:',
Score: myArray[i].score,
Rank: myArray[i].rank,
Grade:myFunction(myArray[i].rank,myArray[i].max_rank)});
dgArray.push({Name: myArray[i].name,
Type: 'B:',
Score: myArray[i].score,
Rank: myArray[i].rank});
}
dgAC = new ArrayCollection(dGArray);
}
Проблема с исходным кодом заключалась в том, что вы продолжали сбрасывать dGArray
на каждой итерации.