Funciones personalizadas

Última actualización: 2023-12-01
  • Creado para:
  • Beginner
    User

AEM Forms 6.5 ha introducido la capacidad de definir las funciones de JavaScript que se pueden utilizar para definir reglas comerciales complejas mediante el editor de reglas.
AEM Forms proporciona varias de estas funciones personalizadas de forma predeterminada, pero tendrá que definir sus propias funciones personalizadas y utilizarlas en varios formularios.

Para definir la primera función personalizada, siga los siguientes pasos:

  • Iniciar sesión en crx
  • Cree una nueva carpeta en las aplicaciones llamada experience-league (este nombre de carpeta puede ser un nombre de su elección)
  • Guarde los cambios.
  • En la carpeta de Experience League, cree un nuevo nodo de tipo cq:ClientLibraryFolder llamado clientlibs.
  • Seleccione la carpeta clientlibs recién creada y agregue las propiedades allowProxy y categories como se muestra en la captura de pantalla y guarde los cambios.

client-lib

  • Cree una carpeta llamada js en el clientlibs carpeta
  • Cree un archivo llamado functions.js en el js carpeta
  • Cree un archivo llamado js.txt en el clientlibs carpeta. Guarde los cambios.
  • La estructura de carpetas debe ser similar a la captura de pantalla siguiente.

Editor de reglas

  • Haga doble clic en functions.js para abrir el editor.
    Copie el siguiente código en functions.js y guarde los cambios.
/**
* Get List of County names
* @name getCountyNamesList Get list of county names
* @return {OPTIONS} drop down options
 */
function getCountyNamesList()
{
    var countyNames= [];
    countyNames[0] = "Santa Clara";
    countyNames[1] = "Alameda";
    countyNames[2] = "Buxor";
    countyNames[3] = "Contra Costa";
    countyNames[4] = "Merced";

    return countyNames;

}
/**
* Covert UTC to Local Time
* @name convertUTC Convert UTC Time to Local Time
* @param {string} strUTCString in Stringformat
* @return {string}
*/
function convertUTC(strUTCString)
{
    var dt = new Date(strUTCString);
    console.log(dt.toLocaleString());
    return dt.toLocaleString();
}

Por favor consulte jsdocpara obtener más información sobre cómo anotar funciones de javascript.
El código anterior tiene dos funciones:
getCountyNamesList - devuelve una matriz de cadena.
convertUTC - Convierte la marca de tiempo UTC a la zona horaria local

Abra el archivo js.txt, pegue el siguiente código y guarde los cambios.

#base=js
functions.js

La línea #base=js especifica en qué directorio se encuentran los archivos JavaScript.
Las líneas siguientes indican la ubicación del archivo JavaScript en relación con la ubicación base.

Si tiene problemas para crear las funciones personalizadas, no dude en descargar e instalar este paquete AEM en su instancia de la.

Uso de las funciones personalizadas

El siguiente vídeo le guía por los pasos necesarios para utilizar la función personalizada en el editor de reglas de un formulario adaptable

En esta página