Foros del Web » Programando para Internet » ASPX (.net) »

Agregar campo separador y sumatoria

Estas en el tema de Agregar campo separador y sumatoria en el foro de ASPX (.net) en Foros del Web. Muy buenos días/tardes/noches a tod@s. Desde hace tiempo que he estado siguiendo el foro y leyendo varias respuestas muy buenas de su parte, pero es ...
  #1 (permalink)  
Antiguo 22/05/2013, 08:44
Avatar de fede_praalf  
Fecha de Ingreso: mayo-2013
Ubicación: Aguascalientes
Mensajes: 1
Antigüedad: 11 años
Puntos: 0
Busqueda Agregar campo separador y sumatoria

Muy buenos días/tardes/noches a tod@s.

Desde hace tiempo que he estado siguiendo el foro y leyendo varias respuestas muy buenas de su parte, pero es hasta el día de hoy que me animo a registrarme.

En la empresa donde trabajo se estuvieron realizando desarrollos en ASP clásico y apenas se está realizando la conversión a ASP.NET

En este momento le estoy dando mantenimiento a una pantalla en la cual tengo una tabla, la cual obtiene los datos por medio de SQL. Una columna contiene nombre de proveedor, otra datos numéricos.

La cuestión es la siguiente: Quiero realizar la sumatoria del campo numérico, pero que se muestre como separador entre los distintos nombres de proveedor.

Tal vez no lo dejé algo claro, así que adjunto una imagen de cómo debería quedar. (La pantalla que adjunto está realizada en ASP.NET)



Desde ya muchas gracias!
  #2 (permalink)  
Antiguo 23/05/2013, 09:36
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
Respuesta: Agregar campo separador y sumatoria

Movido desde ASP 3.0
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 24/05/2013, 12:27
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Agregar campo separador y sumatoria

Podrías hacer algo así:

En el evento RowDataBound verificas el tipo de item y acumulas el valor. Más o menos así:

Código ASP:
Ver original
  1. //Variable global
  2. Decimal Suma = 0;
  3.         protected void GV_Proveedores_RowDataBound(object sender, GridViewRowEventArgs e)
  4.         {
  5.             if (e.Row.RowType == DataControlRowType.Header)
  6.             {
  7. //Reiniciamos el valor                
  8. Suma = 0;
  9.             }
  10.             else if (e.Row.RowType == DataControlRowType.DataRow)
  11.             {
  12.                 Decimal Valor = Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "Acumulado"));
  13.              
  14.                 Suma += Valor;
  15.             }
  16.             else if (e.Row.RowType == DataControlRowType.Footer)
  17.             {
  18.                 e.Row.Cells[0].Visible = false;
  19.                 e.Row.Cells[1].Visible = false;
  20.                 e.Row.Cells[2].Visible = false;
  21.                 e.Row.Cells[3].ColumnSpan = 4;
  22.                 e.Row.Cells[3].Text = "Total: ";
  23.                 e.Row.Cells[3].HorizontalAlign = HorizontalAlign.Right;
  24.                 e.Row.Cells[4].Text = String.Format("{0:c}", Suma);
  25.                 e.Row.Cells[4].HorizontalAlign = HorizontalAlign.Right;
  26.             }
  27.         }

Esto considerando que estas usando un DataSource tipado. Cualquier duda, aquí estamos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:14.