Función ApplySimple de MicroStrategy

La función ApplySimple de MicroStrategy es una función dentro del grupo Apply que proporciona acceso a funciones o construcciones sintácticas que no son estándar en MicroStrategy, pero que son proporcionadas por tu base de datos.

ApplySimple se usa para definir representaciones de atributos, hechos, indicadores, consolidaciones, grupos, subtotales, transformaciones o tambien para definir filtros. Esta función admite como valores de entrada hechos, atributos o indicadores.

Sintaxis

La sintaxis que debemos utilizar es la siguiente:

ApplySimple("#0"; [campo])
  • Debes escribir ApplySimple y abrir y cerrar paréntesis.
  • La función que desees debe ir entre las comillas, y en vez de utilizar el nombre del campo debes escribir #0, #1, #2, etc. Esto para referencia a los campos en el mismo orden que se escriben.
  • Entre el punto y coma y el cierre de paréntesis debes escribir los campos a utilizar.

Ejemplos

Atributos

1. Diferencia de meses con la fecha del sistema

ApplySimple("Months_between (sysdate,#0)"; [DAY_DATE])

2. Extraer y mostrar de una fecha, el día de la semana en un idioma diferente

ApplySimple("to_char(#0, 'day', 'NLS_DATE_LANGUAGE = SPANISH' )"
; [DAY_DATE])

3. Atributo de tipo Rótulo HTML que al pulsar sobre él, se abre una dirección URL en una ventana nueva

ApplySimple(" CONCAT(CONCAT(CONCAT(CONCAT('<a target="_blank" rel="noopener">'), #1), '</a>') "; [URL_OBJETO]; [NOMBRE_OBJETO])

Este apply algo más complejo lo que hace es mostrar el valor del campo NOMBRE_OBJETO y cuando se haga clic sobre el, concatenará el texto ‘https://’ con el valor del campo URL_OBJETO y se abrirá dicha url en otra pestaña del navegador.

Para este ejemplo he creado la siguiente tabla y la he importado en el catálogo de MicroStrategy.

Después, he creado un atributo de tipo Rótulo HTML con el código Apply anterior y he actualizado el esquema.

Por último, he creado un dossier utilizando el atributo y se visualiza de la siguiente forma.

Si se hace clic sobre el valor Apple o Google , se abrirá una nueva pestaña con la url correspondiente.

Filtros

1. Mostrar 4 años hacia atrás desde la fecha del sistema

ApplySimple("(EXTRACT(YEAR FROM sysdate ) -4 )";"")

2. Igualar el año al resultado de una consulta

ApplySimple("(select max(year_id) from dt_day)";0)

Indicadores

1. Operaciones básicas

ApplySimple("#0*#1"; [DP Number of Jobs]; 
[DP Number of Jobs - Cancelled])

2. Sustituir valor con CASE

ApplySimple("case when #0&gt;10 then #1 else #0 end"
; [Number of Distinct Recipients]; 
[Number of Distinct Subscriptions])

Usos incorrectos

  • ApplySimple(«Sum(#0)»,[Columna 1])
  • ApplySimple(«Count(#0)»,[Columna 2])

Estos dos ejemplos se estarían utilizando incorrectamente ya que no usan una función de valor único de base de datos, además, estas dos funciones no son especificadas de un proveedor de BBDD sino que ya están disponibles como funciones de MicroStrategy.

En los ejemplos utilizamos como separador de parámetros o campos el punto y coma. En muchos ejemplos de internet o la propia documentación de MicroStrategy puedes ver que se utiliza la coma, pero esto va en función del idioma.

Escribir un comentario