[AEM_Forms]{class="badge positive" title="(Se aplica a AEM Forms)."}
Trabajar con el modelo de datos de formulario (FDM) work-with-form-data-model
El editor Modelo de datos de formulario (FDM) proporciona una interfaz de usuario intuitiva y herramientas integradas para crear, editar y configurar un modelo de datos de formulario (FDM) en Adobe Experience Manager (AEM) Forms. Con el editor, se agregan y configuran objetos del modelo de datos, propiedades y servicios desde fuentes de datos asociadas directamente dentro del modelo de datos de formulario (FDM).
Funciones del editor del modelo de datos de formulario
El editor del modelo de datos de formulario admite las siguientes tareas clave:
- Agregue y configure objetos, propiedades y servicios del modelo de datos desde fuentes de datos asociadas al FDM.
- Crear objetos y propiedades de modelo de datos sin fuentes de datos. Primero puede definir estos objetos y enlazarlos con los objetos y propiedades del modelo de datos respectivo, lo que desvincula el diseño de la configuración de origen.
- Generar y editar datos de ejemplo para las propiedades del objeto del modelo de datos. Estos datos de ejemplo rellenan previamente Forms adaptable durante la vista previa, de modo que los autores y los probadores validan el comportamiento del formulario con valores realistas antes de la implementación.
- Probar objetos y servicios del modelo de datos configurados en el FDM para confirmar que estén correctamente integrados con las fuentes de datos subyacentes.
Requisitos previos
Si acaba de empezar con la integración de datos de Forms y no ha configurado una fuente de datos o creado un modelo de datos de formulario (FDM), consulte los temas siguientes:
Continúe leyendo para obtener más información sobre las distintas tareas y configuraciones que puede realizar con el editor del modelo de datos de formulario.
Agregar servicios y objetos de modelo de datos add-data-model-objects-and-services
Si ha creado un modelo de datos de formulario (FDM) con fuentes de datos, puede utilizar el editor del modelo de datos de formulario para agregar objetos y servicios del modelo de datos, configurar sus propiedades, crear asociaciones entre objetos del modelo de datos y probar el modelo de datos de formulario (FDM) y los servicios. Esto permite ensamblar un modelo de datos completo y funcional directamente desde las fuentes de datos conectadas en un entorno de edición único.
Puede agregar objetos y servicios del modelo de datos desde fuentes de datos disponibles en el modelo de datos de formulario (FDM). Los objetos del modelo de datos que agregue aparecerán en la pestaña Modelo, mientras que los servicios que agregue aparecerán en la pestaña Servicios, lo que mantendrá los dos tipos de objetos claramente separados para facilitar la configuración y las pruebas.
Para agregar servicios y objetos de modelo de datos:
-
Inicie sesión en la instancia de autor de Experience Manager, vaya a Forms > Integraciones de datos y abra el modelo de datos de formulario (FDM) en el que desea agregar objetos.
-
En el panel Fuentes de datos, expanda las fuentes de datos para ver los servicios y objetos de modelo de datos disponibles.
-
Seleccione los objetos y servicios del modelo de datos que desee agregar al modelo de datos de formulario (FDM) y seleccione Agregar selección. Esto agrega los objetos y servicios seleccionados al FDM para que pueda configurar sus propiedades y crear asociaciones entre ellos.
Servicios y objetos de modelo de datos seleccionado
La pestaña Modelo muestra una representación gráfica de todos los objetos del modelo de datos y sus propiedades agregadas al modelo de datos de formulario (FDM). Cada objeto del modelo de datos se representa mediante un cuadro en el modelo de datos de formulario (FDM), lo que facilita el análisis visual de la estructura del modelo.
La pestaña Modelo muestra los objetos de modelo de datos agregados
note NOTE Puede mantener y arrastrar cuadros de objetos de modelo de datos alrededor para organizarlos en el área de contenido. Todos los objetos del modelo de datos agregados en el modelo de datos de formulario (FDM) aparecen atenuados en el panel Fuentes de datos, lo que indica que ya se han agregado y evita las entradas duplicadas. La pestaña Servicios enumera los servicios añadidos.
La pestaña Servicios muestra los servicios del modelo de datos
note NOTE Además de los objetos y servicios del modelo de datos, el documento de metadatos del servicio OData (Open Data Protocol) incluye propiedades de navegación que definen la asociación entre dos objetos del modelo de datos y permiten el recorrido de los datos relacionados. Para obtener más información, consulte Uso de las propiedades de navegación de los servicios de OData. -
Selecciona Guardar para guardar el objeto del modelo de formulario.
note NOTE Los servicios que configure en la pestaña Servicios de un modelo de datos de formulario (FDM) se pueden invocar directamente mediante reglas de formularios adaptables, lo que permite a los autores de formularios almacenar en déclencheur operaciones de datos como recuperar o escribir datos durante la ejecución. Los servicios configurados están disponibles en la acción Invocar servicios del editor de reglas. Para obtener más información sobre el uso de estos servicios en las reglas de los formularios adaptables, consulte las reglas Invoke service y Set Value Of en editor de reglas.
Crear objetos de modelo de datos y propiedades secundarias create-data-model-objects-and-child-properties
Un modelo de datos organiza la información en unidades estructuradas y reutilizables denominadas objetos, cada una de las cuales puede contener propiedades secundarias que describen los atributos individuales del objeto. Crear objetos bien definidos y anidar propiedades secundarias debajo de ellos es un paso fundamental para crear cualquier modelo de datos, ya que establece una representación clara y jerárquica de la información que la aplicación almacenará, validará e intercambiará.
¿Qué son los objetos de modelo de datos y las propiedades secundarias?
- Un objeto de modelo de datos data es un contenedor con nombre que agrupa los campos relacionados en una sola entidad lógica. Los objetos representan elementos conceptuales o reales, como un cliente, un pedido o un producto, y sirven como la estructura de nivel superior a la que se adjuntan otros elementos.
- Propiedades secundarias son los campos individuales anidados dentro de un objeto. Cada propiedad secundaria define un atributo del objeto principal, junto con características como su nombre, tipo de datos y si el valor es obligatorio. Al anidar propiedades debajo de un objeto principal, los datos relacionados se mantienen agrupados, lo que mejora la claridad y facilita el mantenimiento del modelo.
Esta relación principal-secundario es lo que da a un modelo de datos su jerarquía. El objeto actúa como padre y las propiedades secundarias heredan su contexto de él, lo que garantiza que cada atributo esté asociado de forma inequívoca a la entidad que describe.
Cómo crear un objeto de modelo de datos
Siga estos pasos para definir un nuevo objeto en el modelo de datos:
- Asigne un nombre al objeto. Elija un nombre claro y descriptivo que identifique la entidad que representa el objeto. Una nomenclatura coherente facilita la lectura y la referencia del modelo más adelante.
- Defina el objeto como un contenedor. Establezca el objeto como el elemento de nivel superior que contendrá sus propiedades secundarias asociadas.
- Agregar propiedades secundarias. Adjunte los campos individuales que describen los atributos del objeto, definiendo cada uno a su vez.
- Asignar un tipo de datos a cada propiedad. Especifique el tipo de valor que acepta cada propiedad secundaria (como texto, número o booleano) para que los datos se puedan validar correctamente.
- Establecer reglas de requisitos. Indique qué propiedades secundarias son necesarias y cuáles son opcionales, asegurándose de que el modelo aplique las restricciones de las que depende la aplicación.
Adición de propiedades secundarias
Al agregar propiedades secundarias a un objeto, defina cada propiedad con los siguientes detalles:
- Nombre de propiedad: una etiqueta única y descriptiva para el atributo dentro del objeto principal.
- Tipo de datos: el tipo de valor que almacena la propiedad, que controla cómo se valida y procesa el valor.
- Estado obligatorio u opcional: si la propiedad siempre debe tener un valor.
- Estructura anidada (si corresponde): una propiedad secundaria puede ser un objeto con sus propias propiedades secundarias, lo que le permite modelar datos complejos de varios niveles. Este anidamiento es lo que permite que los modelos de datos representen información profundamente estructurada.
Aplicaciones y ventajas prácticas
Estructurar un modelo de datos con objetos y propiedades secundarias ofrece varias ventajas prácticas:
- Coherencia: la agrupación de campos relacionados en un objeto compartido garantiza que los datos se almacenen e interpreten de manera uniforme en toda la aplicación.
- Capacidad de reutilización: se puede hacer referencia a objetos bien definidos en varios lugares, lo que reduce la duplicación.
- Validación: la asignación de tipos de datos y reglas de requisitos a propiedades secundarias permite al sistema capturar automáticamente datos no válidos o incompletos.
- Escalabilidad: como los objetos admiten propiedades secundarias anidadas, el modelo puede crecer para representar relaciones cada vez más complejas sin desorganizarse.
Prácticas recomendadas
- Utilice nombres claros y descriptivos para ambos objetos y sus propiedades secundarias para mantener el modelo autodocumentado.
- Agrupe atributos relacionados bajo el mismo objeto principal en lugar de distribuirlos entre estructuras no relacionadas.
- Defina los tipos de datos y las reglas de requisitos desde el principio, ya que esto establece una validación fiable desde el principio.
- Seguir anidando con un propósito específico: anide las propiedades secundarias solo cuando la jerarquía adicional refleje de forma significativa la estructura de los datos.
Al definir cuidadosamente los objetos y sus propiedades secundarias, se crea un modelo de datos organizado, mantenible y capaz de representar con precisión las entidades con las que trabaja la aplicación.
Crear objetos de modelo de datos create-data-model-objects
Aunque puede agregar objetos de modelo de datos desde fuentes de datos configuradas, también puede crear objetos de modelo de datos (también denominados entidades) sin fuentes de datos. Un objeto de modelo de datos 1} es una entidad estructurada dentro del modelo de datos de formulario (FDM) que representa una agrupación lógica de propiedades, que posteriormente se puede enlazar a campos de origen de datos o utilizar de forma independiente. Esta capacidad es especialmente útil cuando aún no se han configurado fuentes de datos en el modelo de datos de formulario (FDM), ya que le permite empezar a diseñar la estructura de datos antes de cualquier integración back-end.
Pasos para crear un objeto de modelo de datos sin fuentes de datos
Para crear un objeto de modelo de datos sin fuentes de datos, haga lo siguiente:
-
Inicie sesión en la instancia de autor de Experience Manager, vaya a Forms > Integraciones de datos y abra el modelo de datos de formulario (FDM) en el que desea crear una entidad u objeto del modelo de datos.
-
Selecciona Crear entidad.
-
En el cuadro de diálogo Crear modelo de datos, especifica un nombre para el objeto de modelo de datos y selecciona Agregar. Se agrega un objeto de modelo de datos al modelo de datos de formulario (FDM). El objeto del modelo de datos recién agregado no está enlazado a una fuente de datos y no tiene propiedades, como se muestra en la siguiente imagen. Como es independiente, este objeto existe exclusivamente como marcador de posición estructural hasta que defina sus propiedades o lo conecte a un origen de datos.
Próximos pasos next-steps-data-model-object
Una vez creado el objeto del modelo de datos independiente, agregue propiedades secundarias para definir su estructura. Estas propiedades secundarias permiten especificar los campos y atributos que contiene el objeto y se pueden enlazar a las fuentes de datos más adelante una vez configuradas las integraciones de datos. Esto garantiza que el objeto del modelo de datos sea completamente funcional y esté listo para su uso en formularios.
Agregar propiedades secundarias child-properties
El editor del Modelo de datos de formulario (FDM) permite crear propiedades secundarias dentro de un objeto del modelo de datos. De forma predeterminada, una propiedad secundaria recién creada no está enlazada a ninguna propiedad de un origen de datos. Posteriormente, puede enlazar la propiedad secundaria a otra propiedad del objeto del modelo de datos que la contiene.
Para crear una propiedad secundaria:
-
En un modelo de datos de formulario, selecciona un objeto de modelo de datos y selecciona Crear propiedad secundaria.
-
En el cuadro de diálogo Crear propiedad secundaria, especifique un nombre y un tipo de datos para la propiedad en los campos Nombre y Tipo, respectivamente. Si lo desea, puede especificar un título y una descripción para la propiedad.
-
Habilite Calculado si la propiedad es una propiedad calculada, una propiedad cuyo valor se evalúa en función de una regla o una expresión en lugar de introducirse directamente. Para obtener más información, consulte Editar propiedades.
-
Si el objeto de modelo de datos está enlazado a una fuente de datos, la propiedad secundaria agregada se enlazará automáticamente a la propiedad del objeto de modelo de datos principal con el mismo nombre y tipo de datos. Este enlace automático coincide tanto con el nombre como con el tipo de datos, lo que garantiza que la propiedad secundaria sea coherente con su principal sin necesidad de realizar pasos manuales adicionales.
Para enlazar manualmente una propiedad secundaria con una propiedad de objeto de modelo de datos, selecciona el icono de examinar situado junto al campo Referencia de enlace. El cuadro de diálogo Seleccionar objeto enumera todas las propiedades del objeto de modelo de datos principal. Selecciona una propiedad con la que enlazar el objeto y selecciona el icono del tic. Solo puede seleccionar una propiedad del mismo tipo de datos que la propiedad secundaria, ya que se requiere una coincidencia de tipo de datos para un enlace válido.
-
Seleccione Listo para guardar la propiedad secundaria y seleccione Guardar para guardar el modelo de datos de formulario (FDM). La propiedad secundaria se agrega ahora al objeto de modelo de datos.
Después de crear objetos y propiedades del modelo de datos, puede seguir creando Forms adaptable basado en el modelo de datos de formulario (FDM). Posteriormente, cuando haya fuentes de datos disponibles y configuradas, puede enlazar el modelo de datos de formulario (FDM) con ellas. Como resultado, el enlace se actualiza automáticamente en todos los Forms adaptables asociados, por lo que los cambios se propagan sin una reconfiguración manual. Para obtener más información sobre la creación de Forms adaptable mediante el modelo de datos de formulario (FDM), consulte Usar el modelo de datos de formulario.
Enlazar propiedades y objetos de modelo de datos bind-data-model-objects-and-properties
Cuando las fuentes de datos que desea integrar con el modelo de datos de formulario (FDM) estén disponibles, puede agregarlas al modelo (FDM) tal como se describe en Actualizar fuentes de datos. Un objeto o propiedad de modelo de datos no enlazado es uno que existe en el modelo de datos de formulario (FDM), pero aún no está asignado a un campo de una fuente de datos conectada, por lo que no puede leer ni escribir datos hasta que se establezca un enlace. A continuación, haga lo siguiente para enlazar las propiedades y objetos de modelo de datos independiente:
-
En el modelo de datos de formulario, seleccione la fuente de datos independiente que desea enlazar con una fuente de datos.
-
Selecciona Editar propiedades.
-
En el panel Editar propiedades, selecciona el icono de examinar situado junto al campo Enlace. El icono Examinar abre el cuadro de diálogo Seleccionar objeto, que enumera las fuentes de datos agregadas en el modelo de datos de formulario (FDM).
-
Expanda el árbol de fuentes de datos y seleccione un objeto del modelo de datos con el que enlazar y, a continuación, seleccione el icono del tic.
-
Seleccione Listo para guardar las propiedades y, a continuación, seleccione Guardar para guardar el modelo de datos de formulario. El objeto de modelo de datos ahora está enlazado con una fuente de datos. Esto garantiza que el objeto pueda leer y escribir en el origen de datos conectado durante la ejecución. Al guardar, el objeto del modelo de datos ya no se marca como No enlazado, lo que confirma que el enlace ha finalizado.
Configurar servicios configure-services
La configuración de los servicios de lectura y escritura permite que un objeto de modelo de datos lea y escriba datos dentro de un modelo de datos de formulario (FDM). Para configurar los servicios de lectura y escritura para un objeto del modelo de datos, complete los siguientes pasos:
-
Selecciona la casilla de verificación situada en la parte superior de un objeto de modelo de datos para seleccionarlo y seleccione Editar propiedades.
Editar propiedades para configurar los servicios de lectura y escritura de un objeto de modelo de datos
Se abre el cuadro de diálogo Editar propiedades.
Cuadro de diálogo Editar propiedades
note NOTE Además de los objetos y servicios del modelo de datos, el documento de metadatos del servicio OData (Open Data Protocol) incluye propiedades de navegación que definen la asociación entre dos objetos del modelo de datos. Cuando se añade una fuente de datos del servicio OData a un modelo de datos de formulario (FDM), hay un servicio disponible en el modelo de datos de formulario (FDM) para todas las propiedades de navegación de un objeto de modelo de datos. Puede utilizar este servicio para leer las propiedades de navegación del objeto de modelo de datos correspondiente. Para obtener más información sobre el uso del servicio, consulte Uso de las propiedades de navegación de los servicios de OData. -
Cambie Objeto de nivel superior para especificar si el objeto del modelo de datos es de nivel superior.
Los objetos de modelo de datos configurados en un modelo de datos de formulario (FDM) están a su disposición en la pestaña Objetos de modelo de datos del Explorador de contenido de un formulario adaptable basado en el modelo de datos de formulario (FDM). Cuando se agrega una asociación entre dos objetos del modelo de datos, el objeto del modelo de datos con el que se asocia se anida en el objeto del modelo de datos que se asocia en la pestaña Objetos del modelo de datos. Si el modelo de datos anidado es un objeto de nivel superior, también aparece por separado en la pestaña Objetos de modelo de datos. Como resultado, el objeto aparece dos veces (una entrada dentro de la jerarquía anidada y otra fuera de ella), lo que puede confundir a los autores del formulario. Para que el objeto del modelo de datos asociado aparezca solo en la jerarquía anidada, deshabilite la propiedad Objeto de nivel superior. Esto garantiza que los autores de formularios vean una entrada única e inequívoca, lo que reduce la confusión durante la creación del formulario.
-
Seleccione los servicios Read y Write para el objeto del modelo de datos seleccionado. Los argumentos de los servicios seleccionados aparecerán entonces para la configuración.
Servicios de lectura y escritura configurados para la fuente de datos de los empleados
-
Selecciona
en el argumento de servicio de lectura para enlazar el argumento a un atributo de perfil de usuario, atributo de solicitud o valor literal y especifica el valor de enlace. -
Seleccione Listo para guardar el argumento, Listo para guardar las propiedades y, a continuación, Guardar para guardar el modelo de datos de formulario (FDM).
Vincular argumentos del servicio de lectura bindargument
Enlace un argumento de servicio de lectura a uno de los tres tipos de enlace: un atributo de perfil de usuario, un atributo de solicitud o un valor literal, según un valor de enlace. El servicio de lectura utiliza este valor como argumento para recuperar los detalles asociados con el valor especificado del origen de datos. Cada tipo de enlace determina dónde se origina el valor del argumento: una entrada fija, el perfil del usuario que ha iniciado sesión o la solicitud entrante.
Valor literal literal-value
Seleccione Literal en el menú desplegable Enlace a e indique un valor en el campo Valor de enlace. Los detalles asociados con el valor se recuperan de la fuente de datos. Utilice esta opción para recuperar los detalles asociados a un valor estático, ya que un enlace Literal proporciona una entrada fija y sin cambios que no depende del usuario ni de la solicitud.
En este ejemplo, los detalles asociados con 4367655678, como el valor del argumento mobilenum, se recuperan de la fuente de datos. Los detalles asociados que se devuelven al pasar el valor de un argumento de número móvil pueden incluir propiedades como nombre de cliente, dirección de cliente y ciudad.
Atributo de perfil de usuario user-profile-attribute
Seleccione Atributo de perfil de usuario del menú desplegable Enlace a e indique el nombre del atributo en el campo Valor de enlace. Los detalles del usuario que ha iniciado sesión en la instancia de Experience Manager se recuperan de la fuente de datos en función del nombre del atributo.
El nombre de atributo especificado en el campo Valor de enlace debe incluir la ruta de enlace completa hasta el nombre de atributo del usuario. Abra la siguiente URL para acceder a los detalles del usuario sobre CRXDE:
https://[server-name]:[port]/crx/de/index.jsp#/home/users/
En este ejemplo, especifique profile.empid en el campo Valor de enlace para el usuario grios.
El argumento id toma el valor del atributo empid del perfil de usuario y lo pasa como argumento al servicio de lectura. A continuación, el servicio de lectura lee y devuelve los valores de las propiedades asociadas del objeto del modelo de datos de empleado para empid asociado al usuario que ha iniciado sesión.
Solicitar atributo request-attribute
Utilice el enlace de atributo de solicitud para recuperar las propiedades asociadas del origen de datos en función de un valor proporcionado en la solicitud entrante.
-
Seleccione Atributo de solicitud del menú desplegable Enlace a e indique el nombre del atributo en el campo Valor de enlace.
-
Cree una superposición para head.jsp. Para crear la superposición, abra CRX DE y copie el archivo
https://<server-name>:<port number>/crx/de/index.jsp#/libs/fd/af/components/page2/afStaticTemplatePage/head.jspenhttps://<server-name>:<port number>/crx/de/index.jsp#/apps/fd/af/components/page2/afStaticTemplatePage/head.jsp.note NOTE - Si utiliza una plantilla estática, superponga head.jsp en:
/libs/fd/af/components/page2/afStaticTemplatePage/head.jsp - Si utiliza una plantilla editable, superponga aftemplatedpage.jsp en:
/libs/fd/af/components/page2/aftemplatedpage/aftemplatedpage.jsp
- Si utiliza una plantilla estática, superponga head.jsp en:
-
Establezca paramMap para el atributo de solicitud. Por ejemplo, incluya el siguiente código en el archivo .jsp de la carpeta de aplicaciones:
code language-javascript <%Map paraMap = new HashMap(); paraMap.put("<request_attribute>",request.getParameter("<request_attribute>")); request.setAttribute("paramMap",paraMap);Por ejemplo, utilice el siguiente código para recuperar el valor de petId de la fuente de datos:
code language-javascript <%Map paraMap = new HashMap(); paraMap.put("petId",request.getParameter("petId")); request.setAttribute("paramMap",paraMap);%>
Como resultado, el servicio de lectura recupera los detalles del origen de datos en función del nombre de atributo especificado en la solicitud.
Por ejemplo, si se especifica el atributo como petid=100 en la solicitud, se recuperan las propiedades asociadas con ese valor de atributo del origen de datos.
Agregar asociaciones add-associations
Las asociaciones generalmente se crean entre objetos del modelo de datos en una fuente de datos y estas asociaciones se conservan cuando los objetos se traen a un modelo de datos de formulario (FDM). Una asociación define la relación entre dos objetos del modelo de datos y puede ser uno a uno o uno a varios.
Existe una asociación uno a varios cuando un único registro se relaciona con varios registros. Por ejemplo, un empleado puede tener varios dependientes asociados al registro de empleado. Esta relación se denomina asociación uno a varios y la representa 1:n en la línea que conecta los objetos del modelo de datos asociados. Existe una asociación uno a uno cuando una relación devuelve exactamente un registro coincidente; por ejemplo, cuando una asociación devuelve un nombre de empleado único para un ID de empleado determinado, se trata de una asociación uno a uno.
Cuando se agregan objetos del modelo de datos asociados de una fuente de datos a un modelo de datos de formulario (FDM), sus asociaciones se retienen y se muestran como conectadas mediante líneas de flecha. También puede agregar asociaciones entre objetos del modelo de datos en distintas fuentes de datos dentro de un solo modelo de datos de formulario (FDM), lo que le permite combinar datos relacionados que se originan en diferentes sistemas back-end.
Para agregar una asociación:
-
Seleccione la casilla de verificación situada en la parte superior de un objeto del modelo de datos para seleccionarlo y, a continuación, seleccione Agregar asociación. Se abre el cuadro de diálogo Agregar asociación.
note NOTE Además de los objetos y servicios del modelo de datos, un documento de metadatos de servicio del Protocolo de datos abiertos (OData) incluye propiedades de navegación que definen la asociación entre dos objetos del modelo de datos. Puede utilizar estas propiedades de navegación cuando agregue asociaciones en un modelo de datos de formulario (FDM). Para obtener más información, consulte Uso de las propiedades de navegación de los servicios de OData. Se abre el cuadro de diálogo Agregar asociación.
Cuadro de diálogo Agregar asociación
-
En el panel Agregar asociación:
- Especifique un título para la asociación.
- Seleccione el tipo de asociación — Uno a uno o Uno a varios.
- Seleccione el objeto de modelo de datos que desea asociar.
- Seleccione el servicio de lectura para leer los datos del objeto de modelo seleccionado. Aparece el argumento de servicio de lectura. Edite el argumento para cambiarlo si es necesario y enlácelo a la propiedad del objeto del modelo de datos que desee asociar.
En el siguiente ejemplo, el argumento predeterminado para el servicio de lectura del objeto de modelo de datos de Dependents (dependientes) es
dependentid.
El argumento predeterminado para el servicio de lectura de dependientes es dependentid.
Sin embargo, el argumento debe ser una propiedad común compartida entre los objetos del modelo de datos asociados, que en este ejemplo es
Employeeid. Por lo tanto, como la asociación depende de una clave coincidente, el argumentoEmployeeiddebe enlazarse a la propiedadiddel objeto del modelo de datos Employee. Este enlace permite al sistema recuperar los detalles de dependientes asociados del objeto del modelo de datos de Dependents.
Argumento y enlace actualizados
Selecciona Listo para guardar el argumento.
-
Seleccione Listo para guardar la asociación y, a continuación, seleccione Guardar para guardar el modelo de datos de formulario (FDM).
-
Repita los pasos para crear asociaciones adicionales según sea necesario.
Editar propiedades properties
La edición de propiedades permite configurar el comportamiento de los objetos del modelo de datos, sus propiedades y servicios dentro del modelo de datos de formulario (FDM). A través del panel Editar propiedades, define los servicios, tipos de datos, claves y argumentos que determinan cómo el FDM lee, escribe y devuelve datos.
Para editar propiedades, haga lo siguiente:
-
Seleccione la casilla de verificación situada junto a un objeto de modelo de datos, una propiedad o un servicio en el modelo de datos de formulario (FDM).
-
Selecciona Editar propiedades. Se abre el panel Editar propiedades del objeto, de la propiedad o del servicio del modelo seleccionado.
-
Objeto del modelo de datos: especifique los servicios de lectura y escritura y edite los argumentos. Estos servicios determinan cómo se recuperan y se mantienen los datos en el origen de datos subyacente del objeto.
-
Propiedad: especifique el tipo, subtipo y formato para la propiedad. También puede designar la propiedad seleccionada como clave principal para el objeto del modelo de datos, que identifica de forma exclusiva cada registro.
-
Servicio: especifique el objeto del modelo de entrada, el tipo de salida y los argumentos del servicio. Para un servicio Get service, puede indicar si devuelve una matriz, asegurándose de que el servicio administra correctamente varios registros.
Cuadro de diálogo Editar propiedades para Get-Service
-
-
Seleccione Listo para guardar la configuración de la propiedad y, a continuación, seleccione Guardar para guardar el modelo de datos de formulario (FDM). Este guardado final confirma todos los cambios de propiedad en FDM.
Crear propiedades calculadas computed
Una propiedad calculada deriva su valor automáticamente de una regla o expresión. Con una regla, puede establecer el valor de una propiedad calculada en una cadena literal, un número, el resultado de una expresión matemática o el valor de otra propiedad en el Modelo de datos de formulario (FDM). Dado que el valor se calcula en lugar de introducirse manualmente, las propiedades calculadas reducen los errores de entrada de datos y mantienen la coherencia de los campos dependientes a medida que cambian los datos subyacentes.
Ejemplo: generar una propiedad calculada FullName
Por ejemplo, puede crear una propiedad calculada FullName cuyo valor es el resultado de concatenar las propiedades FirstName y LastName existentes. Para ello, siga estos pasos:
-
Cree una nueva propiedad con el nombre
FullNamecuyo tipo de datos es String. -
Habilita la opción Calculada y selecciona Listo para crear la propiedad.
Se ha creado la propiedad calculada FullName. Aparece un icono junto a la propiedad para indicar que es una propiedad calculada.
-
Seleccione la propiedad FullName y luego seleccione Editar regla. Se abre la ventana del editor de reglas.
-
En la ventana del editor de reglas, selecciona Crear. Se abre una ventana de la regla Set Value.
En el menú desplegable Seleccionar opción, seleccione Expresión matemática. Las otras opciones disponibles son Objeto del modelo de datos de formulario y Cadena.
-
En la expresión matemática, seleccione FirstName como primer objeto y LastName como segundo objeto. Seleccione más como operador.
Seleccione Listo y, a continuación, seleccione Cerrar para cerrar la ventana del editor de reglas. La regla completada tiene un aspecto similar al siguiente.
-
En el Modelo de datos de formulario (FDM), seleccione Guardar. La propiedad calculada está configurada. Esto garantiza que el valor FullName se actualice automáticamente cada vez que FirstName o LastName cambien, de modo que el nombre completo concatenado siempre permanecerá sincronizado con los campos de origen.
Trabajar con propiedades de navegación de los servicios OData work-with-navigation-properties-of-odata-services
Propiedades de navegación en los servicios OData definen las asociaciones entre dos objetos del modelo de datos, estableciendo cómo una entidad se relaciona con otra y puede atravesarla. Estas propiedades se definen en un tipo de entidad o un tipo complejo, y son lo que permite a un cliente pasar de un registro a sus registros relacionados. Por ejemplo, en el siguiente extracto del archivo de metadatos de los servicios de muestra TripPin OData, la entidad Person contiene tres propiedades de navegación: Friends, BestFriend y Trips.
Para obtener más información acerca de las propiedades de navegación, consulte la documentación de OData.
<edmx:Edmx xmlns:edmx="https://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<script/>
<edmx:DataServices>
<Schema xmlns="https://docs.oasis-open.org/odata/ns/edm" Namespace="Microsoft.OData.Service.Sample.TrippinInMemory.Models">
<EntityType Name="Person">
<Key>
<PropertyRef Name="UserName"/>
</Key>
<Property Name="UserName" Type="Edm.String" Nullable="false"/>
<Property Name="FirstName" Type="Edm.String" Nullable="false"/>
<Property Name="LastName" Type="Edm.String"/>
<Property Name="MiddleName" Type="Edm.String"/>
<Property Name="Gender" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PersonGender" Nullable="false"/>
<Property Name="Age" Type="Edm.Int64"/>
<Property Name="Emails" Type="Collection(Edm.String)"/>
<Property Name="AddressInfo" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location)"/>
<Property Name="HomeAddress" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location"/>
<Property Name="FavoriteFeature" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature" Nullable="false"/>
<Property Name="Features" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature)" Nullable="false"/>
<NavigationProperty Name="Friends" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)"/>
<NavigationProperty Name="BestFriend" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person"/>
<NavigationProperty Name="Trips" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip)"/>
</EntityType>
Cómo aparecen las propiedades de navegación en el modelo de datos de formulario
Al configurar un servicio OData en un Modelo de datos de formulario (FDM), todas las propiedades de navegación de un contenedor de entidades están disponibles automáticamente a través de un único servicio en el FDM. Esta consolidación significa que no necesita un servicio independiente para cada asociación, ya que FDM las muestra juntas. En este ejemplo del servicio OData de TripPin, las tres propiedades de navegación en el contenedor de entidad Person se pueden leer utilizando un servicio GET LINK en FDM.
A continuación se destaca el servicio GET LINK of Person /People en FDM, que es un servicio combinado para las tres propiedades de navegación: Friends, BestFriend y Trips, en la entidad Person del servicio OData de TripPin.
Configuración del servicio GET LINK
Una vez que agregue el servicio GET LINK a la ficha Servicios del FDM, puede editar sus propiedades para elegir el objeto del modelo de salida y la propiedad de navegación que se utilizarán en el servicio. Por ejemplo, el siguiente servicio GET LINK of Person /People usa Trip como objeto del modelo de salida y Trips como propiedad de navegación.
En este ejemplo, también puede elegir Person como objeto del modelo de salida y establecer el argumento de la propiedad de navegación en Friends o BestFriend, dependiendo de si Devolver matriz? está activada o desactivada.
Uso de propiedades de navegación en asociaciones
Del mismo modo, puede elegir un servicio GET LINK y configurar sus propiedades de navegación al agregar asociaciones en FDM. Sin embargo, seleccionar una propiedad de navegación solo es posible cuando el campo Enlace a está establecido en Literal; debido a este requisito, las opciones de la propiedad de navegación no se pueden seleccionar hasta que ese enlace esté configurado correctamente.
Generar y editar datos de muestra sample
El editor Modelo de datos de formulario (FDM) genera datos de ejemplo para todas las propiedades de objetos del modelo de datos en un modelo de datos de formulario, incluidas propiedades calculadas. Estos datos de ejemplo consisten en un conjunto de valores aleatorios que cumplen con el tipo de datos configurado para cada propiedad, lo que le proporciona valores de prueba realistas sin requerir una conexión de origen de datos activa.
Datos de ejemplo
Los datos de ejemplo sirven como entrada de prueba lista para usar que permite obtener una vista previa y validar cómo se comporta un modelo de datos de formulario antes de enlazarlo a datos de producción. Dado que cada valor generado respeta el tipo de datos configurado de su propiedad, el conjunto de muestras refleja la estructura y el formato esperados de los registros reales, lo que ayuda a comprobar los enlaces, la lógica calculada y el comportamiento del formulario al principio del desarrollo.
También puede editar los valores generados y guardar los cambios. Los datos guardados se conservan incluso si se regeneran los datos de muestra, por lo que los casos de prueba depurados manualmente persisten entre regeneraciones. Esto hace que sea práctico crear escenarios de prueba estables y reutilizables en lugar de perder ediciones cada vez que se producen nuevos valores aleatorios.
Pasos para generar y editar datos de ejemplo
-
Abra un Modelo de datos de formulario (FDM) y seleccione Editar datos de ejemplo. El editor FDM genera y muestra los datos de ejemplo en la ventana Editar datos de ejemplo.
-
En la ventana Editar datos de ejemplo, edite los datos según sea necesario y seleccione Guardar. Los datos de ejemplo editados se guardan y conservan, y permanecen disponibles incluso después de regenerar los datos de ejemplo.
Probar servicios y objetos de modelo de datos test-data-model-objects-and-services
Una vez configurado el modelo de datos de formulario (FDM), pruebe los objetos y servicios configurados del modelo de datos antes de implementar el FDM en un formulario activo para confirmar que funcionan según lo esperado. La prueba antes de la implementación comprueba que cada objeto y servicio devuelve los datos correctos, lo que reduce el riesgo de errores de tiempo de ejecución cuando el formulario se pone en producción.
Para probar los servicios y objetos de modelo de datos:
-
Seleccione un objeto del modelo de datos o un servicio en el modelo de datos de formulario (FDM) y, a continuación, seleccione Objeto del modelo de prueba o Servicio de prueba, respectivamente.
Se abre la ventana Modelo de datos de formulario de prueba.
-
En la ventana Probar modelo de datos de formulario, seleccione el objeto o servicio del modelo de datos que desea probar en el panel Entrada. Esto identifica el objeto o servicio específico que desea validar.
-
Especifique un valor de argumento en el código de prueba y, a continuación, seleccione Prueba. Una prueba que funcione correctamente devuelve el resultado en el panel Output, lo que confirma que el objeto o servicio seleccionado está correctamente configurado y es capaz de recuperar o procesar los datos según lo previsto.
Siguiendo el mismo procedimiento, se pueden validar objetos y servicios del modelo de datos de formulario (FDM) adicionales para garantizar que todo el modelo funcione de forma fiable antes de su uso.
Validación automática de los datos de entrada automated-validation-of-input-data
El Modelo de datos de formulario (FDM) valida automáticamente los datos recibidos como entrada cada vez que se invoca la API DermisBridge, aplicando los criterios de validación definidos dentro del modelo de datos de formulario. Esta validación está controlada por el indicador ValidationOptions establecido en el objeto de consulta utilizado para invocar la API. De manera predeterminada, cuando no se establece ningún valor para el indicador ValidationOptions, FDM realiza la validación BASIC en los datos de entrada.
Niveles de indicador de opciones de validación
El indicador ValidationOptions acepta cualquiera de los tres valores siguientes, cada uno de los cuales define con qué rigor el FDM valida la entrada:
- COMPLETO: el FDM valida la entrada con todas las restricciones definidas. Utilice este nivel para aplicar cada tipo de datos y restricción de regla de negocio antes de procesar los datos.
- DESACTIVADO: el FDM realiza ninguna validación. Los datos de entrada pasan sin ninguna comprobación de restricciones.
- BÁSICO: FDM valida solamente las restricciones
requiredynullable. Esto garantiza que los campos obligatorios estén presentes y que se cumplan las reglas de control nulo sin evaluar el conjunto de restricciones completo.
Si no se establece ningún valor para el indicador ValidationOptions, FDM aplica la validación BASIC de forma predeterminada.
Configuración del indicador de validación
El ejemplo siguiente establece el indicador de validación en FULL, lo que permite la validación con todas las restricciones:
operationOptions.setValidationOptions(ValidationOptions.FULL);
ValidationOptions. Cuando el nivel de registro está establecido en Debug, la API registra el error correspondiente en el archivo error.log.Restricciones de tipo de datos por fuente de datos
El Modelo de datos de formulario (FDM) valida los datos de entrada con una lista definida de restricciones de tipo de datos. Esta lista de restricciones puede variar según el origen de datos subyacente, por lo que las restricciones exactas que se aplican durante la validación están determinadas por el origen de datos asociado al modelo de datos del formulario.
En la tabla siguiente se enumeran las restricciones de tipo de datos aplicadas a los datos de entrada para cada fuente de datos admitida:
Validación De Datos De Entrada Mediante Restricciones Swagger
Los datos de entrada pasan la validación solo si Id. de pedido está presente y su valor se encuentra dentro del intervalo 1-10. En este ejemplo, los datos de entrada se validan con las restricciones maximum, minimum y required definidas en el archivo Swagger (OpenAPI). Estos tres tipos de restricción rigen la entrada aceptada de la siguiente manera:
- obligatorio: se debe proporcionar el parámetro; un elemento
orderIdque falta no supera la validación. - mínimo — el valor no debe ser menor que 1.
- máximo — el valor no debe superar 10.
Dado que las restricciones se declaran directamente en la definición de la API, la validación se impone automáticamente en el nivel de esquema antes de que se ejecute la operación. Esto garantiza que solo las solicitudes bien formadas lleguen al servicio subyacente.
parameters: [
{
name: "orderId",
in: "path",
description: "ID of pet that must be fetched",
required: true,
type: "integer",
maximum: 10,
minimum: 1,
format: "int64"
}
]
Comportamiento de errores de validación y registro de errores
El sistema inicia una excepción de validación cuando los datos de entrada no cumplen estos criterios. Como resultado de este error, y cuando el nivel de registro está establecido en Depurar, se escribe un error en el archivo error.log. Este comportamiento de registro ayuda a los desarrolladores a diagnosticar exactamente qué restricción se ha violado, ya que la entrada de registro identifica el parámetro que falla, la restricción que se ha violado y el valor infractor.
Por ejemplo, si se envía un(a) orderId de 16, se supera el(la) máximo(a) de 10 declarado(a) y se genera la siguiente entrada de registro:
21.01.2019 17:26:37.411 *ERROR* com.adobe.aem.dermis.core.validation.JsonSchemaValidator {"errorCode":"AEM-FDM-001-044","errorMessage":"Input validations failed during operation execution.","violations":{"/orderId":["numeric instance is greater than the required maximum (maximum: 10, found: 16)"]}}
La entrada de error captura el código de error AEM-FDM-001-044, el mensaje "Input validations failed during operation execution." y un bloque violations que señala el campo /orderId, el máximo requerido de 10 y el valor encontrado (16). Este detalle estructurado facilita la identificación y corrección de entradas fuera del intervalo.
Próximos pasos next-steps
Tiene un Modelo de datos de formulario (FDM) en funcionamiento que ya está listo para su uso en flujos de trabajo de Forms adaptables. Un modelo de datos de formulario representa la estructura y las relaciones de los datos que capturan e intercambian los formularios con fuentes de datos conectadas, lo que proporciona un esquema unificado y reutilizable al que Forms adaptable puede enlazarse directamente. Dado que el modelo abstrae los servicios de datos subyacentes en una sola capa coherente, permite que los formularios lean y escriban en esas fuentes sin que sea necesario reconstruir la lógica de integración para cada nuevo formulario.
Con el modelo en su lugar, ahora puede aplicarlo a todas las tareas de creación de formularios. Los siguientes pasos comunes incluyen:
- Enlace los campos de formulario al modelo para que los componentes de los formularios adaptables se asignen directamente a los atributos de datos definidos en el FDM, lo que garantiza una captura y un envío de datos coherentes.
- Rellene previamente formularios con datos existentes recuperados a través del modelo, lo cual mejora la experiencia del usuario al reducir la entrada manual de datos.
- Configure el envío de formularios para que vuelva a escribir los datos capturados en las fuentes de datos conectadas a través del modelo, manteniendo los registros sincronizados.
- Reutilice el modelo en varios formularios para mantener la coherencia y reducir los esfuerzos de configuración duplicados.
La reutilización de un solo modelo de datos de formulario en todos los flujos de trabajo promueve la coherencia y reduce el mantenimiento continuo, ya que las actualizaciones del modelo se propagan a todos los formularios que dependen de él. Para obtener instrucciones detalladas sobre cómo aplicar el modelo en un Forms adaptable, consulte Usar el modelo de datos de formulario (FDM).