2012-04-19 162 views
8

Si tiene un informe rdlc con columnas agrupadas dentro de una tablix (tabla). Quiero agregar una fila de pie de página que abarque todas las columnas creadas dinámicamente y muestre un total para todas las columnas juntas. ¿Cómo puedo decirle a una celda que debe abarcar todas las columnas creadas por el grupo?Cómo crear una fila de totales para las columnas agrupadas

|-------|-------|-------| 
| col 1 | col 2 | col 3 | 
|-------|-------|-------| 
| Column-Group Total | 
|-----------------------| 

Tenga en cuenta, para calcular el total no es mi problema. Solo estoy buscando una manera de decirle al visor de informes que combine celdas que se crean automáticamente a través de un grupo de columnas para una fila específica.

actualización
Lamentablemente, hasta ahora, no he encontrado una solución a esto. Además, la misma pregunta que también he encontrado en un informe en el que tuve que agregar totales de un grupo de filas en una columna fusionada.

|------|-------| 
|row 1 |  | 
|------| Row- | 
|row 2 | Group | 
|------| Total | 
|row 3 |  | 
|------|-------| 

Me parece una forma bastante común de mostrar los totales. ¿Esto no es posible de ninguna manera o me falta algo obvio?

Update2
Aquí una captura de pantalla de lo que quiero decir:

Spanning Category Total

En el centro hay un grupo. Esto crea en tiempo de ejecución n columnas. Lo que quiero hacer es el "total de la categoría de expansión" para abarcar todas las columnas creadas dinámicamente. Esto significa que el columspan de la celda es n. Solo hay una celda y en esta celda mostraré el total de todas las categorías. Es casi lo mismo que el visor de informes crea automáticamente en la parte superior del grupo.

+0

Las columnas dinámicas, ¿se trata de algún tipo de pivote (cabecera de columna del año fiscal, y el valor de los datos de los dólares gastados en ese año fiscal, por ejemplo)? – Pulsehead

+0

@Pulsehead: Correcto, hay informes con años pivoteados, como usted mencionó. P.ej. col1 = 2005, col2 = 2006, col3 = 2007 y el total del grupo de columnas debe mostrar el total de col1-col3. En otros informes, hay otras columnas agrupadas, como ubicaciones de oficinas, nombres de meses, etc. La cantidad de columnas no es fija, depende de los datos que se visualicen. – HCL

Respuesta

-1

ya que parece que tiene un grupo de columnas dinámico, es probable que poner en las columnas:!

campos ColHeading.Value | total
campos DataValue.Value     |! = SUMA (Fields! DataValue.Value)

Si prefiere la interfaz gráfica, haga clic con el botón derecho en el campo del valor total y haga clic en Expresión. En la ventana emergente, expanda las Funciones comunes y haga clic en Agregar y en la ventana Elemento, haga doble clic en Suma. Escriba o haga clic en el campo de datos y obtendrá algo como esto: Filled out Expression Window.

Hit Ok, y listo!

+0

Gracias por su respuesta, pero responde no a mi pregunta: tengo que saber cómo puedo decirle al motor de informes que combine las celdas creadas dinámicamente para la fila total, de modo que la celda total abarque todas las columnas creadas automáticamente. Algo así como ColSpan en HTML para la fila de totales. – HCL

0

Como sé, rdlc son archivos de informes que edita en Report Wizard o Visual Studio en lugar de rdl que son archivos de informes que se están desarrollando en BIDS.

No sé si esto funcionará en archivos rdlc porque sólo utilice las ofertas, pero creo que vale la pena el intento:

  1. en la pestaña de grupos de filas (Botton izquierda), haga clic derecho en su grupo y select add total -> after, agregará una fila total.
  2. copia temporal sólo la célula suma (total) a algún otro lugar en el informe (debido a que el siguiente paso sería borrarlo si no)
  3. usando SHIFT, seleccione la celda por celda de la fila que desea fusionar (no seleccione la fila en sí)
  4. clic derecho sobre él y seleccione combinar celdas
  5. pegar la celda suma copió lejos en el paso 2

Resultado (espero que se puede ver):

enter image description here

EDIT:

responder a su pregunta, sí estoy seguro de que se puede hacer porque lo hice varias veces y también te vi en la pantalla de impresión. Estoy pegando el XML de mi fila, creo que el secreto está en la etiqueta <ColSpan>8</ColSpan>. Tengo 8 columnas en mi informe.

<TablixRow> 
<Height>0.25in</Height> 
<TablixCells> 
    <TablixCell> 
    <CellContents> 
     <Textbox Name="textbox18"> 
     <CanGrow>true</CanGrow> 
     <KeepTogether>true</KeepTogether> 
     <Paragraphs> 
      <Paragraph> 
      <TextRuns> 
       <TextRun> 
       <Value>=Sum(Fields!myField.Value)</Value> 
       <Style> 
        <FontFamily>Tahoma</FontFamily> 
        <FontSize>9pt</FontSize> 
        <Format>'$'#,0.00;('$'#,0.00)</Format> 
       </Style> 
       </TextRun> 
      </TextRuns> 
      <Style> 
       <TextAlign>Right</TextAlign> 
      </Style> 
      </Paragraph> 
     </Paragraphs> 
     <rd:DefaultName>textbox16</rd:DefaultName> 
     <Style> 
      <Border> 
      <Color>LightGrey</Color> 
      <Style>Solid</Style> 
      </Border> 
      <BackgroundColor>White</BackgroundColor> 
      <PaddingLeft>2pt</PaddingLeft> 
      <PaddingRight>2pt</PaddingRight> 
      <PaddingTop>2pt</PaddingTop> 
      <PaddingBottom>2pt</PaddingBottom> 
     </Style> 
     </Textbox> 
     <ColSpan>8</ColSpan> 
     <rd:Selected>true</rd:Selected> 
    </CellContents> 
    </TablixCell> 
    <TablixCell /> 
    <TablixCell /> 
    <TablixCell /> 
    <TablixCell /> 
    <TablixCell /> 
    <TablixCell /> 
    <TablixCell /> 
</TablixCells> 
</TablixRow> 
+0

Gracias por su respuesta. Lo he intentado, pero Visual Studio no me permite fusionar las celdas (Paso 3 + 4). Tan pronto como selecciono una celda que es parte de un grupo, el comando de combinación del editor está deshabilitado. ¿Estás seguro de que esto es posible con BIDS? En caso afirmativo, puede existir la posibilidad de definir la fusión en el xml, porque hasta donde yo sé, el motor de renderizado es el mismo. En este caso, solo sería una limitación del editor. ¿Puede decir por qué BIDS permite la fusión de celdas agrupadas? Esto sería una gran ayuda para otras búsquedas ... – HCL

+0

sí, estoy seguro. Echa un vistazo a mi edición – Diego

+0

, pero ¿qué quieres? la suma de col1 + col2 + col3 en todas las filas? eso sería solo cuestión de cambiar su expresión de = Sum (Fields! col1.Value) a = Suma (col1 + col2 + col3) – Diego

1

No sabe si ha encontrado una respuesta a esto, sin embargo, pero si no ...

Por lo general, se espera que los totales en la última columna para datos agrupados en columnas y el último fila para los datos agrupados en filas ...

Sin embargo, dependiendo del alcance y del nivel de agrupación que tenga, puede lograr lo que desea al insertar su tablix en una tablix externa, y luego agregar un fila al tablix externo que resume los datos allí.

He utilizado varias regiones de datos dentro de rectángulos y listas para manipular todo tipo de diseños. Solo tiene que jugar con los ámbitos y posiblemente ajustar los datos de salida (sumas/promedios por grupos en el procedimiento almacenado) si esos ámbitos simplemente no están cooperando. Avíseme si resuelve su problema.

+0

Intenta agregar una captura de pantalla ahora, deberías poder. – saluce

Cuestiones relacionadas