Evite el error de recursión

El principal motivo para el error de recursión es que los cálculos dinámicos densos no incluidos en la cabecera de columna, incluidos en los miembros no incluidos en la sentencia FIX, se calculan de forma simultánea. La recursión se produce si algunos de los otros miembros calculados de forma dinámica tienen una fórmula que incluye el miembro denso en la sentencia FIX. Un error de recursión se produce si hay más de 128 niveles de recursión.

El motivo principal para excluir los miembros de cálculo dinámicos es mejorar el rendimiento. Además, la exclusión de miembros de cálculo dinámicos le permite evitar el error de recursión al garantizar que en la exportación se usa el bloque comprimido en lugar del bloque expandido. También es posible evitar el error de recursión al cambiar la dimensión densa usada como cabecera de columna para la que cada columna definida por la sentencia FIX se calcula de forma individual. La recursión no se produce porque otros cálculos dinámicos densos no incluidos en la sentencia FIX se ignoran, lo que le permite que la regla se ejecute correctamente.

Note:

No puede cambiar la cabecera de columna de dimensión densa si el archivo de exportación contiene más de 256 columnas.

Por ejemplo, puede aparecer el error Cannot calculate. Essbase Error(1200494): Error executing formula for [Yield%] (line 15): Recursion limit [128] reached si usa el siguiente script de cálculo:

SET DataExportOptions
     {
     DATAEXPORTCOLFORMAT ON;
     DATAEXPORTDIMHEADER ON;
     DATAEXPORTDRYRUN OFF;
     DataExportRelationalFile OFF;
     DataExportNonExistingBlocks OFF;
     DataExportLevel ALL;
     DATAEXPORTCOLHEADER "Period";
     DATAEXPORTOVERWRITEFILE ON;
     DataExportDynamicCalc ON;
     };

FIX ("Yield%",@Relative("Change Over",0),@Relative("Currency",0),@Relative("Entity",0),@Relative("Product",0),@Relative("CostCentre",0),"Jan","Actual_Total",@Relative("View",0),"Working","Fy20")

DATAEXPORT "File" "," "/u03/inbox/data/ExportDataFile.txt"  "#";
 

Para evitar el error, desactive la opción dinámica cambiando DataExportDynamicCalc ON; por DataExportDynamicCalc OFF;.