doesnt look like anyone actually answered this,
private _logic = (createGroup sideLogic) createUnit ["ModuleSector_F",_pos,[],0,"NONE"];
you need to add this to your loop to make the variable reset after each iteration of the foreach loop, thats why your only getting one sector, the variables in a foreach loop are local to that loop, so you can nest them fine, but to use the variable again each time in the same loop you need to reset its value for each time the loop executes
wish i could have helped sooner, i cant see anything else wrong here really, but from your results thats sounds like where your having trouble