Problems with dynamic clips and nested loops

i am getting quite frustrated at this point, as i have tried many different ways to solve this problem…
below is the code i’m currently using yet i still get the same problem each time.
When i try to write the text to the items that i’m dynamically attach. they seem to space out like the items are being attached, but all i see is the last item altered in each set,…

a little clearer…
so i’m trying to create group holders each with a dynamic list of clips with dynamic titles in each holder depending on the number in the groupsLength Array. the groupsLength array is populated via xml, and all my traces for that trace correctly. everything actually traces correctly, but when i run this i just see the last item that i’m trying to name in each set.???
why can’t i see the clips that precede the last item in each set?
i’m guessing this is a simple problem/gotcha with nested loops. can someone please shed some light here, as i’m a wits end and i don’t know how to get this to work…
even workarounds or different ways to approach this would be appreciated too.
Thanks

function populateGroupHolders()
{
    for(i=0;i<=groupsLength.length-1;i++)
    {
        trace(groupsLength*);
        this.createEmptyMovieClip("groupHolder"+i,this.getNextHighestDepth());
        for(j=0;j<=groupsLength*-1;j++)
        {
           
            this["groupHolder"+i].attachMovie("goalItem","grpItem" + j,    this.getNextHighestDepth(),{_x:300,_y:groupY});
            groupY += groupsSpace;
            trace(groupsArray[i+1].groups[j]);
            
            this["groupHolder"+i]["grpItem"+j].goalName.text = groupsArray[i+1].groups[j];
        }
        this["groupHolder"+i]._x = xPos;
        xPos += xPosSpace;
    }
}