Creación de prototipos con reglas Groovy para introducir datos en miembros FCCS_YTD

Al introducir y mostrar datos de Acumulado anual en un formulario de Financial Consolidation and Close, puede utilizar uno de los siguientes métodos:

Para crear reglas Groovy para introducir datos directamente en el miembro FCCS_YTD:

  1. Agregue una regla a petición en Calculation Manager denominada "PreFormLoad".

  2. Cambie el tipo de script de la regla a petición a "Script Groovy".

  3. Agregue el siguiente código a la regla "PreFormLoad":

    operation.grid.dataCellIterator("FCCS_YTD").each { DataCell cell -> if (!cell.crossDimCell("FCCS_YTD_Input") && cell.isReadOnly())cell.forceEditable=true}
  4. Guarde y valide la regla "PreFormLoad".

  5. Proporcione los valores predeterminados de petición de datos en tiempo de ejecución en la regla "PreFormLoad" tal y como se muestra a continuación:

    • Consolidación: "Entrada de entidad"

    • Moneda: "Moneda de entidad"

    • Entidad: "FCCS_Global Assumptions"

    • Periodo: "Jul"

    • Escenario: "Actual"

    • Años "FY19"

  6. Compruebe las opciones Está oculto y Utilizar como valor de reemplazo para las seis peticiones de datos en tiempo de ejecución de la regla "PreFormLoad".

  7. Guarde, valide y despliegue la regla "PreFormLoad".

  8. Agregue una regla a petición en Calculation Manager denominada "PreFormSave".

  9. Cambie el tipo de script de la regla a petición a "Script Groovy".

  10. Agregue el siguiente código a la regla "PreFormSave":

    def app = operation.application
    Cube cube = operation.cube
    Member ytdInputMember =
    app.getDimension(DimensionType.VERSION).getMember("FCCS_YTD_Input")
    Collection<DataCell> pendingYtdCells =
    operation.grid.dataCellIterator("FCCS_YTD").findAll {DataCell ytd -> if (ytd.edited) {
    def ytdInput = ytd.crossDimCell(ytdInputMember.name)
    ytdInput?.formattedValue = ytd.formattedValue
    ytd.setEdited(false)
    return ytdInput == null
    }
    }
    if (pendingYtdCells) {
    DataGridBuilder builder = cube.dataGridBuilder("MM/DD/YYYY")
    Set<String> allDimNames = set(app.getDimensions(cube)*.name)
    List<String> rowDimNames = set((allDimNames -
    operation.grid.pov*.dimName) - [ytdInputMember.dimension.name]) as List
    builder.addPov(operation.grid.pov.findAll({it.dimName !=
    ytdInputMember.dimension.name})*.uniqueMbrName as String[])
    builder.addColumn(ytdInputMember.name)
    pendingYtdCells.each {DataCell cell ->
    builder.addRow(rowDimNames.collect
    {cell.getMemberName(it, MemberNameType.UNIQUE_NAME)},
    [cell.formattedValue])}
    DataGridBuilder.Status status = new DataGridBuilder.Status()
    builder.build(status).withCloseable {grid -> cube.saveGrid(grid)}
    }
    Set<String> set(Collection<String> names) {
    Set<String> set = new TreeSet<>(String.CASE_INSENSITIVE_ORDER)
    set.addAll(names)
    return set
    }
    
  11. Guarde y valide la regla "PreFormSave".

  12. Proporcione los valores predeterminados de petición de datos en tiempo de ejecución en la regla "PreFormSave" tal y como se muestra a continuación:

    • Consolidación: "Entrada de entidad"

    • Moneda: "Moneda de entidad"

    • Entidad: "FCCS_Global Assumptions"

    • Periodo: "Jul"

    • Escenario: "Actual"

    • Años "FY19"

  13. Compruebe las opciones Está oculto y Utilizar como valor de reemplazo para las seis peticiones de datos en tiempo de ejecución de la regla "PreFormSave".

  14. Guarde, valide y despliegue la regla "PreFormSave".

  15. Agregue un formulario denominado "YTD_Test_1" con "FCCS_Periodic" y "FCCS_YTD" en las filas, como se muestra a continuación:

    Formulario de acumulado anual de muestra


    Formulario de acumulado anual de muestra
  16. Haga clic en el separador Reglas de negocio y mueva "Consol – Rule – PreFormSave" y "Consol – Rule – PreFormLoad" a la derecha. Active Ejecutar antes de guardar para la regla "Consol – Rule – PreFormSave" y active Ejecutar después de cargar para la regla "Consol – Run – PreFormLoad". La pantalla debe mostrarse como se indica a continuación:

    Reglas de negocio de muestra


    Reglas de negocio de muestra
  17. Guarde y haga clic en Finalizar.

    Nota: Con estos pasos se marcarán los datos de "Actual"/ "FY19" "Jul" y "FCCS_Global Assumptions" como modificados. Asegúrese de que la unidad de proceso se haya iniciado y tenga el estado desbloqueado. Esto se aplica solo a este prototipo. La implementación real no tendrá estas restricciones.

  18. Abra "YTD_Test_1 form" y agregue valores a FCCS_YTD como se muestra a continuación:

    Valores de acumulado anual de ejemplo


    Valores de acumulado anual de ejemplo
  19. Guarde el formulario. FCCS_Periodic se rellenará con los valores periódicos correspondientes, como se muestra a continuación:

    Formulario de acumulado anual relleno de muestra


    Formulario de acumulado anual relleno de muestra