Compartir a través de


Acceso a ensamblados personalizados a través de expresiones

Después de crear un ensamblado personalizado, haga que esté disponible para Diseñador de informes o el servidor de informes, agregue la directiva de seguridad adecuada y agregue una referencia al ensamblado personalizado en la definición de informe, puede acceder a los miembros de las clases del ensamblado mediante expresiones de informe. Para incluir en una expresión una referencia a código personalizado, debe llamar al miembro de una clase dentro del ensamblado. La manera de hacerlo depende de si el método es estático o se basa en instancias.

Llamada a miembros estáticos desde un archivo de definición de informe

Los miembros estáticos pertenecen a la clase o al propio tipo, y no a un objeto con instancias. Se puede tener acceso a estos miembros llamándoles directamente desde la clase. Debería utilizar miembros estáticos para llamar a las funciones personalizadas en un informe siempre que sea posible, porque se comportan mejor. Para llamar a un miembro estático, tiene que hacer referencia a él como expresión con el formato =EspacioDeNombres.Clase.Método.

Llamar a miembros estáticos

  • Para llamar a un miembro estático, establezca la expresión igual al nombre completo del miembro, lo que incluye el espacio de nombres, el nombre de la clase y el nombre del miembro. En el ejemplo siguiente se llama al método ToGBP, que convierte el valor de campo StandardCost de dólares a libras esterlinas y lo presenta en un informe:

    =CurrencyConversion.DollarCurrencyConversion.ToGBP(Fields!StandardCost.Value)  
    

Información importante sobre los campos estáticos y las propiedades

Actualmente, todos los informes se ejecutan en el mismo dominio de aplicación. Esto significa que los informes con datos estáticos específicos del usuario exponen estos datos a otras instancias del mismo informe. Esta condición podría permitir que los datos estáticos de un usuario estuvieran disponibles para todos los usuarios que ejecutaran actualmente un informe determinado. Por este motivo, se recomienda encarecidamente no usar campos o propiedades estáticos en ensamblados personalizados o en el elemento Code ; en su lugar, usar campos de instancia o propiedades en los informes. Todavía se pueden usar métodos estáticos, ya que no almacenan el estado ni los datos.

Llamar a miembros de instancia desde un archivo de definición de informe

Si un ensamblado personalizado contiene miembros de instancia a los que debe obtener acceso en una definición de informe, debe agregar al informe un nombre de instancia para la clase. Puede agregar un nombre de instancia para una clase utilizando la pestaña Código del cuadro de diálogo Propiedades del informe. Para obtener más información sobre cómo agregar instancias de clases a un informe, consulte Referencias a ensamblados y código personalizado en expresiones en el Diseñador de informes (SSRS).

Para llamar a un miembro estático, tiene que hacer referencia a él como expresión con el formato =Code*NombreDeInstancia.Método*.

Llamar a miembros de instancia

  • Para llamar a un miembro de instancia de un ensamblado personalizado, debe hacer referencia a la palabra clave Code seguida del nombre de instancia y el método. En el ejemplo siguiente se llama a un método de instancia ToEUR que convierte el valor del campo StandardCost de dólares a euros y los muestra en un informe:

    =Code.m_myDollarCoversion.ToEUR(Fields!StandardCost.Value)