Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/04/2015, 15:11
oriion
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Mostrar valor de porcentaje en una celda de una tabla dinamica

Buen dia, pues respondo a mi mismo:

Inserte un ciclo for para recorrer solo las filas:
Código Javascript:
Ver original
  1. function ActualizarPorcentaje() {
  2.     var hora_crea_ = [];
  3.     var Hora_actual_ = [];
  4.     var Minutos;
  5.     var Minutos_Crea;
  6.     var Hora_Real;
  7.     var Hora_CREACION;
  8.     var H_Laboral; //para calcular el valor de dias por hora laboral
  9.     var SeLLeva; //para calcular el tiempo que lleva el requerimiento
  10.     var Me_queda;
  11.     var D_H_parcial;
  12.     var Hora_act_ = String(document.getElementById('reloj').value);
  13.     var hora_Creacion, fecha_Creacion, Hora_Proyectadas_;
  14.  
  15.     var table = document.getElementById('listadoRequerimiento'),
  16.     rows = table.getElementsByTagName('tr'), i, j,cells;
  17.  
  18.     for (i = 0, j = rows.length; i < j; ++i) {
  19.         cells = rows[i].getElementsByTagName('td');
  20.         if (!cells.length) {
  21.             continue;
  22.         }
  23.        
  24.         hora_Creacion = cells[5].innerHTML;
  25.         fecha_Creacion = cells[4].innerHTML;
  26.         Hora_Proyectadas_ = cells[7].innerHTML;
  27.         var f_dia = new Date();
  28.         var fecha_actual = f_dia.getDate() + "/" + (f_dia.getMonth() + 1) + "/" + f_dia.getFullYear();
  29.         var total_porcentaje_; //variable de calculo de porcentaje
  30.  
  31.         //se calculan los dias transcurridos
  32.         var F_actual = fecha_actual.split('/');
  33.         var F_creacion = fecha_Creacion.split('/');
  34.  
  35.         var fFecha2 = Date.UTC(F_actual[2], F_actual[1] - 1, F_actual[0]);
  36.         var fFecha1 = Date.UTC(F_creacion[2], F_creacion[1] - 1, F_creacion[0]);
  37.         var dif = fFecha2 - fFecha1;
  38.         var dias = Math.floor(dif / (1000 * 60 * 60 * 24));
  39.  
  40.         hora_crea_ = hora_Creacion.split(":"); //Arreglo de la hora de creacion  del requerimiento
  41.         Hora_actual_ = Hora_act_.split(":"); //Arreglo de la hora actual o real del momento.
  42.  
  43.         Minutos = Hora_actual_[1] / 60; //se calcula la cantidad de minutos
  44.         Minutos_Crea = hora_crea_[1] / 60; //se calcula la cantidad de minutos hora de creacion reque.
  45.  
  46.         Hora_Real = parseFloat(Hora_actual_[0]) + Minutos; //hora de consulta real. La del momento.
  47.         Hora_CREACION = parseFloat(hora_crea_[0]) + Minutos_Crea; //hora en que se creo el requerimiento
  48.  
  49.  
  50.         if (Hora_Proyectadas_ != 0) {
  51.  
  52.             if (Hora_Real >= 7.75 && Hora_Real <= 17.5) {
  53.  
  54.                 H_Laboral = (dias * 9.75); //Se calcula los dias por horas laborales
  55.  
  56.                 if (H_Laboral > 0) {
  57.                     //                D_H_parcial = 17.5 - Hora_CREACION;
  58.                     //                SeLLeva = (Hora_Real - 7.75) + D_H_parcial;
  59.                     Me_queda = (dias * 9.75);
  60.  
  61.                     if (Hora_Proyectadas_ < Me_queda) {
  62.  
  63.                         total_porcentaje_ = 100;
  64.  
  65.                     }
  66.                     else {
  67.                         total_porcentaje_ = (Me_queda * 100) / parseInt(Hora_Proyectadas_);
  68.  
  69.                     }
  70.  
  71.                 }
  72.                 else {
  73.  
  74.                     SeLLeva = Hora_Real - Hora_CREACION;
  75.  
  76.                     if (SeLLeva >= Hora_Proyectadas_) {
  77.                         total_porcentaje_ = 100;
  78.  
  79.                     }
  80.                     else {
  81.                         total_porcentaje_ = (SeLLeva * 100) / parseInt(Hora_Proyectadas_);
  82.  
  83.                     }
  84.                 }
  85.             }
  86.  
  87.         }
  88.         else {
  89.             total_porcentaje = 0;
  90.             hora = 0;
  91.         }
  92.  
  93.         //se muestran los resultados
  94.           cells[8].innerHTML = total_porcentaje_.toFixed(2) + '%';
  95.     }
  96. }

Ahora si se ve el porcentaje por cada solicitud, ya lo unico que me falta es, como le paso el porcentaje a la etiqueta div con el id (progressBar) que esta en la misma celda (cells[0])?. y que es un div dentro de otro.
Es un child (childNodes)?

Código HTML:
Ver original
  1. <div class="progress">
  2.         <div id="progressBar" class="progress-bar progress-bar-success progress-bar-striped active" role="progressbar"
  3.                                 aria-valuemin="0" aria-valuemax="100" style="min-width: 1em; width:0%;" >
  4.           <span id="por" class="progress-value"></span>                            
  5.          </div>
  6. </div>

Saludos