La función ApplyComparison 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.
ApplyComparison se usa para definir filtros personalizados. Esta función es utilizada con operadores de comparación como like, <, >, between, etc y admite como parámetros de entrada hechos, atributos o métricas
Diferencia ApplySimple y ApplyComparison
La función ApplyComparison la utilizamos para comparar con un valor o lista de valores y solo se pueden utilizar en filtros. Con la función ApplySimple la utilizamos para obtener un único valor utilizando funciones de la base de datos de origen.
Como utilizarlo
Crea un filtro de calificación avanzada y escribe el ApplyComparison que necesites.
Ejemplos
Ejemplo 1
Con este filtro estamos indicando que el valor del prompt debe estar entre la fecha del campo [Order Date]@ID y [Ship Date]@ID
ApplyComparison ("#0 between #1 and #2";?[Value Prompt Date]; [Order Date]@ID; [Ship Date]@ID)
Ejemplo 2
Con este filtro estamos indicando que el valor del campo Store@ID debe ser mayor que el valor del campo Month@ID
ApplyComparison ("#0>#1"; Store@ID; Month@ID)
Ejemplo 3
Con este filtro estamos indicando que el valor del campo year@ID debe estar en la lista de valores que devuelve la select escrita. En la select mostramos los años de la tabla lu_user y fact_prices donde el campo usuario de la tabla lu_user es igual al prompt de inicio de sesión del usuario.
ApplyComparison("#0 in (select year from lu_user a, fact_prices b where b.year = a.year and a.usuario = #1)";[year]@ID; ?[Nombre de ID de Usuario])
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.