A ver we pruebale asi , no es un codigo probado , mas bien un pseudocodigo en php de la logica que se podria usar(una idea en si) para formar un arreglo bidimensional,le faltaria desarrollar la logica de tip_Recep como ahi te indico
Código PHP:
<?
$arreglo=array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
if (isset($arreglo[$row["cod_suc"]]["DIRECTO"])) {
$arreglo[$row["cod_suc"]]["DIRECTO"]+=$row["DIRECTO"];
}
else {
$arreglo[$row["cod_suc"]]["DIRECTO"]=$row["DIRECTO"];
}
if (isset($arreglo[$row["cod_suc"]]["INDIRECTO"])) {
$arreglo[$row["cod_suc"]]["INDIRECTO"]+=$row["INDIRECTO"];
}
else {
$arreglo[$row["cod_suc"]]["INDIRECTO"]=$row["INDIRECTO"];
}
if (isset($arreglo[$row["cod_suc"]]["INDIRECTO"])) {
$arreglo[$row["cod_suc"]]["CORPORATIVO"]+=$row["CORPORATIVO"];
}
else {
$arreglo[$row["cod_suc"]]["CORPORATIVO"]=$row["CORPORATIVO"];
}
/*
se necesita desarrollar la logica para tip_Recep ¿cuando y como se unen ps y rp?
basicamente seria la mesma idea
*/
}
?>
<table>
<?
foreach ($arreglo as $key =>$value){?>
<tr>
<td><?=$key?></td>
<? foreach ($value as $key2 =>$value2){?>
<td><?=$value2?></td>
<!--tambien podria ser asi-->
<td><?=$arreglo[$key][$key2]?></td>
<?}?>
</tr>
<?}?>
</table>