Cheatography
https://cheatography.com
Data actions en SAP Analytics Cloud
This is a draft cheat sheet. It is a work in progress and is not finished yet.
Configuración general
CONFIG.HIERARCHY.INCLUDE_MEMBERS_NOT_IN_HIERARCHY |
Se usa cuando se quiere que los cálculos posteriores también se realicen para miembros de la dimensión que no están en la jerarquía |
CONFIG.HIERARCHY.INCLUDE_MEMBERS_NOT_IN_HIERARCHY = [d/t.S:SAP_ALL_TRADINGPARTNER]
|
CONFIG.GENERATE_UNBOOKED_DATA |
Sirve para indicar si se tienen en cuenta o no los datos vacios. Se configura con ON/OFF, de manera predeterminada estará en OFF |
CONFIG.GENERATE_UNBOOKED_DATA = ON
|
Selección de miembros
MEMBERSET |
Se establecen qué valores de las dimensiones/métricas se utilizarán o excluirán en cálculos posteriores de manera general |
MEMBERSET [d/AUDIT_TRAIL] ="SAC"
|
En el siguiente ejemplo se excluyen de la dimensión Producto los hijos de la jerarquía = All_Clothes |
MEMBERSET [d/PRODUCT] != BASEMEMBER( [d/PRODUCT].[h/H1], "All_Clothes")
|
BASEMEMBER |
Se utiliza en la segunda parte de MEMBERSET cuando se quiere indicar el padre en específico de una jerarquía |
MEMBERSET [d/SAP_FI_S4HC_GLACCOUNT] = (BASEMEMBER([d/ACCOUNT].[h/Clase_coste], "Ingresos"))
|
Agregación de miembros
AGGREGATE_DIMENSIONS |
Sirve para definir qué dimensiones se van a agregar antes de realizar el cálculo |
AGGREGATE_DIMENSIONS = [d/t.S:SAP_ALL_COSTCENTER]
|
AGGREGATE_WRITETO |
Se indica qué valor de la dimensión agregada le asignamos a cada uno de los miembros |
AGGREGATE_WRITETO [d/t.S:SAP_ALL_COSTCENTER] = "#"
|
Escribir datos
RESULTLOOKUP |
Devuelve los valores para los miembros establecidos previamente |
|
También se pueden indicar valores concretos dentro del propio RESULTLOOKUP |
RESULTLOOKUP([d/Version] = "public.Actual")
|
DATA |
Se usa para sobrescribir y guardar datos. Se pueden hacer cálculos con los RESULTLOOKUP y guardarlos en la cuenta que se quiera |
DATA([d/Account] = "Tasa")) = RESULTLOOKUP([d/Account] = "Cuenta 1") / RESULTLOOKUP([d/Account] = "Cuenta 2")
|
Dentro de DATA se pueden indicar en qué valores de la variable se van a guardar los datos |
DATA([d/Account] = "Tasa",[d/Time]="202304", [d/SAP_ALL_COUNTRYDELIVERY] ="#",[d/SAP_CONTROLLINGOBJECTCLASS] = "#", [d/SAP_OPERATINGCONCERN] = "#")= RESULTLOOKUP([d/Version] = "public.Actual")
|
DELETE |
Permite borrar datos |
DELETE([d/SAP_FI_S4HC_GLACCOUNT] = "Tasa")
|
También se pueden indicar valores concretos si no se ha hecho previamente |
DELETE([d/SAP_FI_S4HC_GLACCOUNT] = "Tasa", [d/SAP_ALL_COUNTRYDELIVERY] ="#")
|
Selección de tiempo/periodo
PREVIOUS |
Selecciona un tiempo concreto o un periodo de la dimensión fecha. |
DATA() = RESULTLOOKUP([d/Date] = PREVIOUS(1, "MONTH", "2020-04-21"))
|
El primer argumento nos indica cuántas unidades, el segundo la granularidad y el tercero que fecha tomamos como referencia. Por tanto, nos devolvería como fecha el mes previo a abril: mayo. |
Bucles
FOREACH |
Repite la sentencia para cada miembro de la dimensión que se le indique. Con ENDFOR se cierra el bucle |
FOREACH [d/Date] DATA() = RESULTLOOKUP([d/DATE] = PREVIOUS(1)) * 1.1 ENDFOR
|
FOR |
Permite repetir una acción un número determinado de veces. A continuación se dice que repita la sentencia desde el elemento 1 al 10 tomados de 2 en 2 |
INTEGER @counter FOR @counter = 1 TO 10 STEP 2 DATA() = RESULTLOOKUP() * 0.5 ENDFOR
|
BREAK |
Para el bucle FOR/FOREACH cuando se da cierta condición |
FOREACH [d/Date] IF RESULTLOOKUP([d/Account] = "Tasa") = 0 BREAK ENDIF DATA([d/Account] = "Proporcion") = RESULTLOOKUP([d/Account] = "Cantidad") / RESULTLOOKUP([d/Account] ="Tasa") ENDFOR
|
Condicionales
IF |
Permite ejecutar la sentencia cuando se cumplan ciertas condiciones. Se cierra con ENDIF |
IF RESULTLOOKUP([d/Account] = "PRICE") > 0 THEN DATA([d/ENTITY]="AsiaPacific", [d/Product]="Product1")=100 ENDIF
|
ELSE/ELSEIF |
Podemos establecer también qué hacer en el caso en que no se dé la condición declarada en el IF |
IF [d/ACCOUNT]="PRICE" THEN ELSEIF RESULTLOOKUP([d/ACCOUNT]="PRICE")>0 THEN ELSE DATA([d/ENTITY]="AsiaPacific", [d/Product]="Product1")=100 ENDIF
|
|