Sería más fácil si cargas todo en un array y después muestras el contenido:
Código PHP:
Ver original// Creas el array
$meses = [];
// Luego lo llenas, creando un array para cada mes
for($i = 1; $i <= 12; $i++) {
$meses[$i] = [];
}
$nombre = 'No hay nombre'; // Valor por default
// Ahora recorres los resultados de base de datos y agregas al array:
while( $row = sqlsrv_fetch_array( $ARR_FactAgente1)){
// Actualizar variable de nombre
$nombre = $row['NOMBRE'];
// Asignar total al mes actual
$meses[$row['MES']] = $row;
}
// Finalmente muestras todo:
foreach($meses as $mes => $valores) {
// Si el contenido del mes está vacío, entonces el valor es cero
$valor = (empty($valores)) ?
0 : $valores['valor']; echo "$mes - $nombre - $valor<br>";
}