Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/06/2010, 07:55
NA1TM3R
 
Fecha de Ingreso: agosto-2008
Mensajes: 82
Antigüedad: 16 años, 3 meses
Puntos: 4
Exclamación ¿Cómo sumar datos en ciclos anidados?

Saludos.

En ésta ocasión recurro a ustedes ya que por mas que lo intenté no me quedó...

Resulta que jamás había tenido problemas al tabular un recorset calculando sus totales... ya que era una sola consulta y sabía el número de columnas a presentar...

Ejemplo de RecordSet con 3 columnas:

Código vb:
Ver original
  1. D0 = 0
  2. D1 = 0
  3. D2 = 0
  4. For i = LBound(Vector,2) To UBound(Vector,2)
  5.     Response.Write  "<tr>"&_
  6.                     "   <td>"&Vector(0,i)&"</td>"&_
  7.                     "   <td>"&Vector(1,i)&"</td>"&_
  8.                     "   <td>"&Vector(2,i)&"</td>"&_
  9.                     "</tr>"
  10.     D0 = D0 + Vector(0,i)
  11.     D1 = D1 + Vector(1,i)
  12.     D2 = D2 + Vector(2,i)
  13. Next
  14. ' Los Totales
  15. Response.Write  "<tr>"&_
  16.                 "   <td>"&D0&"</td>"&_
  17.                 "   <td>"&D1&"</td>"&_
  18.                 "   <td>"&D2&"</td>"&_
  19.                 "</tr>"
(Claro con la estructura completa de la tabla)

Pero... el problema viene cuando el número de columnas depende de la subconsulta... por lo tanto es desconocido...
Ejemplo:

Código vb:
Ver original
  1. For i = LBound(V1,2) To UBound(V1,2)
  2.     sumH = 0
  3.     For j = LBound(V2,2) To UBound(V2,2)
  4.         'Aquí procedo con la Suma Horizontal... con la cual no tengo problemas
  5.         sumH = sumH + V2(0,j)
  6.     Next
  7.     ' Aquí se supone que va la Suma Vertical...
  8.     ' La cual... No sé como implementar...
  9. Next

Espero alguien me dé un pequeño empujoncito para resolver ésto...
Ya que tuve que hacer otra Query con la suma de los totales...

Pero me parece inecesario que teniendo los datos tabulados... deba hacer otra consulta para barrer los resultados...

Muchas gracias por sus sugerencias...
Nos seguimos leyendo...

P.S.: Utilizo GetRows para barrer mis resultados...