Calcular campos en informes

Puede utilizar el Diseñador de informes para crear campos en el informe que no existen en la fuente de datos. Esto es útil si desea crear un campo dinámico que dependa de otros atributos dentro de la fuente de datos. Para crear un campo dinámico, puede utilizar la expresión C# para trabajar con los tipos de campos cadena de caracteres, fecha o numéricos.

Hay dos formas de crear campos calculados en el Report Designer. El primer método es agregar un cuadro de texto al informe e ingresar una expresión en el mismo que se ejecutará cuando se genere el informe. Los pasos para este método se describen a continuación, incluso los ejemplos de expresión. El segundo método es agregar un campo Calculado no delimitado al informe. Solo puede hacer esto desde el árbol Sección de informes. Haga clic con el botón derecho del ratón en el nodo Calculado del árbol y seleccione Agregar. Esto creará un campo no delimitado que se puede utilizar en el informe. La expresión del campo no delimitado se debe establecer en la propiedad Fórmula del campo. Una vez que se establece la Fórmula, arrastre el campo sobre la sección en el informe en donde desea utilizarlo.

Los campos no delimitados le permiten utilizar otros campos no delimitados en la Fórmula. Como resultado, puede crear los campos de resumen que utilizan campos no delimitados para genera el contenido dinámico en el informe.

NotaNota:

No podrá utilizar campos calculados no vinculados para calcular una estadística de resumen que utiliza otras estadísticas de resumen en la fórmula.

Pasos:
  1. Abra un informe en el Diseñador de informes.
  2. En la lista de Elementos de diseño, haga clic en Cuadro de texto y arrastre el elemento a su posición en el diseño del informe.
  3. Introduzca una expresión en el área Campo de datos en la cuadrícula Propiedades del elemento. Las expresiones siempre comienzan con el signo igual ("=").

    Matemática

    =Quantity + 5

    =Quantity - 3

    =Diameter * 3.14

    =Population / Area

    =(double)System.Math.Round(CostPerUnit*Inventory)

    Para obtener más información acerca de las funciones matemáticas admitidas, consulte la Ayuda de MSDN para la Clase matemática.

    Condicional

    =(ValueField == 1)?"One":"Not One"

    =(Price < 10)?"Clearance":"Price-Change"

    =(SoilType == System.DBNull.Value) ? "No soil type specified" : SoilType

    Fecha/Hora

    =System.DateTime.Now.ToString()

    =System.DateTime.UtcNow.ToString()

    Para obtener más información acerca de las funciones de fecha/hora admitidas, consulte la Ayuda de MSDN para la Estructura FechaHora.

    Concatenada

    ="Average Cost: " + avgCostField

    =ZipCode + ZipCode4Digit

    Cadena de caracteres

    =Name.Substring(0,4)

    =Name.Replace("Test", "Final")

    =Name.ToUpper()

    Para obtener más información acerca de las funciones de cadena de caracteres admitidas, consulte la Ayuda de MSDN para la Clase cadena de caracteres.

  4. Haga clic en Ejecutar informe para ver una vista previa.
  5. Compruebe la ortografía de los nombres de campo o la sintaxis de la expresión si el valor de campo devuelve el mensaje de error Falla de control en la secuencia de comandos de control.

Temas relacionados

5/10/2014