TransWikia.com

Cómo sumar columna de ReportItems en Report Viewer

Stack Overflow en español Asked by Jonsin on December 30, 2021

Tengo un reporte creado con Report Viewer en Visual Studio 2015.
Tengo a su vez, una columna cuyos valores se generan a partir de esta expresión:

=IIf(ReportItems!DV.Value<=0,Fields!CPENDIENTE.Value," ")

Lo que requiero es mostrar una sumatoria de los distintos valores al final de la columna. El TextBox donde está la función mencionada le asigné el nombre de ALCORR.

Estas son las distintas formas que ya capturé como expresión en el TextBox donde deseo se muestre la sumatoria, pero no logro que ninguno me funcione:

  1. =SUM(IIf(ReportItems!DV.Value<=0,Fields!CPENDIENTE.Value,0))

Cambié a 0 el valor porque según leí marca error si el valor es null.

  1. =Sum(ReportItems("ALCORR").Value)

En este otro intento puse que solo diera la sumatoria de lo que tuviera ALCORR

En ambos casos me mandó este mensaje de error:
The Value expression for the textrun ‘Textbox63.Paragraphs[0].TextRuns[0]’ uses an aggregate function on a report item. Aggregate functions can be used only on report items contained in page headers and footers.

  1. Public Function Suma(reportItems as ReportItems)
    Return Sum(ReportItems("ALCORR").Value)
    End Function

Esta función la puse en las propiedades del reporte en Custom Code (Considero que algo anda mal con la función además)

Y la mandé llamar en el textbox donde quiero se muestre la sumatoria, de esta forma:

=Code.Suma(ReportItems)

Me arrojó estos errores: There is an error on line 0 of custom code: [BC30037] El carácter no es válido.

The Value expression for the textrun ‘Textbox63.Paragraphs[0].TextRuns[0]’ contains an error: [BC30456] ‘Suma’ no es un miembro de ‘ReportExprHostImpl.CustomCodeProxy’.

Alguna otra sugerencia para obtener la sumatoria? o corrección de mis anteriores intentos? Gracias.

One Answer

Es importante que la expresión no la ponga directo en propiedades de cuadro de texto -> General. Tiene que dar clic derecho en la tabla en el campo y ahí elegir Expresiones; dentro de expresiones podrás poner

=Sum(iif(Fields!CampoComparacion.Value = "Doc1", Fields!CampoResultado.Value, 0))

Listo, con eso funciona.

Answered by Guadalupe Adame on December 30, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP